uml实验报告19.docx

上传人:b****6 文档编号:7116096 上传时间:2023-01-19 格式:DOCX 页数:55 大小:3.90MB
下载 相关 举报
uml实验报告19.docx_第1页
第1页 / 共55页
uml实验报告19.docx_第2页
第2页 / 共55页
uml实验报告19.docx_第3页
第3页 / 共55页
uml实验报告19.docx_第4页
第4页 / 共55页
uml实验报告19.docx_第5页
第5页 / 共55页
点击查看更多>>
下载资源
资源描述

uml实验报告19.docx

《uml实验报告19.docx》由会员分享,可在线阅读,更多相关《uml实验报告19.docx(55页珍藏版)》请在冰豆网上搜索。

uml实验报告19.docx

uml实验报告实验报告19实验一UML建模基础一、实验目的1.熟悉UML建模工具Rationalrose的可视化环境。

2.掌握利用Rationalrose进行建模的步骤。

二、实验内容1.熟悉Rationalrose建模环境

(1)单击“开始所有程序IBMRationalRationalRoseEnterpriseEdition”,启动RationalRose建模环境,软件启动后产生如图1.1所示的建模模型窗口。

图1.1Rationalrose启动提示界面

(2)选项卡【new】用来选择新建模型时采用的模板。

单机【Details】按钮可以查看选中模板的描述。

【Existing】选项卡用于打开一个已经存在的模型。

【Recent】选项卡可以打开一个最近打开的模型文件。

如暂时不需要任何模板,只需要建立一个新的空白模型文件,单击【Cancel】按钮,显示Rationalrose主界面,如图1.2所示。

图1.1Rationalrose主界面(3)主界面包含五大部分:

导航窗口、绘图窗口、工具栏、文档窗口和日志窗口。

导航窗口:

用于在模型中迅速漫游。

导航窗口类似于windows操作系统的资源管理器,它以树形结构显示了模型中的所有元素,包括参与者、用例、类、组件等。

利用导航窗口可以:

a)增加模型元素参与者、用例、类、组件、框图。

b)浏览现有模型元素。

c)浏览现有模型元素间的关系。

d)移动模型元素。

e)更名模型元素。

f)将模型元素加进框图。

g)将文件或UML链接到元素。

h)将元素组成包。

i)访问元素的详细规范。

j)图1.3导航窗口打开图形。

导航窗口四个视图根结点。

a)用例视图(UseCaseView):

用于管理需求分析获取的所有用例、参与者和用例图。

b)逻辑视图(LogicView):

分析和设计完成的所有制品(如类图、对象图、顺序图、活动图、状态图等)放置在逻辑视图中。

c)组件视图(ComponentView):

逻辑视图中的类实现后成为软件的组件,可以放在组件视图中创建这些组件,并绘制组件图描述它们之间的依赖关系。

d)部署视图(DeploymentView):

系统最终要实现物理部署,在部署视图中创建物理系统中的节点和节点的连接,并描述软件组件在物理节点中的分布。

绘图窗口:

当在导航窗口中选中某个图双击后,就会打开一个绘图窗口并显示该图,可以使用左边工具栏进行绘图。

根据图型的不同,工具栏提供与之相应的图形符号。

工具栏:

提供了所有UML中的图示符号,包括用例、参与者、类、关系、注释等等,按下任意一个图形元素,就可以在绘图窗口中绘制出来。

文档窗口:

图形符号提供的信息经过了抽象和压缩,提供的信息量有限,每张图或每个图形元素的详细信息可以补充在文档窗口中。

比如书写用例规约时,只要在绘图窗口中点击选中某个用例,然后在文档窗口中输入规约内容,系统就会自动保存文档内容,并与该用例关联起来。

日志窗口:

使用Rose工具时,有些信息会在日志窗口中显示出来,比如在生成代码时可能发生的任何错误。

2.建模基本步骤

(1)启动Rationalrose软件,建立空白模型文件。

(2)双击UseCaseView节点下的main,出现如图1.4所示,为绘制用例图做好准备。

图1.4绘制用例图(3)添加参与者:

在图1.4中的工具栏选取Actor图标,在右边的图中添加一个Actor,选中新添加的Actor,单击鼠标右键,出现如图1.5所示的快捷菜单,选择“OpenSpecification”(4)项,打开该Actor的设置对话框,如图1.6所示。

在name框中为该参与者命名为学生,单击【OK】按钮。

图1.5Actor设置图1.6Actor命名(5)添加用例:

