软件生命周期
- 需求分析:需求规格说明书
- 概要设计:架构文档
- 详细设计:详设文档
- 编码:源代码
- 测试:测试报告
- 验收:产品
软件开发模型
1、瀑布模型
瀑布模型是最早提出的软件开发的过程模型。
存在问题:
- 强调时间顺序严格执行。前一阶段不完成,后阶段就不开始。
- 将测试放在编码之后,没有体现出测试贯穿软件生命周期的原则。可以避免需求类的问题一直延续到代码完成才暴露。(需求阶段,测试就应该介入)
优点:
- 为项目提供了按阶段划分的检查点
- 当前一阶段完成后,只需要去关注后续阶段
2、螺旋模型
螺旋模型是一种演化软件开发过程模型,他监督了快速原型的迭代特征以及瀑布模型的系统化与严格监控。
- 风险分析:使软件在无法排除重大风险的时候有机会停止,以减少损失。
- 螺旋模型适合大型的昂贵的系统级软件应用。