版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、-PAGE . z. 面向对象系统分析与设计实验 实验报告书 面向对象系统分析与设计起止日期: 2015年10月19日 至 2015年11月19日学生惠大贺班级软件工程1201*成绩指导教师(签字)计算机与通信学院2015年 11月 19日-. z.目 录实验一 用例图及进度安排03实验二 活动图08实验三 状态图16实验四 类23实验五 类的关系30实验六、七 交互图34实验八、九 对象图和包43实验十、十一 组件图和部署图45实验十二 正向工程51实验总结 56实验一 用例图及进度安排1、实验步骤(1)在进展实验前,首先要熟悉好Rose软件的根本使用规,了解相关文件的建立说明,开场新的工程
2、建立。在用例图上双击main,出现如图1.1所示,为绘制用例图做好准备。图1.1(2)在图中的工具栏选取Actor图标,在右边的图中添加一个Actor,并输入名称:administrator,如图1.2所示。(3)在左边的工具栏中,选取用例的图标,在右边的图中画出一个用例,并输入用例的名称:login 。 图1.24按照步骤3,绘制出如图1.4和图1.5的两个用例。 图1.3 图1.4图1.55在绘出了用例后,接下来的是绘制参与者与用例实现,如图1.6所示。图1.66根据步骤5,同时完成如图1.7和图1.8。此时,删除读者用例图就到此完成。其系统查询读者信息等其他的功能会在时序图和活动图中描绘
3、。7根据分析情况,进一步添加或细化用例图。图1.72、实验结果图1.83、心得体会用例图的建立主要是要能够理解Actor和用例,每个Actor给他如何去分配不同的用例,在这个设计过程中是需要花大量时间去思考和设计的,在实验中我经过屡次的整理与修改,最终确定了这种设计结果。实验二 活动图1、实验步骤1这次实验是进展活动图的设计,在活动图中,仍然可以在上次实验的根底上进展设计,建立心得活动图的文件,开场实验的设计。在用例图中,找到删除的用例,如图2.1所示,在删除用例上单击右键,在弹出的快捷菜单中选New,Rose工具也会弹出一个菜单,选Activity Diagram,选中后单击,便可以新建好一
4、个活动图。如图2.2所示。图 2.1图2.2(2)新建好活动图后,双击删除的活动图,得到如图2.3所示,然后把在左边的工具栏点击Swinlane,在右边的图添加一个泳道,如图2.4所示,并命名为administrator.按照此步骤,再添加另一个泳道,并命名为SystemTool,得到图2.5。图2.33接着在左边的工具上选取开场点,并在administrator的泳道上添加,如图2.6所示;添加完开场结点后,再来为此活动图添加活动,图2.7所示,在左边的工具栏上选中Activity这个图标,在administrator这边的泳道上添加一个活动,命名为登录login,再在开场结点和活动登录lo
5、gin之间添加活动关系,如图2.8所示。图2.4 图2.5 图2.6图2.7 图2.83完成步骤2后,登录输入需要对输入的信息进展验证,则在图中添加一个验证框,如图2.9所示:添加验证框后,验证的容,如果通过,则允许管理员进展查询操作,如图2.10所示;如不能通过,则完毕,如图2.11所示。图2.9图2.10图2.114验证后,下一步的操作是查询需要删除的记录,添加一个活动,命名为delete,如图2.12和图2.13所示。图2.12图2.135最后,在删除后,系统会返回操作结果给操作者,图2.14所示;删除成功或删除失败系统都会有信息返回给操作者。2、实验结果图2.143、心得体会活动图是U
6、ML用于对系统的动态行为建模的另一种常用工具,它描述活动的顺序,展现从一个活动到另一个活动的控制流。活动图在本质上是一种流程图。活动图着重表现从一个活动到另一个活动的控制流,是部处理驱动的流程。活动图的设计过程中在对开场点和完毕点的设计是非常重要的,同时不同的阶段也有不同的控制流程,还要考虑到整个活动状况下所遇到的各种不同的情景模式,进展相应的策略设计。实验三 状态图1、实验步骤1在用例图中的还书revesion用例,单击右键,如图3.1所示,新建一个状态图,命名为revesion状态图,图3.2所示。图3.1图3.22双击receivesion状态图,展开后,在左边的工具栏上选取一个实心圆点
7、,此结点为开场结点,图3.3所示;当还书的时候,操作者先要询问系统的状态,如果系统忙,操作者则必需等待,因此,得到系统的两种状态,如图3.5所示。图3.3图3.4图3.53操作者在询问系统和状态后,得到的图3.6所示两种状态,如果系统忙,操作者必需要等待、完毕,如图3.7和图3.8所示,重返步骤1。图3.6图3.7图3.84如系统空闲,则进展对还书的信息进展查询操作,图3.9所示;查询也有两种结果,一是查询得到该书的相关信息,二查询不到该书的相关信息;则此时有两种状态,需要建立两种状态,如图3.10所示。图3.9图3.105最后,操作者进展了操作后,系统会给出操作的结果给操作者;操作成功或失败
8、,都会有提示信息给出。整个的还书的过程便完成;图3.11所示。2、实验结果图3.11心得体会状态图Statechart Diagram主要用于描述一个对象在其生存期间的动态行为,表现为一个对象所经历的状态序列,引起状态转移的事件Event,以及因状态转移而伴随的动作Action。一般可以用状态机对一个对象的生命周期建模,状态图用于显示状态机StateMachine Diagram,重点在与描述状态图的控制流。状态是指在对象的生命周期中的*个条件或者状况,在此期间对象将满足*些条件、执行*些活动活活等待*些事件。所有对象都有状态,状态是对象执行了一系列活动的结果,当*个事件发生后,对象的状态将发
9、生变化。实验四 类1、实验步骤1翻开前面初步构建的UML模型文件;2翻开Rose中的逻辑视图Logical View,选择分析模型analysis model目录。并在其下创立一个子目录并命名为:图书馆业务功能。3用鼠标右击图书馆业务功能在弹出来的菜单中选择NewClass diagram项,创立类图,如图4.1所示。4双击新建的类图,并点右边控件集中选中的类的图标,并用鼠标在图中分别拖出一个类图,并命名为Book,如图4.2所示。图4.1图4.25接下来的一步为设置类的属性,在新的类中双击该类,在翻开属性面板中,可以看到在此可以设置类的属性和方法等其他的信息,图4.3所示;后撞击Attrib
10、utes这个栏目,此栏目为设置类的属性的选项,在图中间的单击右键,可以看到有一个Insert的选项,选中这个选项,图4.4所示,后在出现的对话框中输入相关信息如图4.5所示;如书本的ISBN号,在Type这个方框输入此属性的类型值,同时可以看到一栏可以设置此属性的访问权限,一般这些属性都设置Private这个权限,如图4.6所示。这个类的其他属性也可以按照以上的做法设置,最后得到的结果是图4.7所示。 图4.3 图4.4 图4.5 图4.66设置好类的属性,现在来设置类的方法也是操作,双击类后在弹出的菜单上选operations这个选项,可以看到图4.8所示,在图中的空白地方,单击右键,在弹出
11、的菜单中选insert这个选项,也就只有这个选项可用,见图4.9,接着输入方法名,同时可以设置该方法的返回类型,也可以在Documentations的方框填写一些相关的方法说明,如图4.12所示,设置好该方法的访问权限,见图4.13。类的其他方法也可以按上面来设置好,最后,得到该类的其他方法见类4.14。 图4.7 图4.8 图4.9 图4.10 图4.11 图4.12 图4.13 图4.147至此,类的方法和属性都设置好了,如图4.15所示。图4.158接下来为书目类设置,按照上面的步骤可以设置好该类的属性和方法,如图4.16和图4.17所示。 图4.16 图4.179最后,绘制出由分析得出
12、的各个类,如图4.18所示,此时,类图便完成。2、实验结果图4.18心得体会类图是面向对象系统建模中最常用和最重要的图,是定义其它图的根底。类图主要是用来显示系统中的类、接口以及它们之间的静态构造和关系的一种静态模型。类图的设计中,类名的选取是一个必不可少的环节,什么样的类名决定了之后对软件编码过程中的困难程度,尽量使用能够识别的,容易理解的参数名、类名、属性和方法,便于之后的维护工作。实验五 类的关系实验步骤1翻开上面做好的类图,添加管理员类,用户类,界面类。首先,添加一人管理员类,图5.1,并按照上面所说方法添加类的各种属性和方法,见图5.2、图5.3。2可以依照上面的操作来添加其他的类,
13、如:用户类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实验结
14、果图5.6心得体会类图中最重要的四大关系是关联关系(association)、聚合关系(aggregation)、合成关系(postion)和依赖关系(dependency)。关联关系是类与类之间的联结,它使一个类知道另一个类的属性和方法。聚合是整体和局部之间的关系,是通过成员变量来实现的。合成关系是关联关系的一种,是比聚合关系还要强的关系。它要求普通的聚合关系中代表整体的对象负责代表局部的对象的生命周期。依赖关系也是类与类之间的联结,依赖总是单向的。依赖关系在Java或C+语言中表达为局部变量、方法的参数或者对静态方法的调用。实验六、七 交互图1、实验步骤1在Rose软件的左边栏目上的Log
15、icl View单击右键,新建一个时序图,时序图是交互图一种表示,可以用时序来表示,如图6.1;在此,先单间介绍一下用法:图中的直线箭头是发送消息;虚线箭头是返回消息;曲折线是对象自己给自己发送消息并调用。 2接下来的是添加类,系统中的类是其他的方法的边界,在上面做好的类找到可以直接拖拉来图中,见图6.2 和图6.3所示。图6.1图6.2图6.33添加类后,便可以添加方法了,开场是必需是外面的实体向系统发送消息,如图6.4所示,是管理员登录时向系统发送的消息;图6.45可以按上一步的方法来完成其他的方法,如viladate验证,返回验证结果,当用户收到结果后,可以正常登录后便能进展增加图书见图
16、6.5到图6.9。最后得到的时序图如图6.10所示。图6.52、实验结果图6.6图6.7图6.8图6.9图6.10(6)完成了时序图后,可以按F5键便得到增加图书的协作图,见图6.11所示。图6.117剩下的更新图书信息和删除图书信息的交互图在此不再一一详细的介绍,其绘图方法跟绘制增加图书的方法一样,最后得到见图6.12 到图6.15图6.12图6.13图6.14图6.153、心得体会一次交互就是指在特定语境中,为了实现*一个目标,而在一组对象之间进展交换的一组消息所表示的行为,交互片断操作符assert是用来表示容所描述的行为是执行过程中那个时刻唯一的有效行为。如果执行到这个片断的前面,则说
17、明该片断就一定会发生。它通常和ignore或consider一起使用,以断言*种特定种类的消息行为。交互图的设计能够更加清楚表示各个事件的关系和操作顺序。实验八、九 对象图和包实验步骤为了更好的描述借书过程,根据图8.1绘制借书过程中*一时刻的对象图图8.1(1) 确定对象的值假定管理员在为读者S05001办理UML Guide的借书手续,这时首先弹出一个借书窗口lfLend,在其上输入读者ID和书名,点击借书按钮。这里lfLend对象将调用业务管理者类bmMain对象的findBookByName方法去获取一个书名为UML Guide的Book对象bLend,然后bmMain再通过lendB
18、ook方法,去调用bLend对象findFreeItem方法,去查找一本可借阅的图书,这里假定找到图书iLend,然后使用setLoanState更改iLend的借阅状态为借出,完成借书过程。表8.1描述了在成功设置iLend对象借阅状态为借出状态时,与借书过程有关的各对象的值。表8.1类名对象名属性值方法LendFramelfLendBookName=UML GuideReaderID=S05001lendBookBookManagerbmMainfindBookByNamelendBookBookbLendBookName=UML GuideISBN=ISBN12315findFreeIt
19、emItemiLendISBN=ISBN12315ItemID=B05001getItemIDsetLoanState图8.1(2) 绘图,根据1中的描述,绘制出当iLend状态变更时,系统中各对象的状态如图8.2所示。3根据分析设计情况,进一步设计对象和包之间的关系。2、实验结果图8.2心得体会UML包图中描绘两个或更多的包以及这些包之间的依赖关系。包是UML中的一种构造,用来将各种建模元素如用例或者类分组组织起来。包的符号是文件夹的样子,可以应用于任何UML图中。任何图中如果只包含包以及包之间的依赖,都可以看作是UML包图。UML包图实际上是UML2中的一个新概念,在UML1中一直是非正式
20、的局部,过去被称为UML包图的东西实际上通常是仅仅包含包的UML类图或UML用例图。UML对象图(ObjectDiagram)是显示了一组对象和他们之间的关系。使用UML对象图来说明数据构造,类图中的类或组件等的实例的静态快照。UML对象图和类图一样反映系统的静态过程,但它是从实际的或原型化的情景来表达的。UML对象图显示*时刻对象和对象之间的关系。一个UML对象图可看成一个类图的特殊用例,实例和类可在其中显示。对象也和合作图相联系,合作图显示处于语境中的对象原型类元角色。实验十、十一 组件图和部署图1、实验步骤1在组件视图中双击Main图,出现图10.1,为编辑组件图做好准备,这时绘图工具栏
21、中的图标如图中椭圆所示,其中具体含义可参看本节补充图标一段的介绍。图10.12在组件视图中,从工具栏中选择MainProgram图标,在右边的绘图区中添加一个新组件,并取名StartClass.java说明新增一个主程序。图10.23选择新创立的组件,点击鼠标右键,在弹出的菜单中选择Open Sepcification,弹出图10.3对话框。4在对话框中,可以修改组件的名称,设置组件的类型,指定实现的语言。这里新组件的名称定为StartClass.java,组件构型为Main ProgramRose中提供了多种构型,大局部在补充图标一段中均有简单的介绍,实现语言为JAVARose中默认的是分析
22、语言Analysis,修改结果如图10.4所示。图10.3图10.45组件图描述的是系统的实现视图,因此要指定实现组件功能的文件。点击File选项卡,在列表框中点击鼠标右键,在弹出的菜单中选择Insert File,弹出文件对话框。在对话框中,键入StartClass.java,点击翻开按键,这时对话框如图10.5所示。图10.56双击StartClass.java,弹出是否创立对话框,询问是否创立文件,选择YES,弹出记事本,这时可输入相应的源程序注意:如果这里选择的文件已经存在,则不会弹出创立文件对话框,而是直接显示相应文件容。7创立相应的包。选择包图标,在右图中创立。这里同样需要对每个组
23、件翻开Open Specification对话框,设置具体的属性,对包组件来说需要在Files选项卡中指明与其对应的目录。创立完毕的组件图如图10.6所示。图10.68选择业务对象包BO,双击,翻开业务对象包的详细组件图,这里根据分析的结果分别创立Title.java,Item.java,Loan.java,BorrowerInfomation.java,Reservation.java组件,并设置好每个组件的构型和对应的文件。创立好的BO包组件图如图10.7。图10.79创立依赖关系。在本节关系一段中,已经描述过依赖关系使用虚线表示,因此根据分析中的结果,在图中将相互依赖的组件连接即可。完成
24、后的组件图如图10.8。2、实验结果图10.82. 绘制部署图分析:TJKD的图书管理系统目前开发的是一个单机版系统,其中所有的运算均在一台机器上完成,但是由于打印报表的需要,系统还应配备一台打印机。因此得出系统中存在2个节点:一台主机,其类型是Processor。一台打印机,其类型是Device。绘图步骤:1浏览窗口中选择Deployment View,弹出如图10.9所示窗口。图10.92在图中添加分别添加一个Processer和Device,并分别命名为puterwith java support和Printer,添加完毕后,其结果如图10.10所示。图10.103为节点添加连接关系。全
25、图如图10.11。图10.11心得体会组件图提供系统的物理视图,它的用途是显示系统中的软件与其他软件组件(例如,库函数)的依赖关系。组件图可以在一个非常高的层次上显示,从而仅显示粗粒度的组件,也可以在组件包层次上显示。部署图表示该软件系统如何部署到硬件环境中。它的用途是显示该系统不同的组件将在何处物理地运行,以及它们将如何彼此通信。因为部署图是对物理运行情况进展建模,系统的生产人员就可以很好地利用这种图。组件图和部署图的交互使用,加深了我对自己所做系统的业务认识,不断更新和优化。实验十二 正向工程1、实验步骤在上面做好的类图和组件图,浏览窗口中选择ponent View;见图12.1。本例是用
26、实现administrator类为例来讲一下怎样实现正向工程,首先在左边的工具栏选一个组件,并命名为administrator类,并找到这个类。在上面的图中找到administrator类后,把它拖拉到刚刚建好的组件图里面,见图12.2所示。图12.1图12.2(4)做完上一步后,双击该组件,在找开的对话框中,选Files这个选项,如图12.3那样设置。图12.3做完一步后,右键单击该组件,便会看到有一项为Java/J2EE,如图12.4所示,当鼠标移到该项上时会有弹出快捷菜单Generate Code,见图12.5,接下来会一另一个对话框出现,选择刚刚添加的类点击中间的Assige键,图12.6示。到此,正向
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度个人房屋装修贷款合同模板8篇
- 2025年度城市更新项目土地使用权收购协议4篇
- 二零二五版货运车辆租赁合同示范文本(含实时跟踪服务)2篇
- 个人房屋建筑施工安全合同2024年度2篇
- 二零二五版虚拟现实(VR)教育培训服务合同
- 科学课堂上的商业思维启蒙-小学案例分享
- 教育信息化与嵌入式技术的融合路径
- 二零二五版个人独资企业股权出售与竞业禁止协议3篇
- 二零二五年度物业服务合同:某大型商场物业服务管理协议6篇
- 安装购销合同
- 2024年医销售药销售工作总结
- GB/T 44888-2024政务服务大厅智能化建设指南
- 2023-2024学年江西省萍乡市八年级(上)期末物理试卷
- 四则混合运算100道题四年级上册及答案
- 四川省高职单招电气技术类《电子基础》历年考试真题试题库(含答案)
- 2024年江西生物科技职业学院单招职业技能测试题库带解析答案
- 桥本甲状腺炎-90天治疗方案
- (2024年)安全注射培训课件
- 2024版《建设工程开工、停工、复工安全管理台账表格(流程图、申请表、报审表、考核表、通知单等)》模版
- 酒店人防管理制度
- 油田酸化工艺技术
评论
0/150
提交评论