软件过程是软件生命周期中的一系列相关活动,即用于开发和维护软件及相关产品的一系列活动。
软件过程模型可以帮助开发团队理解开发过程,形成对开发中的活动、资源和约束的共同理解,可以根据具体情况对一个过程进行裁翦等。
瀑布模型
瀑布模型最早由Royce提出,该模型因过程排列酷似瀑布而得名。
该模型是文档驱动的,该模型适用于项目开始时需求已确定的情况。瀑布模型主要应用于结构化的软件开发。
从一种非常高层的角度描述了软件开发过程中进行的活动,并且提出了要求开发人员经过的事件序列。
对于非专业用户来说难以阅读和理解,而且导致很多问题在最后才会暴露出来,风险巨大。
V模型
是瀑布模型的变种,它说明测试活动是如何与分析和设计相联系的。
增量模型
增量模型是在项目的开发过程中以一系列的增量方式开发系统。增量方式包括增量开发和增量提交。
增量开发是指在项目开发周期内,以一定的时间间隔开发部分工作软件。
增量提交是指在项目开发周期内,以一定时间间隔增量方式向用户提交工作软件及其相应文档。
根据增量的方式和形式的不同,分为渐增模型和原型模型。
原型模型
原型模型又称快速原型模型,它是增量模型的另一种形式。
原型的用途是获知用户的真正需求,因此原型模型可以有效地引发系统需求。
根据原型的不同作用,有三类原型模型:探索型原型(用于需求分析阶段)、实验型原型(主要用于设计阶段)、演化型原型(主要用于及早向用户提交一个原型系统)。
演化型主要针对事先不能完整定义需求的软件开发。软件开发中的原型是软件的一个早期可运行版本,它反映了最终系统的重要特性。
螺旋模型
将瀑布模型和演化模型相结合,综合了瀑布模型和演化模型的优点,并增加了风险分析。
把开发活动和风险管理结合起来,以将风险减到最小并控制风险。
螺旋模型包含如下四个方面的活动:制定计划、风险分析、实施工程和客户评估。
喷泉模型
主要用于描述面向对象的开发过程。
喷泉模型体现了软件创建所固有的迭代和无间隙的特征。
迭代意味着模型中的开发活动常常需要重复多次,在迭代过程中不断完善软件系统;无间隙是指开发活动之间不存在明显的边界,各开发活动交叉、迭代地进行。
来源:https://www.cnblogs.com/SQP51312/p/6019923.html