瀑布式开发过程
缺点
1阶段划分僵硬,产生大量文档
2开发是线性的
3早期的开发错误要在后期测试阶段才能发现,增加了开发的风险
增量开发模型(完成一部分交付一部分)
需要软件具备开放式的体系结构(为了每次交付时不影响已交付的增量)
个体软件过程
团队软件过程
敏捷开发(是敏捷开发方法的统称)
敏捷开发主要采用了面向对象的开发技术,使用C-R-C(类-责任-协作)、用户用例、设计模式、UML(为了画类图和时序图)
四个价值观:
1个体和互动胜过流程和工具
2工作的软件胜过详尽的文档
3客户合作胜过合同谈判
4响应变化胜过遵循计划
总结出了面向对象原则:单一职责原则(模块内聚的体现),Liskov里氏替换原则
敏捷Scrum方法是迭代式增量软件开发过程
适合哪种项目:需求、设计、计划不确定项目
工作流程
1 项目启动和需求收集
2 产品Backlog管理
3 Sprint计划会议
4 Sprint执行
5 Sprint评审与回顾
6 重复迭代