Rational Rose UML建立系统模型.docx
《Rational Rose UML建立系统模型.docx》由会员分享,可在线阅读,更多相关《Rational Rose UML建立系统模型.docx(52页珍藏版)》请在冰豆网上搜索。
RationalRoseUML建立系统模型
毕业设计任务书
一.题目:
1.课题:
使用UML和RationalRose设计一个应用系统(图书馆管理系统)模型
二.课题来源及选题依据:
本课题来自于导师孙荣胜。
UML是面向对象技术领域内占主导地位的标准建模语言。
UML是信息技术行业的蓝图,是详细描述系统结构的方法。
利用这个蓝图,我们建立和维护系统就越来越容易,保证系统能适应需求的改变。
RationalRose是分析和设计面向对象软件系统的强大的可视化工具,可以用来先建模系统在编写代码,从而一开始就保证系统结构合理。
三.本设计(论文及其它)应达到的要求:
本课题要求用统一建模语言(UML)和RationalRose设计面向对象应用程序的模型
主要任务为:
1.对图书管理系统用UML和Rose进行项目需求分析、结构规划,用Rose创建活动框图,演示事件流程,处理流程时要利用Sequence和Collaboration框图,此外还要创建组件框图。
2.用Rose创建Sequence,Collaboration,Class,Component与Deployment框图,产生框架代码,创建代码后,通过逆向转出工程代码让软件与模型同步。
3.撰写毕业设计说明书。
4.英文文献的阅读和翻译。
四.接受任务学生:
五.开始及完成日期:
六.指导老师:
摘要
UML是由一组不同框图构成的,分别提供系统设计的不同角度。
有些较高级,提供系统功能的信息;有些较详细,包括实现系统时要建立的特定类和组件;还有一些介于中间,从高层角度提供设计细节。
UML(统一建模语言)事实上是面向对象建模语言的工业标准。
他包含了许多和软件系统模型结构相匹配的子语言。
UML语言被作为一种综合性并有内在特色的语言在发展,延伸到许多特色领域中。
可视化建模和RationalRose在软件开发过程的几个阶段很有用。
在项目开始阶段,Rose可以产生业务模型使用案例模型。
在细化与构造阶段,Rose可以开发活动框图,显示事件流程。
Sequence框图和Collaboration框图显示要开发的对象,及其相互间的交互。
Rose开发的类框图显示对象间的相互关系。
组件框图显示系统组件间的相关性,并可以产生系统的框架代码。
本论文介绍了一部分UML语言的特色,并系统的分析了如何用RationalRose和UML建立一个图书馆管理系统的Rose模型。
关键字:
面向对象建模,UML,RationalRose,类框图,对象交互框图
Abstract
UMLiscomposedofagroupofdifferentdiagrams,theyprovidethedifferentpointofviewtothesystemdesign.Somearesuperior,providetheinformationofsystemfunctional;othersareparticular,consistsofspecialclassesandmodulewhichareestablishedwhenimplementthesystem.Alsosomearebetweenthetwo,theyprovidethedesignspecificfromthesuperiorpointofview.
TheUnifiedModelingLanguage(UML)isthedefactoindustrialstandardofanobject-orientedmodelinglanguage.Itconsistsofseveralsublanguageswhicharesuitedtomodelstructuralandbehavioralaspectsofasoftwaresystem.TheUMLwasdevelopedasageneral-purposelanguagetogetherwithintrinsicfeaturestoextendtheUMLtowardsproblemdomain-specificprofiles.
VisualmodelingandRationalRoseisveryusefulinthesoftwareexploitationprocess.Inthebeginning,RosecanproduceUseCasemodel.Inconformation,Rosecanempolderactivitydiagram.SequenceandCollaborationdiagramshowtheobjectstobeempolderedandthealternationbetweenthem.Theclassdiagramsshowcorrelationbetweenobjects.Themodulediagramsshowtherelativitybetweenthemodulesinsystem,anditcanproducesomesystemcodefrommodel.
ThepaperillustratesthelanguagefeaturesoftheUMLanditsadaptationmechanisms.ItsystemicanalyzeshowtobuildaRosemodeloflibrarysystembyRationalRoseandUML.
Keywords:
object-orientedmodel,UML,RationalRose,classdiagram,interactiondiagram
目录
一.题目------------------------------------------------------------------1
二.摘要------------------------------------------------------------------2
三.目录------------------------------------------------------------------4
四.内容------------------------------------------------------------------6
第一章综述
§1.1UML背景-------------------------------------------------------6
§1.2系统模型设计概要------------------------------------------------6
第二章统一建模语言UML概述
§2.1UML简介-------------------------------------------------------7
§2.1.1UML的架构-----------------------------------------------7
§2.1.2UML的模型、视图、图与系统架构建模-----------------------8
§2.1.3标准建模语言UML的主要特点-------------------------------8
§2.2UML与面向对象的软件分析与设计(OOA&D)------------------------9
§2.3标准建模语言UML的应用领域------------------------------------10
第三章RationalRose概述
§3.1RationalRose的基本内容-----------------------------------------10
§3.2什么是建模-----------------------------------------------------11
§3.2.1用RationalRose如何实现建模-------------------------------11
§3.2.2RationalRose的解决方案------------------------------------11
§3.3RationalRose的界面及Rose模型的四个视图------------------------11
第四章图书管理系统Rose模型设计过程
§4.1系统设置---平台和开发工具的选择--------------------------------13
§4.2模型总体设计---------------------------------------------------14
§4.2.1创建系统的UseCase视图-----------------------------------14
§4.2.2创建系统的Logical视图------------------------------------15
§4.2.3在Logical视图中创建类、包和Class框图----------------------26
§4.2.4创建系统的Component视图----------------------------------30
§4.2.5创建系统的Deployment视图---------------------------------32
第五章用RationalRose生成系统框架代码
§5.1生成框架代码的基本步骤-----------------------------------------33
§5.2生成什么-------------------------------------------------------34
§5.3由RationalRose生成的部分框架代码-------------------------------34
§5.4用RationalRose逆向转出工程代码简介-----------------------------42
第六章结束语----------------------------------------------------------43
五.致谢------------------------------------------------------------------44
六.英文翻译--------------------------------------------------------------45
七.参考文献--------------------------------------------------------------52
第一章综述
1.1UML背景
在这个面向对象应用程序开发不断变化的时代,在合理时间内开发和管理高质量应用程序变得越来越困难。
业务发展越来越快,更加要求企业在市场中具有竞争力和维持力,“传统”系统开发方法已经力不从心。
系统应以“Internet速度”开发。
速度的加快也要求有更加灵活的系统。
过去,用户可以向数据处理中心发送请求,两年之后才进行改变。
现在,用户向IT部门发送改变请求,要求两周内就完成。
为了面对这种挑战,制定出每个公司都能使用的通用对象模型语言,统一建模语言(UML)被及时推出。
UML是信息技术行业的蓝图,是详细描述系统结构的方法。
利用这个蓝图,我们建立和维护系统就越来越容易,保证系统能适应需求的改变。
在世界范围内,至少在近10年内,UML将是面向对象技术领域内占主导地位的标准建模语言。
采用UML作为统一的建模语言是完全必要的:
首先,过去数十种面向对象的建模语言都是相互独立的,而UML可以消除一些潜在的不必要的差异,以免用户混淆;其次,通过统一语义和符号表示,能够稳定面向对象技术市场,使项目根植于一个成熟的标准建模语言,从而可以大大拓宽所研制与开发的软件系统的适用范围,并大大提高其灵活程度。
1.2系统模型设计概要
本毕业设计是使用UML和RationalRose2001对一个图书馆管理系统进行系统设计,Rose软件是用UML快速开发应用程序的工具之一。
它支持UseCase(用例)框图、Activity()框图、Sequence框图、Collaboration框图、Statechart框图、Component框图和Deployment框图。
通过正向和逆向转出工程代码的特性,可以支持C++、Java、VisualBasic和XMLDTD的代码生成和逆向转出工程代码。
论文讲述了用UML和Rose对图书馆管理系统如何进行项目需求分析、结构规划和生成部分框架代码,生成Rose模型,并简单介绍了如何用RationalRose逆向转出工程代码。
UML的应用贯穿在系统开发的五个阶段,它们是:
1.需求分析。
UML的用例视图可以表示客户的需求。
通过用例建模,可以对外部的角色以及它们所需要的系统功能建模,角色和用例是用它们之间的关系、通信建模的。
每个用例都指定了客户的需求:
他或她需求系统干什么。
不仅要对软件系统,对商业过程也要进行需求分析。
2.分析。
分析阶段主要考虑所要解决的问题,可用UML的逻辑视图和动态视图来描述:
类图描述系统的静态结构,协作图、状态图、序列图、活动图和状态图描述系统的动态特征。
在分析阶段,只为问题领域的类建模——不定义软件系统的解决方案的细节(如用户接口的类、数据库等)。
3.设计。
在设计阶段,把分析阶段的结果扩展成技术解决方案。
加入新的类来提供技术基础结构——用户接口,数据库操作等。
分析阶段的领域问题类被嵌入在这个技术基础结构中。
设计阶段的结果是构造阶段的详细的规格说明。
4.构造。
在构造(或程序设计阶段),把设计阶段的类转换成某种面向对象程序设计语言的代码。
在对UML表示的分析和设计模型进行转换时,最好不要直接把模型转化成代码。
因为在早期阶段,模型是理解系统并对系统进行结构化的手段。
5.测试。
对系统的测试通常分为单元测试、集成测试、系统测试和接受测试几个不同级别。
单元测试是对几个类或一组类的测试,通常由程序员进行:
集成测试集成组件和类,确认它们之间是否恰当地协作;系统测试把系统当作一个“黑箱”,验证系统是否具有用户所要求的所有功能;接受测试由客户完成,与系统测试类似,验证系统是否满足所有的需求。
不同的测试小组使用不同的UML图作为他们工作的基础:
单元测试使用类图和类的规格说明,集成测试典型地使用组件图和协作图,而系统测试实现用例图来确认系统的行为符合这些图中的定义。
第二章统一建模语言UML概述
2.1UML简介
UML(统一建模语言UnifiedModelingLanguage)是一种建模语言,是第三代用来为面向对象开发系统的产品进行说明、可视化和编制文档的方法。
它是由信息系统(IS,InformationSystem)和面向对象领域的三位著名的方法学家:
GradyBooch,JamesRumbaugh和IvarJacobson(称为“三个好朋友”,theThreeAmigos)提出的。
这种建模语言得到了“UML伙伴联盟”的应用与反馈,并得到工业界的广泛支持,由OMG组织(ObjectManagementGroup)采纳作为业界标准。
UML取代目前软件业众多的分析和设计方法(Booch,Coad,Jacobson,Odell,Rumbaugh,Wirfs-Brock等)成为一种标准,这是软件界的第一次有了一个统一的建模语言。
UML是一种标准的图形化建模语言,它是面向对象分析与设计的一种标准表示。
它:
不是一种可视化的程序设计语言,而是一种可视化的建模语言;
不是工具或知识库的规格说明,而是一种建模语言规格说明,是一种表示的标准;
不是过程,也不是方法,但允许任何一种过程和方法使用它。
UML的目标是:
易于使用,表达能力强,进行可视化建模;
与具体的实现无关,可应用于任何语言平台和工具平台;
与具体的过程无关,可应用于任何软件开发的过程;
简单并且可扩展,具有扩展和专有化机制,便于扩展,无需对核心概念进行修改;
为面向对象的设计与开发中涌现出的高级概念(例如协作、框架、模式和组件);
提供支持,强调在软件开发中,对架构、框架、模式和组件的重用;
与最好的软件工程实践经验集成;
可升级具有广阔的适用性和可用性;
有利于面对对象工具的市场成长。
2.1.1UML的架构
UML是由图和元模型组成的。
图是UML的语法,而元模型则给出的图的意思,是UML的语义。
UML的语义是定义在一个四层(或四个抽象级)建模概念框架中的,这四层分别是:
元元模型(meta-metamodel)层,组成UML最基本的元素“事物(Thing)”,代表要定义的所有事物;
元模型(metamodel)层,组成了UML的基本元素,包括面向对象和面向组件的概念。
这一层的每个概念都是元元模型中“事物”概念的实例(通过版类化);
模型(model)层,组成了UML的模型,这一层中的每个概念都是元模型层中概念的一个实例(通过版类化),这一层的模型通常叫做类模型(classmodel)或类型模型(typemodel);
用户模型(usermodel)层,这层中的所有元素都是UML模型的例子。
这一层中的每个概念都是模型层的一个实例(通过分类),也是元模型层的一个实例(通过版类化)。
这一层的模型通常叫做对象模型(objectmodel)或实例模型(instancemodel)。
2.1.2UML的模型、视图、图与系统架构建模
UML是用来描述模型的,它用模型来描述系统的结构或静态特征、以及行为或动态特征。
它从不同的视角为系统的架构建模,形成系统的不同视图(view),包括:
用例视图(usecaseview)强调从用户的角度看到的或需要的系统功能,这种视图也叫做用户模型视图(usermodelview)或想定视图(scenarioview);
逻辑视图(logicalview)展现系统的静态或结构组成及特征,也称为结构模型视图(structuralmodelview)或静态视图(staticview);
并发视图(concurrentview)体现了系统的动态或行为特征,也称为行为模型视图(behavioralmodelview)、过程视图(processview)协作视图(collaborative)动态视图(dynamicview);
组件视图(componentview)体现了系统实现的结构和行为特征,也称为实现模型视图(implementationmodelview)和开发视图(developmentview);
展开视图(deploymentview)体现了系统实现环境的结构和行为特征,也称为环境模型视图(implementationmodelview)或物理视图(physicalview);
在必要的时候还可以定义其它架构视图。
每一种UML的视图都是由一个或多个图(diagram)组成的,一个图就是系统架构在某个侧面的表示,它与其它图是一致的,所有的图一起组成了系统的完整视图UML提供了九种不同的图,可以分成两大类,一类是静态图,包括用例图、类图、对象图、组件图、配置图;另一类是动态图,包括序列图,协作图,状态图和活动图。
也可以根据它们在不同架构视图的应用,把它们分成:
在用户模型视图:
用例图(Usecasediagram)描述系统的功能;
在结构模型视图:
类图(Classdiagram)描述系统的静态结构,对象图(Objectdiagram)描述系统在某个时刻的静态结构;
在行为模型视图:
序列图(Sequencediagram)按时间顺序描述系统元素间的交互;协作图(Collaborationdiagram)按照时间和空间的顺序描述系统元素间的交互和它们之间的关系;状态图(Statediagram)描述了系统元素的状态条件和响应;活动图(Activitydiagram)描述了了系统元素的活动;
在实现模型视图:
组件图(Componentdiagram),描述了实现系统的元素的组织;
在环境模型视图:
展开图(Deploymentdiagram),描述了环境元素的配置,并把实现系统的元素映射到配置上。
2.1.3标准建模语言UML的主要特点
标准建模语言UML的主要特点可以归结为三点:
(1)UML统一了Booch、OMT和OOSE等方法中的基本概念。
(2)UML还吸取了面向对象技术领域中其他流派的长处,其中也包括非OO方法的影响。
UML符号表示考虑了各种方法的图形表示,删掉了大量易引起混乱的、多余的和极少使用的符号,也添加了一些新符号。
因此,在UML中汇入了面向对象领域中很多人的思想。
这些思想并不是UML的开发者们发明的,而是开发者们依据最优秀的OO方法和丰富的计算机科学实践经验综合提炼而成的。
(3)UML在演变过程中还提出了一些新的概念。
在UML标准中新加了模板(Stereotypes)、职责(Responsibilities)、扩展机制(Extensibilitymechanisms)、线程(Threads)、过程(Processes)、分布式(Distribution)、并发(Concurrency)、模式(Patterns)、合作(Collaborations)、活动图(Activitydiagram)等新概念,并清晰地区分类型(Type)、类(Class)和实例(Instance)、细化(Refinement)、接口(Interfaces)和组件(Components)等概念。
2.2UML与面向对象的软件分析与设计(OOA&D)
每一位软件设计方法学家都有许多有关软件质量的理论,他们会讨论软件危机、软件质量低下、以及良好的设计的重要性。
那么UML对提高软件的质量有什么帮助吗?
2.2.1标准的表示方法
UML是一种建模语言,是一种标准的表示,而不是一种方法(或方法学)。
方法是一种把人的思考和行动结构化的明确方式,方法需要定义软件开发的步骤、告诉人们做什么如何做,什么时候做,以及为什么要这么做。
而UML只定义了一些图以及它们的意义,它的思想是与方法无关。
因此,我们会看到人们将用各种方法来使用UML,而无论方法如何变化,它们的基础是UML的图,这就是UML的最终用途——为不同领域的人们提供统一的交流标准。
我们知道软件开发的难点在于一个项目的参与包括领域专家,软件设计开发人员、客户以及用户,他们之间交流的难题成为软件开发的最大难题。
UML的重要性在于,表示方法的标准化有效地促进了不同背景人们的交流,有效地促进软件设计、开发和测试人员的相互理解,