好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

软件需求-第二部分.ppt

48页
  • 卖家[上传人]:wt****50
  • 文档编号:50766867
  • 上传时间:2018-08-10
  • 文档格式:PPT
  • 文档大小:581KB
  • / 48 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 软件需求(二)周勇 yzhou@就理论而言,理论和实践并无差异但真付诸实 行,差异即开始显现 ——Jan L.A. van de Snepscheut 年7月 SEI of ECNU版权所有© 软件需求工程 2-2需求工程与需求工程过程p软件需求与产品生命周期 n瀑布模型n快速应用开发(RAD) 模型n螺旋模型nRUPn迭代式模型n形式化方法n关于选择生命周期模型的总结p需求工程 n什么是需求工程n需求工程的内容n需求工程过程n需求工程的涉众人员n需求工程的方法n面向对象的需求工程方法n面向对象的需求工作流n需求过程的改进年7月 SEI of ECNU版权所有© 软件需求工程 2-3第3章 主要软件生命周期模型 p瀑布模型p快速应用开发模型(RAD)p螺旋模型pRUPp迭代式模型 年7月 SEI of ECNU版权所有© 软件需求工程 2-4瀑布模型(Waterfall Model) 年7月 SEI of ECNU版权所有© 软件需求工程 2-5瀑布模型的优点 p客户很容易熟悉该模型。

      p以有序的方式解决复杂的问题,易于理解,目标 简单—完成所需要的活动p可以严格控制项目进程,使项目管理易于实施p方便按阶段设置里程碑,便于项目跟踪p定义了质量控制过程运用该过程来确定系统的 质量 年7月 SEI of ECNU版权所有© 软件需求工程 2-6瀑布模型的缺点 (一)p它有内在的线性顺序,尝试重新使用两个或更多阶段开改正一个问 题或缺陷,会导致成本上升和进度安排上工作量的急剧增加p它不能准确反映软件开发中解决问题的特点各阶段严格与活动一 致,而不管开发团队的实际工作如何p它的状态和进展容易给人以错觉,实际工作中“完成50%的工作”对 项目经理来说并无实际意义p最后集成造成较大的风险由于过程中的线性传递特点,常常在集 成中出现问题时就已为时太晚最后会发现前期未发现的错误或设 计缺陷,由于没有时间恢复而增加了风险p它是文档驱动的,文档工作量非常大p当瀑布模型必须面对范围管理的挑战时,就显得力不从心了如果 把这个模型应用于大范围的项目时,会出现最后期限到来时,没有 任何实质性的成果,系统集成和测试被迫推迟或放弃,在前期需求 规格说明、设计和编码中可观的投入未能产生有效的成果,没有任 何可提交的产品。

      年7月 SEI of ECNU版权所有© 软件需求工程 2-7瀑布模型的缺点 (二)p实际的项目很少按照该模型给出的顺序进行虽然瀑布 模型能够容许迭代,但却是间接的结果,在项目组的 开发过程中变化可能引起混乱p用户常常难以清楚地给出所有需求,而瀑布模型却要求 如此,它还不能接受在许多项目的开始阶段自然存在的 不确定性p开发者常常被不必要地耽搁在对实际项目的分析中, Bradac[BRA ,1994]发现传统生命周期的线性特征 会导致“阻塞状态”,其中某些项目组成员不得不等待组 内其他成员先完成其依赖的任务事实上,花在等待上 的时间可能会超过花在开发工作上的时间阻塞状态经 常发生性顺序过程的开始和结束 年7月 SEI of ECNU版权所有© 软件需求工程 2-8采用瀑布模型需要具备的项目特征 p在系统开发前要对需求有完整、全面、清晰的了 解。

      p上述需求不存在隐含的不可克服的风险p需求变更不能过于频繁p不同涉众的需求互相兼容,不存在明显的冲突p开发团队掌握了解决需求问题的有效方法p开发期限允许分阶段地串行工作 年7月 SEI of ECNU版权所有© 软件需求工程 2-9快速应用开发(RAD) 模型 年7月 SEI of ECNU版权所有© 软件需求工程 2-10RAD模型的优点 p采用高效率的开发工具,从而减少了整个产品的 开发周期提高了生产率,降低了成本p用户能够持续地参与开发,提高了用户参与程度 ,从而使用户的满意度上升,保证了系统能够满 足用户的需要p工作重点从文档转为构建,所见即所得 年7月 SEI of ECNU版权所有© 软件需求工程 2-11RAD模型的缺点 p如果用户不能持续地参与整个生命周期中,最终产品会 受到负面影响。

      p要求系统能适当模块化,如果没有可重用的组件,它的 效率就会下降p盲目应用时,会缺乏成本概念和项目完成的时间限制 项目有永远不能完结的风险p对于大型的、但可伸缩的项目,RAD 需要足够的人力资 源以创建足够的RAD 组pRAD 要求承担必要的快速活动的开发者和用户在一个很 短的时间框架下完成一个系统如果两方中的任何一方 没有完成约定,都会导致RAD 项目失败 年7月 SEI of ECNU版权所有© 软件需求工程 2-12采用RAD模型的项目特征 p系统可模块化(基于组件的结构)和可缩放p用户能参与到整个生命周期中p项目开发周期很短通常约60天p项目团队熟悉问题领域,能熟练使用开发工具 年7月 SEI of ECNU版权所有© 软件需求工程 2-13螺旋模型年7月 SEI of ECNU版权所有© 软件需求工程 2-14螺旋模型的优点 p能够及时找到项目存在的风险,避免因为克服不 了的困难而造成大的损失。

      p使用户能够尽早将信息经常反馈给开发人员,保 证了产品的正确性和高质量p可以方便地评估和验证每次迭代的成果;实现从 开发到维护的无缝连接 年7月 SEI of ECNU版权所有© 软件需求工程 2-15螺旋模型的缺点 p如果项目本身是低风险的或者规模较小, 采用该模型可能产生昂贵的成本每一次 螺旋结束后评估风险的时间及人工耗费都 较大p模型本身比较复杂,开发人员和用户难于 掌握p大量的中间阶段会产生额外的内外部文档 p难以定义每阶段的目标 年7月 SEI of ECNU版权所有© 软件需求工程 2-16采用螺旋模型的项目特征 p适用于大型项目;更适用于内部开发(指 没有外包的开发内容)p用于新功能、新产品或需要采用新技术时 p收益不确定,项目不能确保成功时p用户不能确定其需求或需求很复杂时 年7月 SEI of ECNU版权所有© 软件需求工程 2-17统一软件过程 (RUP)年7月 SEI of ECNU版权所有© 软件需求工程 2-18RUP的核心概念 年7月 SEI of ECNU版权所有© 软件需求工程 2-19RUP的核心工作流(一) p6个核心过程工作流 n商业建模(Business Modeling ) n需求(Requirements)n分析和设计(Analysis & Design) n实现(Implementation) n测试(Test) n部署(Deployment) 年7月 SEI of ECNU版权所有© 软件需求工程 2-20RUP的核心工作流(二)p3个核心支持工作流 n配置和变更管理(Configuration & Change Management) n项目管理(Project Management) n环境(Environment) 年7月 SEI of ECNU版权所有© 软件需求工程 2-21RUP的裁剪 p确定本项目需要哪些工作流。

      RUP的9个核心工作流并 不总是需要的,可以取舍p确定每个工作流需要哪些制品p确定4个阶段之间如何演进确定阶段间演进要以风险控 制为原则,决定每个阶段要那些工作流,每个工作流执 行到什么程度,制品有那些,每个制品完成到什么程度 p确定每个阶段内的迭代计划规划RUP的4个阶段中每 次迭代开发的内容p规划工作流内部结构工作流涉及角色、活动及制品, 它的复杂程度与项目规模即角色多少有关最后规划工 作流的内部结构,通常用活动图的形式给出 年7月 SEI of ECNU版权所有© 软件需求工程 2-22RUP的迭代开发模式 年7月 SEI of ECNU版权所有© 软件需求工程 2-23多次迭代 年7月 SEI of ECNU版权所有© 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.