1、瀑布模型(适用于客户需求较明确的情况下)
毕业后第一家日企用的瀑布模型,按照需求分析-设计-开发-测试-维护阶段,每个阶段提交文档非常详细
缺点:
1)阶段输出文档比较多,增加了工作量
2)开发模型是线性的,最后阶段才能看到成果,有可能不符合最初的用户需求,增加了风险。
优点:开发人员采用规范的方法提交文档,每个阶段的产出都可以经过质量小组的验证把关
2、快速原型模型(用户需求不明确、小型或是交互型的系统、大型系统的某个部分)
优点:
1)、可以得到比较良好的需求定义,容易适应需求的变化。
2)、有利于开发与培训的同步。
3)、开发费用低、开发周期短且对用户更友好。
缺点:
1)、所选用的开发技术和工具不一定符合主流的发展。
2)、快速建立起来的系统结构加上连续的修改可能会导致产品质量低下。
3、增量模型
增量模型(技术风险较大、用户需求较为稳定的软件系统)
优点:
1)、短期内可以交付满足部分用户需求的功能产品。
2)、逐步增加产品功能让用户去适应新产品。
3)、开放式的软件可维护性比较好。
缺点:
1)、对现有产品功能造成破坏。
2)、适用于中型软件的开发。
3)、意义上矛盾。
4、螺旋模型(适用于大型复杂的系统)
瀑布模型和快速原型模型的结合
5、喷泉模型(面向对象的软件开发过程)
优点:可以提高软件项目开发效率,节省开发时间。
缺点:不利于项目管理