- 需求分析:定义系统或软件,是一种黑盒的行为(external & what)
- 黑盒不关注实现;
- 系统设计:设计系统或软件,是一种白盒的机制(internal & how & why)
- 是对内部底层实现的一种设计;
- 系统设计的主要内容:
- 系统架构;模块设计;接口定义;数据定义;
- 关键算法,设计思路(why)
- 开发
- 把代码理解成一种语言,一种交流沟通与表达的方式;
- 既然用于交流的方式,就不仅要今天看得懂,自己看得懂,还要求以后其他人也看得懂,能够很快理解;提升沟通效率;
1. 需求分析
- IPO 表格的方式进行组织各个功能模块;
- IPO:Input,Process,Output,输入、处理与输出;
- 一些补充说明:
- 对于基于客户端、服务器端(C/S 架构)程序,要分别从客户端和服务器端两个模型分别进行需求分析;
2. 系统设计
- 概要设计 vs. 详细设计
- 概要设计:
- 系统总体设计
- 接口设计
- 运行时设计
- 系统数据库结构设计;
- 详细设计:
- 界面
- 数据访问层(DAL)
- 公共模块;
- 概要设计: