网站大量收购闲置独家精品文档,联系QQ:2885784924

第2章(统一软件开发过程).ppt

  1. 1、本文档共49页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
统一软件开发过程 -The Unified Software Development Process(UP);统一过程的发展历程;Ericsson方法;统一过程的发展历程-Ericsson方法;统一过程的发展历程;统一过程的发展历程-对象工厂;统一过程的发展历程;统一过程的发展历程-Rational方法;统一过程的发展历程;统一过程的发展历程 -Rational对象工厂过程;统一过程的发展历程-UML;统一过程的发展历程-RUP;统一过程的特点;RUP提高了团队生产力; RUP强调开发和维护模型;RUP是有效地使用UML的指南;RUP能对大部分开发过程提供自动化的工具支持;RUP是可配置的过程;统一过程是用例驱动的;基于用例模型,软件开发人员创建一系列的设计和实现模型来实现各种用例。开发人员审查每个后续模型,以确保它们符合用例模型。测试人员将测试软件系统的实现,以确保实现模型中的组件正确实现了用例。这样,用例不仅启动了开发过程,而且与开发过程结合在一起。 “用例驱动”意指开发过程将遵循一个流程:它将按照一系列由用例驱动的工作流程来进行。首先是定义用例,然后是设计用例,最后, 用例是测试人员构建测试案例的来源。 尽管确实是用例在驱动整个开发过程,但是我们并不能孤立地选择用例。它们必须与系统架构协同开发。也就是说,用例驱动系统架构而系统架构反过来又影响用例的选择。因此,随着生命期的继续,系统架构和用例都逐渐成熟。;统一过程是以构架为中心的;软件基本架构这个概念体现了系统最为静态和动态的方面。基本架构根据企业的需求来设计,而这种需求则是由用户和其他利益关联人所感知,并反映在用例之中。然而,它还受其他许多因素的影响:软件运行的平台(例如计算机基本结构、操作系统、数据库管理系统和网络通信协议等)、可得到的可再用构件(比如图形用户界面框架)、配置方面的考虑、已有系统和非功能性需求(比如性能和可靠性)等。 基本架构是一个关于整体设计的视图,在这个视图中,省略了一些细节,以使软件的更为重要的特征体现得更为明显。由于什么东西是重要的部分取决于主观判断,而这种判断又来自于经验,因此,基本架构的价值取决于被指派完成该任务的人的素质。然而,过程有???于架构设计师集中精力于正确的目标,比如可理解性、顺应未来变化的灵活性和可重用性。;用例和基本架构间如何相关呢?每个产品都是功能和形式的有机统一。仅仅只有其中之一,都是不完整的。只有平衡把握这两个方面才能得到一个成功的产品。在这种情况下,功能应与用例相对应,而形式应当与基本架构相对应。用例和基本架构之间必定是相互影响的,这是一个“鸡和蛋”的问题。 一方面,实现的用例必须与基本架构相适应。而另一方面,基本架构必须留有实现现在和未来需要的所有用例的空间。在实践中,基本架构和用例必须平行进化 。;因此,架构设计师通过某种表现形式(Form)刻画一个系统。这个形式即基本架构必须被设计成让系统不仅在初始开发期间, 而且在未来的版本进化过程中能不断发展。要找到这样的一个形式,架构设计师必须对系统的关键功能也就是系统的关键用例有一个总体性把握。这些关键用例只占用例总数的5-10%,但是它们却是最重要的,因为它们将构成整个系统的核心功能。;基本步骤;统一过程是迭代和增量的过程;开发人员根据两个因素来选择在一次迭代中要实现什么。 首先,迭代与一组用例相关,这些用例共同扩展了到目前为止所开发的产品的可用性。 其次,迭代涉及最为重要的风险。后续迭代是建立在先前的迭代完成后的开发成果之上的。它是一个小项目,因此,从用例开始,它还是必须经过下列开发工作:分析、设计、实现和测试,这样,就以可执行代码的形式在迭代中实现了用例。当然,一项增量并不一定就是添加性的。特别是在生命期的早期阶段,开发人员可能会用一个更为详尽或者复杂的设计来取代那种较为简单的设计。在后期,增量通常都是添加性的 。;在每次迭代中,开发人员标识并详细定义相关用例,利用已选定的基本架构作为指导来建立一个设计,以组件形式来实现该设计,并验证这些组件满足了用例。如果一次迭代达到了它的目标(通常如此),那么开发过程就进入下一次迭代的开发了。当一次迭代没有满足它的目标时,开发人员必须重新审查先前的决定,试行一个新方法 。 为了在开发过程中实现经济效益最大化,项目组应设法选择为达到项目目标所需要的迭代过程。它应当以逻辑顺序排列相关迭代。一个成功的项目所经历的过程通常都只与开发人员当初所计划的有细微的偏差。 当然,考虑到出现不可预见的问题需要额外的迭代或者改变迭代的顺序的影响,开发过程可能需要更多的时间和精力。使不可预见的问题减小到最低限度,也是风险控制的一个目标之一 。;模型逐渐增加 ;受控制的迭代过程的好处;;统一过程的生命周期;每个阶段的结果都是一个里程碑 ;产品;;;;一

文档评论(0)

wxc6688 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档