如图1.7在左边的用例工具栏选取用例图标,在右边的图中添加一个UseCase,选中新添加的“UseCase”,单击鼠标右键,选择“OpenSpecification”项,打开该UseCase的设置对话框,如图1.8所示。

在name框中为该用例命名为“登陆系统”,在Documentation框中键入“登陆”的用例规格说明,单击【OK】按钮。

从此以后只要选中“登陆系统”用例,则界面上的文档窗口就会显示其对应的用例规格说明。

图1.7添加用例图1.8用例命名(5)按照(4)反复操作,分别加入“成绩查询”、“退出系统”、“输入系统密码”、“找回系统密码”用例,如图1.9所示。

图1.9用例添加(6)用例的实现:

在绘出了参与者和用例后,接下来的是绘制参与者与用例实现,如图1.10所示。

图1.10用例实现(7)绘制用例间的关系:

根据需求分析可得出“找回系统密码”是“登陆系统”的扩展,用例“登陆系统”包含用例“输入密码”。

如图1.11,利用工具栏依赖关系图标绘制相应关系。

同时右键在OpenSpecification按钮(如图1.12),在相应对话框中设计依赖关系的类型,设置结果如图1.13所示。

图1.11用例间关系1.12类型设置1.13图形结果(8)保存模型:

选择菜单栏【File-Save】或者标准工具栏的【Save】按钮,可以保存已建立好的系统模型,UML中模型文件扩展名为.mdl。

3.结合日常生活中实际使用的系统,模仿2中的用例模型绘制用例图,并保存模型,熟悉利用Rationalrose的建模过程,要求绘制的用例图中用例与2中的用例图不相同。

实验二用例图一、实验目的1.熟悉UML用例图的基本图形元素。

2.掌握用例与用例之间的各种关系。

3.熟悉针对具体场景使用例图进行软件建模的方法。

4.掌握用例规格说明的概念和基本结构,以及用例规格说明的作用。

二、实验内容1.根据实验一建模实例,熟悉利用Raionalrose软件绘制用例图的基本方法。

2.通过对“学生信息管理系统”的需求描述,确定系统用例图:

“学生信息管理系统”的需求描述如下:

在每个新学年开始都会有新生入学,这时系统的管理人员可以通过系统将这些新生的学籍、年龄、家庭住址、性别、身高、学生证号、身份证号等基本信息存入数据库,每个新生都对应一个唯一的编号,此编号可以是学生,在日程管理中,系统管理员还可以对所有学生的基本信息进行查询、修改和删除等操作;同时校领导可以查询、修改全校所有学生的基本信息。

学校领导可以通过本系统了解每个班的任课教师、辅导员、学生姓名、学生人数、专业等班级基本信息。

系统管理员可以进行查询班级基本信息、添加班级、修改班级基本信息、删除班级等操作。

在考试结束以后,教师可以将学生的考试成绩录入系统,还可以对学生的成绩进行查询和修改。

学生可以通过本系统进行成绩的查询。

学生还可以在网上选择自己选修的课程(必修课必须上,所以不用选),学生通过本系统可以看到有哪些课程可以选以及课程的基本信息。

课程的基本信息包括:

课程号、所属专业、课程名称、开课学期、学时数、学分、任课教师等。

每个学生每学期的选修课程数不得大于6门,如果已经选择了6门课程则不能再选择其他课程。

只有将已选择的课程删除掉才能再选择新课程。

系统管理员负责修改、增加、删除选修课程。

系统管理员可以对系统的账号进行添加、设置、删除、查询等操作,同时可以设置每个账号的权限以及对应的个人信息。

a)请根据上述描述,确定系统的参与者b)确定系统的用例并绘制完整的用例图。

3.根据2中所绘制的“学生信息管理系统”用例图,写出学生“选择课程”用例的用例规格说明。

“选择课程”用例规格说明用例编号:

UC21用例名称:

选择课程简要说明:

用户选择课程并保存参与者:

学生、教师、校领导、管理员前置条件:

用户正确登录系统后置条件:

成功完成选课并保存基本事件流1.用户向系统发送选课请求2.用户选择欲选课程3.系统核对用户身份条件4.选课成功并且自动保存扩展事件流:

3a身份条件验证失败,显示选择所需条件并提示重新选择或者放弃选课3a1)用户重新选择课程,跳转到23a2)放弃选课,终止操作4.考虑一个网络订餐系统的需求,并绘制出完整的用例图。

实验三类图一、实验目的1.熟悉UML中类的定义和图形符号。

2.掌握类与类之间的各种关系代表的含义及表示方法。

3.掌握类图的绘制方法。

