第一篇:UML实验指导
UML实验指导书
实验一 UML建模基础...................................................................................................1 实验二 类......................................................................................................................2 实验三 类的关系..........................................................................................................8 实验四 用例图及进度安排........................................................................................12 实验五 交互图............................................................................................................17 实验六 活动图............................................................................................................26 实验七 状态图............................................................................................................34 实验八 组件图和部署图............................................................................................41
2010-9-1
实验一 UML建模基础
一、实验目的和要求
1.熟悉UML建模工具Visual Paradigm和Rational Rose的基本菜单及操作。2.掌握UML的三大组成部分及各部分作用。3.掌握UML规则和相关机制。
4.掌握UML的可见性规则和构造型的作用。
二、实验器材
1.计算机一台。
2.Rational Rose 工具软件。
三、实验内容和步骤
1.练习使用建模工具建立各种UML图形,并对图形进行相应编辑和修改。2.认识各种UML关系及可见性符号,并用工具表示出来。
四、分析与讨论
总结UML在软件工程中的作用以及使用UML建模的必要性。
五、实验报告要求
1.整理实验结果。2.小结实验心得体会。
实验二 类
一、实验目的
1.理解类的基本概念。
2.掌握如何从需求分析中抽象出类的方法。3.掌握在Rational Rose中绘制类的操作方法。
二、实验器材
1.计算机一台。
2.Rational Rose 工具软件。
三、实验内容
运用本节所学的有关如何抽象出类的知识,寻找和抽象出图书馆管理系统中书籍管理功能中的类。
四、实验步骤
1.分析:图书馆管理系统中的书籍管理功能模块是由书籍信息类、书目类、新增书籍界面类、修改书籍界面类、删除书籍界面类和书籍管理类6个类组成。2.绘制类的步骤:
(1)打开前面初步构建的UML模型文件;(2)打开Rose中的逻辑视图(Logical View),选择分析模型(analysis model)目录。并在其下创建一个子目录并命名为:“图书馆业务功能”。
(3)用鼠标右击“图书馆业务功能”在弹出来的菜单中选择“New→Class diagram”项,创建类图,如图2.1所示。
(4)双击新建的类图,并点右边控件集中选中的类的图标,并用鼠标在图中分别拖出一个类图,并命名为Book,如图2.2所示。
图2.1
图2.2(5)接下来的一步为设置类的属性,在新的类中双击该类,在打开属性面板中,可以看到在此可以设置类的属性和方法等其他的信息,图2.3所示;后撞击Attributes这个栏目,此栏目为设置类的属性的选项,在图中间的单击右键,可以看到有一个“Insert”的选项,选中这个选项,图2.4所示,后在出现的对话框中输入相关信息如图2.5所示;如书本的ISBN号,在Type这个方框内输入此属性的类型值,同时可以看到一栏可以设置此属性的访问权限,一般这些属性都设置Private这个权限,如图2.6所示。这个类的其他属性也可以按照以上的做法设置,最后得到的结果是图2.7所示。
图2.3 图2.4
图2.5 图2.6(6)设置好类的属性,现在来设置类的方法(也是操作),双击类后在弹出的菜单上选operations这个选项,可以看到图2.8所示,在图中的空白地方,单击右键,在弹出的菜单中选insert这个选项,也就只有这个选项可用,见图2.9,接着输入方法名,同时可以设置该方法的返回类型,也可以在Documentations的方框内填写一些相关的方法说明,如图2.12所示,设置好该方法的访问权限,见图2.13。类的其他方法也可以按上面来设置好,最后,得到该类的其他方法见类2.14。
图2.7
图2.9
图2.8
图2.10
图2.11 图2.12
图2.13 图2.14(7)至此,类的方法和属性都设置好了,如图2.15所示。
图2.15(8)接下来为书目类设置,按照上面的步骤可以设置好该类的属性和方法,如图2.16和图2.17所示。
图2.16 图2.17(9)最后,绘制出由分析得出的各个类,如图2.18所示,此时,类图便完成。(10)根据分析情况,进一步细化添加相关的类。
图2.18
五、实验报告要求
1.整理实验结果。2.小结实验心得体会。
实验三 类的关系
一、实验目的
1.理解类间关系的基本概念。2.掌握描绘类间关系的方法。
3.掌握在Rational Rose中绘制类关系的操作方法。
二、实验器材
1.计算机一台。
2.Rational Rose 工具软件。
三、实验内容
我们知道类通常是不会单独存在,而是由关联、泛化、依赖等关系相互协作来静态描述业务系的。因此,我们在找出系统中所存在的类的前提下,需要进一步对业务对象间如何联系进行建模。现指派你运用本节所学的相关知识,完成如下任务:
1.对书籍管理功能中的类的关系建模。
四、实验步骤
1.分析:由前面章节对图书馆管理系统中的书籍管理业务分析和对该业务的抽象出来的类可知,图书馆的主要静态模型类图是由书籍管理类、书类、书目类、管理员类、用户类和各种界面操作类组成。其中用户类与管理员类是泛化的关系,而其它类之间均是关联关系。
2.请在Rational Rose中绘制类间的关系。绘图步骤:
(1)打开上面做好的类图,添加管理员类,用户类,界面类。首先,添加一人管理员类,图3.1,并按照上面所说方法添加类的各种属性和方法,见图3.2、图3.3。
(2)可以依照上面的操作来添加其他的类,如:用户类(Reader类)、界面类(ActionForm),添加完后结果如图3.4 和图3.5所示;
(3)其他的类添加完后,就可以为各个类添加关系了,由关联、泛化、依赖等关系相互协作来静态描述业务系,所以,各个类的关系也由这几个关系来完成。如图3.6所示:Person类是administrator类和reader类两个类的父类,他们之间为泛化关系。administrator类和reader类是继承Person类。BoobItem类是继承Book类的,其他的类为一般的依赖关系,最后,连接完线条便得到图3.6。
(4)根据分析设计情况,进一步细化各类之间的关系。
图3.1
图3.2
图3.3
图 3.4
图3.5
图3.6
五、实验报告要求
1.整理实验结果。2.小结实验心得体会。
实验四 用例图及进度安排
一、实验目的
1.熟悉用例图的基本功能和使用方法。
2.掌握如何使用Rational Rose 建模工具绘制用例图方法。
二、实验器材
1.计算机一台。
2.Rational Rose 工具软件。
三、实验内容
根据图书管理系统开发进度,在完成对系统的需求建模,得到用例模型后,应针对每个用例进行业务分析,说明其具体的业务流程,现系统分析部指派您完成该项任务。要求:
对其中主要功能的用例书写书面用例。
四、实验步骤
书写“删除读者信息”用例的书面用例。一般应包含以下信息:(1)管理员在录入界面,输入待删除的读者名;(2)“业务逻辑”组件在数据库中,查找待删除的读者名;
(3)如果不存在,则显示出错信息,返回步骤(1),如果存在则继续;(4)“业务逻辑”组件判断“待删除的读者”是否可以删除;
(5)如果不可以,则显示出错信息,返回步骤(8),如果可以则继续;(6)在数据库中,删除相关信息;(7)显示删除成功信息;(8)结束。分析: 在图书管理系统中,管理员首先登录系统,系统验证通过后,管理方可向系统查询数据,在查询后,系统会给出提示,有没有找到相关的数据,管理员根据系统查询的返回结果,进行下一步的操作,就是删除读者,在删除的过程中,系统会对查询得到的结果判断该记录是否可以删除,若可以删除,则给删除提示,若不能删除,也给相关的提示信息。
绘图步骤:(1)在用例图上双击main,出现如图4.1所示,为绘制用例图做好准备。
(2)在图中的工具栏选取Actor图标,在右边的图中添加一个Actor,并输入名称:administrator,如图4.2所示。
(3)在左边的工具栏中,选取用例的图标,在右边的图中画出一个用例,并输入用例的名称:login,如图4.3所示。
图4.1
图4.2(4)按照步骤(3),绘制出如图4.4和图4.5的两个用例。
图4.3
图4.4
图4.5(5)在绘出了用例后,接下来的是绘制参与者与用例的关联,如图4.6所示。
图4.6
(6)根据步骤(5),同时完成如图4.7和图4.8。此时,删除读者用例图就到此完成。其系统查询读者信息等其他的功能会在时序图和活动图中描绘。
(7)根据分析情况,进一步添加或细化用例图。
图4.7
图4.8
五、实验报告要求
1. 整理实验结果。2. 小结实验心得体会。
实验五 交互图
一、实验目的
1.理解顺序图的基本概念。2.理解协作图的基本概念。
3.掌握在Rational Rose中绘制交互图的操作方法。
二、实验器材
1.计算机一台。
2.Rational Rose 工具软件。
三、实验内容
通过对教学内容的学习,使我们完成了图书馆的管理系统的需求分析,并从业务对象中抽象出了类。现在需要对前面所给出的用例进行实现,而用例的实现主要由交互图来指定和描述系统的动态特性。现指派你运用本节所学的相关知识,完成如下任务:
1.对书籍管理功能中的用例进行动态建模。
四、实验步骤
1.分析:根据演示部分对图书业务功能模块中的交互操作进行动态建模的操作步骤和方法,请你对书籍管理模块中的交互操作进行动态建模。该模块中主要存在新增书籍、修改书籍信息和删除书籍三种交互操作。
2.请根据教材中示例部分在Rational Rose中绘制上述的交互图。绘图步骤:
(1)在Rose软件的左边栏目上的Logicl View单击右键,新建一个时序图,时序图是交互图一种表示,可以用时序来表示,如图5.1;在此,先单间介绍一下用法:图中的直线箭头是发送消息;虚线箭头是返回消息;曲折线是对象自己给自己发送消息并调用。
(2)接下来的是添加类,系统中的类是其他的方法的边界,在上面做好的类找到可以直接拖拉来图中,见图5.2 和图5.3所示。
图5.1
图5.2
图5.3(3)添加类后,便可以添加方法了,开始是必需是外面的实体向系统发送消息,如图5.4所示,是管理员登录时向系统发送的消息;
图5.4(5)可以按上一步的方法来完成其他的方法,如viladate(验证),返回验证结果,当用户收到结果后,可以正常登录后便能进行增加图书见图5.5到图5.9。最后得到的时序图如图5.10所示。
图5.5 : administrator1: login : ActionFormSystem2: login3: validate
图5.6 : administrator1: login : ActionFormSystem2: login3: validate4: result5: result
图5.7 : administrator1: login : ActionFormSystem2: login3: validate4: result5: result6: add7: add
图5.8 : administrator1: login : ActionFormSystem2: login3: validate4: result5: result6: add7: add8: addbook
图5.9
: administrator1: login : ActionFormSystem2: login3: validate4: result5: result6: add7: add8: addbook9: addruselt10: addresult
图5.10
(6)完成了时序图后,可以按F5键便得到增加图书的协作图,见图5.11所示。
1: login6: add : administrator5: result10: addresult : ActionForm3: validate8: addbook4: result9: addruselt2: login7: addSystem
图6.11
(7)剩下的更新图书信息和删除图书信息的交互图在此不再一一详细的介绍,其绘图方法跟绘制增加图书的方法一样,最后得到见图5.12 到图5.15 : administrator : ActionForm1: login2: loginupdate : System3: validate4: result5: result6: updatebook7: updatebook8: updatebook9: updateresult10: updateresult
图5.12
1: login6: updatebook : administrator5: result10: updateresult4: result9: updateresult2: login7: updatebook : ActionForm3: validate8: updatebookupdate : System
图5.13
: administrator : ActionForm : System1: login2: login3: viladate4: viladateresult5: viladateresult6: delete7: delete8: delete9: deleteresult10: deleteresult
图5.14
1: login6: delete : administrator5: viladateresult10: deleteresult : ActionForm3: viladate8: delete4: viladateresult9: deleteresult2: login7: delete : System
图5.15
五、实验报告要求
1.整理实验结果。2.小结实验心得体会。
实验六 活动图
一、实验目的
1.熟悉活动图的基本功能和使用方法。
2.掌握如何使用Rational Rose建模工具绘制活动图方法。
二、实验器材
1.计算机一台。
2.Rational Rose 工具软件。
三、实验内容
根据图书管理系统开发进度,在完成对系统的需求建模,得到用例模型后,应针对每个用例进行业务分析,说明其具体的业务流程,现系统分析部指派您完成该项任务。要求:
用活动图来描述系统中已知用例的业务过程: 1.描述删除读者用例。
四、实验步骤
绘制“删除读者信息”用例的活动图。删除读者信息一般按照以下步骤进行:(1)管理员在录入界面,输入待删除的读者名;(2)“业务逻辑”组件在数据库中,查找待删除的读者名;
(3)如果不存在,则显示出错信息,返回步骤(1),如果存在则继续;(4)“业务逻辑”组件判断“待删除的读者”是否可以删除;
(5)如果不可以,则显示出错信息,返回步骤(8),如果可以则继续;(6)在数据库中,删除相关信息;(7)显示删除成功信息;(8)结束。绘图步骤:
(1)在用例图中,找到删除的用例,如图6.1所示,在删除用例上单击右键,在弹出的快捷菜单中选“New”,Rose工具也会弹出一个菜单,选”Activity Diagram”,选中后单击,便可以新建好一个活动图。如图6.2所示。
图 6.1
图6.2(2)新建好活动图后,双击删除的活动图,得到如图6.3所示,然后把在左边的工具栏内点击“Swinlane“,在右边的图添加一个泳道,如图6.4所示,并命名为administrator.按照此步骤,再添加另一个泳道,并命名为SystemTool,得到图6.5。
图6.3(3)接着在左边的工具上选取开始点,并在administrator的泳道上添加,如图6.6所示;添加完开始结点后,再来为此活动图添加活动,图6.7所示,在左边的工具栏上选中Activity这个图标,在administrator这边的泳道上添加一个活动,命名为登录(login),再在开始结点和活动登录(login)之间添加活动关系,如图6.8所示。
图6.4
图6.5
图6.6
图6.7
图6.8
(3)完成步骤(2)后,登录输入需要对输入的信息进行验证,则在图中添加一个验证框,如图6.9所示:添加验证框后,验证的内容,如果通过,则允许管理员进行查询操作,如图6.10所示;如不能通过,则结束,如图6.11所示。
图6.9
图6.10
图6.11
(4)验证后,下一步的操作是查询需要删除的记录,添加一个活动,命名为delete,如图6.12和图6.13所示。
图6.12
图6.13(5)最后,在删除后,系统会返回操作结果给操作者,图6.14所示;删除成功或删除失败系统都会有信息返回给操作者。
(7)根据分析设计情况,进一步添加或细化活动图。
图6.14
五、实验报告要求
1. 整理实验结果。2. 小结实验心得体会。
实验七 状态图
一、实验目的
1.熟悉状态图的基本功能和使用方法。
2.掌握如何使用Rational Rose建模工具绘制状态图方法。
二、实验器材
1.计算机一台。
2.Rational Rose 工具软件。
三、实验内容
通过前面内容的学习,完成了对图书馆管理系统的需求的初步分析,得出系统的用例图和相应的活动图。通过这两类图我们可以初步了解系统的业务处理过程,但对业务处理过程的处理状态间转换了解仍不够,这不利于设计人员对系统业务的进一步理解,而状态图能从对象的动态行为的角度去描述系统的业务活动。因此,指派你运用本节所学的状态图,完成如下任务: 1.完成图书业务模块中还书用例的状态图。
四、实验步骤
1.业务分析:由前面章节对图书馆管理系统中的还书主要业务的描述和分析可知,还书业务的动态行为是由:空闲(idle)、图书查找(finding)、还书(reversion)、失败(Failure)、归还成功(Success)5种状态及激活相互转换的事件。
2.绘制状态图:请您根据分析运用UML绘制还书用例的状态图。分析:
还书的状态图,还书的主要业务都是由管理员来完成,首先管理员必须先登录系统,并通过验证后,便可以进行下一步的操作,查找该书的相关信息,如存在,则进行还书操作,如不存在该信息,则给出提示信息;
绘图步骤:
(1)在用例图中的还书(revesion)用例,单击右键,如图7.1所示,新建一个状态图,命名为revesion状态图,图7.2所示。
图7.1
图7.2(2)双击“receivesion”状态图,展开后,在左边的工具栏上选取一个实心圆点,此结点为开始结点,图7.3所示;当还书的时候,操作者先要询问系统的状态,如果系统忙,操作者则必需等待,因此,得到系统的两种状态,如图7.5所示。
图7.3
图7.4
图7.5(3)操作者在询问系统和状态后,得到的图7.6所示两种状态,如果系统忙,操作者必需要等待、结束,如图7.7和图7.8所示,重返步骤(1)。
图7.6
图7.7
图7.8(4)如系统空闲,则进行对还书的信息进行查询操作,图7.9所示;查询也有两种结果,一是查询得到该书的相关信息,二查询不到该书的相关信息;则此时有两种状态,需要建立两种状态,如图7.10所示。
图7.9
图7.10(5)最后,操作者进行了操作后,系统会给出操作的结果给操作者;操作成功或失败,都会有提示信息给出。整个的还书的过程便完成;图7.11所示。
(7)根据分析设计情况,进一步添加或细化状态图。
图7.11
五、实验报告要求
1.整理实验结果。2.小结实验心得体会。
实验八 组件图和部署图
一、实验目的
1.理解组件图的基本概念。2.理解组件图的应用:逻辑部署。3.理解部署图的基本概念。4.理解部署图的应用:物理部署。5.掌握组件图和部署图绘制的方法。
二、实验器材
1.计算机一台。
2.Rational Rose 工具软件。
三、实验内容
图书管理系统的分析和设计已按计划完成类图和交互图的分析与设计,下一步将完成系统的组件图和部署图,现系统分析部指派您完成如下任务:
1. 完成系统的组件图。
四、实验步骤
1.绘制组件图 分析:
在图书馆管理系统中,通过分析可以发现类图中的类应分为4个部分:
1.用户接口模块(UI),主要负责系统和用户的交互,包括Frame类,Dialog类等。2.业务对象模块(BO),主要负责处理系统中的业务计算,如借书,还书等功能的具体操作。
3.数据存储模块(DB),主要负责处理对数据的存储。4.通用工具模块(UTIL),包括系统中通用函数。
通过一个主程序StartClass来启动。由于系统中的类较多,这里以业务对象模块(BO)为例来讲解如何创建组件图,BO模块中包括
Item类:书目类,表示一本实际存在的书籍或杂志
Loan类:借书业务类,将借阅者和图书馆关联起来,一个Loan对象表示借出的一本书 BorrowerInfomation类:借阅者信息类,表示一个借阅者。
Title类:表示一种书或一种杂志。如《C++编程思想》就是一种书,用1个title表示,如果有2本这样的书,则需要用2个Item表示。
Reservation类:预定信息类,表示一个预定信息。Item类和Loan类之间互相依赖,Loan类和BorrowerInfomation类之间互相依赖,BorrowerInfomation类和Reservation类之间互相依赖,Reservation类和Title之间互相依赖,Title和Item类之间互相依赖。绘图步骤:
(1)在组件视图中双击Main图,出现图8.1,为编辑组件图做好准备,这时绘图工具栏中的图标如图中椭圆所示,其中具体含义可参看本节“补充图标”一段的介绍。
图8.1(2)在组件视图中,从工具栏中选择MainProgram图标,在右边的绘图区中添加一个新组件,并取名StartClass.java表明新增一个主程序。
图8.2(3)选择新创建的组件,点击鼠标右键,在弹出的菜单中选择“Open Sepcification”,弹出图8.3对话框。
(4)在对话框中,可以修改组件的名称,设置组件的类型,指定实现的语言。这里新组件的名称定为“StartClass.java”,组件构型为Main Program(Rose中提供了多种构型,大部分在补充图标一段中均有简单的介绍),实现语言为JAVA(Rose中默认的是分析语言Analysis),修改结果如图8.4所示。
图8.3
图8.4(5)组件图描述的是系统的实现视图,因此要指定实现组件功能的文件。点击File选项卡,在列表框中点击鼠标右键,在弹出的菜单中选择“Insert File”,弹出文件对话框。在对话框中,键入StartClass.java,点击“打开”按键,这时对话框如图8.5所示。
图8.5(6)双击StartClass.java,弹出是否创建对话框,询问是否创建文件,选择“YES”,弹出记事本,这时可输入相应的源程序(注意:如果这里选择的文件已经存在,则不会弹出创建文件对话框,而是直接显示相应文件内容)。
(7)创建相应的包。选择包图标,在右图中创建。这里同样需要对每个组件打开“Open Specification”对话框,设置具体的属性,对“包”组件来说需要在Files选项卡中指明与其对应的目录。创建完毕的组件图如图8.6所示。
图8.6(8)选择业务对象包(BO),双击,打开业务对象包的详细组件图,这里根据分析的结果分别创建Title.java,Item.java,Loan.java,BorrowerInfomation.java,Reservation.java组件,并设置好每个组件的构型和对应的文件。创建好的BO包组件图如图8.7。
图8.7(9)创建依赖关系。在本节“关系”一段中,已经描述过依赖关系使用虚线表示,因此根据分析中的结果,在图中将相互依赖的组件连接即可。完成后的组件图如图10.8。
图8.8 2.绘制部署图 分析:
TJKD的图书管理系统目前开发的是一个单机版系统,其中所有的运算均在一台机器上完成,但是由于打印报表的需要,系统还应配备一台打印机。因此得出系统中存在2个节点:
① 一台主机,其类型是Processor。② 一台打印机,其类型是Device。绘图步骤:(1)浏览窗口中选择“Deployment View”,弹出如图8.9所示窗口。
图8.9(2)在图中添加分别添加一个Processer和Device,并分别命名为“computer with java support”和“Printer”,添加完毕后,其结果如图8.10所示。
图8.10(3)为节点添加连接关系。全图如图8.11。
图8.11
五、实验报告要求
1.整理实验结果。2.小结实验心得体会。
第二篇:UML实验实践指导
UML实验实践训练体系
第一部分 课程与实验综述
一.课程简介及实践要求:
《UML与面向对象分析与设计》是以介绍面向对象的统一建模语言UML为主,使学生了解面向对象技术的基本概念,掌握面向对象的分析和设计方法,以及与面向对象技术相关的一些软件开发技术,同时掌握在Rational Rose环境下用UML进行分析和设计的技术。本课程在教学内容方面着重基本理论、基本知识和基本方法,在培养实践能力方面着重设计构思和设计技能的基本训练,熟练的上机操作能力和基本系统分析能力。
实验实践训练是UML与Rose建模教学的重要技能环节。通过实验,使学生加深理解、验证、巩固课堂教学内容,特别是通过设计和综合实验,发挥学生的想象力和创新能力。二.课程实验目的要求:
通过UML的实验,学生应该: 1.学会用面向对象的思想去简单地分析和设计相关系统;2.学会用Rose建模工具进行软件建模。三.课程实验参考资料
1.(美)Joseph Schmuller著.UML基础、案例与应用.人民邮电出版社,2004 2.(美)Hans-Erik Eriksson.UML 2工具箱.电子工业出版社,2004 3.吴际,金茂忠.UML面向对象分析.北京航空航天大学出版社,2002 4.赵从军.UML设计及应用.机械工业出版社,2004 5.Grady Booch,James Rumbaugh,Ivar Jacobson.UML用户指南.机械工业出版社,2001 6.吴建,郑潮,汪杰.UML基础与Rose建模案例.人民邮电出版社,2004 第二部分 实验实践指导
实验一
用例图
一、实验目的
1.学会分析系统中的参与者和用例 2.掌握用例图的绘制方法
二、实验器材
1.计算机一台;
2.Rational Rose 工具软件;
三、实验内容
画出ATM系统的用例图
四、实验步骤
1.分析 ATM自动取款机:客户可以取钱,存钱,查询余额,转帐,修改密码。通过分析可找出如下几个参与者: 1.ATM 2.客户
通过分析得到如下用例:
(1)存款(2)取款(3)查询余额(4)转帐(5)修改密码(6)打印收据 2.绘图步骤:
下面介绍在Rose2003中创建用例图的过程:
(1)在“Use Case View“中双击Main图,或者右击“Use Case View“,弹出在快捷菜单中选择“New”->“UseCase Diagram”,双击图标,出现图1,为编辑用例图做好准备。
(2)在用例视图中,从工具栏中选择Actor图标,在右边的绘图区中添加一个新元素,并取名客户表明新增一个参与者,如图2所示。
图2(3)同样的方法添加参与者“ATM”,如图3所示。
图3(4)在工具栏上选择用例的图标,依次添加存款、取款、查询余额、转帐、修改密码、打印收据,如图4所示。
图4(5)添加参与者和用例间的关联关系,如图5所示。
图 5 另外,练习其它现实系统中用例建模,要涉及用例描述、用例之间的关系、参与者与用例之间单向关联双向关联、参与者之间关系。
参与者、用例的版型、命名等知识点。
五、实验报告要求
1. 整理实验结果。2. 小结实验心得体会。
实验二
交互图
一、实验目的
1.学会用协作图实现用例
2.掌握顺序图的绘制方法以及顺序图和协作图的相互转换。
二、实验器材
1.计算机一台;
2.Rational Rose 工具软件;
三、实验内容
画出ATM取款的顺序图,并转换为协作图。
四、实验步骤
1.分析
ATM取款的场景:
(1)通过读卡机,用户插入ATM卡;
(2)ATM系统从卡上读取银行ID、帐号、加密密码、并用主银行系统验证银行ID和帐号;
(3)用户输入密码,ATM系统根据上面读出的卡上加密密码,对密码进行验证;(4)用户输入取款数量;
(5)ATM系统通知主银行系统,传递储户帐号和取款数量,并接收返回的确认信息;(6)ATM系统输出先进、ATM卡和显示帐户余额的收据;(7)ATM系统记录事务到日志文件。寻找场景中的对象:ATM、客户和帐户。2.绘图步骤:
下面介绍在Rose2003中创建顺序图的过程:
(1)在“Logical View”中新建“Sequence Diagram“,双击图标,出现图1,为编辑顺序图做好准备。
(2)在顺序图编辑窗口中,从工具栏中选择Object图标,在右边的绘图区中添加一个新元素,并取名Customer表明新增一个对象,如图2所示。
图2
(3)同样的方法,添加ATM对象和Account对象,如图3所示。
图3(4)根据ATM取款的场景,获得第一条消息为“客户向ATM机提交取款需求”,向图中添加消息,如图4所示。
图4
(5)同样的方法添加其它消息,如图5所示。
图5(6)根据顺序图生成协作图,步骤如下:“Browse”->“Create Collaboration Diagram”,生成的协作图,如图6所示。
图6
五、实验报告要求
1.整理实验结果。2. 小结实验心得体会。
实验三
类图
一、实验目的
1.理解类的基本概念 2.理解类间的关系 3.掌握类图的绘制方法
二、实验器材
1.计算机一台;
2.Rational Rose 工具软件;
三、实验内容
分析选课系统中的类及关系,然后画出它们的类图。
四、实验步骤
1.分析
在选课系统中,通过分析可抽象出如下几个类: 1.学生类 2.管理员类 3.课程类
学生类和管理员类的属性较容易分析,这里只列出课程类的属性和方法:(1)课程名称(2)开课教室(3)课程号(4)授课教师(5)选课的学生(6)开课起始时间(7)允许选课的学生人数(8)设置课程号(9)设置课程名称(10)查询课程号
(11)查询允许选课的学生人数 2.绘图步骤:
下面介绍在Rose2003中创建类和它们之间关系的过程:
(1)在“Logical View“中双击Main图,或者右击“Logical View“,弹出在快捷菜单中选择“New”->“Class Diagram”,双击图标,出现图1,为编辑类图做好准备。
图1
(2)在逻辑视图中,从工具栏中选择class图标,在右边的绘图区中添加一个新元素,并取名Student表明新增一个类。
图2
(3)选择新创建的元素,点击鼠标右键,在弹出的菜单中选择“Open Sepcification”,弹出图3对话框。
(4)在对话框中,可以修改元素的名称,这里新元素的名称定为“Student”,如图4所示。
图3
图4(5)点击“Attributes”选项卡,添加属性,如图5所示。
图5(6)点击“operations”选项卡,添加方法如图6所示。
图6(7)同样的方法添加Course类,如图7所示。
图7(8)创建两个类之间的关系,通过分析得出:学生类和课程类之间为单向关联。选择图标栏的“关联”,由学生类指向课程类。如图8所示。
图8(9)创建关联名。右击关联,选择“open specification“,键入关联名,如图9所示。
图9(10)分别在“Role A Detail“和“Role B Detail“选项卡中键入名称和多重性,如图10所示。
图10(11)重复(2)-(10)中的步骤完成选课系统整个类图的创建。
五、实验报告要求
1. 整理实验结果。2. 小结实验心得体会。
实验四
状态图和活动图
一、实验目的
1. 熟悉状态图和活动图的基本功能和使用方法。2. 掌握如何使用建模工具绘制状态图和活动图方法。
二、实验器材
1.计算机一台;
2.Rational Rose 工具软件;
三、实验内容
(1)分析图书管理系统中的书和借书证的状态,画出它们的状态图;(2)分析管理员的活动状态,画出管理员的活动图。
四、实验步骤
1.分析
在图书管理系统中,分析书的状态如下: 1.可借 2.被借 3.被预约 4.删除
借书证的状态如下: 1.可用 2.不可用 3.删除
管理员的活动如下: 1. 处理还书 2. 处理借书 3. 处理罚款 读者的活动如下: 1.登录 2.找书 3.预约 4.浏览 2.绘图步骤:
下面介绍在Rose2003中创建类和它们之间关系的过程:
(1)在“Logical View“中信件“StateChart Diagram”,双击图标,出现图1,为编辑状态图做好准备。
图1(2)在工具栏中选择“Start State”图标添加到编辑窗口中,如图2所示。
图2(3)在工具栏中选择“State”图标,添加一个元素,命名为“New book”,如图3所示。
图3
(4)同样的方法添加其它状态,如图4所示。
图4
(5)书的各个状态之间添加转移及相应的事件,如图5所示。
图5
(6)同样的方法得借书证的状态图,如图6所示。
图6
(7)在Rose2003中,绘制图书管理员的活动图,新建“Activity Diagram”,如图7所示:
图7
(8)读者的活动图如图8所示:
图8
五、实验报告要求
1. 整理实验结果。2. 小结实验心得体会。
实验五
正(反)向工程
一、实验目的
1.理解正向工程的基本概念 2.利用Rose工具生成代码框架
二、实验器材
1.计算机一台;
2.Rational Rose 工具软件;
三、实验内容
进入编码阶段,为了加快编码进度,可以利用建模工具执行正向工程,将系统中的模型转换成指定语言类型的代码框架,现要求您完成该项任务。
四、实验步骤
使用Rose工具将设计的模型通过正向工程生成代码框架。按照使用Rose工具生成代码的6步基本步骤可以顺利的完成代码框架的生成工作。(1)检查模型,(2)创建组件(3)将类映射到组件(4)设置代码生成属性(5)选择类,组件和包(6)生成代码
五、实验报告要求
1. 整理实验结果。2. 小结实验心得体会。
实验六
数据建模
关系数据库管理系统是最常见的数据库使用形式。IBM Rational 的 UML 数据建模配置文件提供了一种为满足数据库建模和数据库设计的需要而使用和理解 UML 的简单的方法。数据库中使用的表和关系的概念在核心 UML 中被映射为类和关联的概念。但是在数据库建模中还有其他的构造和约束(比如数据库和模式)必须被可视化地建模。
图 1 数据库实现的多样性
图 1 显示了数据库部署的多样性。以下这些复杂分配:表与视图到模式、模式到数据库、数据库到表空间(tablespace)和节点,把需要底层构架的一种简单表示的每个数据库管理员(DBA)搞得晕头转向。因此计划数据库的分发和配置成为一项关键能力。节点 数据库所在的物理实体(计算机)被表示为节点。该表示法是核心 UML 的一部分。节点用于部署图中,代表了软件部署的物理配置。部署图包括节点以及节点间的连接。这些连接代表了通信协议。
图 2 部署图
“DB2 Server Lexington”、“Oracle Server Cupertino”和“Oracle Sever Redmond”代表了节点,XML、JDBC 和 OraNet代表了通信协议。所有的软件和数据库都必须部署在物理节点上。部署图对于数据管理员配置服务器和跟踪问题很重要(首先开始部署,然后开始钻研细节)。表空间
表空间是数据的存储器,代表了一个数据库系统。它是称为 Database 的用户透明物理结构(在下文中描述)和节点之间的链接。表空间是 UML 数据建模配置文件中的原型化组件。
表空间可理解为物理存储上的一个区域,其中该物理存储由数据库来维护。数据库本身可以被分发给数个表空间,这些表空间由数据的大小、数据访问需求和安全需求来决定。表空间利用依赖关系在数据库中关联,并且在数据库实现的设计阶段是可选的。如果没有使用,将采用数据库维护的默认表空间。
图 3 两个表空间中的数据库实现
表空间在数据库实现中的价值在于计划节点环境和建立节点需求。借助于组件图的帮助,跟踪部分数据库的问题变得更容易。可利用数据库或表空间来实现表。在利用数据库实现时,会使用默认的表空间。
表空间作为物理存储单元的基本结构是由不同的数据库供应商实现的。他们在存储需求和存储内部结构上给予表空间或多或少的控制。数据库
数据库是用于物理数据存储以及对已存储数据的受控访问的系统。它是用于数据建模的最大的专门元素。数据库是一个原型化组件,并且是 UML 数据建模配置文件的一部分。数据库定义了数据库类型,以及用于数据建模的约束,比如数据类型、存储过程、语法等。数据库级别是对信息的基本访问级别,可以在更高级别上进行精化。
数据库与组件图中的其他组件结合使用,来定义应用程序和数据库之间的依赖关系。
图 4 组件图中的数据库
数据库组件对于设计者的价值在于计划数据库的可访问性。对数据库的模式分配定义了信息存储的基本结构。数据库管理员使用部署图来找出应用程序和数据库之间的通信问题,并定义数据以及部署图的物理部署。模式
表的基本组织单元就是模式。模式是 UML 的组织单元,用包表示。模式是原型化的包,并且是 UML 数据建模配置文件的一部分。
模式是应用程序使用的基本单元。它还是一个可以被授予特权的单元。模式在下一个细节级别上被指定给数据库组件。模式是在类图中组织的。
图 5 类图解释了模式依赖关系
模式应该分配给数据库,因为数据库定义了语言约束、数据类型、可用触发器、可能的数据库约束以及存储过程类型。
模式不仅仅是一个组织单元;它还是一种安全机制。类图允许数据库管理员和分析人员找出基于应用程序的包和数据之间的依赖关系,从而产生数据库的使用模式。表
表是关系数据库的基本建模结构。它代表了具有相同结构的一组记录,也被称作行(row)。每条记录都包含数据。有关表结构的信息存储在数据库中。表是一种原型化类,并且是UML数据建模配置文件的一部分。表是在数据模型图中表示的。
图 6 数据模型图代表了表和关系上的视图
由于该图只是模型的一个视图,因此它可以代表面向表焦点的解决方案。这避免了由于构建一个巨型的模型图而导致无法找到您正在寻找的物理数据模型的范围。
该数据模型图具有表、视图、表间的关系、视图的依赖关系和存储过程容器,精确地表示了数据词典的一部分。数据管理员可以在更加可读的图形表示中找出数据库的结构。在设计方面,利用图形表示更容易调整数据库,因为您能够看到表的内容以及文档的每个细节。由于调整经常是一个手动过程,所以表间的数据移动是一项必需的功能。只需要知道所有模型约束的知识就能实现该功能。
构架师不关心数据模型图的详细信息,但是他可以检查是否所有信息都表示在数据库中。视图
视图是一个虚拟表。它代表了具有相同结构的一组记录,这与表完全一样,唯一的区别在于数据的物理资源在其他表中。
视图是一个原型化类,并且是 UML 数据建模配置文件的一部分。视图是在数据模型图中表示的。
图 7 从两个表派生而来的视图
由于该图只是模型的一个视图,所以它可以代表面向视图中焦点表中焦点的解决方案。在视图中对表进行建模的价值不仅仅在于为数据库定义数据结构,还在于数据的面向问题的分析(这不能在数据库本身的知识库中完成)。很容易发现数据结构和数据源之间的依赖关系。列
列是关系数据库内部的基本组织元素。每个数据都必须存储在表中的行的一列中。这些列作为原型化属性是 UML 数据建模配置文件的一部分。
列添加了必须指定的数据类型标签值。另外,列数据可以作为工件物理存储在数据库中,或者利用表达式从其他列进行计算。
列还具有其他标签值,他们指定了数据模型的细节,比如 null 和唯一性。
图 8 具有四列的表
列定义的价值在于数据结果的规格说明。另外,它还可用于不同数据源的集成以及实现互相之间相同点和不同点的发现。键
键用于访问表。主键唯一标识了表中的一行,而外键则访问其他相关表中的数据。主键通常是内容无关的,并且由数据库自动生成,以方便数据的更新。外键总是从与其他表的关系派生而来。
键是键约束(Key Constraints)的实现。键约束指定了键的内容(哪些列生成了键),以及键的物理实现。为了轻松识别表中的键列,它们被用主键(<
>)或外键(< >)原型。 图 9 具有主键和外键的表 键代表数据的识别。因此它们是识别数据库(所有链接都位于数据之间)的完整结构,以获得纯工件之外的信息所必需的。索引 索引是支持快速数据访问的物理数据结构。它完全不改变数据的质量。索引在 UML 数据建模配置文件中被表示为操作上的原型。索引和键都包含了几个列。索引中的列必须有顺序。 索引规格说明不但包含索引的列,还包含索引的类型(唯一性等)。 图 10 有两个索引的表 当某些因素影响了应用程序的性能时,索引的价值就被体现出来。索引是首先要注意的地方。约束 约束是应用于数据库结构的规则。该规则可应用于列和/或表,并且可能被限制到一个模式或数据库。 UML 数据建模配置文件中定义了几种类型的约束,但是,它们作为原型化操作来实现。 图11 有约束的表 定义的约束值位于规格说明的细节中。约束描述了数据库的动态行为,而列和表则没有描述这些内容。主键 主键约束定义了表的一个主键。每个表只能有一个主键。 主键约束在 UML 数据建模配置文件中使用了原型< >。 外键 外键是实现一个关系的约束。该约束总是在子表上实现的。 外键约束在 UML 数据建模配置文件中使用了原型< 触发器 作为其他活动的结果自动被执行的一个活动就是一个触发器。它经常是数据库中数据修改的副产品,并且大部分情况下保证了数据库的一致行为。 触发器约束在 UML 数据建模配置文件中使用了原型< 值验证 列中的值可以利用触发器验证。触发器不但能与固定范围的值进行比较,还能与数据库中的其他数据进行比较。 值验证约束在 UML 数据建模配置文件中使用了原型< 唯一性 唯一性约束保证了指定列的所有值都是不同的。 唯一性约束在UML数据建模配置文件中使用了原型< 数据模型中表之间任意种类的依赖关系被称作关系。 关系是原型化关联和一组主键和外键的汇总。每个关系都位于一个父表和一个子表之间,其中父表必须定义一个主键。子键创建了一个外键列和外键约束,以满足父表的要求。non-identifying 关联代表了两个独立表之间的关系。子表的外键不包含所有的主键列。 图 12 Non-Identifying 关系 一个识别关系是两个依赖表间的关系,其中如果没有父表子表就不能存在。父表(本例中为 Person)的所有主键在子表(Account)中同时变成了主键列和外键列。 图 13 识别关系 一个关系有两个与之关联的角色。它们定义了与其他表关联的一个表的角色。可以利用不同角色在两个表间指定一个以上的关系。每个关系都创建了从父表到子表的迁移键。 实验2 用例图 一、实验目的 1.学会分析系统中的参与者和用例 2.掌握用例图的绘制方法 3.掌握需求分析阶段的用例建模 二、实验器材 1.计算机一台; 2.StarUML工具软件。 三、实验内容 1.画出ATM系统的用例图 2.完成ATM系统用例的事件流描述 3.完成网络教学系统的用例建模 4.完成学生课程注册系统的用例建模 四、ATM系统的用例建摸 1.分析 ATM自动取款机:客户可以取钱,存钱,查询余额,转帐,修改密码。通过分析可找出如下几个参与者:(1)ATM(2)客户 通过分析得到如下用例: (1)存款(2)取款(3)查询余额(4)转帐(5)修改密码(6)打印收据 2.绘图步骤: 下面介绍在StarUML中创建用例图的过程: (1)在“Use Case View”中双击Main图,双击图标,出现图1,为编辑用例图做准备。 图1(2)在用例视图中,从工具栏中选择Actor图标,在右边的绘图区中添加一个新元素,并取名客户表明新增一个参与者,如图2所示。 图2(3)同样的方法添加参与者“ATM”,如图3所示。 图3(4)在工具栏上选择用例的图标,依次添加存款、取款、查询余额、转帐、修改密码、打印收据,如图4所示。 图4(5)添加参与者和用例间的关联关系,如图5所示。 图5 依照个人理解,增加一些功能或修改该用例图。(增加的功能或修改的用例图放在此处) 参照如下的取款用例的事件流描述,给出ATM系统的其它用例的事件流描述。 1)通过读卡机,储户插入ATM卡 2)ATM系统从卡上读取银行ID、帐号、并验证帐号。3)储户键入密码,系统检验密码。4)储户按确认键,输入取款金额。 5)ATM把帐号和取款金额传递给银行系统,取回帐户余额。6)ATM输出现金,并显示帐户余额。7)ATM记录事务到日志文件。 (ATM系统的其它用例的事件流描述放在此处)登录用例的事件流: 1)通过读卡机,储户插入ATM卡 2)ATM系统从卡上读取银行ID、帐号、并验证帐号。3)储户键入密码,ATM系统检验密码。4)储户进入ATM系统 存款用例的事件流: 1)通过读卡机,储户插入ATM卡 2)ATM系统从卡上读取银行ID、帐号、并验证帐号。3)储户键入密码,系统检验密码。4)储户选择存款事务 5)储户添加存款金额 6)ATM系统验证钞票 7)ATM系统显示储户存款金额 8)储户确定储户存款金额 9)ATM把帐号和存款金额传递给银行系统,更新账户金额 10)ATM记录事务到日志文件。查询余额用例的事件流: 1)通过读卡机,储户插入ATM卡 2)ATM系统从卡上读取银行ID、帐号、并验证帐号。3)储户键入密码,系统检验密码。4)储户选择查询事务 5)ATM系统显示账户余额 转账的事件流: 1)通过读卡机,储户插入ATM卡 2)ATM系统从卡上读取银行ID、帐号、并验证帐号。3)储户键入密码,系统检验密码。4)选择转账事务 5)储户输入转账账号 6)ATM系统验证转账账号 7)储户输入转账金额 8)ATM系统验证输入金额是否符合输入要求 9)ATM系统验证储户账户余额 10)ATM系统显示储户转账账户及转账金额 11)ATM记录事务到日志文件。修改密码用例的事件流: 1)通过读卡机,储户插入ATM卡 2)ATM系统从卡上读取银行ID、帐号、并验证帐号。3)储户键入密码,系统检验密码。4)选择修改密码事务 5)储户输入旧密码,ATM系统验证账户旧密码 6)储户输入2次新密码,确认输入密码 7)ATM系统更新储户的密码为新密码 8)储户修改密码成功 查询历史记录用例的事件流: 1)通过读卡机,储户插入ATM卡 2)ATM系统从卡上读取银行ID、帐号、并验证帐号。3)储户键入密码,系统检验密码。4)选择查询历史事务记录用例 5)ATM系统查询并显示相关的信息 打印数据用例的事件流: 1)通过读卡机,储户插入ATM卡 2)ATM系统从卡上读取银行ID、帐号、并验证帐号。3)储户键入密码,系统检验密码。4)ATM系统核实操作 5)系统提示是否打印数据 6)储户确认打印数据 7)返回主界面 五、根据下属需求,分析参与者和用例,并建立网络教学系统的用例图,给出各用例的事件流描述。 网络教学系统的功能需求主要包括以下几个方面: ① 学生可以登录网站浏览信息、查找信息和下载文件。 ② 教师可以登录网站输入课程简介、上传课件文件、发布消息、修改和更新消息。③ 系统管理员可以对页面维护以及批准用户的注册申请。(建立的网络教学系统的用例图放在此处) (各用例的事件流描述放在此处)学生浏览信息用例的事件流: 1)学生输入账号、密码 2)网络教学系统验证账号、密码是否正确 3)进入网站主页界面 4)浏览到相关的信息 学生查找信息用例的事件流: 1)学生输入账号、密码 2)网络教学系统验证账号、密码是否正确 3)进入网站搜索界面 4)输入关键词进行搜索 5)找到自己所需要的信息 学生下载文件用例的事件流: 1)学生输入账号、密码 2)网络教学系统验证账号、密码是否正确 3)进入下载文件界面 4)查找到相关信息 5)保存在指定的硬盘 6)确定下载 教师输入课程简介用例的事件流: 1)教师输入账号、密码 2)网络教学系统验证账号、密码是否正确 3)进入课程简介界面 4)增加课程简介 5)保存课程简介 6)确定输入成功 教师上传课件用例的事件流: 1)教师输入账号、密码 2)网络教学系统验证账号、密码是否正确 3)进入上传课件界面 4)选择上传的课件 5)确定上传课件 教师发布、修改、更新消息用例的事件流: 1)教师输入账号、密码 2)网络教学系统验证账号、密码是否正确 3)进入发布、修改、更新的消息界面 4)填写好要发布、修改、更新的消息 5)保存要发布、修改、更新的消息 6)确定消息 系统管理员页面维护用例的事件流: 1)系统管理员输入账号、密码 2)网络教学系统验证账号、密码是否正确 3)系统管理员进入页面维护界面 4)修改相关页面 5)保存修改过的相关页面 6)确定修改相关页面 系统管理员批准用户的注册申请用例的事件流: 1)系统管理员输入账号、密码 2)网络教学系统验证账号、密码是否正确 3)进入用户的注册申请界面 4)审核相关用户注册的信息 5)保存相关用户注册的信息 6)确定用户的注册申请通过 六、请根据以下需求画出学生课程注册系统的用例图。 某大学准备开发一个学生课程注册系统,学生可以使用该系统查询新学期将开设的课程和讲课教师情况,选择自己要学习的课程进行登记注册,并可以查询成绩单;教师可以使用该系统查询新学期将开设的课程和选课学生情况,并可以登记成绩单;注册管理员使用该系统进行注册管理,包括维护教师信息、学生信息和课程信息等。 在每个学期的开始,学生可以获得该学期的课程目录表,课程目录表列出每门课程的所有信息,诸如基本信息、教师、开课系和选课条件等。 新学期开始前两周为选课注册时间,在此期间学生可以选课注册,并且允许改变或取消注册申请,开学两周后注册管理员负责关闭课程注册。每个学生可以选择不超过4门课程,同时指定2门侯选课程以备主选课程未选上。每门课程最多不能超过10人,最少不能低于3人,低于3人选课的课程将被取消。一旦学生的注册过程完毕,注册系统将有关信息提交收费系统以便学生付费。如果在实际注册过程中名额已满,系统将通知学生在提交课程表之前予以更改。 在学期结束时,学生可以存取系统查看电子成绩单。由于学生成绩属于敏感信息,系统必须提供必要的安全措施以防非法存取。(将画出的用例图放在此处) UML实验指导书 前言 UML技术是一门实践性很强的课程,必须十分重视加强实验教学。UML技术实验课的目的是进一步巩固和加强理论知识,培养基本应用和建模工具操作技能,提高解决实际问题的能力。 为了达到上述目的,根据我系UML技术的教学大纲及实际情况编写了该实验指导书。全书共分7个实验,每个实验包括有:实验目的、实验器材、实验内容和步骤、实验报告要求 等项目。 1 UML实验指导书 目录 实验一 用例图...............................................................................................................................3 实验二 交互图...............................................................................................................................4 实验三 类图...................................................................................................................................5 实验四 数据建模...........................................................................................................................6 实验五 活动图...............................................................................................................................7 实验六 状态图...............................................................................................................................8 实验七 组件图和部署图...............................................................................................................9 2 UML实验指导书 实验一 用例图 一、实验目的 1. 熟悉用例图的基本功能和使用方法。2. 掌握如何使用建模工具绘制用例图方法。 二、实验器材 1.计算机一台; 2.Rational Rose 工具软件; 三、实验内容 根据以下需求设计一个图书馆管理系统的用例图。基本功能要求: 图书管理:新书登记,图书查询,图书注销; 借阅管理:借书,还书,查询今日到期读者; 读者管理:增加读者、删除读者、查询读者、读者类别管理(可以设置不同类的读者,并使不同类读者对应不同类的图书流通参数,如可借册数,可借天数,可续借次数,可续借天数等); 报表管理:包括图书借阅统计报表,被注销图书统计报表等;报表可以有多种格式可供选择;可以把报表输出到文件中,可以预览报表、打印报表等。 系统管理:系统管理员使用,包括用户权限管理(增加用户,删除用户,密码修改等),数据管理(提供数据修改、备份、恢复等多种数据维护工具),系统运行日志,系统设置等功能。 四、实验步骤 详细分析系统需求,使用Rose工具完成系统用例图。(1)分析系统活动者(2)分析系统活动者的用例 (3)分析活动者之间、用例之间的关系(5)绘制用例图 五、实验报告要求 1. 整理实验结果。2. 小结实验心得体会。 3 UML实验指导书 实验二 交互图 一、实验目的 1.理解顺序图的基本概念; 2.理解协作图的基本概念; 3.掌握在Rational Rose中绘制交互图的操作方法。 二、实验器材 1.计算机一台; 2.Rational Rose 工具软件; 三、实验内容 根据图书馆管理系统的需求分析和用例图,完成系统的交互图,对用例进行动态建模。 四、实验步骤 1.分析:根据图书馆管理系统的需求分析和用例图,对系统中的用例进行动态建模。2.请根据教材中示例部分在Rational Rose中绘制上述的交互图。 五、实验报告要求 1. 整理实验结果。2. 小结实验心得体会。 4 UML实验指导书 实验三 类图 一、实验目的 1.理解类的基本概念; 2.掌握如何从需求分析中抽象出类的方法; 3.掌握在Rational Rose中绘制类的操作方法。 二、实验器材 1.计算机一台; 2.Rational Rose 工具软件; 三、实验内容 根据图书馆管理系统需求分析、用例图、交互图,对系统进行静态建模,寻找和发现类,分析类之间的关系。 四、实验步骤 1.打开前面初步构建的UML模型文件;2.打开Rose中的逻辑视图(Logical View),选择分析模型(analysis model)目录。并在其下创建一个子目录并命名为:“图书馆业务功能”。 3.用鼠标右击“图书馆业务功能”在弹出来的菜单中选择“New→Class diagram”项,创建类图。 4.双击新建的类图,并点右边控件集中选中的类并用鼠标在图中分别拖出上述类图。5.设定上述抽象出来各类的属性和操作。6.分析、设定以上各类之间的关系。 7.请根据教材中示例部分在Rational Rose中绘制类间的关系。 五、实验报告要求 1. 整理实验结果。2. 小结实验心得体会。 5 UML实验指导书 实验四 数据建模 一、实验目的 1.数据建模的基本概念 2.掌握在Rational Rose中进行数据建模。 二、实验器材 1.计算机一台; 2.Rational Rose 工具软件; 三、实验内容 根据图书馆管理系统需求分析、类图系统进行数据建模。 四、实验步骤 1.创建 Database,Database建模元素在component view中创建。2.创建 Schema,在logical view中创建schema,并选定目标数据库。 3.创建 Domain Package和Domain,在logical view中创建,先创建Domain Package,再创建Domain。 4.创建 Data Model Diagram,在schema下创建。5.创建 Table,在Data Model Diagram中建表。6.创建 Column,在表上建立列。 7.创建 Relationship,在表与表之间建立关系,,有两种关系,即non-identifying(非确定性)关系和 identifying(确定性)关系 8.Normalizing the Data Model,创建了数据模型后,还要将模型规范化,如转换为3NF。 9.Optimizing the Data Model,如创建索引,视图,存储过程,denormalization,使用domain等。 10.Implementing the Data Model,利用Rose产生DDL或直接在数据库中建立表。 五、实验报告要求 1. 整理实验结果。2. 小结实验心得体会。 6 UML实验指导书 实验五 活动图 一、实验目的 1. 熟悉活动图的基本功能和使用方法。2. 掌握如何使用建模工具绘制活动图方法。 二、实验器材 1.计算机一台; 2.Rational Rose 工具软件; 三、实验内容 根据图书馆管理需求分析、用例图、类图等,应针对每个用例进行业务分析,说明其具体的业务流程,完成系统活动图活动图。 四、实验步骤 以“删除读者信息”用例为例,说明绘制活动图的步骤。1.管理员在录入界面,输入待删除的读者名; 2.“业务逻辑”组件在数据库中,查找待删除的读者名; 3.如果不存在,则显示出错信息,返回步骤(1),如果存在则继续; 4.“业务逻辑”组件判断“待删除的读者”是否可以删除; 5.如果不可以,则显示出错信息,返回步骤(8),如果可以则继续; 6.在数据库中,删除相关信息; 7.显示删除成功信息; 8.结束。 五、实验报告要求 1. 整理实验结果。2. 小结实验心得体会。 7 UML实验指导书 实验六 状态图 一、实验目的 1.理解什么状态和状态图; 2.学会使用UML绘制状态图; 二、实验器材 1.计算机一台; 2.Rational Rose 工具软件; 三、实验内容 根据图书馆管理系统的需求分析、用例图和相应的活动图,从对象的动态行为的角度去描述系统的业务活动,完成系统的状态图。 四、实验步骤 1.业务分析:由前面章节对图书馆管理系统中的还书业务的描述和分析可知,还书业务的动态行为是由:空闲(idle)、图书查找(finding)、还书(reversion)、失败(Failure)、归还成功(Success)5种状态及激活相互转换的事件。 2.绘制状态图:请您根据分析运用UML绘制还书用例的状态图。 五、实验报告要求 1.整理实验结果。 2.小结实验心得体会。 8 UML实验指导书 实验七 组件图和部署图 一、实验目的 1.理解组件图的基本概念 2.理解组件图的应用:逻辑部署 3.理解部署图的基本概念 4.理解部署图的应用:物理部署 5.掌握组件图和部署图绘制的方法 二、实验器材 1.计算机一台; 2.Rational Rose 工具软件; 三、实验内容 1. 根据图书馆管理系统的分析和设计,已完成类图和交互图的分析与设计,完成系统的组件图和部署图。 四、实验步骤 1.绘制组件图 分析: 在图书馆管理系统中,通过分析可以发现类图中的类应分为4个部分: 1.用户接口模块(UI),主要负责系统和用户的交互,包括Frame类,Dialog类等。2.业务对象模块(BO),主要负责处理系统中的业务计算,如借书,还书等功能的具体操作。 3.数据存储模块(DB),主要负责处理对数据的存储。4.通用工具模块(UTIL),包括系统中通用函数。 通过一个主程序StartClass来启动。由于系统中的类较多,这里以业务对象模块(BO)为例来讲解如何创建组件图,BO模块中包括 Item类:书目类,表示一本实际存在的书籍或杂志 Loan类:借书业务类,将借阅者和图书馆关联起来,一个Loan对象表示借出的一本书 BorrowerInfomation类:借阅者信息类,表示一个借阅者。 Title类:表示一种书或一种杂志。如《C++编程思想》就是一种书,用1个title表示,如果有2本这样的书,则需要用2个Item表示。 Reservation类:预定信息类,表示一个预定信息。 Item类和Loan类之间互相依赖,Loan类和BorrowerInfomation类之间互相依赖,9 UML实验指导书 BorrowerInfomation类和Reservation类之间互相依赖,Reservation类和Title之间互相依赖,Title和Item类之间互相依赖。绘图步骤: (1)在组件视图中双击Main图,出现图7.1,为编辑组件图做好准备,这时绘图工具栏中的图标如图中椭圆所示,其中具体含义可参看本节“补充图标”一段的介绍。 图7.1(2)在组件视图中,从工具栏中选择MainProgram图标,在右边的绘图区中添加一个新组件,并取名StartClass.java表明新增一个主程序。 图7.2(3)选择新创建的组件,点击鼠标右键,在弹出的菜单中选择“Open Sepcification”,弹出图7.3对话框。 10 UML实验指导书 (4)在对话框中,可以修改组件的名称,设置组件的类型,指定实现的语言。这里新组件的名称定为“StartClass.java”,组件构型为Main Program(Rose中提供了多种构型,大部分在补充图标一段中均有简单的介绍),实现语言为JAVA(Rose中默认的是分析语言Analysis),修改结果如图7.4所示。 图7.3 图7.4(5)组件图描述的是系统的实现视图,因此要指定实现组件功能的文件。点击File 11 UML实验指导书 选项卡,在列表框中点击鼠标右键,在弹出的菜单中选择“Insert File”,弹出文件对话框。在对话框中,键入StartClass.java,点击“打开”按键,这时对话框如图7.5所示。 图7.5(6)双击StartClass.java,弹出是否创建对话框,询问是否创建文件,选择“YES”,弹出记事本,这时可输入相应的源程序(注意:如果这里选择的文件已经存在,则不会弹出创建文件对话框,而是直接显示相应文件内容)。 (7)创建相应的包。选择包图标,在右图中创建。这里同样需要对每个组件打开“Open Specification”对话框,设置具体的属性,对“包”组件来说需要在Files选项卡中指明与其对应的目录。创建完毕的组件图如图7.6所示。 图7.6(8)选择业务对象包(BO),双击,打开业务对象包的详细组件图,这里根据分析的结 12 UML实验指导书 果分别创建Title.java,Item.java,Loan.java,BorrowerInfomation.java,Reservation.java组件,并设置好每个组件的构型和对应的文件。创建好的BO包组件图如图7.7。 图7.7(9)创建依赖关系。在本节“关系”一段中,已经描述过依赖关系使用虚线表示,因此根据分析中的结果,在图中将相互依赖的组件连接即可。完成后的组件图如图7.8。 图7.8 2.绘制部署图 分析: HNS的图书管理系统目前开发的是一个单机版系统,其中所有的运算均在一台机器上完 13 UML实验指导书 成,但是由于打印报表的需要,系统还应配备一台打印机。因此得出系统中存在2个节点: ① 一台主机,其类型是Processor。② 一台打印机,其类型是Device。绘图步骤: (1)浏览窗口中选择“Deployment View”,弹出如图7.9所示窗口: 图7.9(2)在图中添加分别添加一个Processer和Device,并分别命名为“computer with java support”和“Printer”,添加完毕后,其结果如图7.10所示: 14 UML实验指导书 图7.10(3)为节点添加连接关系。全图如图7.11。 图7.11 五、实验报告要求 1. 整理实验结果。2. 小结实验心得体会。 15 uml实验报告 学院 班级 学号 姓名 uml实验报告 实验一:用例图 实验结果: 小结实验心得体会: 用例模型用于需求分析阶段,它描述了待开发系统的功能需求,并驱动了需求分析之后各阶段的开发工作。用例图是uml中用来对系统的动态方面进行建模的7种图之一。用例图描述了用例、参与者以及它们之间的关系。用例图从用户角度描述系统功能,并指出各功能的操作者。通过本次实验,我熟悉rational rose建模环境,更加清楚的了解了用例图的语义和功能,如何清晰明了的识别参与者、用例,学会了如何使用事件流描述用例。同时掌握了用例间的类属关系、include关系和extend关系的语义、功能和应用。最后通过本次实验学习了如何使用用例图为系统的上下文以及系统的需求建模。 思考题: 1.如果要删除参与者、用例,请问是在导航窗口删除,还是在绘图窗口删除? 答:都可以删除,但在绘图窗口中有两种删除方式:一种是只删除参与者、用例,而不改变 其在导航窗口中的存在,另一种是从建模中完全删除。 2.如果要删除参与者和用例的联系,用例和用例的联系,请问是在绘图中删除,还是 在参与者或用例的设置对话框中删除? 答:都可以删除。 实验二:类对象模型的建立 实验结果: 小结实验心得体会: 类图是面向对象系统建模最常用的图,描述了类图、接口集、协作以及它们之间的关系。类图描述了系统的静态设计视,该视主要体现系统的功能需求,即系统应该提供给用户的服 务。通过本次实验,加深了我对类图语义的理解和功能的应用,掌握了类之间的联系,关联、依赖、聚合等,同时基本掌握了在rational rose中绘制类的关联、依赖、泛化关系。 思考题:选中一个模型对象,点击鼠标右键,比较快捷菜单项“edit——delete”与“edit——delete from model”,它们二者之间区别在哪里? 答:“edit——delete”只是在绘图窗口中删除了模型对象,而“edit——delete from model”则是彻底的删除了模型对象。 实验三:顺序图、协作图 实验结果: 顺序图: 1.归还图书 2.借出图书 协作图: 1.归还图书 2.借出图书 小结实验心得体会: 顺序图描述了对象之间的动态合作关系,它强调对象之间消息发送的时间顺序,同时显示对象之间的交互。协作图与顺序图是同构的,rose可自动转换。顺序图是强调消息的交互作用图,协作图描述了对象间的关系,是强调发送和接收消息的对象的组织结构的交互作用图。通过本次实验,掌握了对图书管理功能中的借书用例、还书用例进行动态建模。实验过程中由于对rational rose工具软件的不熟识,导致出现了不该出现的错误。在设计阶段,顺序图中需要引入边界类和控制类,在识别对象职责的基础上,需要将消息转换为类的方法,为方法定义参数、返回值类型,便于计算机的实现。其中,为方法定义参数、返回值类型的时候,还是不能够快速准确的作出判断。 实验四:活动图 实验结果: 篇二:uml实验总结 实验一 1.源代码生成,在逻辑视图中绘制下图,生成java源文件 生成代码步骤: “tools”-〉“java”-〉“genenate codes”。 public class meeting { private string username;private string scheduled_user;private date start_time;private date end_time;private string label;public string getuser(){ return null;} public string getother(){ return null;} public date getstart(){ return null;} public date getend(){ return null;} public string getlabel(){ return null;} public string tostring(){ return null;} public void main(string args){ return null;} } 2.进行逆向工程,自行找到一个项目软件源代码,进行逆向工程。(ftp上有一个小源程序文件) 逆向工程的实现 “tools”->“java”-〉“reverse engineer java„”。public class student { private string name;public student(){ } public void test(){ } } 实验二 根据下属需求,分析参与者和用例,并建立网络教学系统的用例图。网络教学系统的功能需求主要包括以下几个方面: ① 学生可以登录网站浏览信息、查找信息和下载文件。② 教师可以登录网站输入课程简介、上传课件文件、发布消息、修改和更新消息。③ 系统管理员可以对页面维护以及批准用户的注册申请。 录入课程简介 下载文件 查找信息 修改消息 注册信息处理 实验三 1、已知借书的活动图如图3所示,若要求欠费的读者需结清欠款才能借书,请完善该活动图,并在rose内绘制出来。 图3 借书处理活动图 2、图4为图书“借书”活动图,文字描述此活动图包括哪些活动,活动按照怎样的顺序发生? 图4 “借书处理”活动图 (1)读者查找所需的图书,若找到图书,将所需的图书带到借阅台;(2)工作人员输入读者信息,检查读者身份是否合法,如果读者身份合法,进入(3); (3)录入图书信息,并检查图书是否允许借阅,如果允许,则记录借阅信 息,否则直接进入(4); (4)检查是否还有图书需要录入,如果还需录入,进入(3),否则提借阅信息。 3、绘制“删除读者信息”用例的活动图。删除读者信息一般按照以下步骤进行: (1)管理员在录入界面,输入待删除的读者名; (2)“业务逻辑”组件在数据库中,查找待删除的读者名; (3)如果不存在,则显示出错信息,返回步骤(1),如果存在则继续;(4)“业务逻辑”组件判断“待删除的读者”是否可以删除; (5)如果不可以,则显示出错信息,返回步骤(8),如果可以则继续;(6)在数据库中,删除相关信息;(7)显示删除成功信息;(8)结束。 篇三:uml实训总结 实训总结(收获与体会) 通过一个学期的uml学习,我从书本上获取了基本的理论知识,而真正的学以致用,将书本理论知识运用到实际的过程,是这次uml实训的体现。 三个周的uml实训,主要是围绕着一个实训题目“基于uml系统需求分析与设计--合倍利业务流管理系统”进行的,以小组为单位进行文档的编写,其中还对各种流程图、类图、用例图等的绘制,整个过程设计了知识的方方面面。从中让我认识到uml的作用和运作模式以及方法,它是一种统一建模的标准语言,现在对于大多数软件开发来说,都使用uml作为建模语言,形成了统一的标准。它是图形化的的语言,可以很直观的描述一个事物的状态、行为与特征,很好的说明与表达了“合贝利任务管理”这个系统。 总之,在我看来,uml是一种定义良好、易于表达、功能强大且普遍适用建模语言。融入软件工程领域的心思想、新方法和新技术,作用域不限于支持面向对象的分析和设计,也不单纯是一种方法,仅仅是一组符号而已,它可以对任何具有静态机构和动态行为的系统进行建模,所以我很喜欢适用uml,在今后的学习中,我还会进一步对该模型的学习,因为它方便、简洁、干净、清爽,直观形象,把整个软件系统的开发流程都融入进去。 这次实训过程中,文档方面的编写,遇到了很多的问题,这些问题主要是对基础知识的理解和把握不够,不能融会贯通和学以致用,有时遇到困难的时候真的不知如何着手解决,但是,我始终相信的那句话“读万卷书,不如行万里路,行万里路不如名师指路”。所以,当遇到自己模糊和自己难以解决的问题时,向指导老师和懂的同学请教,帮助解决我遇到的问题,经过他们的讲解后,我下来自己在分析,在动手,从不理解到理解,从不会到会,从懂到懂,这是一个让我学习愉快的过程,在这个过程中,既可以丰富了自己的知识,还可以和老师和同学进行有效地方沟通。 在这次实训过程中,感触最深的也就是合作精神了。独木难成林,单枪匹马,那是最错误的思想和做法。这次我是深有感触了。对于一个系统的分析,到最终项目的完成,需要分析每个文档,然后在写出纸质的文档,而在每个文档中,内容比较多,分析也要求比较到位,所以单独凭借一个人去完成,似乎有点困难,于是我们小组,将每个文档进行分析,能独立成块就分配给每一个人,这样,每个人都有自己的任务,谁也不会闲着,既学到了知识,也充实了自己。另外一点,就是我深深体会到了积累知识的重要性。在实训当中我们遇到了不少难题,但是经过我们大家的讨论和老师细心的一一指导,问题得到了解决。两个月的实训结束了,收获颇丰,同时也更深刻的认识到要做一个合格的程序员并非我以前想像的那么容易,最重要的还是细致严谨。社会是不会要一个一无是处的人的,所以我们要更多更快地从一个学生向工作者转变,总的来说我对这次实习还是比较满意的,它使我学到了很多东西,为我以后的学习做了引导,点明了方向。 实训的日子即将结束,回想这一个过程,有过痛苦,有过烦恼,有过喜悦和有过成功。痛苦烦恼的是自己对所学书本知识掌握得不是很扎实,面对着从书本上学到的知识与实际联系不起来,总结起来就是自己的动手练习的时间太少。而喜悦的是,在做的过程中遇到了困难和问题,主动向老师和会的同学请教,然后再做,直至做正确做成功后的那种喜悦。 团队的力量是无穷的,通过组员的共同努力,完成了实训项目。虽然,我们这组的项目存在着诸多的不足和缺点,但这正是以后学习和工作需要弥补的。这次实训将为我以后进入社会提过了一笔宝贵的财富,是对我能力的一个见证。最后,不得不感谢指导教师熊飞老师的辛勤指导,和小组成员的共同努力!篇四:uml实验报告 学 生 实 验 报 告 书 实验课程名称 uml建模技术 开 课 学 院 指导老师姓名 学 生 姓 名 学生专业班级 2009 — 2010学年 第 一 学期 实验课程名称: uml建模技术 实验课程名称: uml建模技术 篇五:uml实验——状态图 实验报告 南京信息工程大学实验(实习)报告 实验名称 状态图 实验(实习)日期 2014.04.26 得分 指导老师 系专业 班级 一、实验目的 1.熟悉活动图的基本功能和使用方法。 2.掌握如何使用建模工具绘制活动图方法。 二、实验器材 1.计算机一台。 2.rational rose 工具软件。 三、实验内容 通过前面内容的学习,完成了对图书馆的图书馆管理系统的需求的初步分析,得出系统的用例图和相应的活动态。通过这两类图我们可以初步了解系统的业务处理过程,但对业务处理过程的处理状态间转换了解仍不够,这不利于设计人员对系统业务的进一步理解,而状态图能从对象的动态行为的角度去描述系统的业务活动。因此,指派你运用本节所学的状态图,完成如下任务: 1.完成图书业务模块中还书用例的状态图。 四、实验步骤 1.业务分析:由前面章节对图书馆管理系统中的还书主要业务的描述和分析可知,还书业务的动态行为是由:空闲(idle)、图书查找(finding)、还书(reversion)、失败(failure)、归还成功(success)5种状态及激活相互转换的事件。 2.绘制状态图:请您根据分析运用uml绘制还书用例的状态图。 分析: 还书的状态图,还书的主要业务都是由管理员来完成,首先管理员必须先登录系统,并通过验证后,便可以进行下一步的操作,查找该书的相关信息,如存在,则进行还书操作,如不存在该信息,则给出提示信息; 绘图步骤: (1)在用例图中的还书(revesion)用例,单击右键,如图3.1所示,新建一个状态图,命名为revesion状态图。 (2)双击“receivesion”状态图,展开后,在左边的工具栏上选取一个实心圆点,此结点为开始结点;当还书的时候,操作者先要询问系统的状态,如果系统忙,操作者则必需等待,因此,得到系统的两种状态。 (3)操作者在询问系统和状态后,得到两种状态,如果系统忙,操作者必需要等待、结束,重返步骤(1)。 (4)如系统空闲,则进行对还书的信息进行查询操作;查询也有两种结果,一是查询得到该书的相关信息,二查询不到该书的相关信息;则此时有两种状态,需要建立两种状态。 (5)最后,操作者进行了操作后,系统会给出操作的结果给操作者;操作成功或失败,都会有提示信息给出。整个的还书的过程便完成。 (7)根据分析设计情况,进一步添加或细化状态图。 五、实验报告要求 1.整理实验结果。 2.小结实验心得体会。 通过本次试验学习到了项目中状态图的绘制,了解了他们之间的关系以及关系处理的方法,熟悉了对rational rose 工具软件的使用,在以后做软件项目设计有很大的帮助。第三篇:UML实验二
第四篇:UML实验指导书
第五篇:UML实验心得体会