UML在系统需求分析中的应用研究_第1页
UML在系统需求分析中的应用研究_第2页
UML在系统需求分析中的应用研究_第3页
UML在系统需求分析中的应用研究_第4页
UML在系统需求分析中的应用研究_第5页
已阅读5页,还剩13页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1UML在系统需求分析中的应用研究基于 UML 的虚拟家居系统需求分析摘要:UML(Unified Modeling Language )是建立系统模型和分析业务处理流程强有力的工具,从不同角度描述系统,帮助分析人员弄清楚“做什么,谁去做,何时做,以什么顺序做” 。 本文首先简要的介绍了 UML 的定义以及用例图、类图、系统包图、顺序图和合作图等基本概念,之后以虚拟家居系统(VHSDD) 为例,结合 UML 建模工具 Rational Rose 2000,着重分析了 VHSDD 系统的用例图(User case) 、类图(Class Diagram ) 、顺序图( Sequence Diagram)和合作图(Collaboration Diagram)等模型,探讨了基于 UML 的系统需求分析的设计方法。意在说明 UML 的若干视图具有从多角度描述系统的优点,阐述了这种建模机制如何为系统应用中的需求分析提供新的技术和方法,分析了 UML 建模的基本思想和过程。关键词:UML;需求分析;面向对象;用例;The Investigation of Application of UML2in Requirement AnalysisRequirement analysis for Virtual House System Driving by Database base on UML【Abstract】 UML is a powerful notation for building software blueprints and analyzing information. The UML diagrams capture business process information of the analyzed application from many aspects and can help the users understand what to do, how to do ,who do it. The paper introduces the concept of Unified Modeling Language (UML),and it discusses the basic concept of user case diagram, class diagram, state diagram and interaction diagram. And the paper focuses on the design of requirement analysis based on UML with an example of Virtual House System Driving by Database(VHSDD).It conjoin UML modeling toolRational Rose 2000, emphasized to analyze User case, Class Diagram, Sequence Diagram and Collaboration Diagram etc. model of VHSDD. Not only the UML diagrams capture business process information from many aspects, but also the Unified modeling method provides a new technology for the requirement analysis, and analyzes the basic idea and process of UML-Based Modelization.【Key words】 UML; Requirement analysis; Object-Oriented; User case3目 录1 引言 .22 UML 统一建模语言 .221 UML 的发展历程 .222 UML 的内容 .223 UML 的主要特点 .224 UML 的应用领域 .23 需求分析描述 .24 UML 对需求分析的支持 .24.1 VHSDD 系统描述 .24.2 用例模型 .24.2.1 角色识别 .24.2.2 用例识别 .24.2.3 用例描述及用例模型 .24.3 UML 静态建模机制 .24.3.1 类模型 .24.3.2 系统包图 .24.4 动态模型 .24.4.1 顺序图 .24.4.2 合作图 .245 结束语 .21 引言在长期的面向对象程序设计的研究和实践中,人们也愈来愈深刻地认识到建立准确的表示模型是把握复杂系统的关键。模型可以使人们从全局上把握系统的全貌及其相关部件之间的联系,而无需过早地陷入各个模块的细节。公认的面向对象建模语言出现于 70 年代中期。从 1989 年到 1994年,其数量从不到十种增加到了五十多 种。在众多的建模语言中,语言的创造者努力推崇自己的产品,并在实践中不断完善,在这批方法中Booch 方法、OMT、OOSE、和 OOA/OOD 方法较有影响力。但是,由于各种建模语言所固有的差异和优缺点,使得建模语言使用者无所适从,不知道自己该选用那种建模语言。概括起来,首先,面对众多的建模语言,用户由于没有能力区别不同语言之间的差别,因此很难找到一种比较适合其应用特点的语言;其次,众多的建模语言实际上各有千秋;第三,虽然不同的建模语言大多类同,但仍存在某些细微的差别,极大地妨碍了用户之间的交流。就是在这几种广为人们接受的方法间也有千差万别,用户很难在不同的方法的模型间进行转换。因此,人们就呼吁一种集众家之长的统一的建模语言的出现,UML 就是在这种背景下应运而生。2 UML 统一建模语言21 UML 的发展历程UML 的开发过程始于 1994 年,当时 Grady Booch 和 Rurobaugh 在Rational Software 公司开始了统一 Booch 和 OMT 的工作。在 1995 年10 月,他们工作的结果是推出 Unified Methods0.8。随后 Ivar Jacobson 和他的 Objectory 公司加入到 Rational,同时也加入到统一方法的工作中去,Booch, Rambangh 和 Jacobson 的努力导致 UML0.9 和UML0.91 的文档在 1996 年 4 月和 10 月相继推出。这时组织看到了 UML的潜力,OMG 发出 RFP.向各大公司广泛征求意见。各大公司对 UML 提出5了许多建议和要求。最终在 1997 年 1 月推出 UML 1.1。UML 的发展过程可用图 1 表示。至今,UML 本身不断的发展不断的完善,已经发展到了 UML 2.0 版本。图 1 UML 的发展历程22 UML 的内容由于 UML 是从 Booch、 OMT、OOSE 和其他一些方法演化而来,因此 UML 引用了这些方法中的某些内容,而抛弃了那些不清晰的、冗余的和很少使用的内容,并且还加入了一些新的内容。作为一种建模语言,UML 的定义包括 UML 语义和 UML 语法两个部分。6(1) UML 语义 描述基于 UML 的精确元模型定义。元模型为 UML的所有元素在语法和语义上提供了简单、一致、通用的定义性说明,使开发者能在语义上取得一致,消除了因人而异的最佳表达方法所造成的影响。此外 UML 还支持对元模型的扩展定义。(2) UML 语法 定义 UML 符号的表示法为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。这些图形符号和文字所表达的是应用级的模型在语义上它是 UML 元模型的实例。UML 提供了五类图共九种图形来定义系统模型:第一类是用例图( User diagram ),从用户角度描述系统功能,并指出各功能的作者。第二类是静态图( Static diagram ),包括类图、对象图和包图。其中类图描述系统中类的静态结构。不仅定义系统中的类,表示类之间的联系如关联、依赖、聚合等,也包括类的内部结构。类图描述的是一种静态关系,在系统的整个生命周期都是有效的。对象图是类图的实例,几乎使用与类图完全相同的标识。他们的不同点在于对象图显示类的多个对象实例,而不是实际的类。一个对象图是类图的一个实例。由于对象存在生命周期,因此对象图只能在系统某一时间段存在。包由包或类组成,表示包与包之间的关系。包图用于描述系统的分层结构。第三类是行为图( Behavior diagram ),描述系统的动态模型和组成对象间的交互关系。其中状态图描述类的对象所有可能的状态以及事件发生时状态的转移条件。通常,状态图是对类图的补充。在实用上并不需要为所有的类画状态图,仅为那些有多个状态其行为受外界环境的影响并且发生改变的类画状态图。而活动图描述满足用例要求所要进行的活动以及活动间的约束关系,有利于识别并行活动。第四类是交互图( Interactive diagram ),描述对象间的交互关系。其中顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互;合作图描述对象间的协作关系,合作图跟顺序图相似,显示对象间的动态合作关系。除显示信息交换外,合作图还显示对象以及它们之间的关系。如果强调时间和顺序,则使用顺序图;如果强调上下级关系,则选择合作图。这两种图合称为交互图。第五类是实现图( Implementation diagram )。其中构件图描述代码部件的物理结构及各部件之间的依赖关系。一个部件可能是一个资源代码部件、一个二进制部件或一个可执行部件。它包含逻辑类或实现类的有关信息。部件图有助于分析和理解部件之间的相互影响程度。7以上这些图形极大的丰富了 UML 描述问题的能力。UML 的描述机制中用例图、类图、包图、对象图、构件图和配置图用来建立系统的静态模型,属于静态建模机制;状态图、活动图、顺序图和合作图用来建立系统的动态模型,属于动态建模机制。23 UML 的主要特点标准建模语言 UML 的主要特点可以用以下三点来概括:(1) UML 统一了 Booch、OMT 和 OOSE 等方法中的基本概念。(2) UML 还吸取了面向对象技术领域中其他流派的长处。(3) UML 在演变过程中还提出了一些新的概念,如模板、扩展机制、线程与进程、并发和开发模式等等。24 UML 的应用领域UML 的目标是以面向对象图的方式来描述任何类型的系统,具有很宽的应用领域。其中最常用的是建立软件系统的模型,但它同样可以用于描述非软件领域的系统,如机械系统、企业机构或业务过程,以及处理复杂数据的信息系统、具有实时要求的工业系统或工业过程等。总之,UML 是一个通用的标准建模语言,可以对任何具有静态结构和动态行为的系统进行建模。此外,UML 适用于系统开发过程中从需求规格描述到系统完成后测试的不同阶段。在需求分析阶段,可以用用例来捕获用户需求。通过用例建模,描述对系统感兴趣的外部角色及其对系统(用例)的功能要求。分析阶段主要关心问题域中的主要概念(如抽象、类和对象等)和机制,需要识别这些类以及它们相互间的关系,并用 UML 类图来描述。为实现用例,类之间需要协作,这可以用 UML 动态模型来描述。在分析阶段,只对问题域的对象(现实世界的概念)建模,而不考虑定义软件系统中技术细节的类(如处理用户接口、数据库、通讯和并行性等问题的类)。这些技术细节将在设计阶段引入,因此设计阶段为构造阶段提供更详细的规格说明。总之,标准建模语言 UML 适用于以面向对象技术来描述任何类型的系统,而且适用于系统开发的不同阶段,支持从需求设计到测试和维护的全生命周期。83 需求分析描述需求分析就是描述系统的功能需求,通过定义系统的关键域类来建立模型。需求分析是软件生命周期的一个重要阶段,它最根本的任务是确定为了满足用户需要的系统必须做什么。具体的说,就是应该确定系统必须具有的功能和性能。需求分析的根本目的就是在开发者和提出需求的用户之间建立一种理解和勾通的机制, 建立可理解的现实世界模型。因此,典型情况下,需求分析是开发人员和用户一起来完成的。需求分析不受技术方案或细节的限制。在需求分析阶段,开发人员不必考虑代码和程序的问题。它是迈向真正理解去求和所要设计系统的第一步。需求分析要解决问题可以归结为一个流程:系统要做什么 谁去做 如何去做何时做 做的顺序又怎样。不适当的需求定义却常常忽略了某个环节或其中环节的必要联系,从而导致产品质量低下、开发周期漫长或遗漏关键功能等问题。因此,需求分析也是直接关系到一个开发系统的成败一步。4 UML 对需求分析的支持UML 为软件系统的需求分析提供了强大而较为全面的模型,本节结合数据库驱动的虚拟家居系统(Virtual House System Driving by Database 下文简称:VHSDD) 去阐述 UML 在实际需求分析中的应用。着重分析用例图(User case) ,类图(Class Diagram ) ,顺序图(Sequence Diagram)和合作图( Collaboration Diagram)等模型。这种面向对象需求分析就是把对象作为一个整体,同时又以多态性与继承性的观点来对问题进行空间和时序上的研究,以便产生一个外部可观察的行为。本节还将对 UML 的建模机制及其特点进行分析,从静态对象的设计模式,到动态对象模型的方案说明。4.1 VHSDD 系统描述目前国内商品房开发商用于展示各自的样板房尚缺乏一种比较有效、方便且能比较比较好的表现出各自样板房的方法。VHSDD 系统就是在这样一个背景下提出。本系统希望通过在网络上比较好的表现出商品房开发商的样板房的 3D 模型。客户(商品房开发商或者建筑商)可以通过本系统对自己的样板房进行描述,还可以对房内的摆设、墙纸进行设置。系统管理员对使用者的身份进行核实并录入系统,还要根据需求添加家居模型数据删除损坏或者过时的家居模型数据。9本系统要求未注册客户首先要进行注册登陆,然后才可以新建样品房模型并进行管理;对于注册客户必须先登陆系统,然后才对自己的样品房模型进行管理(新建样品房模型、删除更新已经建立的样品房模型) 。VHSDD 系统管理员也是系统的用户,管理员也需要注册登陆,他们主要工作是对系统进行维护:对客户信息进行管理(添加删除客户注册资料) 、对样品房数据进行管理(添加删除样品房数据) 。由以上分析我们可以获得一份系统的需求说明:以下是 VHSDD 系统需求说明书:(1)管理员是 VHSDD 系统的崔员,负责与客户及系统场景及模型数据打交道,他们的工作要得到系统支持。(2)管理员要注册并登陆系统。(3)管理员负责系统场景及模型数据的添加,修复删除损坏的场景及模型数据。(4)管理员负责客户信息的管理,添加新注册客户资料,删除过期客户资料。(5)客户必须在系统中注册。(6)客户登陆后可以调用场景及模型数据对场景及模型进行新建或添加,也可以删除自己建立好场景及模型。(7)系统通过在 Internet 和终端 PC 机上实现,并有一个良好的图形用户界面(GUI) 。4.2 用例模型前面一小节简单的描述了 VHSDD 系统,描述得简短用的都是自然语言,这一点并不严格。所以我们需要使用用例模型较正式、准确的识别系统的需求。面向对象分析上来看,用例模型是获取系统需求的一个重要的手段。建立用例模型的第一步是要角色识别。4.2.1 角色识别角色(a

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论