4.了解对象图的绘制方法。

二、实验内容1.按照如下操作要求,绘制图书管理系统各类图,掌握绘制类图的步骤:

(1)新建模型文件,打开模型文件中的逻辑视图(LogicalView),用鼠标右击逻辑视图,在弹出来的菜单中选择“NewClassdiagram”项,创建“图书馆业务功能”类图,如图3.1所示。

图3.1新建类图

(2)双击新建的“图书馆业务功能”类图,并点右边控件集中选中的“Class”图标,并用鼠标在图中拖出一个类图,并命名为Book,如图3.2所示。

图3.2新建类(3)下一步为设置Book类的属性,在类图中双击Book类,可以在打开的“ClassSpecification”对话框中设置Book类的属性和方法等其他的信息;点击“Attributes”选项卡,此选项卡可以设置类的属性,在图中间单击右键,可以看到有一个“Insert”的选项,选中这个选项,然后在出现的对话框中输入相关信息,即书本的ISBN号属性,在“Type”方框内输入此属性的类型值,同时可以看到一栏可以设置此属性的访问权限,一般将属性设置为“private”。

Book类的其他属性也可以按照以上的做法设置,具体操作过程如图3.3所示。

图3.3类的属性设置(4)设置好Book类的属性,即可以设置Book类的方法(操作)。

双击Book类后在“ClassSpecification”对话框中选“operations”选项卡,在图中的空白地方,单击右键,在弹出的菜单中选“insert”选项,输入方法名,同时可以设置该方法的返回类型以及可见性,并可以在Documentation的方框内填写一些相关的方法说明,具体设置方法见图3.4。

图3.4类的方法设置(5)完成上述操作即可完成类的设置,如图3.5所示。

图3.5类2.根据以下描述画出类图,并注明多重性关系(省略类的属性和关系):

一个学生可以选修多门课程,也可能没有任何课程;一门课程可以被多个学生选修;一个老师可以教多门课程或者不教课;每门课程至少有一个老师,也可以有多个老师任教;每门课程可以有0或1本教材,每本教材只能用于一门课程。

3.classCourseprivate:

stringcourseName;stringteacher;stringstudent100;constintcourseNum;staticdoublecourseAverScore;public:

Course();voidSetCourseTeacher(stringteacher);doubleCaculateScore(intstudentNum=1);doubleCourse:

courseAverScore=0.0;根据下面的代码画出Course类的类图,要求标明各属性的类型和可见性以及类方法。

4.根据以下描述,画出相应的UML类图:

(1)神舟六号飞船是神州飞船系列的一种,它由轨道舱、返回舱、推进舱和逃逸救生塔等组成。

(2)航天员可以在返回舱内驾驶飞船,轨道舱是航天员工作和休息的场所。

在紧急的情况下,颗粒利用逃逸救生塔逃生。

(3)在飞船两侧有多个太阳能电池翼,可以为飞船提供电能。

5.在下图中最上面的对象的名称是什么?

该图表示的意思是什么?

图3.6对象图6.针对实验二中的“学生信息管理系统”绘制类图,要求注明类间的关系以及每个类应有的属性和方法(省略属性的类型以及方法的返回值、参数)。

实验四状态图一、实验目的1.掌握状态的定义和组成部分。

2.掌握UML中状态的表示方法。

3.掌握转换的定义及转换的5要素。

4.解触发事件、监护条件、动作的定义。

5.掌握阅读和绘制状态图的方法。

二、实验内容1.阅读计算机线程的状态图,完成下列问题。

图1状态图

(1)该图中线程有几种状态?

分别是什么?

初态、就绪、运行、阻塞、终态

(2)请使用文字描述线程的基本运行过程。

线程开始进入就绪态,当获得cpu时间片进入运行态,如果运行结束进入终态,但是如果时间片用完就回到就绪态,运行期间如果不满足所需资源进入阻塞态,处于阻塞态的如果资源满足又会重新进入就绪态。

2.根据问题描述,完成电梯状态图绘制。

电梯开始处于空闲状态(idle),当有人按下按钮要求使用电梯时(事件isrequired发生),电梯进入运行状态(run)。

如果电梯的当前楼层比想要的楼层高时(监护条件currentFloordesiredFloor成立),电梯进入下降状态(movingdown);反之,如果电梯的当前楼层比想要的楼层低时(监护条件currentFloordesiredFloor成立),电梯进入上升状态(movingup);如果电梯的当前楼层与想要的楼层相同时(监护条件else成立),电梯门打开(dooropen)。

