统一建模语言UML与RationalRose工具课件

上传人:3626209****147198... 文档编号:243129083 上传时间:2024-09-16 格式:PPT 页数:106 大小:2.19MB
返回 下载 相关 举报
统一建模语言UML与RationalRose工具课件_第1页
第1页 / 共106页
统一建模语言UML与RationalRose工具课件_第2页
第2页 / 共106页
统一建模语言UML与RationalRose工具课件_第3页
第3页 / 共106页
点击查看更多>>
资源描述
单击此处编辑标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第,6,章,统一建模语言,UML,与,Rational Rose,工具,面向对象的实用拐杖,内容概览,统一建模语言,UML,概述,Rational Rose,基本应用,用例图,静态视图,动态图,活动图,时序图,协作图,基于,UML,的图书管理信息系统设计,RUP,模型,统一软件开发过程模型,-,新型软件生命周期模型,统一开发过程,(,Rational Unified Process,,,RUP,)是一套面向对象的软件工程方法。,统一软件开发过程模型,,集成了许多软件开发模型的优点,是一种综合了瀑布模型,增量模型,演化模型,快速原型模型优点的混合模型。具有很好的可操作性和实用性,是目前最有效的软件开发过程模型。,RUP,的二维开发模型,传统的瀑布开发模型是一个一维的模型,开发过程被划分为多个连续的阶段。,在,RUP,中,软件开发生命周期根据时间和,RUP,的核心工作流划分为二维空间。横轴表示项目的时间维,纵轴以内容来组织为自然的逻辑活动。,RUP,的二维开发模型,6.1,统一建模语言,UML,概述,统一建模语言,UML,是绘制软件蓝图的标准语言,可以对软件系统产品进行可视化、详述、构造和文档化。,UML,在实际软件项目开发中,可以用于构造各种类型系统的业务模型和软件模型。,UML,简介,UML,的全名:,U,nified,M,odeling,L,anguage,统一建模语言,UML,是,Booch,,,Rumbaugh,和,Jacobson,三位著名的 研究面向对象方法的计算机专家的研究成果,UML,已被,OMG,(,Object Management Group,)采纳,作为国际标准。,UML,是一种用于对软件系统进行建模的语言,独立于软件开发过程 ,不是一门程序设计语言,UML,发展历程,6.1.1 UML,的内涵,UML,是一种通用的可视化建模语言,用于对软件进行描述、可视化处理、构造和建立软件系统工件的文档。它记录了与被构建系统有关的决策和理解,可用于对系统的理解、设计、浏览、配置、维护及控制系统的信息。,UML,适用于各种软件开发方法、软件生命周期的各个阶段、各种应用领域及各种工具,旨在统一以往建模技术,吸收当今软件开发的最佳方案从而形成一种标准的方法。,需要说明的是,,UML,是一种建模语言,而不是一种方法。从原理上讲,任何方法都应由建模语言和建模过程两部分构成。其中建模语言提供了这种方法中用于表示设计的符号(通常是图形符号);建模过程则描述进行设计所需要的步骤。,6.1.2 UML,的组成及应用,1,UML,的模型元素,UML,定义了两类模型元素:一类是用于表示模型中的某个概念,如类、对象、构件、用例、节点、接口、包和注释等;另一类是用于表示模型元素之间相互连接的关系,其中主要有:关联、泛化、依赖和聚集等。,6.1.2 UML,的组成及应用,2,UML,的模型图,UML,是用来描述模型的,即描述系统的结构或静态特征,以及行为或动态特征。为了能支持从不同角度来考察系统,,UML,定义了五类共,9,种模型图。,第一类是用例图,它从用户角度描述系统的功能,并指出各功能的操作者。,第二类是静态图,包括类图、对象图和包图。,第三类是行为图,描述系统的动态模型和组成对象间的交互关系,包括状态图和活动图。,第四类是交互图,描述对象间的交互关系,包括顺序图和协作图。,第五类是实现图,包括构件图和配置图。,6.2 Rational Rose,基本应用,6.2.1 Rational Rose,简介,Rational Rose,是由美国的,Rational,公司开发的、面向对象的可视化建模工具。利用,Rose,工具,可以建立用,UML,描述的软件系统模型,它支持,UML,中的用例框图、活动框图、序列框图、协作框图、状态框图、组建框图和布局框图等。而且通过其正向和逆向转出工程代码的特性,可以支持,C+,、,Java,、,Visual Basic,和,XML DTD,的代码生成和逆向转出工程代码。我们以,Rose 2003,为基础,掌握其进行,UML,建模的基本操作。,13,Rational Rose,的作用,整个开发团队可以使用用况图,来获得一个系统高层次的视图,并且可以协商项目的范畴;,项目经理可以使用用况图和文档,把项目分解成便于管理的多个模块;,系统分析员和客户在看到用况规格描述文档的时候,就可以明白系统将会提供什么样的功能;,技术编写者在看到用况规格描述文档时,就可以着手编写用户手册和培训计划;,系统分析员和软件开发者在看到时序图和协作图时,就可以明白整个系统的逻辑流程、对象以及对象之间的消息;,14,Rational Rose,的作用,质量检测员可以使用用况文档、时序图、协作图获得测试脚本所需要的信息;,软件开发人员使用类图和状态图,可以获得系统模块的详细视图以及模块之间的关系;,部署人员在使用组件图和部署图时,就可以明白哪些是可执行文件或,DLL,文件,以及其他的一些组件是如何创建的,这些组件该部署在网络中哪些地方;,整个团队使用,Rose,模型,就可以确定从需求到编码的整个过程,并且从编码到需求这个逆过程也是可以追踪的。,Rose,建模环境,Rose,提供了一套十分友好的界面让用户对系统进行建模。安装完,Rose,之后,单击“开始”“程序”“,Rational Software”“Rational Rose Enterprise Edition”,命令选项,则会出现如图所示的界面,选择,Rose,新模型的应用架构(,Framework,)界面。开发人员可以选择,J2EE,,,J2SE1.2,,,J2SE1.3,jfc-11,等应用框架进行系统分析和设计。,6.2.3 Rational Rose,基本操作,启动,Rational Rose2003,Create New Model,窗体中给出了许多开发语言的模型向导,开发者可以根据自己所采用的语言来进行选择,如果不需要特定的语言环境,单击,Cancel,就可以直接进入主界面,菜单:集成了系统中几乎所有的操作,浏览器:用于在,Rose,模型中迅速漫游,文档窗口:用于查看或更新模型元素的文档,工具栏:用于迅速访问常用命令,图窗口:用于显示和编辑一个或几个,UML,图,日志窗口:用于查看错误和报告各个命令的结果,主菜单和工具栏,Rose 2003,主要菜单,任务,2,Rose 2003,视图,Rose 2003,主要菜单,6.3,用例图,6.3.1,用例图简介,用例图是表示用例模型,其基本组成部件是用例、参与者和用例关系。,1,参与者,参与者是系统、子系统或类发生与外部用户、进程或其他系统的交互。,2,用例,在系统模型,用例表示主体(功能单元)对外部用户可见的行为。,关,系,功,能,符,号,关联,参与者与其执行的用例之间的通信路径,扩展,在基用例上插入附加的行为,基用例并不知道,extend,包含,在基用例上插入附加的行为,并显示地描述了该插入,include,用例泛化,一般用例和特殊用例之间的关系,其中特殊用例继承了一般用例的特征并增加新特征,用例图的内容,用例图的内容:,参与者,用例,泛化、扩展和包含关系,参与者,用例描述了系统的功能和所提供的服务。面对一个大系统,要列出所有用例的清单常常比较困难,比较简单的方法是先找出系统的参与者,分析每个参与者是怎样使用系统的。,使用以下问题有助于发现系统的参与者,谁使用系统?,谁安装系统、维护系统?,谁启动系统、关闭系统?,谁从系统中获取信息,谁提供信息给系统?,在系统交互中,谁扮演了什么角色?,系统会与哪些其他系统相关联?,识别参与者,订货系统:客户给销售员发来传真订货, 销售员下班前将当日订货单汇总输入系统。,谁是系统的,Actor,?,答案: 销售员,识别参与者,寻呼台系统。用户如果预定了天气预报,系统每天定时给他发天气消息;如果当天气温高于,35,度,还要提醒用户注意防暑。,这个叙述里,谁是寻呼台系统的,Actor?,用户,?,气温,?,时间,?,答案:用户,气温,时间都是,Actor,识别参与者,商品销售系统。顾客通过网络下单之后,系统计算出总计金额,税金,运费,并将数目传递给一个外挂的会计系统,该系统是另外购买的。,有几个,Actor,?,答案: 顾客,(,商品销售系统,),,,商品销售系统,(,会计系统,),用例,(UseCase),用例是对一组序列动作的描述,系统执行这些动作将对用例的参与者产生可以观察的结果。,参与者和用例分别描述了,“,谁来做,?,”,和,“,做什么,?,”,这两个问题。,用例用实线的椭圆表示,用例,识别用例的最好办法就是从分析系统的参与者开始,考虑每个参与者是怎样使用系统。,根据下面的一些问题来识别用例:,参与者希望系统提供什么功能;,系统是否存储和检索信息;,当系统改变状态时,是否通知参与者;,是否存在影响系统的外部事件,是哪个参与者通知系统这些外部事件。,识别用例,Email,客户端(如:,outlook express,):,A,在北京发邮件给深圳的,B,,系统提醒,B,”,你有新邮件,”,,,B,收邮件。,参与者:,用户(,A,、,B,)、时间,识别用例,论坛的应用:,用户可以提问,别人来回答,如果有自己问题被解答的话,就给发问者发一份邮件通知。,注意:发邮件这个用例可以是单独的用例,也可以是由回答用例扩展出来的用例,用例之间的关系,泛化关系,包含关系,扩展关系,泛化,(generalization),当多个用例,共同拥有一种类似的结构和行为,的时候,我们可以将它们的共性抽象成为父用例,其他的用例,作为泛化关系中的子用例。,泛化举例(一):,泛化,(generalization),泛化举例(二):,包含,(include),包含是指基本用例,(base use case),会用到包含用例,(inclusion),,具体地讲,就是将包含用例的事件流插入到基础用例的事件流中。,包含用例是可重用的用例多个用例的公共用例,。,扩展,(extend),将扩展用例的事件流在一定的条件下按照相应的扩展点插入到基础用例中。,基础用例不必知道扩展用例的任何细节,它仅为其提供扩展点。,扩展用例的行为是否被执行要取决于主事件流中的判定点。,包含用例与扩展用例的区别,相对于基础用例,扩展用例是可选的,而包含用例则不是。,如果缺少扩展用例,基础用例还是完整的,而缺少包含用例,则基础用例就不完整了。,扩展用例的执行需要满足某种条件,而包含用例不需要。,扩展用例的执行会改变基础用例的行为,而包含用例不会。,37,用例建模,1创建,用例图,(1) 选定浏览器窗口中的【,Use Case View】;,(2),单击鼠标右键,在弹出的快捷菜单中选择【,New】;,(3),在菜单【,New】,产生的下级菜单中选择要新建的图,【,Use Case Diagram】。,以上步骤如图2-19所示,生成的用况图,如,图,6-7,所,示。,38,用例图,用例图的建模符号,实验,1,:任务解决,ATM,终端系统完成以下任务:,(,1,)客户可以通过,ATM,完成登录、取款、存款、通过信用系统付款、查询余额、修改密码、打印凭证等业务。,(,2,)银行官员登录、修改密码、为,ATM,添加现金、维护,ATM,硬件。,(,3,)信用系统启动来自客户的付款,创建系统用例模型,创建系统用例的第一步是确定系统的参与者。,ATM,自动取款机系统的参与者包含以下三种:,(,1,),客户,(,2,)银行职员,(,3,)信用系统,创建系统用例模型,1.,客户用例图,客户在本系统中可以进行取款、存款、转账、查询余额、修改密码和还款,的相关操作 。,创建系统用例模型,2.,银行职员用例图,银行职员在本系统中能够进行硬件维护、修改密码和添加现金的相,关操作。,实验,1,:绘制,ATM,自动柜员机系统总的用例图,ATM,自动柜员机系统总的用例图,实验,2,:,“学生成绩管理信息系统”功能模块如下,分析教师登记成绩业务过程,并建立教师登记成绩用例图,6.4,静态视图,静态视图是,UML,的基础,是展现系统的静态结构组成及特征,包括类图、对象图和包图。其中,类图描述系统中类的结构,不仅定义系统中的类,表示类之间的关系如关联、依赖、聚合等,也包括类的内部结构(类的属性和操作)。类图描述的是一种静态关系,在系统的整个生命周期都是有效的。对象图是类图的实例,几乎使用与类图完全相同的标识。类图和对象图的不同点在于对象图显示类的多个对象实例,而不是实际的类。一个对象图是类图的一个实例。由于对象存在生命周期,因此对象图只能在系统某个时间段存在。包图是由包或类组成,用于描述系统的分层结构。,1,、类图及对象图的基本符号,类图,类名,属性:类型,操作,对象:类名,属性名值,操作,关联,依赖,聚合,泛化,类图,类图的说明:,类的命名,类是一组对象的抽象,应尽量做到“见名识意”。,定义属性,可见性 属性名,:,类型名,=,初值,约束特性,可见性:公有(,Public,),私有(,Private,),保护(,Protected,),约束特性:该属性的约束说明,定义属性时,属性名必须要有,其它任选,.,关联(,association,),角色,当一个类处于关联的某一端时,该类就在这个关系中扮演了一个特定的角色。它呈现的是对另一端的职责。可以显式地命名类在关联中所扮演的角色。,聚合关联用于指出类间的“整体,-,部分”关系。,共享聚合(,aggregation,(空心菱形),),共享聚合是指它的,“,部分,”,对象可以是多个,“,整体,”,对象的一部分。,聚合关联,Rose 2003,并不提供“共享聚合”这种图形(空心菱形),1.,可以先画一个单向关联的关系,,2.,然后右键单击这个关系,,open specification -Role B Detail,3.,选择,aggregation,(空心)的关系。,组合聚集,组合是聚合的一种形式,它具有强的拥有关系,整体与部分的生命周期是一致的。,“,部分,”,生存在,“,整体,”,中,它们与,“,整体,”,一起消亡。,整体的,重数,必须是,0,或,1,。,在,UML,中,组合是一种特殊的关联,用整体端有实心菱形箭头的简单关联修饰它。,聚集关联,Rose 2003,并不提供,“组合关系”,这种图形(实心菱形),1.,右键,单击这个关系,,open specification -Role B Detail,2.,选择,aggregation(,空心)的关系,,3.,你,会,发现,Contenment,有,三项选(,By Value, By Reference, Unspecified,),,在你选上,By Value,的时候,菱形就变成实心的了。,泛化,也称之为继承,表示类之间的一般与特殊的关系,即,“,一般(父),”,类是,“,特殊(子),”,类的,泛化,,,“,特殊,”,类是,“,一般,”,类的,特化,。,泛化就是简单的,继承关系,。,举例:网络教学系统中“用户”,是一般类,拥有姓名、电话和邮箱属性和登陆、收邮件的操作。,“,教师,”,和,“,学生,”,属于,“,用户,”类,分别是“,用户,”类的,特殊类(子类),自动地继承了,“,用户,”,类的属性和操作,拥有姓名、电话和邮箱属性,可以进行登陆、收邮件的操作。同时子类也可以根据需要添加属于自己的属性和操作。如学生有自己的学号、班级属性和考试操作。教师有自己的工作证号、部门属性和授课等操作。,泛化关联,泛化关联的表示,请举出生活、学习过程中泛化关联的例子?,多重继承示例,“交通工具”分为“汽车”和“船”两类,而“水陆两用汽车”既是汽车又是船,那么在对交通工具进行抽象时,就可认为“水陆汽车”类既继承了汽车类又继承了船类,这就是多重继承。请画出它们的泛化关联。,依赖,两个模型元素之间的语义连接,一个是独立的模型元素,另一个是依赖的模型元素。独立元素的变化会影响依赖元素。,如下例,,“,讨论班,”,类使用,“,学生,”,类作为参数,这意味着如果学生发生变化,会影响到讨论班。所以讨论班依赖于学生,依赖关联,请指出类图中的关系,类图的建模符号,类图应用举例,小王是一个爱书之人,家里各类书籍已过千册,而平时又时常有朋友外借,因此需要一个个人图书管理系统。,该系统应该能够将,书籍,的基本信息按,计算机类,、,非计算机类,分别建档,实现对,书籍的管理,:按书名、作者、类别、出版社等关键字的组合查询功能;对书籍的购买金额、册数按特定时间周期进行统计。,该系统还应该能够对书籍的,借阅,情况进行记录,可实现计算机对外,借与归还的管理,。,类图应用举例,指出系统中的类属性、操作,经过分析小王需要建立下列类及其类图,书籍 计算机类书籍 非计算机类书籍 书籍管理,借阅记录 借阅管理,书籍类:,书名、类别、作者、出版社 、价格,属性。,书籍管理:主要的操作是,新增、修改、查询(按关键字查询)、统计(按特定时限统计册数与金额)。,借阅:,借阅人、借阅时间、书名。,借阅管理:主要职责就是,添加记录(借出)、删除记录(归还)以及打印借阅记录,找出系统中的类,画出系统中的类图,类图应用举例,实验,3,:绘制,ATM,自动柜员机系统类图,ATM,自动柜员机系统工作流程如下,请画出其类图,(1),客户将银行卡插入,读卡器,,读卡器识别卡的真伪,对于有效卡,接受该卡,并继续读卡,获取卡号。对于无效卡,弹出卡。,(2),ATM,屏幕,负责接受客户输入的信息,并向用户提示相关信息。,(3),客户可根据自己的需要可对其,账户,进行存款、取款、查询账户、转账、修改密码的操作。,(3),ATM,取款机,负责按系统要求提供或接受现金、打印凭条的操作。,6.5,状态图,6.5.1,状态图简介,一般来讲,状态图描述了一个特定对象的所有可能状态,及由于各种事件的发生而引起状态之间的转移。对象可被看作是通过探测事件与系统外其他部分通信的孤立实体。事件表示对象可以探测到的各种变化,如接受到从一个对象到另一个对象的调用或某些值的改变等。任何可以影响对象的内容都可以称为事件。真实世界所发生的事情被建模为外部世界到系统的信号。一个状态图包括一系列的状态以及状态之间的转移。,状态图,状态图基本符号:,状态图,状态(,State,)是指在对象的生命周期中满足某些条件、执行某些活动或等待某些事件时的一个条件或状况,。,以下是电水壶的工作状态图,状态转换的五要素,源状态:即受转换影响的状态,目标状态:当转换完成后对象的状态,触发事件(,Event,):用来为转换定义一个事件。,监护条件(,Guard,Condition,):决定是否激活转换,动作(,Action,):转换激活时的操作,读状态图,与状态“关闭”相关的转换有两个,其触发事件都是打开开关,只不过其监护条件不同。如果对象收到事件,t,打开,那么将判断壶中是否有水;如果,没水,,则仍然处于“关闭”状态;如果,有水,则转为“工作”状态,并执行“烧水”动作,而与状态“工作”相关的转换也有两个,如果“水开了”就执行关,关掉开关;如果烧坏了,就进入了终态了,Rose,状态图建模图形符号,实验,4,:状态图实例,学生成绩管理信息系统中“教师登记成绩”过程包含的状态有注册、审核、登录和登分,4,个状态:教师首次启动程序进入注册状态,注册成功后,进入等待审核状态;如果审核成功进入登录状态,否则继续等待审核;成功登录后进入登记分数状态,登记分数完毕结束程序。用状态图描述该过程中这,4,个状态的转移情况。,实验,5,:图书对象状态图,1,、图书业务有编目、书库、借出、阅览室、注销五种状态。,2,、引起状态变化的事件,/,动作,(,1,)图书到达后,经验收,等待编目,(,2,)编目后可送入阅览室供阅览或进入书库,(,3,)阅览室的书籍经批准予以注销,(,4,)书库中的书主要用于借阅,(,5,)借出的书归还后入库,如果遗失,则注销,3,、画出图书业务状态图,图书对象状态图,3,、状态图,6.6,活动图,6.6.1,活动图简介,活动图是具有节点和流程的图,显示应用控制(也可以是数据)通过一次计算行为的各步骤流程。计算步骤可以并发执行,也可以顺序执行。活动图包括同步和分支元素,和传统的流程图相比有相似之处,但是更强大,常常用来表示并行过程。传统流程图只支持顺序和分支元素,一般用来表示串行过程。,活动图的符号,一个活动图必然有一个开始状态,至少有一个结束状态,转移用来表示活动或状态间的控制流,有分支时要在分支路径中注明分支条件,分岔用来开始并行处理,联结用于把并行处理转换为单个处理,Rose,活动图的建模图形符号,例:,ATM,登录活动图,实验,6,:,在学生成绩管理信息系统中,以教师登记成绩模块包含的教师登分功能为例,其业务流程是对教师登录系统时的用户名及口令信息进行验证,如果正确则可以开始选择学生所属的班级、考试的课程进行成绩的登记或修改,还可以进行教师个人信息的修改;如果登录信息有误,那么返回到登录界面,创建教师登分活动图。,6.7,时序图,6.7.1,时序图简介,时序图(,Sequence Diagram,),又称为顺序图,是用来描述对象之间的交互关系,着重体现对象间消息传递的时间顺序。时序图存在两个轴:水平轴表示不同的对象,垂直轴表示时间。时序图中的对象用一个带有垂直虚线的矩形框表示,并标有对象名和类名,垂直虚线是对象的生命线,用于表示在某段时间内对象的存在。对象间的通信通过在对象生命线间画消息来表示,消息的箭头表明消息的类型。,时序图,ATM,机“登录成功”的操作顺序:,ATM,用户,将磁卡插入,读卡机,,读卡机读卡后初始化登录,屏幕,,登录屏幕提示用户输入密码,用户输入密码后,系统将之与数据库中保存的,帐户,密码进行校对,并将结果返回给用户。,分析:“登录成功”活动的执行顺序是:,(1),插卡,(2),读卡,(3),初始化登录屏,(4),提示输入密码,(5),密码输入,(6),验证密码,(7),密码有效,(8),返回,ATM,机,“,登录成功,”,的时序图,对象,生命线,活动期,消息,时序图,对象与角色:最顶上一排矩形框。在交互图中,参与交互的对象既可以是具体的事物,又可以是原型化的事物。作为具体的事物,一个对象代表现实世界中的某个东西。例如,,用户,作为类用户的一个实例,可以代表一个特定的用户。,生命线与控制焦点:每个对象都有自己的生命线,对象生命线是一条垂直的虚线,用来表示一个对象在一段时间内存在。,时序图,消息:用来描述对象之间所进行的通信的。,消息分为简单消息、同步消息、异步消息、返回消息,(,1,)同步消息:表示该消息完成之前,同一个对象不能再发送下一条消息。,(,2,)异步消息:表示不必等待来自该消息的响应,同一个对象即可发出下一条消息。,(,3,)简单消息:表示不区分同步或异步。,(,4,)返回消息:表示控制流返回到调用的活动对象。,Rose,时序图的建模符号,顺序图,顺序编号:整个消息的传递过程就形成了一个完整的序列,因此通过在每个消息的前面加上一个用冒号隔开的顺序号来表示其顺序。除了顺序编号之外,还可以采用嵌套方案(如,1.1,,,1.2),实验,7,:时序图实例,在学生成绩管理信息系统中,教师登记成绩的前提是必须在该系统中已经注册,并经过审核成为合法教师用户,才可以对所教的考试课程进行登分操作,或修改成绩,以及修改存在系统的个人信息,创建教师注册时序图。,实验,8,:客户取款活动时序图,1.,客户取款,活动如下,(1),客户插入银行卡,(2),读卡机读取卡号,(3),初始化屏幕,(4),读卡机打开账户并提示输入密码,(5),用户输入密码,(6),验证密码,(7),屏幕提示选择操作,(8),用户选择取款操作,(9),银行账户扣除钱款,(10),吐钱机提供钱和收据,(11),用户取钱并退卡,6.8,协作图,6.8.1,协作图简介,协作图(,Collaboration Diagram,)用于描述相互协作的对象之间的交互关系和连接关系。虽然时序图和协作图都是用来描述对象间的交互关系,但侧重点不一样。时序图着重体现交互的时间顺序,协作图则着重体现交互对象间的静态链接关系。,时序图按,F5,可得到协作图,协作图,图书馆管理系统中的管理员登录活动的协作图。,对象,关联,消息,实验,9,:教师注册过程协作图,以学生成绩管理信息系统教师登记成绩模块中教师注册过程为例,进行协作图创建的操作。,实验,10,:客户取款活动协作图,实现建模,实现建模的目的,在完成系统的逻辑设计之后,即可开始进行系统的物理设计及实现,如可执行文件、库、表、文件和文档等。因为建模的系统属于软件系统,所以可以通过实现方式图来帮助设计系统的整体物理架构。,实现方式图由组件图与部署图组成。,组件图的建模符号,构件图,构件:,在,UML,中,构件是指系统中可替换的物理部分,是软件的单个组成部分。包括源代码文件、可执行文件、库、数据库、,JavaBean,等。,构件是定义了良好接口的物理实现单元,它封装了实现并提供了一组接口的实现。,在组件图中,组件表示为一个矩形,且一侧有凸出的两个小矩形。组件名字标在矩形中。,构件图,组成,构件图中通常包含,3,种元素:构件、接口和依赖关系。构件图通过这些元素描述软件的各个构件及它们之间的依赖关系,以及构件的接口和调用关系。,ATM,系统构件图,如果对,银行账户、信用系统、客户、,ATM,屏幕、,ATM,取款,机、,ATM,键盘、银行职员、读卡器和数据库服务器分别,创建了对应,的,构件,以下组件图对其进行映射,。,部署图,部署图可以用来描述系统硬件的拓扑结构以及软件在此基础上的分布。,部署图只有两个主要的标记符,即节点和通信关联。,节点用来表示一种硬件,如计算机、扫描仪、手机、路由器等。在,UML,中,节点的标记符是一个立方体,在框的上方包含了节点的名称。,部署图用关联关系表示各节点之间的通信路径。在,UML,中,部署图中的关联关系为一条实线。,部署图通信关联,另外,在连接硬件时通常都会关心节点之间的连接方式,如红外、蓝牙、以太网、令牌、并行、,USB,、,TCP,等。因此,关联关系一般不使用名称,而是使用构造型,如,、,等表示。,部署图的建模图形符号,ATM,自动取款机系统,部署图,ATM,自动取款机系统的部署图描绘的是系统节点上运行资源的安排。,包括了,四个节点,分别是:,ATM,客户端、地区,ATM,服务器、银行数据库,服务器和,打印机。,6.9,基于,UML,的图书管理信息系统设计,在这一节中通过基于,UML,的开发案例,即图书管理信息系统的设计,说明如何将,UML,应用到实际项目进行开发。该应用系统的分析模型,首先使用用例进行描述,其次将用例扩展成设计模型。本节在设计模型中详细介绍其实现细节。以上这些开发过程都是利用,IBM Rational Rose Enterprise V7.0,工具实现的。,6.9.1,需求分析,6.9.1,需求分析,6.9.1,需求分析,6.9.2,设计,1,体系结构设计,6.9.2,设计,2,详细设计,3,用户界面设计(,User-interface Design,),6.9.3,实现(,Implementation,),在构造(或称实现)阶段进行程序编写。该应用系统选择,Java,编程语言编写程序代码,,Java,可轻松地将逻辑类映射为代码组件,因为在类和,Java,代码文件之间有,1,对,1,的映射。,6.9.4,测试和部署,(Test and Deployment),编码结束后,,UML,的使用还没有结束,需要检验用例能否在已完成的应用系统中得到很好的支持。对于软件系统的部署,可以利用模型和本文做一份完整、细致的系统文档资料。,小结,支持,UML,的开发工具有很多,,IBM Rational Rose,是功能强大、实际应用较为广泛的一种。本章简要介绍了,Rational Rose,的主要功能、集成环境界面及基本常用操作,重点结合,UML,的用例图、类图、状态图、活动图、时序图和协作图,以实例讲述了,Rational Rose,的操作过程。,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!