UML程序设计实验指导书.docx
《UML程序设计实验指导书.docx》由会员分享,可在线阅读,更多相关《UML程序设计实验指导书.docx(21页珍藏版)》请在冰豆网上搜索。
UML程序设计实验指导书
《UML程序设计》
实验指导教程
适合专业:
计算机科学技术09
浙江树人大学信息科技学院
课程与实验综述
第一部分实验综述
一.课程简介及实践要求:
《UML程序设计》是以介绍面向对象的统一建模语言UML为主,使学生了解面向对象技术的基本概念,掌握UML的分析和设计方法,同时掌握在RationalRose环境下用UML进行分析和设计的技术。
本课程在教学内容方面着重基本理论、基本知识和基本方法,在培养实践能力方面着重设计构思和设计技能的基本训练,熟练的上机操作能力和分析能力。
实验实践训练是UML程序设计教学的重要技能环节。
通过实验,使学生加深理解、验证、巩固课堂教学内容,特别是通过设计和综合实验,发挥学生的想象力和创新能力。
二.课程实验目的要求:
通过UML的实验,学生应该:
1.学会用UML进行面向对象的思想去分析和设计相关系统;
2.学会用Rose建模工具进行软件建模。
三.课程实验参考资料
1.(美)JosephSchmuller著.UML基础、案例与应用.人民邮电出版社,2004
2.(美)Hans-ErikEriksson.UML2工具箱.电子工业出版社,2004
3.吴际,金茂忠.UML面向对象分析.北京航空航天大学出版社,2002
4.赵从军.UML设计及应用.机械工业出版社,2004
Booch,JamesRumbaugh,Ivar用户指南.机械工业出版社,2001
6.吴建,郑潮,汪杰.UML基础与Rose建模案例.人民邮电出版社,2004
第二部分实验实践指导
实验一构建用例图
一、实验目的
1.学会分析系统中的参与者和用例
2.掌握用例图的绘制方法
二、实验器材
1.计算机一台;
2.RationalRose工具软件;
三、实验内容
1、分析ATM系统需求,按要求画出用例图;
2、建立一个学生管理信息系统的需求
3、建立设计一个学生管理信息系统的完整的用例图
四、实验步骤
(一)ATM系统的用例图
1.分析
ATM自动取款机:
客户可以取钱,存钱,查询余额,转帐,修改密码。
通过分析可找出如下几个参与者:
(1)ATM
(2)客户
通过分析得到如下用例:
(1)存款
(2)取款
(3)查询余额(4)转帐
(5)修改密码(6)打印收据
2.绘图步骤:
下面介绍在Rose2003中创建用例图的过程:
(1)在“UseCaseView“中双击Main图,或者右击“UseCaseView“,弹出在快捷菜单中选择“New”->“UseCaseDiagram”,双击图标,出现图,为编辑用例图做好准备。
图空用例图
(2)在用例视图中,从工具栏中选择Actor图标,在右边的绘图区中添加一个新元素,并取名客户表明新增一个参与者,如图所示。
图
(3)同样的方法添加参与者“ATM”
(4)在工具栏上选择用例的图标,依次添加存款、取款、查询余额、转帐、修改密码、打印收据,如图所示。
图
(5)添加参与者和用例间的关联关系,如图所示。
图
(6)保存图
完成用例图后,保存该图。
(二)建立设计一个学生管理信息系统的需求分析与完整的用例图
(1)学生管理信息系统简介
学生管理信息系统主要为学校的学生处设计:
方便学校学生处与学院学生口管理员方便管理学生,学生成绩由教务系统提供,教务系统提供相关的WEBservice供学生管理信息系统调用。
通过分析可找出如下几个参与者:
学生处管理员、学校领导(学校各种报表统计信息)、学院管理员、班主任(提供学生操行、查询等)、学院领导(学院各种报表统计信息)、学生、后勤管理人员(卫生管理、保卫处异常情况处理)、财务人员、考勤管理员(由副班长提供考勤信息)等
通过分析得到如下一些大的用例:
学生基本信息管理、考勤管理、成绩导入、学校各种报表信息(要求细化)、学院各种报表信息(要求细化)、个人成才规划、新学期注册,操行评定、学生任职信息系统、学生奖惩管理系统(要求细化,包括评优评奖等)、学生变动信息管理(培训内容、助学贷款情况、学校还款情况、勤工助学情况,党员管理),后勤卫生管理、保卫处的学生的异常情况处理、其它的具体由学生自己定。
2.建立设计一个学生管理信息系统的需求分析
分析学生管理信息系统,建立系统需求分析,并要求画出系统功能框图,如学生管理信息系统的功能模块图如下
系统模块图如后勤卫生查询功能子系统模块图如下。
要求分析其它的子系统模块
3.建立一个学生管理信息系统的完整的用例图
完整的要求,就为每一类用户分配一个用例模型,如一般学生查询功能用例
要求分析其它参与者的用例模型
(4)建立用例的文字描述(要求学生写出两个)
1.“基本信息查询”用例
用例编号:
04010101(共有4层用例图结构,每层用2位数字表示,采用8位编号。
)
用例名:
基本信息查询
执行者:
学生自己、学生的班主任、辅导员及其它的特权用户。
目的:
查询学生的基本信息,包括姓名、学号、家庭地址等信息。
类型:
端点、基本的
级别:
二级
过程描述:
(三)上传ATM系统的用例图与学生管理信息系统的完整的用例图
五、实验报告要求
1.整理实验结果。
2.小结实验心得体会。
实验二构建类图
一、实验目的
1.理解类的基本概念
2.理解类间的关系
3.掌握类图的绘制方法
二、实验器材
1.计算机一台;
2.RationalRose工具软件;
三、实验内容
(1)分析学生管理系统中的选课子系统中类及关系,然后画出它们的类图。
(2)分析学生管理系统的其它子系统,并画出详细的系统类图
四、实验步骤
(一).选课子系统
1、选课子系统分析
分析学生管理系统中的选课子系统,通过分析可抽象出如下几个类:
(1)学生类
(2)管理员类
(3)课程类
学生类和管理员类的属性较容易分析,这里只列出课程类的属性和方法:
(1)课程名称
(2)开课教室
(3)课程号
(4)授课教师
(5)选课的学生
(6)开课起始时间
(7)允许选课的学生人数
(8)设置课程号
(9)设置课程名称
(10)查询课程号
(11)查询允许选课的学生人数
2.绘图步骤:
下面介绍在Rose2003中创建类和它们之间关系的过程:
(1)在“LogicalView“中双击Main图,或者右击“LogicalView“,弹出在快捷菜单中选择“New”->“ClassDiagram”,双击图标,出现图,为编辑类图做好准备。
图
(2)在逻辑视图中,从工具栏中选择class图标,在右边的绘图区中添加一个新元素,并取名Student表明新增一个类,如图所示。
图
(3)选择新创建的元素,点击鼠标右键,在弹出的菜单中选择“OpenSepcification”,弹出图对话框。
(4)在对话框中,可以修改元素的名称,这里新元素的名称定为“Student”,如图所示。
图
图
(5)点击“Attributes”选项卡,添加属性,如图所示。
图
(6)点击“operations”选项卡,添加方法如图所示。
图
(7)同样的方法添加Course类,如图所示。
图
(8)创建两个类之间的关系,通过分析得出:
学生类和课程类之间为单向关联。
选择图标栏的“关联”,由学生类指向课程类。
如图所示。
图
(9)创建关联名。
右击关联,选择“openspecification“,键入关联名(select),如图所示。
图
(10)分别在“RoleADetail“和“RoleBDetail“选项卡中键入名称和多重性,如图所示。
图
(11)重复
(2)-(10)中的步骤完成选课系统整个类图的创建。
(12)如图转换生成代码,查看所生成的三个的代码。
图
(二)分析学生管理系统的其它子系统,并画出详细的系统类图
一般情况一个子系统至少有一个类,要求建立系统的详细类图,并建立类间的关联
五、实验报告要求
1.整理实验结果。
2.小结实验心得体会。
实验三构建活动图
一、实验目的
1.熟悉活动图的基本功能和使用方法。
2.掌握如何使用建模工具绘制活动图方法。
二、实验器材
1.计算机一台;
2.RationalRose工具软件;
三、实验内容
(1)分析图书管理系统中管理员的活动状态,画出管理员的活动图。
(2)分析学生管理系统,并画出详细的活动图,并用活动图细化用例图
四、实验步骤
(一)图书管理系统活动图
1.分析
在图书管理系统中管理员的活动如下:
(1)处理还书
(2)处理借书
(3)处理罚款
读者的活动如下:
(1)登录
(2)找书
(3)预约
(4)浏览
2.绘图步骤:
下面介绍在Rose2003中创建类和它们之间关系的过程:
(1)在“LogicalView“中选择“ActivityDiagram”菜单,双击图标,出现图,为编辑活动图做好准备。
图
(2)在Rose2003中,绘制图书管理员的活动图,新建“ActivityDiagram”,如图所示:
图
(3)创建读者的活动图如图所示:
图
(二)分析学生管理系统,并画出详细的活动图,并用活动图细化用例图
(1)学生基本信息保存的活动图
录入基本信息、点击保存、链接数据库、判定学号是否已存在、判定录入信息是否符合规范(日期信息、身份证号、邮编等信息)-保存。
(2)学生基本信息查询的活动图
链接数据库、查询基本信息表、倒出数据内容、填入各字段信息到信息输出框、根据学院代号查询学院名称、写入学院信息到列表框、定位学院信列表框、根据班级代号查询班级名称、写入班级信息、写入班级信息到列表框、定位班级信列表框、。
(3)至少分析建立其它3个活动图
(4)根据活动图重新分析用例图并细化用例图,审核类图
五、实验报告要求
1.整理实验结果。
2.小结实验心得体会。
实验四构建顺序图
一、实验目的
学会用顺序图实现用例
二、实验器材
1.计算机一台;
2.RationalRose工具软件;
三、实验内容
(1)分析系统需求,画出ATM取款的顺序图
(2)分析学生管理系统,并画出详细的顺序图
四、实验步骤
(一)ATM取款的场景
1、ATM取款的场景分析:
(1)通过读卡机,用户插入ATM卡;
(2)ATM系统从卡上读取银行ID、帐号、加密密码、并用主银行系统验证银行ID和帐号;
(3)用户输入密码,ATM系统根据上面读出的卡上加密密码,对密码进行验证;
(4)用户输入取款数量;
(5)ATM系统通知主银行系统,传递储户帐号和取款数量,并接收返回的确认信息;
(6)ATM系统输出先进、ATM卡和显示帐户余额的收据;
(7)ATM系统记录事务到日志文件。
寻找场景中的对象:
ATM、客户和帐户。
2、绘图步骤:
下面介绍在Rose2003中创建顺序图的过程:
(1)在“LogicalView”中新建“SequenceDiagram“,双击图标,出现图,为编辑顺序图做好准备。
图
(2)在顺序图编辑窗口中,从工具栏中选择Object图标,在右边的绘图区中添加一个新元素,并取名Customer表明新增一个对象,如图所示。
图
(3)同样的方法,添加ATM对象和Account对象,如图所示。
图
(4)根据ATM取款的场景,获得第一条消息为“客户向ATM机提交取款需求”,向图中添加消息,如图所示。
图
(5)同样的方法添加其它消息,如图所示。
图
(二)分析学生管理系统,并画出详细的顺序图
(1)如学生奖学金评定的顺序图:
倒入成绩、操行评定、计算综合评分、奖学金评定
(2)用户登入的顺序图:
(3)新学期注册顺序图:
学生交费--向学院报到--判断是否交费--(是否申请助学金、是否申请缓交)--注册
(4)建立党员管理顺序图
(5)建立其它的一个以上顺序图
五、实验报告要求
1.整理实验结果。
2.小结实验心得体会。
实验五构建协作图
一、实验目的
1.学会协作图的绘制方法
2.掌握顺序图和协作图的相互转换。
二、实验器材
1.计算机一台;
2.RationalRose工具软件;
三、实验内容
(1)分析系统需求,画出ATM取款的协作图。
(2)分析学生管理系统,并画出详细的顺序图
四、实验步骤
(一).ATM取款的场景
1、ATM取款的场景分析:
(1)通过读卡机,用户插入ATM卡;
(2)ATM系统从卡上读取银行ID、帐号、加密密码、并用主银行系统验证银行ID和帐号;
(3)用户输入密码,ATM系统根据上面读出的卡上加密密码,对密码进行验证;
(4)用户输入取款数量;
(5)ATM系统通知主银行系统,传递储户帐号和取款数量,并接收返回的确认信息;
(6)ATM系统输出先进、ATM卡和显示帐户余额的收据;
(7)ATM系统记录事务到日志文件。
寻找场景中的对象:
ATM、客户和帐户。
2、绘图步骤:
下面介绍在Rose2003中创建顺序图的过程:
(1)在“LogicalView”中新建“CollaborationDiagram“,双击图标,出现图,为编辑顺序图做好准备。
图
(2)创建类节点
创建四个类节点分别为ATM,Branch,Consortium,User。
分别选择其中的三个类节点ATM,Branch,Consortium把它们拖动到CollaborationDiagram图中,如图所示。
图
选择标记为User的类节点。
将选定的类拖放到CollaborationDiagram图编辑器中,使其位于ATM生命线元素的上方,如图所示。
图
(3)添加连接器链接(ObjectLink)
协作图中的每个元素均可通过连接器链接与其他元素建立连接。
您可以标识这些链接,并在其中添加消息流。
从建模组件面板的“基本”类别中,选择"ObjectLink"图标。
单击标记为User的生命线元素,然后单击ATM。
将在两个元素之间绘制一条连接器链接。
使用相同的步骤绘制以下链接:
从ATM至Consortium的链接
从Consortium至Branch的链接
从ATM至Branch的链接
注意:
在创建从ATM至Branch的链接时,请从ATM生命线的右侧水平绘制一条链接,并在到达Branch生命线的正上方时单击鼠标左键。
这样便会在链接线上出现一个顶点,然后在顶点到Branch生命线之间垂直绘制一条链接。
此时,该图应当图类似。
图
在图编辑器中的任意位置单击鼠标右键,选择"Edit"的“deletefrommode”菜单,可删除模型,如图所示。
图
(4)显示操作流
操作流将在图中显示为与链接平行的带标记箭头。
此链接用于向目标元素传输消息或实现这种传输。
在图编辑器中,选择User和ATM之间的连接器链接。
右键单击距ATM生命线最近的连接器链接部分。
如图所示,从弹出式菜单中选择“OpenSpecification”,弹出”LinkSpecificationForUntile”对话框,在对话框中按右键,从弹出式菜单中选择“InsertTo:
ATM”,在MessageName中输入publicvoidGetCashOnHand(),如图所示。
图
在ATM和Consortium之间的连接器链接上,右键单击靠近Consortium生命线的链接部分。
添加消息"publicvoidvalidateAccountInfo()"。
Rose显示2:
publicvoidvalidateAccountInfo()。
在ATM和Branch之间的连接器链接上,右键单击靠近Branch生命线的链接部分。
添加消息"publicchargetConnected"。
Rose显示3:
publicchargetConnected()。
右键单击Consortium和Branch之间靠近Branch生命线元素的连接器链接。
添加消息"publicvoidverifyCardWithBank(intstringCardSTrip)"。
Rose显示4:
publicvoidverifyCardWithBank(intstringCardSTrip)。
完成的协作图应当与图类似。
图
(5)模型检查并保存
使用Tools工具的”CheckModel”,进行模型检查,查看是否有错。
如无误则在完成协作图后,您可以保存该图。
在图编辑器中,从菜单中选择“保存”。
(二)分析学生管理系统,并画出详细的协作图
(1)如学生奖学金评定的协作图:
倒入成绩、操行评定、计算综合评分、奖学金评定
(2)助学贷款申请协作图:
学生申请—班主任批准—学院批准-学校领导批准
(3)助学勤工俭学申请协作图:
(4)建立其它的一个以上协作图
五、实验报告要求
1.整理实验结果。
2.小结实验心得体会。
实验六构建状态图
一、实验目的
1.熟悉状态图的基本功能和使用方法。
2.掌握如何使用建模工具绘制状态图方法。
二、实验器材
1.计算机一台;
2.RationalRose工具软件;
三、实验内容
(1)分析图书管理系统中的书和借书证的状态,画出它们的状态图;
(2)分析学生管理系统,并画出详细的顺序图
四、实验步骤
(一)图书管理系统
1、分析
在图书管理系统中,分析书的状态如下:
(1)可借
(2)被借
(3)被预约
(4)删除
借书证的状态如下:
(1)可用
(2)不可用
(3)删除
2、绘图步骤:
下面介绍在Rose2003中创建类和它们之间关系的过程:
(1)在“LogicalView“中的“StateChartDiagram”菜单,双击图标,出现图,为编辑状态图做好准备。
图
(2)在工具栏中选择“StartState”图标添加到编辑窗口中,如图所示。
图
(3)在工具栏中选择“State”图标,添加一个元素,命名为“Newbook”,如图所示。
图
(4)同样的方法添加其它状态,如图所示。
图
(5)书的各个状态之间添加转移及相应的事件,如图所示。
图
(6)同样的方法得借书证的状态图,如图所示。
图
(二)分析学生管理系统,并画出详细的状态图
(1)建立学生交款状态图:
已交、未交、缓交、部分申请助学贷款
(2)建立学生惩罚(记过以上)状态图:
(3)建立学生党员申请状态图:
(4)建立其它的一个以上状态图
五、实验报告要求
1.整理实验结果。
2.小结实验心得体会。
实验七构建组件图和配置图
一、实验目的
1.掌握UML中组件图和配置图的建立方法;
2.掌握使用Rose绘制组件图和配置图;
二、实验器材
1.计算机一台;
2.RationalRose工具软件;
三、实验内容
(1)分析学校网上选课系统的组件图,画出系统组件图。
(2)分析学校网上选课系统的配置图,画出系统配置图。
(3)分析学生管理系统,并画出详细的组件图与配置图
四、实验步骤
(一)网上选课系统
1.分析
设计学校网上选课系统的组件图和配置图,需求如下:
某学校的网上选课系统主要包括如下功能:
管理员通过系统管理界面进入,建立本学期要开的课程、将课程信息保存在数据库中并可以对课程进行改动和删除。
学生通过客户机浏览器根据学号和密码进入选课界面,在这里学生可以进行三种操作:
查询已选课程、选课以及付费。
对于以上操作,可通过业务层,并将这些操作结果存入数据库中。
2.绘图步骤:
(1)绘制组件图的步骤如下:
确定组件;(系统管理系统,课程管理系统,选课系统,查询系统,人员信息管理,注册系统,业务操作,备份系统,付费系统)
给组件加上必要的构造型;
确定组件的联系;
绘制组件图。
下面介绍在Rose2003中创建组件图的过程:
(a)在“ComponentView“中的“New”的“ComponentDiagram”中,出现图,为编辑组件图做好准备,
图
(b)创建组件图(根据要求创建)。
(2)绘制配置图的步骤如下:
确定节点;(数据库服务器,应用服务器,打印机,客户端(n个,连接为局域网))
加上构造型;
确定节点的联系;
绘制配置图。
下面介绍在Rose2003中创建配置图的过程:
(a)在“DeploymentView“中,出现图,为编辑配置图做好准备,
图
图系统配置图
(二)分析学生管理系统,并画出详细的组件图与配置图
(1)系统组件图
分析系统接口
如建立查询一个学生基本信息的接口,返回一个学生基本信息的类(类中有姓名、学号等属性)
搜索系统用户界面
搜索系统用户界面,作为系统一种特殊的接口,用户与系统的接口,建立单独的包WebInterFace保存用户界面,如学生基本信息操作的用户界面定义如下(从View继承过来的一个类,这里只考虑界面,类只考虑程序,可有部分重复):
为用户界面考虑接口,并关联不同的类
(2)系统配置图
假设有以下的子系统:
学生管理系统用到财务子系统、成绩管理子系统,并各自有数据库。
五、实验报告要求
1.整理实验结果。
2.小结实验心得体会。
实验八Rose逆向工程
一、实验目的
1.掌握Rose中逆向工程的建立方法;
2.掌握根据逆向工程画出类图;
二、实验器材
1.计算机一台;
2.RationalRose工具软件;
三、实验内容
(1)分析Java程序,实现ROSE逆向工程。
(2)根据逆向工程所得类,画出对应类图。
四、实验步骤
1.分析
Rose功能十分强大,从项目需求分析、开发、测试,整个项目过程都可使用rose,特别是在做需求分析与项目系统架构时建模的能力巨强。
但是每个人不是在项目一开始就能参与到初期当中来的,有时候整个项目一期完工了,进行二期开发时,这个时候参与进项目,为了能够快速了解整个项目的框架,使用Rose的逆向工程的功能极为有用。
2.绘图步骤:
(1)分析J2EE源代码,了解其结构
(2)新建一个ROSE工程,选择J2EE模板,.如图
图
3.在出现的界面中,CLASSPATH中加入源代码的目录,加入支持的包,点击'ADDRECURSIVE'点‘SELECTALL‘点击REVERSE,完成后没任何提示,点'DONE'结束。
选择作为源代码,如下图所示。
图
点击Reverse,逆向工程完成。
4逆向工程以后不会自动生成类图,但在logicalview和componentview里面按照你的java包结构会自动生成相应的包和类,要按照自己的要求建立类图。
下面我们将所选包下的所有类显示在新建类图中:
ROSE里新建CLASSDIAGRAM,然后把类Env,EnvList和ListS包一个个拖到右侧图中,(或点菜单上的'QU