一、软件开发生命周期
1、基本过程:获取过过程、供应过程、开发过程、动作过程、维护过程
2、支持过程:文档编制过程、配置管理过程、质量保证过程、验证过程、确认过程、
联合评审过程、审核过程、问题解决过程、易用性过程
3、组织过过程:管理过程、基本设施过程、改进过程、人力资源过程、资产管理过程、
重用大纲管理过程、领域工程过程
二、软件开发模型
1、瀑布模型
2、深化模型
3、增量模型:每一个增量均发布一个可操作的产品,是原型和螺旋模型的结合体
4、螺旋模型:强调风险分析,是原型和螺旋模型的结合体
5、原型:演化原型成为最终产品
6、构件组装模型:需求分析和定义->软件架构设计->构件库的建立->应用软件构建->测试和发布
7、统一过程:初始->细化->构建->交付,基于构件组装模型
统一过程模型是一种“用命驱动,以架构为核心,迭代及增量”的软件过程框架,由UML方法和工具支持
初始阶段:确定项目范围和边界、识别系统的关键用例、展示系统的候选架构、
估计项目费用和时间、评估项目风险
细化阶段:分析系统问题领域、建立软件架构基础、淘汰最高风险元素。
构建阶段:开发剩余的构件,构件组装和测试
交付阶段:用户进行测试评价、制作发布版本、用户文档定稿、确认新系统、培训和调整产品
8、敏捷方法:4大价值观,5大原则,12个最佳实践
三、逆向工程
现有系统->逆向工程->考虑新需求->正向工程->新系统