欢迎光临散文网 会员登陆 & 注册

软件开发模型(软件生命周期模型)

2022-05-17 22:43 作者:Tuple_元组  | 我要投稿

(1)瀑布模型:(适应结构化开发方法)用于需求明确或很少变动的项目,也可用在以往已有类似经验的项目上。

(2)V模型、W模型:都是瀑布模型的变体,它们将测试阶段与开发阶段进行对应。V模型中:需求分析-验收测试(验证业务需求)、概要设计-系统测试(验证整体运行情况)、详细设计-集成测试(验证模块间接口情况)、编码-单元测试(验证边界值错误)。
其中V模型特点:开发和测试同等重要;每个开发阶段都有一个测试级别与之相对应;测试依旧是开发生命周期中的阶段,与瀑布模型不同的是,有多个测试级别与开发阶段对应;适用于需求明确和需求变更不频繁的情形。

(3)原型模型:(适应原型化开发方法)用于难以将需求描述清楚的项目,通过构建原型来确定需求。原型分:抛弃式原型、进化型原型。原型的特点:实际可行;具有最终系统的基本特征;构造方便、快速,造价低。

(4)螺旋模型:是一个演化软件过程模型,将原型模型中的迭代特征和瀑布模型线性顺序控制和系统化的方面结合起来。每个周期均包括:制订计划(决定目标、方案和限制)、风险分析(评价方案、识别风险、消除风险)、实施工程(开发、验证下一产品)和客户评估等4个阶段。特别适用庞大而复杂、高风险系统开发。

(5)敏捷开发模型(Agile)是一种以人为核心、迭代、循序渐进的开发方法,适用于一开始并没有或不能完整地确定出需求和范围的项目或者需要应对迅速变更化的环境,或者需求和范围难以事先确定,或者能够以有利于干系人的方式定义最小增量的改进,强调团队成员与业务专家的紧密协作、面对面构通、频繁交付新的版本。


Scrum模型

Scrum是其中的一种迭代式增加软件开发方法。

◆三个角色:

产品负责人 Product Owner: 负责维护产品订单的人,代表利益相关者的利益。

团队负责人 Scrum Master: 为Scrum过程负责的人,确保scrum的正确使用并使得Scrum的收益最大化。

开发团队 Team: 由负责自我管理开发产品的人组成的跨职能团队。

◆三个物件:

产品待办事项列表 Product Backlog:根据用户价值进行优先级排序的高层需求。

冲刺订单 Sprint Backlog:要在冲刺中完成的任务的清单。

可交付产品增量 Increment:最终交付给客户的内容

◆四个会议:

冲刺计划会议 Sprint Planning Meeting:在每个冲刺之初,由产品负责人讲解需求,并由开发团队进行估算的计划会议。

每日站立会议Daily Standup Meeting:团队每天进行沟通的内部短会,因一般只有15分钟且站立进行而得名。

迭代评审会议 Review Meeting:在冲刺结束前给产品负责人演示并接受评价的会议。

迭代回顾会议 Retrospective Meeting:在冲刺结束后召开的关于自我持续改进的会议。

◆其他:

冲刺 Sprint: 一个时间周期(通常在2周到1个月之间),开发团队会在此期间内完成所承诺的一组订单项的开发。

(6)喷泉模型(适用于面向对象的开发方法):体现了面向对象开发过程的迭代和连续性,分析、设计、编码等活动之间没有明显的界面,也具有一定的迭代性。

优点:该模型的各个阶段没有明显的界限,开发人员可以同步进行开发。其优点是可以提高软件项目开发效率,节省开发时间,适应于面向对象的软件开发过程。 

缺点:由于喷泉模型在各个开发阶段是重叠的,因此在开发过程中需要大量的开发人员,因此不利于项目的管理。此外这种模型要求严格管理文档,使得审核的难度加大,尤其是面对可能随时加入各种信息、需求与资料的情况。

(7)迭代模型:时间维度上分为初始、细化、构造、移交等4个阶段,每个阶段都有业务建模、需求获取、分析与设计、实现、测试、部署等环节的工作内容,每个阶段上述环节工作量不同。

8)统一过程模型(Rational Unified Process RUP)(是上面迭代模型中的一种):是一种以用例驱动、以体系结构为核心、迭代及增量的软件过程模型,由UML方法和工具支持,广泛应用于各类面向对象项目。

RUP二维模型

它有6个核心工作流:业务建模(或称商业建模)、需求、分析设计、实现、测试、部署,和 3个支持工作流:配置与变更管理、项目管理和环境,分为初始、细化、构建、交付等4个阶段,并不断迭代。

软件开发模型(软件生命周期模型)的评论 (共 条)

分享到微博请遵守国家法律