第8章 面向对象分析
面向对象分析-顺序图
把消息表示为从一个对象生命线到另一个对象生命线的一个水平实线箭头, 即从源对象指向目标对象,以触发目标对象中的特定操作。对于对象到自身的 消息,箭头就从同一个对象符号开始和结束。
用消息(操作或信号)的名字及其参数值或者参数表达式标示箭头。
用如下种类的箭头表示不同种类的通讯:
同步消息
一般把它用于普通的过程调用。在外层控制恢复之前,要完成整个嵌套序列。 通常把它用于普通的过程调用。 若在一个主动对象发送信号并等待完成一个嵌套的行为序列才继续时,也可以 把它用于并发的主动对象。 同步消息返回 用它显式地表示从过程调用的返回。在控制的过程流中,可以省略返回箭头 (暗示执行规约结束),假设每个调用在任何消息后都有一个配对的返回,并可以 把返回值标示在初始的箭头上。
5.1
概念与表示法
1、概述 顺序图是一种详细表示对象之间以及对象与参与者实例之间交 互的图,它由一组协作的对象(或参与者实例)以及它们之间可发 送的消息组成,它强调消息之间的顺序。
由对象(参与者) 、消息、生命线和执行规约组成。
[对象名]:类名
从图中可以看出顺序图是二维的,其中: 垂直方向表示时间,水平方向表示不同的对 象或参与者。 通常时间维由上到下(根据需要,也可以 由下到上)。通常只有时间顺序是重要的, 但在实时应用中时间轴是能度量的。 对象的水平顺序并不重要,相应地生命线 之间的顺序可以是任意的。
3、执行规约
执行规约表示一个对象直接或者通过从属 例程执行一个行为的时期。它既表示了行 为执行的持续时间,也表示了活动和它的 调用者之间的控制关系。 用一个窄长的矩形表示执行规约,矩形 顶端和它的开始时刻对齐,末端和它的结 束时刻对齐。 在程序的控制流中,执行规约符号的顶 端画在进入的箭头的尖端(开始该动作的 那个箭头),底端画在返回的箭头的尾部。
面向对象分析
面向对象分析:是确定需求或者业务的角度,按照面向对象的思想来分析业务。
例如:OOA只是对需求中描述的问题,进行模块化的处理,描述问题的本质,区别每个问题的不同点相同点,确定问题中的对象。
OOA与结构化分析有较大的区别。
OOA所强调的是在系统调查资料的基础上,针对OO方法所需要的素材进行的归类分析和整理,而不是对管理业务现状和方法的分析。
基本步骤:
在用OOA具体地分析一个事物时,大致上遵循如下五个基本步骤:
第一步,确定对象和类。
这里所说的对象是对数据及其处理方式的抽象,它反映了系统保存和处理现实世界中某些事物的信息的能力。
类是多个对象的共同属性和方法集合的描述,它包括如何在一个类中建立一个新对象的描述。
第二步,确定结构(structure)。
结构是指问题域的复杂性和连接关系。
类成员结构反映了泛化-特化关系,整体-部分结构反映整体和局部之间的关系。
第三步,确定主题(subject)。
主题是指事物的总体概貌和总体分析模型。
第四步,确定属性(attribute)。
属性就是数据元素,可用来描述对象或分类结构的实例,可在图中给出,并在对象的存储中指定。
第五步,确定方法(method)。
方法是在收到消息后必须进行的一些处理方法:方法要在图中定义,并在对象的存储中指定。
对于每个对象和结构来说,那些用来增加、修改、删除和选择一个方法本身都是隐含的(虽然它们是要在对象的存储中定义的,但并不在图上给出),而有些则是显示的。
面向对象分析方法
面向对象分析方法1/2面向对象分析方法(Object-Oriented Analysis,OOA),是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题。
OOA与结构化分析有较大的区别。
OOA所强调的是在系统调查资料的基础上,针对OO方法所需要的素材进行的归类分析和整理,而不是对管理业务现状和方法的分析。
OOA(面向对象的分析)模型由5个层次(主题层、对象类层、结构层、属性层和服务层)和5个活动(标识对象类、标识结构、定义主题、定义属性和定义服务)组成。
在这种方法中定义了两种对象类之间的结构,一种称为分类结构,一种称为组装结构。
分类结构就是所谓的一般与特殊的关系。
组装结构则反映了对象之间的整体与部分的关系。
OOA在定义属性的同时,要识别实例连接。
实例连接是一个实例与另一个实例的映射关系。
OOA在定义服务的同时要识别消息连接。
当一个对象需要向另一对象发送消息时,它们之间就存在消息连接。
OOA 中的5个层次和5个活动继续贯穿在OOD(画向对象的设计)过程中。
OOD模型由4个部分组成。
它们分别是设计问题域部分、设计人机交互部分、设计任务管理部分和设计数据管理部分。
一、OOA的主要原则。
(1)抽象:从许多事物中舍弃个别的、非本质的特征,抽取共同的、本质性的特征,就叫作抽象。
抽象是形成概念的必须手段。
抽象原则有两方面的意义:第一,尽管问题域中的事物是很复杂的,但是分析员并不需要了解和描述它们的一切,只需要分析研究其中与系统目标有关的事物及其本质性特征。
第二,通过舍弃个体事物在细节上的差异,抽取其共同特征而得到一批事物的抽象概念。
抽象是面向对象方法中使用最为广泛的原则。
抽象原则包括过程抽象和数据抽象两个方面。
过程抽象是指,任何一个完成确定功能的操作序列,其使用者都可以把它看作一个单一的实体,尽管实际上它可能是由一系列更低级的操作完成的。
数据抽象是根据施加于数据之上的操作来定义数据类型,并限定数据的值只能由这些操作来修改和观察。
软件工程第8章面向对象分析资料
2017/9/4
2017/9/4
图8・2复杂问題的对象模證的5个层次
3017/9/4 6
2017/9/4 8
8.2需求陈述
&2・1书写要点
需求陈述的内容包括:问®范間,功®需求,性«需求,应用环境及假设条件等。
需求陈述应该阐明“做什么”而不是"怎样做”》它应该描述用户的需求而不提出解决问《的方法-应»指出哪些是系统必要的性质,哪些足任选的性质.
书写需求陈述时,妥尽力做到晤法正确,而且应该慎复选用名词、动词.形容词和同义词•
绝大多««求陈述都是有二义性的、不完»的,甚至不一致的.某些需求有明显错课,还有一些需求虽然表迷得很准确,但它们对系统行为存在不良影响或者实现起来遣价
2017/9/4
8.2.2例子
储户
图&3 ATM肅统
2017/9/4 10。
软件工程面向对象的分析与设计
-
THANKS!
XX生活即将结束,在此,我要感谢所有教导我的老师和陪 伴我一齐成长的同学,他们在我的大学生涯给予了很大的帮助。本论 文能够顺利完成,要特别感谢我的导师XXX老师,XXX老师对该论文从选题,构
思到最后定稿的各个环节给予细心指引与教导,使我得以最终完成毕业论文设计! 最后,我要向百忙之中抽时间对本文进行审阅,评议和参与本人论文答辩的各位
识别类和继承
通过类和继承,我们可以组织具有相似属性和行为的对象。类 定义了一组对象的通用属性和行为,而继承则允许我们从一个 类派生出另一个类,从而共享和扩展其属性和行为
定义接口
接口定义了类或对象之间的交互方式。它描述了对象需要提供 的方法和需要遵守的协议
面向对象的分析
通过面向对象的分析, 我们可以更准确地理 解和描述软件系统的 需求,为后续的设计 和实现打下坚实的基 础
2
面向对象的 设计
面向对象的设计
面向对象的设计(Object-Oriented Design,OOD)是软件工程过程中的一个关键阶段 ,其目标是基于面向对象的分析结果,设计出满足系统需求的软件结构
识别类和对象:根据面向对象的分析结果,识别出系统中的主要类和对象。这些类和 对象应该能够准确地反映问题域的特征和需求
和操作方式
设计数据库:根据系统的数 据需求,设计出合适的数据 库结构。数据库应该能够有 效地存储和管理系统的数据
设计系统架构:根据系统的 功能需求和性能要求,设计 出合适的系统架构。系统架 构应该能够支持系统的可扩 展性、可维护性和可重用性
面向对象的设计
通过面向对象的设计,我们可 以设计出结构清晰、易于理解 和实现的软件系统,从而提高
面向对象的分析
软件工程概论_8_面向对象需求分析
• 一.面向对象分析模型的组成结构 • 二.面向对象分析模型描述工具 • 三.面向对象分析的基本过程
• 四. 面向对象分析方法
• 五. 小结
一.面向对象分析模型的组成结构
数据模型
属性、操作、协作者
功能模型
类/对象 模型
对象关系模型
使用实例
对象-行为模型
行为模型
二.面向对象分析模型描述工具
1. 用例图
2.面向对象建模 (1)建模与模型 建模是将问题域的解空间定义成一种模型,以帮助系统分析 人员更好地理解问题。 模型是为了理解问题而对问题所做出的一种抽象,而且是对 问题的一种无歧义的描述。模型由一组图示符号和组织这些 符号的规则组成。利用它们来定义和描述问题域中的术语和 概念。 建模的目的主要是为了减少复杂性。 (2)面向对象模型
2) 面向对象分析的五个层次 面向对象分析由五个主要活动组成,即确定类-&-对象、识别 结构、识别主题、定义属性和定义服务(方法)。对于一个复杂 问题的面向对象的模型可用五个层次表示:类-&-对象层、结 构层,主题层、属性层和服务层,见图3.3.8。
主题层 subject level 类-&-对象层object 结构层 structure 属性层 attribute 服务层 serves
•使用具有确切含义的名词。
• 尽量使用能表示类的含义的日常用语作名字,不要使用空洞的或含 义模糊的词作名字。例如,“库房”比“房屋”或“存物场所”更确切。
•必要时用名词短语作名字。
• 为使名字的含义更准确,必要时用形容词加名词或其他形式的名词 短语作名字。例如,“最小的领土单元”、“储藏室”、“公司员工”等 都是比较恰当的名字。
签定保险单 销售统计
客户
第8章 面向对象分析-软件工程基础(第3版)-胡思康-清华大学出版社
第8章 面向对象分析
第 5 页5
面向对象分析概述
面向对象分析的3类模型
OOA模型由3类独立模型构成:功能模型、静态模型和动态模型。 ➢功能模型描述软件系统的用户交互和功能。 ➢静态模型描述软件系统中类与对象以及它们间的关系,也因也称 为对象模型。 ➢动态模型描述系统的控制结构,也称为交互模型。
第8章 面向对象分析
第 6 页6
面向对象分析概述
类
静态模型的5个层次 类-对象层
对象
Coad和Yourdon 提出,对于大型、复杂 性软件系统,需要建立 分析问题域的静态模型。 该模型由5个层次组成: 类-对象层、结构层、 属性层、服务层和主题 层。
结构层 属性层 服务层 主题层
泛化关系
关联关系
属性
对象连接
服务
消息连接
⑶ 用例描述:用文字信息详细描述用例的内容,它是对用 例的有益补充。
第8章 面向对象分析
第 8 页8
建立静态模型
➢用例模型分别从参与者和系统的角度描述用户需求, 依据用例模型导出静态模型。静态模型是面向对象建 模中最基本、最重要、最耗时的技术活动。 ➢静态建模的任务是构建问题域的概念模型,把问题 域中的实体转变为信息域的类与对象以及它们间的关 系,因此也被称为对象模型或领域模型。 ➢静态模型通过建立类图及关系来反映领域概念,而 面向对象设计也建立类图,但各阶段对类的抽象程度 不同。
第8章 面向对象分析
第 12 页12
建立动态模型
建立状态图
状态图描述的就是对象状态的转换过程。通过对对象状态 的分析,能够了解对象在系统流程中的变换,从而发现潜在的事 件和条件。
建立状态图的一般过程如下: ⑴ 了解系统的主要功能和性能,确定和它们有关的主要对象。 ⑵ 列出一个对象的生存期内的所有可能的状态。 ⑶ 确定对象状态改变时的触发条件或事件。 ⑷ 在一个对象中,选定一组与描述状态相关的行为属性和促使 改变状态的方法。 ⑸ 结合触发条件、事件、行为属性值改变的先后顺序,建立软 件系统的状态图。
面向对象分析
面向对象分析
面向对象分析是计算机科学领域中使用最广泛的一种分析技术,它是一种结构化的分析方法,是系统分析的更新与系统设计的预备工作。
面向对象分析可以帮助我们更好地理解和分析现有系统,并为系统重构提供指导。
面向对象分析是一种以对象为中心,以建模和分析实体、对象和对象之间的关系为主要任务的分析方法。
它的主要目的是将概念抽象为实体,然后利用视图及关系描述它们之间的关系。
面向对象分析包括分析、设计、建模过程,分析过程也称为面向对象分析(OOA)。
面向对象分析强调对对象的分析,对象可以看作对实际世界中的实际事物的抽象。
对象可以由属性和行为组成,属性描述了对象的内部状态,行为描述了它如何处理消息。
在面向对象分析中,这种抽象事物被描绘为类,每个类有一组共享的属性和行为。
面向对象分析和设计的主要工作是抽象建模,确定对象之间的关系,并利用抽象和关系建模系统。
建模可以帮助我们清楚地了解系统结构,以及每个系统元素之间的联系。
一旦建模完成,可以使用模型来设计、分析和实现高级的系统。
面向对象分析是一种结构化的分析方法,用于理解和描述系统的行为,从而有效地构建高质量的系统。
它的关键是建立系统的实体、关系和视图,从而提出系统的结构,并提出系统实现的可行方案。
总体而言,面向对象分析是一种重要而普遍应用的管理技术,它是系统分析和设计过程中的重要组成部分。
对对象的分析有助于进行
更好的系统设计,增强了系统容量,提高了系统灵活性和性能,为组建现代软件系统提供了可行的工具。
面向对象分析
面向过程与面向对象区别
面向过程:和你谈业务。把所有的事情都谈妥了,开始做项目, 一整套项目做下来了,有需求要变,还得整个改变。 面向对象:边做业务,边谈需求,这样就能够避免上面的问题。 区别: 面向过程:处理简单的事情,直接关注流程,简单有效。 面向对象:处理复杂的事情,先使用面向对象的方式对整体关 系作出分类,然后,根据不同的类深入细节的处理。 面向过程的思维方式是分析综合,面向对象的思维方式是构造。
创建和使用对象示例
问题
一个景区根据游人的年龄收取不同价格的门票。 请编写游人类,根据年龄段决定能够购买的门 票价格并输出
分析 姓名 年龄
游人类
显示姓名及门票价格
创建和使用对象示例
示例
public class java.util.Scanner; Visitor { import String name; 姓名 public class// InitialVistor { 成员变量
23
Java 是面向对象的语言
所有Java程序都以类class为组织单元 关键字class定义自定义的数据类型
类的基本框架
public class HelloWorld {
public static void main(String[] args){ System.out.println("Hello World!!!"); } }
问题
在不同大学,会感受到相同的环境和教学氛围, 用类的思想输出学校信息
School类 属性: 学校全称 学校教室数目 学校机房数目
方法: 展示学校信息
面向对象的分析和设计.ppt
子系统的设计准则是: (1) 子系统应具有定义良好的接口,通过接口 和系统的其它部分通信; (2) 除了少数的“通信类” 外,子系统中的类 应只和该子系统中的其它类协作; (3) 子系统的数量不宜太多; (4) 可以在子系统内部再次划分,以降低复杂 性。
24
2) 标识问题本身的并发性,并为子系统分配 处理器 通过对对象--行为模型的分析,可发现系 统的并发性。如果对象(或子系统)不是同时 活动的,则它们不需并发处理,此时这些对象 (或子系统)可以在同一个处理器上实现。反 之,如果对象(或子系统)必须对一些事件同 时异步地动作,则它们被视为并发的,此时, 可以将并发的子系统分别分配到不同的处理器, 或者分配在同一个处理器,而由操作系统提供 并发支持。
15
5. 多态性(polymorphism) 多态性是指同一个操作作用于不同的对象 上可以有不同的解释,并产生不同的执行结 果。例如“画”操作,作用在“矩形”对象 上,则在屏幕上画一个矩形,作用在“圆” 对象上,则在屏幕上画一个圆。也就是说, 相同操作的消息发送给不同的对象时,每个 对象将根据自己所属类中定义的这个操作去 执行,从而产生不同的结果。
16
6. 动态绑定(dynamic binding) 动态绑定是指在程序运行时才将消息所请 求的操作与实现该操作的方法连接起来。 传统的程序设计语言的过程调用与目标 代码的连接(即调用哪个过程)放在程序运 行前(即编译时)进行(称为静态绑定), 而动态绑定则是把这种连接推迟到运行时才 进行。 动态绑定是一种在运行时确定被执行代 码的技术。
模型元素指模型中的实体以及实体间相互连接的关系
类 属性 操作 主动类 属性 操作 对象:类 属性 操作
用况
结点
状态
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
使用Rose创建用例模型
确定类与对象
2. 筛选出正确的类与对象
严格考察每个候选对象,从中去掉不正确的或不 必要的类与对象,仅保留确实应该记录其信息或 需要其提供服务的那些类与对象。
确定类与对象
3. 区分实体类、边界类和控制类
• 在类分析时首先从问题域的实体类入手,如果在 建立分析对象模型时区分实体类、边界类和控制 类,将有助于理解系统。 • 实体类表示系统将跟踪的持久信息;边界类表示 参与者与系统之间的交互;控制类负责用例的实 现。其图形表示如图所示。
例:选课系统。给教师分配课程和学生注册课程。
在每个学期选课开始之前,系统管理员需要对系统中的教 师信息、课程信息和学生信息进行维护。学期结束后,将本 学期成绩归档到学籍档案系统。 学生登录系统后会得到一份本学期将要开设的课程目录。 每门课程包含的信息有开课系别、教师、上课时间、教室、 容纳的学生数量和学生选择课程的先决条件。 当学生选择了一门课程后,系统需访问学籍档案系统,查 询是否符合选课的先决条件 。如果不符合,系统给出提示信 息。 每个学期有一段时间让学生可以改变计划,学生可以在这 段时间内访问联机系统以增选课程或退选课程。
使用Rose创建用例模型
(2) 创建参与者与用例之间的关联关系 在图形工具栏上单击Association(双向关联)或 Unidirectional Association(单向关联)图标,在起始 actor上单击并拖动到use case上。 可以按下面的步骤给关联关系增加关系类型(构造型, stereotype):
Student——在学校注册上课的人; Teacher——学校授权上课的人; Administrator——系统认同的维护人员; Archive System——管理学生学籍档案的外部系统。
使用Rose创建用例模型
3. 在Rose中创建用例(Use Case) • 应该将用例放在Use cases包中,如果您的模型结 构中没有这样的包,则应该先创建包。 • 也可以将每个用例放在单独的包中,因此可以先 创建相应的包,再创建用例。 • 另外,在多个用例中使用的公共用例,如验证用 户(Validate User),可以放在一个单独的包中, 如可以在Use cases包中创建Included Use Cases 包来存放公共用例。
确定类与对象
1. 找出候选的类与对象
• 另一种更简单的非正式分析方法,是以自然语言书写的需 求陈述为依据,把陈述中的名词作为类与对象的候选者, 用形容词作为确定属性的线索,把动词作为服务(操作)的 候选者。 • 例如,在选课系统中,可以初步确定Teacher(教师)、 Student(学生)、Course(课程)、CourseTask(课程 任务,指一门课程划分为多个任务)、StudentList(学 生名册)、ScoreReport(成绩单)等类与对象。
使用Rose创建用例模型
3. 在Rose中创建用例(Use Case) 在Rose中创建用例的过程如下: (1) 在浏览器的相应包上单击鼠标右键,弹出菜 单显示; (2) 选择New: Use Case选项,则在浏览器中生 成名为NewUseCase的新用例; (3) 选中创建的新用例,键入设计的名字。 重复上面的步骤,直到将所有需要的用例都创建 完成。
• 添加了参与者与用例之间关系的用例图
使用Rose创建用例模型
(2) 创建用例之间的关系 • 用例之间主要主要有三种关系:包含(include)、使用 (use)、扩展(extend)。 • 在Rose中创建包含( include )关系的步骤如下:
① 在工具条上选择dependency图标; ② 在《包含》用例上单击,拖动到被《包 含》的用例上; ③ 双击dependency线,弹出 specification窗口; ④ 在stereotype下拉列表中选择 “include”,如图所示。 ⑤ 单击OK关闭specification窗口。
用例“选择课程”的规格说明
• 用例“选择课程”的规格说明
3. 创建用例图
• 用例图是若干个参与者和用例,以及它们间的关 系构成的图形表示。 • 每个系统通常都有一个总体视图(Global View of Actors and Use Cases),如果总体视图过于 复杂,则可以创建多个用例图,每个用例图关注 系统的某一方面。 • 通常是围绕参与者创建用例图。
1. 确定业务参与者
• 可通过以下资料来确定系统的参与者:
标识系统范围和边界的环境图; 现有系统(如果有的话)的文档和用户手册; 项目会议和研讨会的记录; 现有的需求文档、工作手册等。
1. 确定业务参与者
• 还可以通过提出以下问题,明确系统的参 与者:
谁或者什么为系统提供输入? 谁或者什么接收系统的输出? 需要与其他系统连接的接口吗? 是否存在在预定的时间自动触发的事件? 谁将维护系统中的信息?
使用Rose创建用例模型
4. 为用例增加文档描述 将用例的规格说明文档关联到 用例的方法如下:
(1) 在浏览器中的用例(如 “Register for a course”)上单 击鼠标右键弹出菜单; (2) 选择Specification菜单; (3) 选择Files标签页; (4) 单击右键弹出快捷菜单; (5) 选择Ins• 从选课系统的需求描述中,可以确定4类参与者: 学生(Student) 教师(Teacher) 系统管理员(Administrator) 学籍档案系统(Archive System)
2. 确定业务需求用例
• 以下问题可以帮助我们更好地标识系统的 用例:
• 对象模型的5个层次
Coad & Yourdon提出,复杂问题(大型系统)的对象模型应 该由下述5个层次组成:主题层(也称为范畴层)、类-对象 层、结构层、属性层和服务层,如图所示。
8.2 建立用例模型
• 建立用例模型的过程
(1) 确定业务参与者──标识目标系统将支持的不同 类型的用户,可以是人、事件或其他系统。 (2) 确定业务需求用例──参与者需要系统提供的完 整功能。 (3) 创建用例图──标识参与者与用例之间、用例与 用例之间的关系。
使用Rose创建用例模型
1. 在Rose中创建参与者(actors) 创建的角色应放在Use-Case Model包中的Actors包 中比较好,如果模型结构中没有这样的包,可以先 创建Actors包,之后按下面的步骤创建角色: (1) 在浏览器窗口中的Actors包上单击鼠标右键, 显示弹出菜单; (2) 选择New:Actor菜单选项,系统创建名为New Class的参与者; (3) 选中新创建的参与者,更名为设计的名字。
每个参与者的特定任务是什么? 是否每个参与者都要从系统中创建、存储、改变、 移动或读取信息? 是否任何参与者需要通知系统有关突发性的、外 部的改变? 哪些用例支持或维护系统? 目前的用例是否覆盖了所有功能需求?
2. 确定业务需求用例
• 环境图是分析参与者和发现潜在用例的极好来源, 它不仅可以用在结构化分析方法中,也可以用于 面向对象的分析方法中。 • 通过环境图,可以确定系统的主要输入输出,通 过提交和接收输入输出的各方确定潜在的用例。
确定关联
• 标识关联的启发式准则如下:
(1) 检查指示状态的动词或动词短语,识别动作的 主体和客体,从角色寻找关联; (2) 准确地命名关联和角色; (3) 尽量使用常用的修饰词标识出名字空间和关键 属性; (4) 应消除导出其他关联的关联; (5) 在一组关联被稳定之前先不必考虑实例之间的 多重性; (6) 过多的关联使得一个模型不可读。
使用Rose创建用例模型
4. 为用例增加文档描述
(6) 浏览目录列表选择要关联的 文件; (7) 单击打开按钮,系统将选择 的文件加到说明窗口中,如图 所示; (8) 单击OK按钮关闭 Specification窗口。
使用Rose创建用例模型
5. 创建用例图
在Rose中创建用例图的过程如下: (1) 加入参与者及用例 ① 在浏览器中的用例视图(Use Case View)中双击Main; ② 单击一个actor选中,并将其拖动到图中; ③ 重复步骤 ②,把每个需要的actor加入到图中; ④ 在浏览器中选择一个用例并把它拖到图中; ⑤ 重复步骤 ④ 把所有用例都拖到图中。
使用Rose创建用例模型
• 添加了包含关系的主用例图如图所示。
8.3 建立对象模型
• 在系统分析阶段,对象建模的主要任务是建立问 题域的概念模型。 • 这个模型描述了现实世界中的“类与对象”以及 它们之间的关系。
• 在UML中,通过建立类图来表示对象模型。
划分主题
• 在开发大型、复杂系统的过程中,为了降低复杂 程度,人们习惯于把系统再进一步划分成几个不 同的主题。 • 应该按问题领域而不是用功能分解方法来确定主 题。此外,应该按照使不同主题内的对象相互间 依赖和交互最少的原则来确定主题。 • 主题可以采用UML中的包来展现。
使用Rose创建用例模型
3. 在Rose中创建用例(Use Case)
使用Rose创建用例模型
4. 为用例增加文档描述
将每个用例的规格说明增加到Rose系统中。 例如,可以将选择课程的规格说明存放在一个单 独的Word文档“选择课程的规格说明.doc”中,并 将此文件作为附加文档添加到Rose中的 “Register for a course”用例下。
例:选课系统。给教师分配课程和学生注册课程。