软件过程模型

软件过程模型

软件过程模型是对软件开发全部过程的抽象,对软件全部开发过程中所涉及的活动、以及活动之间的关系的抽象。常见的软件工程模型:瀑布模型、原型模型、增量模型、喷泉模型。图中实线箭头表示开发过程,虚线箭头表示维护过程。实际的瀑布模型当在后面阶段发现前面阶段的错误时,需要沿图中左侧的反馈线返回前面的阶段,修正前面阶段的产品之后再回来继续完成后面阶段的任务。

  1. 软件过程模型:瀑布模型
    瀑布模型
    特点:自顶向下,逐层细化;各个活动之间具有顺序性和依赖性;上一个阶段结束,下一个阶段开始;上一个阶段的输出是下一个阶段的开始;侧重于文档与产出物。优点:追求效率;要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证,得到一致、完整、准确、无二义性的文档。缺点:过于理想化;缺乏灵活性,阶段划分完全固定,产生大量文档,极大地增加了工作量。
  2. 软件过程模型:原型模型
    原型模型
    特点:快速原型模型是不带反馈环的,软件产品的开发基本上是线性顺序进行的。准确地确定用户的需求;软件的一个早期可运行的版本,它反映最终系统的部分重要功能和性能。优点:用户参与可以尽早揭示软件中可能存在的风险及不确定因素,开发过程与用户培训过程同步,系统易维护,对用户更友好。缺点:大型项目构造源性比较困难,文档容易被忽略。
  3. 软件过程模型:增量模型
    第一种变体:先总体分析设计,开发时采用增量方式
    增量模型
    第二种变体:完全的增量式分析、设计与开发,加快了形成产品的速度,但增加了不同构件不能组装一起的风险。
    增量模型
    特点:非整体的、搭积木的开发思想;把软件产品作为系统的增量构件来设计、编码、集成和测试;每开发一部分,向用户展示一部分。
    优点:短时间内提交部分产品,降低开发风险。
    缺点:如果需求不想早期思考的那样稳定和完整,那么一些增量就可能需要重新开发,重新发布。
  4. 软件过程模型:喷泉模型
    喷泉模型
    特点:迭代性,软件开发过程自下而上周期的各阶段是相互重叠和多次反复的,就像水喷上去又可以落下来,类似一个喷泉;无间隙性,各个开发阶段没有特定的次序要求,并且可以交互进行,可以在某个开发阶段中随时补充其他任何开发阶段中的遗漏。优点:提高效率,节省开发时间。缺点:没有严格的阶段区分,不便于管理。
    各个模型的比较:
过程模型优点缺点
瀑布模型规范,文档驱动不灵活,产生大量文档
原型模型尽早发现需求,揭示风险对于不是与用户密切交互的系统,较难获取用户评价;容易忽视文档
增量模型快速提交产品,控制风险增加了不同构件集成的风险
喷泉模型提高效率,节省开发时间不严格区分开发阶段,不便于管理
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值