在电梯上升或下降期间,每经过一个楼层就判断监护条件(currentFloor=desiredFloor)是否成立,若不成立,继续移动,若成立,就进入停止状态(stop),15秒后,电梯门自动打开(dooropen),2分钟后,电梯门自动关上(doorclose),如果有更多的电梯使用请求,进入运行状态(run),反之,则进入空闲状态(idle)。

3.根据问题描述,完成手机状态图绘制。

当手机开机时,它处于空闲状态(idle),当用户使用电话呼叫某人(callsomeone)时,手机进入拨号状态(dialing)。

如果呼叫成功,即电话接通(connected),手机就处于通话状态(working);如果呼叫不成功(cantconnect),例如对方线路有问题,关机、拒绝接听。

这时手机停止呼叫,重新进入空闲状态,手机进入空闲状态下被呼叫(becalled),手机进入响铃状态(ringing),如果用户接听电话(pick),手机处于通话状态,当手机进入通话状态时自动进行计时,通话结束手机自动停止计时,通话过程中手机可以实时显示通话时间;如果用户未做出任何反应(haventacts),可能他没有听见铃声,手机一直处于响铃状态,如果用户拒绝来电(refused),手机回到空闲状态(idle)。

实验五活动图一、实验目的1.掌握活动的概念以及表示方法。

2.掌握活动图中个元素表示的意义和表示方法。

3.掌握分支、监护条件、分岔、汇合和泳道的概念。

4.掌握阅读和绘制活动图的方法。

二、实验内容1.依据下列要求绘制活动图:

绘制“删除读者信息”用例的活动图(原始用例图自行绘制)。

删除读者信息一般按照以下步骤进行:

(1)管理员在录入界面,输入待删除的读者名;

(2)“业务逻辑”组件在数据库中查找待删除的读者名;(3)如果不存在,则显示出错信息,返回步骤

(1),如果存在则继续;(4)“业务逻辑”组件判断“待删除的读者”是否可以删除;(5)如果不可以,则显示出错信息,返回步骤(8),如果可以则继续;(6)在数据库中,删除相关信息;(7)显示删除成功信息;(8)结束。

(1)在用例图中,找到“删除读者信息”的用例,如图1所示,在“删除读者信息”用例上单击右键,在弹出的快捷菜单中选“New”,Rose工具也会弹出一个菜单,选”ActivityDiagram”,选中后单击,便可以新建好一个活动图。

图1用例图

(2)新建好活动图后,双击“删除读者信息”的活动图,得到如图2所示,然后在左边的工具栏内点击“Swimlane”,在右边的图添加一个泳道,如图3所示,并命名为administrator.按照此步骤,再添加另一个泳道,并命名为SystemTool,得到图4。

图2图3图4(3)在左边的工具上选取“StartState”,并在administrator的泳道上添加,如图5所示;添加完开始结点后,再来为此活动图添加活动,图6所示,在左边的工具栏上选中“Activity”这个图标,在administrator这边的泳道上添加一个活动,命名为登录(login),再在开始结点和活动登录(login)之间添加活动关系,如图7所示。

图5图6图7(4)完成步骤(3)后,登录输入需要对输入的信息进行验证,则在图中利用“Decision”图标添加一个验证框,如图8所示:

添加验证框后,验证的内容,如果通过,则允许管理员进行查询操作,如图9所示;如不能通过,则结束,如图10所示。

图8图9图10(5)验证后,下一步的操作是查询需要删除的记录,添加一个活动,命名为delete,如图11和图12所示。

图11图12(6)最后,在删除后,系统会返回操作结果给操作者,图13所示;删除成功或删除失败系统都会有信息返回给操作者。

图13(7)根据分析设计情况,进一步添加或细化活动图。

2.下图中表示某公司的销售过程活动图,请用文字详细说明。

图14【活动图说明】

(1)收到订单:

收到客户的订单。

(2)分叉:

同时进行准备货物(3)和开具发票(6)(3)准备货物:

准备货物。

(4)分支:

判断是否是加急件,是的话发EMS跳到步骤(8)(5)普通包裹:

发普通包裹。

(6)开具发票:

开具发票。

(7)收款:

根据订单收款。

(8)汇合节点:

如果收款和发送都完成,进行下一步。

(9)关闭订单:

关闭订单,交易完成(10)结束3.用活动图表示for(i=0;iCreateCollaborationDiagram)2.根据实验六中题目3的描述绘制协作图。

3.根据下列交互过程描述,绘制协作图。

(1)学生通过界面发送选课命令。

(2)界面向控制对象请求课程信息。

