- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第九讲 统一建模语言UML和Rational统一过程RUP
现代软件开发面临着要尽快将产品推向市场和开发高质量、低成本产品的矛盾。要成功解决软件开发中的矛盾,必须将软件开发作为一种团队活动。为了有效组织开发和进行交流,团队中不同参与者统一使用公共的过程、公共的表达语言、以及支持该语言和过程的工具。Rational统一过程(RUP)就是这样一种公共过程,而且已经在多个软件开发组织的实践中被证实可以有效解决上述矛盾。统一建模语言(UML)则可以作为开发团队的公共语言。UML不是完整的开发方法,UML规范也没有定义标准的过程,而RUP则是有效使用UML的指南。本讲着重介绍UML和RUP的基本概念,并描述了如何在RUP的指导下用UML建模。
一.引言
现代软件开发中存在着一个基本矛盾:一方面,开发组织需要将产品尽快推向市场;另一方面,推出的软件系统必须兼具高质量和低成本。要在这二者之间取得平衡很困难:仓促地将一个软件系统推向市场,其质量肯定会受到影响;但是过分注重质量可能会需要过多的时间才能将软件交给用户。
要解决这个矛盾,首先要认识到软件开发已经发生了本质的变化。以前,许多信息系统的体系结构相当简单:上层的应用程序建立在中间层上,中间层则封装了业务规则和数据存取;中间层建立在持久存储之上,通常表现为一个关系数据库,这个数据库实质上就是系统的中心。Client/Server体系结构的出现有助于实现这种三层分离的体系,并且易于有效控制系统的变更。特别地,在保持系统状态不变的情况下可以快速创建和修改应用,可以引入新的业务规则而不影响系统的稳定,也可以随着时间以新的和不可预知的方式来进行数据挖掘。这种稳定的体系结构使得许多组织以相应的形式组织他们的开发团队:分析人员和最终领域专家一起将用户的要求转化为需求,数据建模人员建立满足用户功能需求的领域模型,应用开发人员则迅速建造满足系统行为需求的新系统。
然而,随着Web的出现,软件开发的世界发生了不可逆转的改变。首先,传统C/S结构的系统中,用户的数目是可以控制的,通常是数百或者数千。而Web上一个系统的用户可能数以百万计,并且大多不在系统开发组织的控制之中。再者,在传统的C/S系统中,应用和数据在概念上距离相当小,而Web上的许多系统都是由数千个可移动的部件组成,其中有使用脚本语言的,有经过编译的,使用的机制与传统的关系型存储大相径庭。第三,在C/S系统中,变更是不可避免的,但可以适度地控制;而在Web上,变更是持续的,并且在系统体系结构和实现技术的每个层次上都会发生。最后,在C/S系统中,参与系统开发的人员相对较少,而在Web上除了传统的软件开发团队以外,还有许多新的参与者,从内容创建人员、信息架构构造人员到网络设计人员,大家共同合作进行E-软件的开发。
另外,传统上着重处理大量数据的系统在实现上是相对同构的,主要使用Cobol语言。而Web的出现改变了一切。在Web上一个这样的系统可能在服务器端使用Cobol、C++或Java,或者少量的脚本语言和4GL,在客户端使用传统的语言如VB和Java。有时也会使用诸如XML这样的语言,而且XML本身就是作为一种在Web上表示结构化数据的通用语言出现的。除了面对这些庞杂的编程语言,开发队伍还必须处理众多的技术,如Micosoft的WinDNA,Sun的EJB等,这些技术提供给开发人员的编程模型也各不相同。
对于一个组织而言,开发队伍的成员能够以一种通用的方式沟通是至关重要的,不同的参与者对系统的设计和实现有不同的看法,只有使用通用的语言表达,才可能统一开发团队的活动。
因此,要成功解决软件开发中的矛盾,必须将软件开发作为一种团队活动,团队中从事开发和部署的不同参与者统一使用公共的过程、公共的表达语言、以及支持该语言和过程的工具。
Rational统一过程(Rational Unified Process,RUP)就是这样一种公共过程,而且已经在多个软件开发组织的实践中被证实可以有效解决上述矛盾。RUP提供在开发机构中分派任务和责任的纪律化方法,它的目标是在可预见的日程和预算的前提下,确保满足最终用户需求的高质量产品。RUP是风险和用例驱动的过程,它鼓励系统可执行版本的迭代和增量式交付,其迭代以用例为依据。除此之外,RUP还是体系结构优先的过程,系统的体系结构在早期就稳定下来,以便对设计进行验证,在后续的迭代中逐步进行精化。
统一建模语言UML(Unified Modelling Languae,UML)可以作为开发团队的公共语言。UML是一种直观化、明确化、构建和文档化软件系统产物的图形化语言。UML最主要的目标是成为所有建模人员可以使用的通用建模语言,它包含了当前主流建模技术的概念,并针对许多当前软件开发的问题,如大规模、分布、并发和团队开发等。
原创力文档


文档评论(0)