




已阅读5页,还剩66页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 RationalRose的使用 定义 Rose是一种分析和设计面向对象的建模工具 作用 利用ROSE这个工具 我们可以建立用UML的软件系统的模型 面目可以自动生成和维护C JAVA VB PB ORACLE等语言和系统的代码 2 核心 七大框图1 Use CaseDiagrams 用例框图 2 sequencediagram 顺序框图 3 Collaborationdiagram 协作框图 4 Classdiagram 类框图 5 StateTransitiondiagram 状态框图 6 Componentdiagram 组件框图 7 Deploymentdiagram 扩展框图 3 1 启动RationalRose 4 视图 文档窗口 2 RationalRose主界面 工具栏 显示UML基本元素 5 打开顶层视图 6 3 增加工具栏中的基本元素 在工具栏中点击鼠标右键 在右键菜单中选中 Customize 子菜单 7 系统弹出自定义工具栏窗口 在左面窗口中选中当前工具栏中没有的按钮 点击 添加 A 按钮即可 8 4 增加角色 用例 用例图 在工具栏中 选中 UseCaseView 点击鼠标右键 在右键菜单中选择 New 子菜单 9 选课系统 给教师分配课程和学生注册课程 当教师决定要教授哪门课程后 课程登记办公室便把相关信息输入学校的计算机 要给教师打印一份教师将要教授的课程报告 学生会得到一个课程目录 现在 学生填写一份选择的课程的完整表格给登记办公室 登记办公室的职员把学生的表格输入到学校的主计算机中 一旦学生一学期的课程注册信息输入完毕 系统就会成批处理学生的申请并分配课程 大多数情况下学生会获得他们的第一选择 然而由于可能会引起冲突 同一个教师的学生太多 登记办公室会告诉学生做其他的选择 一旦所有学生的课程分配完毕 系统会给学生一份课程表以便他们检查 一旦登记前期工作结束 教师会得到一份他教授的课程的详细学生名单 10 详细描述 在每个学期的开始 学生们会得到一份包含本学期将要开设的课程的列表 每门课程包含的信息 如教师 系别和学生选择课程的先决条件可以帮助学生有目的的选择课程 新系统允许学生在将要来临的新学期中选择四门课程 另外 每个学生有在万一一门课名额满员或被取消的课程中有重选的机会 假设每门课程最多10人 每门最少有3名学生选择才能开课 少于3个人报名的课程将被取消 当一个学生的注册信息完成之后 系统给收费系统发送一个消息 以便学生为其选中的课程付费 教师可以访问在线系统以知道他们将要教授哪些课程和每门课程有哪些学生报名 每个学期有一段时间让学生可以改变计划 学生可以在这段时间内访问联机系统以增加或删除课程 11 需求分析阶段任务 建立用户需求和功能模块 确定系统中的角色和使用案例 利用ROSE 生成角色 使用案例和生成用例图 所用到的框图 1 Use CaseDiagrams 显示使用案例 表示系统功能 与角色 人或系统 间的交互 12 在课程注册系统中我们可以归纳出来的主要问题是 学生要注册课程 教授要选择课程来教 注册管理人员要创建课程和生成学期 课程 目录 注册管理人员要维护关于课程 教授和学生的所有信息 收费系统要从注册系统获得学生的费用情况 基于对以上问题的回答 创建以下actors 学生 Student教师 Teacher注册管理人员 Registrator收费系统 BillingSystem 13 在Rationarose中创建actors在Browser中的UseCase视图中单击鼠标右键 显示出弹出菜单 选择New Actor菜单选项 一个叫做NewClass的新的actor出现在浏览器中 选中这个叫做NewClass的actor 更名为设计的名字 创建好的Actors在浏览器中的显示 14 Actors文档 在Rose中我们对模型元素都可以 在多数情况下是必须 添加文档以描述更多的信息 应该给模型中的每个actor添加摘要描述 摘要描述表示actor和系统交互的规则 课程注册系统中actor的摘要描述如下 学生 在学校注册上课的人 教师 在学校被认可上课的人 注册管理员 系统认同的维护人员 收费系统 学生付费的外部系统 15 在RationalRose中给actors写文档描述 如果文档窗口没有打开 则在View菜单中选择文档窗口将其打开 在浏览器中选中actor 把光标点在文档窗口中 输入文档信息 学生actor的文档描述如图 16 在Rationarose中创建UseCaseUseCases模型是系统和actor之间的对话 它表现系统提供的功能 即 系统给操作者提供什么样的使用操作 UseCase之间的连接构成了系统可能使用的定义的方式 通常的定义是 UseCases是系统为特定的actors操作的事务处理产生的结果值的时序 以下的问题可以帮助我们更好地标识系统的UseCases 每个actor的特定任务是什么 是否每个actor都要从系统中创建 存储 改变 移动或读取信息 是否任何actor需要通知系统有关突发性的 外部的改变 那些UseCases支持或维护系统 是否所有功能需求都被UseCases使用了 17 课程注册系统中的UseCases 以下是系统必须标志的 学生actor需要使用系统来注册课程 当选择课程的过程完成后 收费系统必须获得收费信息 教授actor需要使用系统来选择课程 且必须得到课程花名册 登记员要生成课程目录 而且必须维护课程 学生 教授等信息 18 基于这些需要 可以生成以下UseCases 注册课程 Registerforacourse选择课程任教 Selectacoursetoteach得到课程花名册 Getacoursecatalogue维护课程信息 Maintaincourseinformation维护教师信息 Maintainteacherinformation维护学生信息 Maintainstudentsinformation创建课程目录 Createcoursecatalogue 19 在RationalRose中创建UseCases 在浏览器的UseCase视图中单击鼠标右键使弹出菜单显示 选择New UseCase选项 则在浏览器中生成一个没有命名的UseCase 选中创建的新UseCase 键入UseCase的名字 课程注册系统的UseCases如图 20 在RationalRose中为一个UseCase创建摘要描述在浏览器中选中要描述的UseCase 把光标在document窗口中点击以下 输入文字描述 如果document窗口没有出现 选择View菜单中的Document菜单使document窗口可见 课程注册UseCase的摘要描述窗口如图 21 UseCase的事件流程每个UseCase同时也被一个事件流文档化 事件流是UseCase完成需求的行为的事件的描述 事件流是指示系统要完成什么 而不是如何完成 因此 这是由领域语言 即客户的专业语言 而不是实现语言 如通常的PDL描述语言 写的 事件流包含 什么时候UseCase如何开始和结束 UseCases和actors之间如何交互 UseCase需要什么数据 UseCase的通常顺序 交互或额外的事件流描述 事件流是用文档表示的 如我们现在通常使用的Word文档 可以作为附加文档添加在Rose中 22 例 选择课程任教UseCase的事件流程 请把以下斜体字文档输入到一个Word文档中 1 0选择课程任教的事件流程 1 1前提条件 维护课程UseCase的创建课程事件流必须在该UseCases开始前执行 1 2主要事件流 当教师登录系统并输入口令后这个UseCase开始 系统校验口令正确后 提示教师选择当前或以后的学期 教师输入预定的学期 系统提示教师选择动作 ADD DELETE REVIEW PRINT 或QUIT 如果选择了ADD 则S 1 执行增加可选的课程子流 如果选择了DELETE 则S 2 执行删除课程子流 如果选择了REVIEW 则S 3 执行预览计划子流 如果选择了PRINT 则S 4 执行打印计划子流 如果选择了QUIT 则 UseCase终止 23 关联事件流文档到RationalRose中的UseCase在浏览器中的UseCase上单击鼠标右键弹出菜单 选择Sppecification菜单 选择Files夹 单击右键弹出快捷菜单 选择InsertFile菜单 浏览目录列表选择要关联的文件 单击Open按钮 单击Close按钮关闭Specification窗口 24 25 26 我们应该给每个usecase都写上象这样的事件流文档 在写完后最重要的事就是通读这些文档 看是否把系统的大部分功能 特别是重要的 都包含了 完成这个工作后 我们就可以创建UseCase关系图了 27 UseCase的两种关系 使用或延伸使用关系 多个usecase可能使用同一个功能 这种usecase最好分开单独建立 比在几个usecase中实现相同的功能更好些 使用关系是建立在两个usecase之间 这种使用关系用指向被使用的usecase的空三角箭头表示 延伸关系用于表示 可选择的行为 在特定条件下才发生的行为 如警告信息 基于操作者的选择的几种不同的流程 延伸关系可以用一个结束于基础usecase的大空心三角箭头表示 28 UML有一个重要概念 stereotype 版类 模板 提供了在基本模型元素的基础上增加新的模型元素的方法 stereotype允许UML可以延伸到开发过程中表示系统通信的最小符号设置 Stereotype用符号 表示 放在表示关系的线上 使用和延伸必须使用stereotype 因为他们都是使用同一箭头来表示的 29 使用及延伸关系 30 我们创建Actors UseCase和UseCase关系 目的都是为创建UseCase图 只有UseCase图能够可视化地表示用户需求和我们对用户需求的理解 Usecase图是几个或全部actors usecases和它们在系统中的关系的图形表示 每个系统通常都有一个MainUseCase图 表示系统的边界 actor 和提供的大部分功能 也可以创建一些其它的Usecase图 UseCase图 31 在RationalRose中创建mainusecase图在浏览器中的usecase视图中双击MainDiagram 单击一个actor选中并把其拖动到图中 重复第二步骤 把每个需要加入图中的actor加上 在浏览器中选择一个usecase并把它拖到图中 重复步骤4把所有usecase都拖到图中 注 actors和usecase也可以直接用工具条的工具在图中生成 32 33 1 在RationalRose中创建通信关联关系在图的工具条上单击Association或UnidirectionalAssociation图标 如果Association图标没有在工具条上 可以在工具条上单击鼠标右键弹出快捷菜单 选择customizemenu选单手动把图标加上 在起始actor上单击并拖动到设计的usecase上 34 增加Communicatesstereotype 可选的 双击Association线 弹出Specification窗口 或使用右键菜单的 OpenSpecification 项 如果stererotype是第一次使用 则在stereotype输入框中输入Communicate 如果已经使用过Communicatesstereotype 则在下拉框中即可 单击OK 关闭specification窗口 重复以上步骤 添加完需要的association关系 35 36 2 在RationalRose中创建use关系在工具条上选择generalization图标 在使用usecase上单击 拖动到被使用的usecase上 双击generalization线 弹出specification窗口 如果这个stereotype是第一次使用 在stereotype输入框中输入uses 如果这个stereotype已经创建了 则在下拉列表中选择 单击OK关闭specification窗口 37 38 3 在RationalRose中创建extends关系在工具条上选择Generalization图标 单击包含extends功能的usecase 拖动到使用的usecase上 双击Generalization线 弹出Specification窗口 如果这个stereotype是第一次使用 在stereotype输入框中输入Extends 如果这个stereotype已经创建了 则在下拉列表中选择 单击OK 关闭Specification窗口 39 5 类 在Rose浏览器中创建类1 在浏览器中选中Logical视图 单击鼠标右键 2 选择New Class菜单 一个叫做NewClass的类出现在浏览器中 3 选择新类 键入类的名字 在前面关于usecase图中的关系中涉及到过模板 stereotypes 类也有stereotypes 每个类最少有一种stereotypes 40 一些常用的stereotypes是 实体类 边界类 控制类 例外类等 实体类 模型信息和相关行为广泛的永久的独立于它的环境 边界类 系统环境和内部工作间的模型关联 控制类 一个或多个模型控制行为规格 41 例 课程登记的UseCase边界类登记表格 计划表 计费界面 AddDrop课程表实体类课程 提供课程 学生计划 学生信息控制类登记管理 42 选择或键入stereotype的名字 43 在RationalRose中为类创建stereotypes 1 在浏览器中选择类并单击鼠标右键 弹出快捷菜单 2 选择Sepecification菜单 3 选择General页 4 选择或键入stereotype的名字 5 单击OK按钮关闭Specification窗口 在RationalRose中给类编写文档在浏览器中选择类 2 在文档窗口中写上类的文档 44 6 包 如果一个系统仅仅包含少数的几个类 我们便可以很容易地管理 通常的系统都包含很多类 你需要一种机制来管理以便更方便使用 维护和重用 这就是包有用的原因 在逻辑视图里 包和与它有关的包或类联系 把类组织到包中 我们可以从总体看到模型的结构 也可以看到每个包内的详细情况 在UML中 包被描述成文件夹 包的图示如图 45 在RationalRose中创建包 1 在浏览器中的LogicView视图上单击鼠标右键 2 选择New Package菜单 3 当包还处于选择状态时 键入包的名称 46 可以把登记系统中的类放在三个包中 界面 人和学校事件 47 当创建好包后 就要重新安排类的位置 在RationalRose中重新安排类的位置1 单击选择浏览器中的类 2 把类拖动到设计的包中 3 重复上述步骤直到所有的类都重新定位 48 当增加了更多的类后 类的文本描述就不足以说明问题了 类图提供了一个或所有类的图示说明 在逻辑视图中的主视图 main 是系统的包图 每个包也有其自己的主要类图 通常显示包的公共类 也可能需要创建其它的类图 7 类图 49 RationalRose中的主视图 main Rose在逻辑视图中自动添加主视图 主视图是逻辑视图中典型的高级包视图增加一个包图的过程是 在浏览器中双击主视图 在浏览器中选择包 把包拖到视图中 重复上述步骤直到把所有的包都处理完 50 主视图 51 在Rose中创建包的主类图 在主视图中双击包 Rose会打开包并创建 或显示 这个包的视图 在浏览器中选择类并拖到视图中 重复步骤3直到所有类都处理完 People包的主类图 52 类的分视图 需要时可以加入类的分视图它们展现了模型中包和类的另一种 视图 例子 方案中多个类的视图包中 私人 类的视图一个或多个类的视图及它们的属性和操作inheritancehierarchy视图 53 在RationalRose中添加类的分视图 1 在浏览器中单击鼠标右键 弹出快捷菜单 2 选择New ClassDiagram菜单 3 当图表还处于选中状态时 给图写上名字 4 在浏览器中双击图 打开图 5 在逻辑视图中选择一个类 并把该类拖到创建的新图中 6 重复步骤5直到选择的每个类都放在该图中 54 分类图 55 类之间的关系通常有关联 普通关联 聚集 泛化 继承 等 关联是类之间的双向连接关系 聚集是部分与整体之间的特殊的关联形式 除了上面的关系 还可以 用名称 角色和多种指示增加关系建立反身关系加入强制关系 8 关系 56 1 关联关系关联在类之间具有双向语义 类之间的关联关系意味着在对象和关联的对象之间存在连接 例如 Course类和StudentInformation类之间存在关联关系就表示Course类对象和StudentInformation类对象之间有连接关系 对象连接的数量决定于关联的多样性 在UML中 关联用连接关联的类的直线表示 57 在RationalRose中创建关联关系 1 在工具条上选择关联图标 2 在类图中单击关联的一个类 3 拖动关联关系线到另一个类上 58 关系名称 可以给关系加上名称 通常是动词或动词短语 59 角色名称 在类间的关联中角色表示目的或能力 通常是名词或名词短语 60 在RationalRose中创建多重性标识 1 双击关系线 弹出Specification窗口 2 选择Detail页 修改角色 RoleADetail或RoleBDetail 3 键入设计的多重性数值 关联的多重性 数量 61 2 聚集关系聚集是关联关系的特殊形式 整体和部分的关系 聚集是部分或包含的关系 在UML中 聚集是由一个空心三角箭头表示的 例如 在一个学期中 一个课程 Math101 可能被分配不同的次数 每一门课程描述为一个CourseOffering 如Math101 section1和Math101 section2 Course和CourseOffering可以认为是聚集关系 一个course已经具有CourseOfferings 62 在RationalRose中创建聚集关系 1 从工具条上选择聚集关系 aggregation 图标 2 单击属于 整体 的类 拖
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 30425-2025高压直流输电换流阀水冷却设备
- GB/T 40711.5-2025乘用车循环外技术/装置节能效果评价方法第5部分:发电机
- 经济数据分析与决策试题及答案
- 材料疲劳裂纹扩展数据统计分析重点基础知识点
- 材料疲劳损伤累积分析数据可视化重点基础知识点
- 船舶火灾呼叫外界救火应急预案(3篇)
- 航空器舱内火灾应急预案(3篇)
- 课程学习建议与经验2025年计算机二级VB考试试题及答案
- 学院火灾处置应急预案(3篇)
- 经济增长的驱动力与政策应对策略试题及答案
- 育龄人群不孕不育防治临床实践指南(2024)解读
- AgFunder -2025 年全球农业食品科技投资报告 Global AgriFoodTech Investment Report 2025
- (二调)武汉市2025届高中毕业生二月调研考试 语文试卷(含官方答案解析)
- 线路安规培训
- 大风天气下的物流运输安全措施
- 老旧小区加装电梯使用公约协议
- 新生儿护理安全用药
- 2025年湖北省新华书店集团有限公司招聘笔试参考题库含答案解析
- 医疗护理医学培训 临时起搏器的使用及参数调整课件
- 《中国妇女妊娠期体重监测与评价》(T-CNSS 009-2021)
- 情境教学法在初中函数教学中的实践研究
评论
0/150
提交评论