[H]
软件开发声明周期模型
需求→设计→实现→测试→移交→不断演化
从Activity、Target、Artifact(行为、目标、成果)三个方面描述模型过程
1.Software Requirement→What→SRS
软件需求规格说明(SRS)
初期分析,得到一份非常详细严谨规整的需求说明
2.Software Design→How→SDD
软件设计描述文档(SDD)
=软件架构设计+软件详细设计
3.Software Construction→Build→Code and executable file
代码和可执行文件(Code and executable file)
用于部署项目,必须是可执行文档
4.software testing→满足需求了吗?做的对吗?→Test Report
测试报告
做了哪些测试,这些测试的结果如何?
5.Software Deliver→install→user doucument and system document
用户和系统文档
如何使用和维护系统
6.software maintenance →revolution →new version software
新版本的软件
演化
分解与抽象
分解:
分解之后,每一部分复杂度要变小
分解之后,每一部分关联要变小,相对独立
抽象:
对于一个复杂系统分解成系统接口和系统实现
系统接口:系统的本质特征
系统实现:实现系统特征的方法
抽象之后,接口复杂度变小
接口和实现之间达成一种契约,接口代表着实现
用例来给需求建模
什么叫需求?
需求是一种用户期望
如何准确描述需求?
→用例
用例图
如何画?
1.寻找参与者
2.寻找用例
用例是相对独立的
用例的执行结果对于参与者来说是可观测和有意义的
事件必须有一个参与者发起
用例必须是以动宾短语的形式出现的
一个用例是一个需求、分析、设计、开发、测试、部署单元