面向对象的系统分析与设计
实验指导
第一部分 课程与实验综述
一.课程简介及实践要求:
《面向对象的系统分析与设计》是以介绍面向对象的统一建模语言UML为主,使学生了解面向对象技术的基本概念,掌握面向对象的系统分析和设计方法,以及与面向对象技术相关的一些软件开发技术,同时掌握在Rational Rose环境下用UML进行分析和设计的技术。本课程在教学内容方面着重基本理论、基本知识和基本方法,在培养实践能力方面着重设计构思和设计技能的基本训练,熟练的上机操作能力和分析能力。
实验实践训练是面向对象的系统分析与设计教学的重要技能环节。通过实验,使学生加深理解、验证、巩固课堂教学内容,特别是通过设计和综合实验,发挥学生的想象力和创新能力。
二.课程实验目的要求:
通过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
第二部分 实验基础知识简介
2.1 UML与Rose工具
UML(Unified Modeling Language)是一种标准的统一建模语言。UML的主要创始人是Jim Rumbaugh、Ivar Jacobson和Grady Booch,他们最初都有自己的建模方法(OMT、OOSE和Booch),彼此之间存在着差异和竞争。最终,为开发一种大家都能“听得懂”的建模语言,他们吸收彼此方法的优点,统一不同表示和方法的差异,联合起来创造了UML,即“标准”建模语言。UML提供了多种类型的模型描述图(diagram),最常用的UML图包括:用例图、类图、序列图、状态图、活动图、构件图和部署图。
精品文档
精品文档
当前市场上基于UML可视化建模的工具很多,例如有Rational公司的Rational Rose、Microsoft的Visio2002,Oracle的Designer2000,还有PlayCase 、CA BPWin、CA ERWin、Sybase PowerDesigner等等。
为什么要选择Rational Rose呢?这就不能不提到UML的三位创始人了,面向对象领域的大师级人物:Booch、Rumbaugh和Jacobson。而这三位大师目前都在Rational公司担任首席工程师,既然UML是业界标准的可视化建模语言,那么选择Rational Rose的原因就不言而喻了。
2.2 Rational Rose工具简介
Rational Rose 是一种工具,它可以在Rose建模中提供建立、视图、修改和操作构件的能力。
1. Rose的基本功能 面向对象建模 用例分析
支持UML、COM、OMT和Booch’93 语义检查
支持可控的迭发 双向工程
支持多用户并行开发 可以与数据建模工具集成 OLE链接、自动化 多平台可用性 2. Rose 运行环境: Windows NT,Windows 95
UNIX(Solaris,HP/UX,AIX,DEC Unix) 3. Rational Rose界面
精品文档
精品文档
4. Rose 标准工具条
Rose的工具条于当前打开的图形窗口界面
5. Rose的浏览区
Rose的浏览区描述了原本的视图模型,并且提供了在每一种视图的构件间进行访问的功能。
精品文档
精品文档
浏览器:是层次结构,用于在模型中迅速漫游。浏览器显示模型中增加的一切:角色、使用案例、类、组件等。 利用浏览器,可以:
增加模型元素(角色、使用案例、组件、框图等); 浏览现有模型元素;
浏览现有模型元素间的关系; 移动模型元素; 更名模型元素;
将模型元素加进框图;将文件或URL链接到元素; 将元素组成包;
访问元素的详细规范; 打开框图。
浏览器中有四个视图:Use Case视图、Logical视图、Component视图和Deployment视图。
精品文档
精品文档
要移动浏览器:
1、单击选择浏览器窗口边框。
2、将浏览器从当前位置拖动到屏幕另一区域。 要停靠浏览器:
1、右单击浏览器窗口边框。
2、从弹出菜单选择Allow Dcoking,Allow Docking选项旁边应有个复选标志。这时浏览器可以移动,但依靠在Rose内。即浏览器窗口连接Rose的另一边框。 要让它作为浮动窗口:
1、单击选择浏览器窗口边框。
2、关掉Allow Dcoking选项。弹出菜单Allow Dcoking选项旁边的复选标志取消、这时浏览器窗口于Rose窗口。浏览器窗口可以在Rose窗口内外随意移动。 要显示或隐藏浏览器:
1、右单击选择浏览器窗口边框。 精品文档
精品文档
2、从弹出菜单选择Hide,即可显示或隐藏浏览器。或者选择View →Browser,Rose即显示或隐藏浏览器。
文档窗口:用于建档Rose模型元素,例如,可以对每个角色写一个简要定义。可以在文档窗口中输入这个定义。和浏览器一样,文档窗口可以停靠或浮动。缺省情况下,它出现在Rose窗口右下方,但可以移动或隐藏。 要移动文档窗口:
1、单击选择文档窗口边框。
2、将文档窗口从当前位置拖动到屏幕另一区域。 要停靠文档窗口:
1、右单击文档窗口边框。
2、从弹出菜单选择Allow Dcoking,Allow Docking选项旁边应有个复选标志。这时文档窗口可以移动,但依靠在Rose内。即文档窗口窗口连接Rose的另一边框。 要让它作为浮动窗口:
1、右键单击选择文档窗口边框。
2、关掉Allow Dcoking选项。弹出菜单Allow Dcoking选项旁边的复选标志取消、这时文档窗口窗口于Rose窗口。文档窗口可以在Rose窗口内外随意移动。 要显示或隐藏文档窗口: 1、单击选择文档窗口边框。 2、从弹出菜单选择Hide,即可显示或隐藏文档窗口。或者选择View →Documentation,Rose即显示或隐藏文档窗口,或选择View Documentation工具栏按钮,Rose即显示或隐藏文档窗口。
工具栏:Rose工具栏可以快速访问常用命令。Rose中有两个工具栏:标准工具栏和框图工具栏。标准工具栏总是显示,包含任何框图中都可以使用的选项。框图工具栏则是随每种UML框图而改变。框图工具栏将在其他图中加以介绍。
精品文档
精品文档
所有工具栏都可以定制,要定制工具栏,选择Tools→Options,然后选择Toolbars标签。 要显示或隐藏标准工具栏: 1、选择Tools→Options。 2、选择Toolbars标签。
3、用Show Standard Toolbar复选框显示或隐藏标准工具栏。 要显示或隐藏框图工具栏: 1、选择Tools→Options。 2、选择Toolbars标签。
3、用Show Diagram Toolbar复选框显示或隐藏标准工具栏。 要在工具栏中使用大按钮: 1、右单击所选工具栏。
2、选择Use Large Buttons选项。 要定制工具栏:
1、右单击所选工具栏。 2、选择Customize选项。
3、增删工具栏上的按钮,选择相应按钮并单击Add或Remove按钮。
框图窗口:改变框图中的元素时,Rose自动更新浏览器。同样,用浏览器改变元素时,Rose自动更新相应框图,这样Rose就可以保证模型的一致性。 ROSE模型的四个视图
ROSE模型的四个视图是Use Case视图、Logical视图、Component视图和Deployment视图。每个视图针对不同对象,具有不同用途。 Use Case视图
包括视图系统中的所有角色、使用案例和Use Case框图,还可能包括一些Sequence或Collaboration框图。Use Case视图是系统中与实现无关的视图,关注系统功能的高层形状,而不关注系统的具体实现方法。 精品文档
精品文档
Use Case视图包括:
项目首次开始时,Use Case视图的主要使用者是客户、分析人员和项目管理员。这些人员利用使用案例、Use Case框图和使用案例文档来确定系统的高层视图。这个系统只关注系统的作用,而不关注其实现细节。
一旦客户同意了角色/使用案例,就确定了系统范围。然后可以在Logical视图中继续开发,关注系统如何实现使用案例中提出的功能。 Logical视图
Logical视图关注系统如何实现使用案例中提出的功能。它提供系统的详细图形,描述组件间如何关联。除了其他内容外,Logical视图还包括需要的特定类、Class框图和State Transition框图。利用这些细节元素,开发人员可以构造系统的详细设计。
Logical视图包括:
Logical视图采用两步法。第一步,标示分析类,分析类是于语言的类,通过先关注分析类,小组可以不进入语言特定细节而了解系统结构。分析类可以用下列图标表示。
精品文档
精品文档
Logical视图关注的焦点是系统的逻辑结构,在这个视图中,要标示系统组件,检查系统的信息和功能,检查组件之间的关系。通过认真指定类的信息和行为,组合类,以及检查类和包之间的关系,就可以确定重复使用的类和包。完成多个项目后,你就可以将新类和包加进重复使用库中。今后的项目可以组装现有的类和包,而不必一切从头开始。
一旦标示类并画出框图后,就可以转入Componet视图,了解物理结构。 Componet视图
Componet视图包含模型代码库、执行文件、运行库和其他组件的信息。组件是代码的实际模块。
Componet视图包括:
Componet视图的主要用户是负责控制代码和编译部署应用程序的人。有些组件是代码库,有些是运行组件,如执行文件或动态链接库(DLL)文件。开发人员也用Componet视图显示已经生成的代码库和每个代码库中包含的类。 Deployment视图
Deployment视图关注系统的实际部署,可能与系统的逻辑结构有所不同。例如,系统可能用逻辑三层结构。换句话说,界面与业务逻辑可能分开,业务逻辑又与数据库分开,但部署可能是两层的:界面放在一台机器上,而业务和数据库逻辑放在另一台机器上。
Deployment视图还处理其他问题,如容错、网络带宽、故障恢复和响应时间。 Deployment视图包括:
Deployment框图显示网络上的进程和设备及其相互间的实际连接。Deployment框图还显示进程,那个进程在哪台机器上运行。
实验 对象图和包
一、实验目的
1.对象图的基本概念。 2.包的基本概念。
3.掌握在Rational Rose中绘制对象图和包。
二、实验器材
精品文档
精品文档
1.计算机一台。
2.Rational Rose 工具软件。
三、实验内容
以借书过程为例绘制对象图;
四、实验步骤
为了更好的描述借书过程,根据图1.1绘制借书过程中某一时刻的对象图
LendFrame-BookName-ReaderId+lendBook()Book-BookName-ISBN+findFreeItem()BookManager+lendBook()+findBookByName()Item-ItemId-ISBN-State+getItemId()+setLoanState()图1.1
(1) 确定对象的值
假定管理员在为读者“S05001”办理“UML Guide”的借书手续,这时首先弹出一个借书窗口“lfLend”,在其上输入读者ID和书名,点击“借书”按钮。这里lfLend对象将调用业务管理者类bmMain对象的findBookByName方法去获取一个书名为“UML Guide”的Book对象bLend,然后bmMain再通过lendBook方法,去调用bLend对象findFreeItem方法,去查找一本可借阅的图书,这里假定找到图书iLend,然后使用setLoanState更改iLend的借阅状态为“借出”,完成借书过程。
表1.1描述了在成功设置iLend对象借阅状态为“借出”状态时,与借书过程有关的各对象的值。
表1.1
类名 LendFrame 对象名 lfLend 属性值 BookName=”UML Guide” ReaderID=”S05001” 方法 lendBook BookManager bmMain findBookByName lendBook Book bLend BookName=”UML Guide” ISBN=”ISBN12315” findFreeItem Item iLend ISBN=”ISBN12315” ItemID=”B05001” getItemID setLoanState 精品文档
精品文档
(2) 绘图,根据(1)中的描述,绘制出当iLend状态变更时,系统中各对象的状态如图8.2所示。
(3)根据分析设计情况,进一步设计对象和包之间的关系。
lfLendBookName = UML GuideReaderId = S05001iLend : ItemItemId = B05001ISBN = ISBN12315State = 借出bmMain : BookManagerbLend : BookBookName = UML GuideISBN = ISBN12315
图8.2
五、实验报告要求
1.整理实验结果。 2.小结实验心得体会。
实验 对象图补充
一、实验目的
1.学会分析系统中的对象及对象之间的链接 2.掌握对象图的绘制方法
二、实验器材
1. 计算机一台;
2. Rational Rose 工具软件; 三、实验内容
图书信息管理系统是使用计算机实现图书大量信息处理的电子档案管理系统,在本系统中主要满足借书者、图书管理员和系统管理员3方面的需求。对借书者来说主要是查询个人信息、查询图书信息、预定当前正在被别人借阅的图书、借阅图书和返还图书等;图书管理员是系统的主要使用者,负责借书处理和还书处理,当读者预定的图书借出给定预订者后取消图书预定;系统管理员主要负责系统的维护工作,涉及到读者信息管理,图书信息管理,系统状态维护等。 四、实验报告要求
精品文档
精品文档
1. 整理实验结果。 2. 小结实验心得体会。
实验一 用例图
一、实验目的
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)“业务逻辑”组件在数据库中,查找待删除的读者名;
(3)如果不存在,则显示出错信息,返回步骤(1),如果存在则继续; (4)“业务逻辑”组件判断“待删除的读者”是否可以删除;
(5)如果不可以,则显示出错信息,返回步骤(8),如果可以则继续; (6)在数据库中,删除相关信息; (7)显示删除成功信息; (8)结束。 分析:
在图书管理系统中,管理员首先登录系统,系统验证通过后,管理方可向系统查询数据,在查询后,系统会给出提示,有没有找到相关的数据,管理员根据系统查询的返回结果,进行下一步的操作,就是删除读者,在删除的过程中,系统会对查询得到的结果判断该记录是否可以删除,若可以删除,则给删除提示,若不能删除,也给相关的提示信息。 精品文档
精品文档
绘图步骤:
(1)在用例图上双击main,出现如图1.1所示,为绘制用例图做好准备。
图1.1
(2)在图中的工具栏选取Actor图标,在右边的图中添加一个Actor,并输入名称:administrator,如图1.2所示。
(3)在左边的工具栏中,选取用例的图标,在右边的图中画出一个用例,并输入用例的名称:login 。
精品文档
精品文档
图1.2
(4)按照步骤(3),绘制出如图1.4和图1.5的两个用例。
图1.3
精品文档
精品文档
图1.4
图1.5
(5)在绘出了用例后,接下来的是绘制参与者与用例实现,如图1.6所示。
精品文档
精品文档
图1.6
(6)根据步骤(5),同时完成如图1.7和图1.8。此时,删除读者用例图就到此完成。其系统查询读者信息等其他的功能会在时序图和活动图中描绘。
(7)根据分析情况,进一步添加或细化用例图。
精品文档
精品文档
图1.7
图1.8
五、实验报告要求
1. 整理实验结果。 2. 小结实验心得体会。
实验二 用例图设计
一、实验目的
1. 掌握UML中用例图建立方法; 2. 掌握使用Rose绘制用例图
二、实验设备
装有Rose和office的PC;
三、实验内容
设计学校网上选课系统的用例图。
需求:某学校的网上选课系统主要包括如下功能:管理员通过系统管理界面进入,建立本学期要开的课程、将课程信息保存在数据库中并可以对课程进行改动和删除。学生通过客户机浏览器根据学号和密码进入选课界面,在这里学生可以进行三种操作:查询已选课程、选课以及付费。同样,通过业务层,这些操作结果存
精品文档
精品文档
入数据库中。 四、实验步骤
第一步:确定系统涉及的内容; 第二步:确定系统参与者; 第三步:确定系统用例。 五、实验要求
1)用Rose画出用例图; 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
要打开现有Class框图:
1、找到浏览器Logical视图中的Class框图。 2、双击打开框图。
或 选择Browse→Class Diagram,然后在Package列表框中,选择要打开的框图所在包。在Class Diagram列表框中,选择要打开的框图。最后按OK。
要将项目加进Class框图:
用Class框图工具栏按钮将项目加进Class框图,或选择Tool→Create并选择要生成的项目。
从框图中删除项目有两种方法:
A)选择框图中的项目;然后按Delete键。 要从模型中删除项目:
A)选择框图中的项目,选择Edit→Delete from Model或按Ctrl+D。或 右单击浏览器中的项目,选择弹出菜单中的Delete。
(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.掌握描绘类间关系的方法。
3.掌握在Rational Rose中绘制类关系的操作方法。
二、实验器材
1.计算机一台。
2.Rational Rose 工具软件。
三、实验内容
我们知道类通常是不会单独存在,而是由关联、泛化、依赖等关系相互协作来静态描述业务系的。因此,我们在找出系统中所存在的类的前提下,需要进一步对业务对象间如何联系进行建模。现指派你运用本节所学的相关知识,完成如下任务: 1.对书籍管理功能中的类的关系建模。
四、实验步骤
绘图步骤:
(1)打开上面做好的类图,添加管理员类,用户类,界面类。首先,添加一人管理员类,图5.1,并按照上面所说方法添加类的各种属性和方法,见图5.2、图5.3。
(2)可以依照上面的操作来添加其他的类,如:用户类(Reader类)、界面类(ActionForm),添加完后结果如图5.4 和图5.5所示;
(3)其他的类添加完后,就可以为各个类添加关系了,由关联、泛化、依赖等关系相互协作来静态描述业务系,所以,各个类的关系也由这几个关系来完成。如图5.6所示:Person类是administrator类和reader类两个类的父类,他们之间为泛化关系。administrator类和reader类是继承Person类。BoobItem类是继承Book类的,其他的类为一般的依赖关系,最后,连接完线条便得到图5.6。
(4)根据分析设计情况,进一步细化各类之间的关系。
精品文档
精品文档
图5.1
图5.2
精品文档
精品文档
图5.3
图.5.4
精品文档
精品文档
图5.5
图5.6
五、实验报告要求
1.整理实验结果。 2.小结实验心得体会。 精品文档
精品文档
实验四 类图设计
一、实验目的
1. 掌握UML中类图的建立方法; 2. 掌握使用Rose绘制类图。
二、实验设备
装有Rose和office的PC;
三、实验内容
设计学校网上选课系统的类图。
需求:某学校的网上选课系统主要包括如下功能:管理员通过系统管理界面进入,建立本学期要开的课程、将课程信息保存在数据库中并可以对课程进行改动和删除。学生通过客户机浏览器根据学号和密码进入选课界面,在这里学生可以进行三种操作:查询已选课程、选课以及付费。同样,通过业务层,这些操作结果存入数据库中。 四、实验步骤 第一步:寻找类;
第二步:确定类之间的关联; 第三步:为类添加职责。 五、实验要求 1.用Rose画出类图; 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. 小结实验心得体会。
状态图实验作业
顾客在ATM机上进行操作会经历的几种状态,及各种状态之间转换的条件。对实际顾客操作进行简化,所以除了等待顾客插入磁卡的起始状态和结束服务的终止状态,顾客会处于输入密码、选择服务类型、存款及取款四种状态。
插入磁卡后进入输密码状态,当密码输入正确时进入选择服务类型状态,当输入密码不正确时,停留在原状态,但如果三次不正确,服务结束。进入选择服务类型后根据选择的不同,顾客可进入存款和取款状态。存、取款结束后,顾客既可以选择结束服务到最终状态,也可以选择继续服务回到选择服务类型状态。
活动图实验作业
初看活动图和顺序图表达的意义很接近。但我们可以注意到顺序图着重时间的顺序,而活动图侧重于各部分之间的相互制约,对于一些并行的活动能够有效的表示出来。我们可以把顺序图实验作业中的客户管理和事物管理对应于角色Bank,图中的读卡机、显示、输入设备及点钞机对应于相应角色为ATM Machina,银行储户就是角色Customer,以这三个角色为例建模活动图,我们可以很清楚的看到一些并行活动的存在。
这个活动图以顾客插入卡为开始,以顾客取卡结束。我们可以看到活动图的重点虽然不在时间顺序,但我们同样可以得到时间的信息。
实验六 交互图
一、实验目的
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. 掌握UML中动态视图的建立方法; 2. 掌握使用Rose绘制动态视图。
二、实验设备
装有Rose和office的PC;
三、实验内容
设计学校网上选课系统的动态视图。
需求:某学校的网上选课系统主要包括如下功能:管理员通过系统管理界面进入,建立本学期要开的课程、将课程信息保存在数据库中并可以对课程进行改动和删除。学生通过客户机浏览器根据学号和密码进入选课界面,在这里学生可以进行三种操作:查询已选课程、选课以及付费。同样,通过业务层,这些操作结果存入数据库中。 四、实验步骤
1.创建交互图的步骤如下: 1) 寻找对象; 2) 寻找角色; 3) 将消息加进图中。 2.创建状态图; 3.创建活动图。 五、实验要求
1.用Rose画出状态图、交互图、活动图; 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图,出现图10.1,为编辑构件图做好准备,这时绘图工具栏中的图标如图中椭圆所示,其中具体含义可参看本节“补充图标”一段的介绍。
精品文档
精品文档
图10.1
(2)在构件视图中,从工具栏中选择MainProgram图标,在右边的绘图区中添加一个新构件,并取名StartClass.java表明新增一个主程序。
图10.2
(3)选择新创建的构件,点击鼠标右键,在弹出的菜单中选择“Open Sepcification”,弹出图10.3对话框。
(4)在对话框中,可以修改构件的名称,设置构件的类型,指定实现的语言。这里新构件的名称定为“StartClass.java”,构件构型为Main Program(Rose中提供了多种构型,大部分在补充图标一段中均有简单的介绍),实现语言为JAVA(Rose中默认的是分析语言Analysis),修改结果如图10.4所示。
精品文档
精品文档
图10.3
图10.4
(5)构件图描述的是系统的实现视图,因此要指定实现构件功能的文件。点击File选项卡,在列表框中点击鼠标右键,在弹出的菜单中选择“Insert File”,弹出文件对话框。在对话框中,键入StartClass.java,点击“打开”按键,这时对话框如图10.5所示。
精品文档
精品文档
图10.5
(6)双击StartClass.java,弹出是否创建对话框,询问是否创建文件,选择“YES”,弹出记事本,这时可输入相应的源程序(注意:如果这里选择的文件已经存在,则不会弹出创建文件对话框,而是直接显示相应文件内容)。
(7)创建相应的包。选择包图标,在右图中创建。这里同样需要对每个构件打开“Open Specification”对话框,设置具体的属性,对“包”构件来说需要在Files选项卡中指明与其对应的目录。创建完毕的构件图如图10.6所示。
图10.6
(8)选择业务对象包(BO),双击,打开业务对象包的详细构件图,这里根据分析的结果分别创建Title.java,Item.java,Loan.java,BorrowerInfomation.java,Reservation.java构件,并设置好每个构件的构型和对应的文件。创建好的BO包构件图如图10.7。
精品文档
精品文档
图10.7
(9)创建依赖关系。在本节“关系”一段中,已经描述过依赖关系使用虚线表示,因此根据分析中的结果,在图中将相互依赖的构件连接即可。完成后的构件图如图10.8。
图10.8
2. 绘制部署图 分析:
TJKD的图书管理系统目前开发的是一个单机版系统,其中所有的运算均在一台机器上完成,但是由于打印报表的需要,系统还应配备一台打印机。因此得出系统中存在2个节点:
①
② 一台主机,其类型是Processor。 ③ 一台打印机,其类型是Device。 精品文档
精品文档 绘图步骤:
(1)浏览窗口中选择“Deployment View”,弹出如图10.9所示窗口。
图10.9
(2)在图中添加分别添加一个Processer和Device,并分别命名为“computer with java support”和“Printer”,添加完毕后,其结果如图10.10所示。
图10.10
(3)为节点添加连接关系。全图如图10.11。 精品文档
精品文档
图10.11
五、实验报告要求
1.整理实验结果。
2.小结实验心得体会。
实验十 构件图和部署图的设计
一、实验目的
1. 掌握UML中构件图和配置图的建立方法; 2. 掌握使用Rose绘制构件图和配置图。
二、实验设备
装有Rose和office的PC;
三、实验内容
设计学校网上选课系统的构件图和配置图。
需求:某学校的网上选课系统主要包括如下功能:管理员通过系统管理界面进入,
精品文档
精品文档
建立本学期要开的课程、将课程信息保存在数据库中并可以对课程进行改动和删除。学生通过客户机浏览器根据学号和密码进入选课界面,在这里学生可以进行三种操作:查询已选课程、选课以及付费。同样,通过业务层,这些操作结果存入数据库中。 四、实验步骤
1.绘制构件图的步骤如下: (1) 确定构件;
(2) 给构件加上必要的构造型; (3) 确定构件的联系; (4) 绘制构件图。 2.绘制配置图的步骤如下: (1) 确定节点; (2) 加上构造型; (3) 确定节点的联系; 绘制配置图。 五、实验要求
1.用Rose画出构件图和配置图; 2..撰写实验报告;
精品文档
精品文档
实验十一 交互概述图的设计
在给出的活动图基础上建模交互概述图,对其中的“取一听可乐”活动节点用帧化顺序图代替,然后绘制整个交互概述图。
精品文档
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- pqdy.cn 版权所有 赣ICP备2024042791号-6
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务