(3)控制对象向数据库发送查询数据消息。

(4)控制对象暂存数据库的查询结果。

(5)界面对象从控制对象中取得所有的课程信息。

(6)在界面上显示所有的课程信息。

(7)界面对象发送命令要求控制对象删除课程信息。

(8)学生选择课程。

(9)界面对象要求学生输入学号。

(10)界面对象向控制对象发送信息,查询该生是否可以选择选定的课程。

(11)控制对象从数据库中查询关联信息。

(12)控制对象判断是否可以选课。

(13)如果可以选课,则向数据库中添加关联信息。

(14)向界面对象返回信息。

4.绘制网络订餐系统中订餐用例交互过程的协作图。

实验八组件图与配置图一、实验目的1.了解组件的概念以及引入组件的原因。

2.掌握组件的要素,组件和类的比较。

3.掌握UML中组件图配置图的图形元素。

4.掌握阅读和绘制组件图和配置图的方法。

5.了解组件图和配置图的应用。

二、实验内容1.根据要求绘制组件图。

分析:

在LSTC的图书馆管理系统中,通过分析可以发现类图中的类应分为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图,出现图1,为编辑组件图做好准备,这时绘图工具栏中的图标如图中椭圆所示。

图1

(2)在组件视图中,从工具栏中选择MainProgram图标,在右边的绘图区中添加一个新组件,并取名StartClass.java表明新增一个主程序。

图2(3)选择新创建的组件点击鼠标右键,在弹出的菜单中选择“OpenSepcification”,如图3。

图3(4)在对话框中,可以修改组件的名称,设置组件的类型,指定实现的语言。

这里新组件的名称定为“StartClass.java”,组件构型为MainProgram(Rose中提供了多种构型),实现语言为JAVA(Rose中默认的是分析语言Analysis),修改结果如图4所示。

图4(5)组件图描述的是系统的实现视图,因此要指定实现组件功能的文件。

点击File选项卡,在列表框中点击鼠标右键,在弹出的菜单中选择“InsertFile”,弹出文件对话框。

在对话框中,键入StartClass.java,点击“打开”按键,这时对话框如图5所示。

图5(6)双击StartClass.java,弹出是否创建对话框,询问是否创建文件,选择“YES”,弹出记事本,这时可输入相应的源程序(注意:

如果这里选择的文件已经存在,则不会弹出创建文件对话框,而是直接显示相应文件内容)。

(7)创建相应的包。

选择包图标,在右图中创建。

这里同样需要对每个组件打开“OpenSpecification”对话框,设置具体的属性,对“包”组件来说需要在Files选项卡中指明与其对应的目录。

创建完毕的组件图如图6所示。

图6(8)选择业务对象包(BO),双击,打开业务对象包的详细组件图,这里根据分析的结果分别创建Title.java,Item.java,Loan.java,BorrowerInfomation.java,Reservation.java组件,并设置好每个组件的构型和对应的文件。

创建好的BO包组件图如图7。

图7(9)创建依赖关系。

在本节前述一段中,已经描述过各个类之间的依赖关系,依赖关系使用虚线表示,因此根据分析中的结果,在图中将相互依赖的组件连接即可。

完成后的组件图如图8。

图82.绘制图书管理系统部署图分析:

图书管理系统中,对于“借书、还书”等基本功能和“书目维护、读者信息维护”等信息维护功能来说,是在图书馆内部发生的,并且客户端的数量有限,由于其使用频率较高,故效率和使用的方便性需要侧重考虑,而客户端软件的维护工作量相对较少,则可以不用考虑,因此这部分业务将采用传统的C/S架构;对于图书的查询和预定功能来说,我们希望在整个校园网内提供这些功能,所以这部分业务我们将会采用B/S架构,这样将会使得读者在校园网的任何地方都能使用,且能简化系统的部署和维护。

基于上述考虑,该系统将由5个节点构成:

应用服务器、数据库、Web应用服务器、基本业务服务器、信息维护服务器。

(1)应用服务器,其类型是Processor,负责整个系统的总体协调工作。

(2)数据库,其类型是Device,负责数据管理。

(3)Web应用服务器,其类型是Processor,负责读者网上查询和预定业务。

(4)基本业务服务器,其类型是Processor,负责处理读者借书和还书等一些基本的(5)业务流程。

(6)信息息维护服务器,其类型是Processor,负责系统基本信息维护的业务流程,如:

(7)书目维护、读者信息维护等。

绘制步骤:

(1)建立图书管理系统模型文件。

(2)导航窗口中双击“DeploymentView”,在绘图窗口中打

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1