第8章 用例分析

合集下载

Rational Rose建模第8章 协作图

Rational Rose建模第8章 协作图

使用Rose创建协作图
3. 创建链
在协作图中创建链的操作与在对象图中创建链的操作相同,可以 按照在对象图中创建链的方式进行创建。同样我们也可以在链的 规范对话框的“General”选项卡中设置链的名称、关联、角色以 General” 及可见性等。 链的可见性是指一个对象是否能够对另一个对象可见的机制。
练习题
(2)在“远程网络教学系统”中,如果我们单独抽象出来一个数据 访问类来进行数据访问。那么,根据系统管理员添加教师信息用 例,重新创建相关协作图,并与前一章中的序列图进行对比,指 出有什么不同?
在项目中创建协作图案例分析
3. 确定协作图元素
从已经描述的用例中,我们可以确定需要“教师” 从已经描述的用例中,我们可以确定需要“教师”、“学生”和“成绩”对象, 学生” 成绩” 我们还要一个提供教师与系统交互的场所,那么我们需要一个“用户界面” 我们还要一个提供教师与系统交互的场所,那么我们需要一个“用户界面”对象。 “用户界面”对象如果要获取“学生”和“成绩”对象的信息,那么我们还需要 用户界面”对象如果要获取“学生” 成绩” 一个用来访问数据库的对象。将这些对象列举到协作图中。
在项目中创建协作图案例分析
2. 需求分析 我们可以通过更加具体的描述来确定工作流程,基本工作流程如 下: (1)李老师希望通过系统查询某名学生的学科成绩。 (2)李老师通过用户界面录入学生的学号以及学科科目请求学生 信息。 (3)用户界面根据学生的学号向数据库访问层请求学生信息。 (4)数据库访问层根据学生的学号加载学生信息。 (5)数据库访问层根据学生信息和学科科目获取该名学生的分数 信息。 (6)数据库访问层将学生信息和分数信息提供给用户界面。 (7)用户界面将学生信息和分数信息示中,协作图 将类元角色表示为类的 符号(矩形),将关联 角色表现为实线的关联 路径,关联路径上带有 消息符号。 不带有消息的协作图标 明了交互作用发生的上 下文,而不表示交互。 它可以用来表示单一操 作的上下文,甚至可以 表示一个或一组类中所 有操作的上下文。如果 关联线上标有消息,图 形就可以表示一个交互。 典型的,一个交互用来 代表一个操作或者用例 的实现

软件工程 第八章 面向对象的设计方法

软件工程 第八章 面向对象的设计方法

第八章面向对象的设计方法本章采用基于UML的面向对象设计方法的将分析模型转换为设计模型。

如第五章所述,面向对象的分析模型主要由顶层架构图、用例与用例图、领域概念模型构成;设计模型则包含以包图表示的软件体系结构图、以交互图表示的用例实现图、完整精确的类图、针对复杂对象的状态图和用以描述流程化处理过程的活动图等。

为完成这一转换过程,设计人员必须处理以下任务:(1)针对分析模型中的用例,设计实现方案。

实现方案用UML交互图表示。

(2)设计技术支撑设施。

在大型软件项目中,往往需要一些技术支撑设施来帮助业务需求层面的类或子系统完成其功能。

这些设施本身并非业务需求的一部分,但却为多种业务需求的实现提供公共服务。

例如,数据的持久存储服务、安全控制服务和远程访问服务等。

在面向对象设计中,需要研究这些技术支撑设施的实现方式以及它们与业务需求层面的类及子系统之间的关系。

(3)设计用户界面。

(4)针对分析模型中的领域概念模型以及第(2)、(3)两个步骤引进的新类,完整、精确地确定每个类的属性和操作,并完整地标示类之间的关系。

此外,为了实现软件重用和强内聚、松耦合等软件设计原则,还可以对前面形成的类图进行各种微调,最终形成足以构成面向对象程序设计的基础和依据的详尽类图。

面向对象的软件设计过程如图8-1-1所示。

图8-1-1 面向对象的软件设计过程第一节设计用例实现方案UML 的交互图(顺序图、协作图)适于用例实现方案的表示。

因此,本节首先介绍交互图的语言机制,然后探讨用例实现方案的设计方法。

该设计方法包含如下3个步骤:(1)提取边界类、实体类和控制类;(2)构造交互图;(3)根据交互图精华类图。

一、顺序图顺序图用来描述对象之间动态的交互关系,着重表现对象间消息传递的时间顺序。

在顺序图中,参与交互的对象位于顶端的水平轴上,垂直轴表示时间,时间推移的方向是自上而下的。

顺序图中的对象一般以“对象名:类名”的方式标识,但也可以仅采用缩写形式“对象名”或者“:类名”。

软件测试 第2版 第8章 软件测试实战——黑马头条

软件测试 第2版 第8章 软件测试实战——黑马头条

章节概述/ Summary
第1~7章主要讲解了软件测试的基础知识,包括各种测试的概念、测试方法和 测试类型,为了巩固前面所学的知识,加深读者对软件测试技术和过程的理解, 本章将介绍软件测试实战——黑马头条项目的接口测试、Web自动化测试和性 能测试过程。
目录/Contents
01
项目简介
02
测试需求说明书
8.1 项目简介
在黑马头条项目中,登录功能是必不可少的一部分, 用户通过使用其账号和密码进 行身份验证,并获得对应的权限以访问系统。黑马头条项目的登录页面如下图所示。
8.2 测试需求说明书
8.2 测试需求说明书
先定一个小 目标!
了解测试需求说明书,能够描述测试需求说明书 的基本目录结构
8.2 测试需求说明书
通过JMeter工具完成PC端自媒体运营系统登录功能的性能测试,通过对登录功能进行长 时间的负载测试,并监控服务器资源使用率,寻找系统中可能存在的性能问题。
本章小结
本章小结
本章首先介绍了黑马头条项目的项目简介,然后介绍了测试需求说明书和项目测 试计划,最后介绍了项目测试过程。通过本章的学习,读者能够掌握使用 Postman工具进行接口测试、使用pytest框架编写自动化测试脚本和使用JMeter 工具进行性能测试。
第8章 软件测试实战——黑马头条项目
《软件测试(第2版)》
学习目标/Target
了解项目简介,能够描述黑马头条项目的用途 了解测试需求说明书,能够描述需求说明书的基本目录结构 了解项目测试计划,能够描述测试计划的基本目录结构 掌握项目测试过程,能够根据设计的测试用例执行接口测试、Web自动化测 试和性能测试
七、风险分析 1.风险来源 (1)产品设计 (2)开发方面 (3)测试方面 2.风险影响 3.风险处理 八、测试管理 1.文档管理 2.缺陷管理

第8章 虚位移原理2

第8章 虚位移原理2

=
1 2
Plδ
ϕ
2
Q δ r2 = δ rB

δ ′WPr2
=
r P2

δ
rrB
=
Pδ rB
δ ′WFrT′ = FrT′ ⋅δ rrB = −
2 2
FTδ
rB
(3)写出虚功方程
δ ′WPr1 + δ ′WPr2 + δ ′WPr3 + δ ′WFrT + δ ′WFrT′ = 0
1 2
Plδ ϕ1
•例
机构由六根长杆和两根短
杆 组 成 , 长 杆 长 2 a, 短 杆
长a,各杆之间用铰链相连
它在顶部受力P的作用,问
下部力Q的大小为多少才
能使系统处于平衡状态。
图中 θ 为已知角。
r Q
r P
A θ
θ
θ
B
C

r Q
解: 解析法
yA = 7a sinθ δ yA = 7a cosθδθ xC = a cosθ δ xC = −a sinθδθ xB = −a cosθ δ xB = a sinθδθ
(1)几何法:根据约束的几何关系(虚位移投影定理) ,找出各点虚位移之间的关系
(2)解析法:用广义坐标表示主动力作用点的坐标,然 后将广义坐标变分,求各点的虚位移
4. 列出虚功方程,并求解。
已知:曲柄处于水平位置。
求:平衡时的力偶M = ?
δ rB
解:一个自由度系统,取OA
转过的角度θ 为广义坐标。
当研究对象为有弹簧连接的刚体系统,或变形体时,式
中的主动力
r Fi
(i = 1,2,Ln)是全部作虚功的力,有内力也有

功能需求分析用例描述文档讲解

功能需求分析用例描述文档讲解

功能需求分析⽤例描述⽂档讲解XXX村村民交流互动⽹站系统设计⼩组成员:何成龙、陆承林黄元勇、王永亮胡荣启引⾔:在计算机技术飞速发展的今天,各类交流⽹站挤满了互联⽹,本设计⽴⾜于XXX村村民交流互动⽽设计⼀个交流⽹站,⽹站为村民提供交流服务,村民可以在⽹上通过发帖聊天交流⽣活琐事以及农事科技等。

第⼀章:功能性需求分析⼀、在本次设计中,“远程教育⽹站系统”包括以下功能模块:1、个⼈⼯作台2、在线浏览3、资料共享4、系统管理5、在线帮助⼆、功能描述1、个⼈⼯作台⽤户可通过个⼈⼯作台对个⼈信息进⾏注册和修改。

1.1、⽤户注册/登陆模块⽤户通过注册模块进⾏注册成为会员,登陆模块为会员完成⽤户登陆;1.2、修改信息在本模块⽤户可对已填信息进⾏完善和修改。

2、在线浏览在线浏览为会员和⾮会员提供阅读材料以及视频⽂件,可在线点播及阅读。

3、资料共享此功能仅为会员提供,⾮会员⽆权享受此功能。

会员通过此模块可下载所需内容以及上传⽂件。

4、系统管理4.1、后台管理专为⽹站管理员开设。

⽹站管理员通过此模块可对⽹站进⾏维护和管理。

4.2、⽹站数据库主动收集⽹站各类数据并及时更新。

4.3、信息管理系统仅为信息管理员提供,可以通过此模块对会员上传的⽂件进⾏审核和删除,以及对注册会员进⾏管理。

5、在线帮助5.1、联系我们⽤户通过此模块就⽹站存在的问题进⾏反馈。

6.功能描述⽂档:功能编号功能名称功能描述备注01 注册⽤户可以通过注册功能进⾏信息注册成为⽹站会员02 登录会员/信息管理员⽤户通过此登录进⾏登录⽹站,登录时会员选择“会员登录”进⾏登录,信息管理员选择“管理员”进⾏登录。

03 浏览⽹页⾮会员和会员享有的权⼒,⾮会员只能浏览不能留⾔以及下载上传⽂件。

04 个⼈中⼼⼀、会员个⼈中⼼包含以下内容模块:1.个⼈主页会员在个⼈主页⾥可以根据⾃⼰喜好设置主页属性;2.个⼈信息修改个⼈信息修改包括密码修改和基本信息修改;3.好友好友模块包含对好友的添加和删除功能,也可以对好友进⾏喊话;4.信息信息模块主要包含收发邮件,回复评论、留⾔;5.个⼈⽇志会员可以在此模块写⼼情⽇志,可对⽇志设置访问权限等;6.个⼈相册会员在此模块可以上传图⽚,图⽚格式为“JPG”;7.我的帖⼦在此模块可以查看⾃⼰已发表的帖⼦状态,以及对评论进⾏回复;8.个⼈元宝会员在此模块可以查看个⼈所拥有的元宝,元宝获取⽅式为每⽇登录基本奖励5个,连续登录⼀周奖励15个,发布帖⼦成功奖励2个,上传⽂件共享成功奖励3个,⽂件被下载获取元宝为下载所需元宝数。

第8章 面向对象分析-软件工程基础(第3版)-胡思康-清华大学出版社

第8章  面向对象分析-软件工程基础(第3版)-胡思康-清华大学出版社

第8章 面向对象分析
第 5 页5
面向对象分析概述
面向对象分析的3类模型
OOA模型由3类独立模型构成:功能模型、静态模型和动态模型。 ➢功能模型描述软件系统的用户交互和功能。 ➢静态模型描述软件系统中类与对象以及它们间的关系,也因也称 为对象模型。 ➢动态模型描述系统的控制结构,也称为交互模型。
第8章 面向对象分析
第 6 页6
面向对象分析概述

静态模型的5个层次 类-对象层
对象
Coad和Yourdon 提出,对于大型、复杂 性软件系统,需要建立 分析问题域的静态模型。 该模型由5个层次组成: 类-对象层、结构层、 属性层、服务层和主题 层。
结构层 属性层 服务层 主题层
泛化关系
关联关系
属性
对象连接
服务
消息连接
⑶ 用例描述:用文字信息详细描述用例的内容,它是对用 例的有益补充。
第8章 面向对象分析
第 8 页8
建立静态模型
➢用例模型分别从参与者和系统的角度描述用户需求, 依据用例模型导出静态模型。静态模型是面向对象建 模中最基本、最重要、最耗时的技术活动。 ➢静态建模的任务是构建问题域的概念模型,把问题 域中的实体转变为信息域的类与对象以及它们间的关 系,因此也被称为对象模型或领域模型。 ➢静态模型通过建立类图及关系来反映领域概念,而 面向对象设计也建立类图,但各阶段对类的抽象程度 不同。
第8章 面向对象分析
第 12 页12
建立动态模型
建立状态图
状态图描述的就是对象状态的转换过程。通过对对象状态 的分析,能够了解对象在系统流程中的变换,从而发现潜在的事 件和条件。
建立状态图的一般过程如下: ⑴ 了解系统的主要功能和性能,确定和它们有关的主要对象。 ⑵ 列出一个对象的生存期内的所有可能的状态。 ⑶ 确定对象状态改变时的触发条件或事件。 ⑷ 在一个对象中,选定一组与描述状态相关的行为属性和促使 改变状态的方法。 ⑸ 结合触发条件、事件、行为属性值改变的先后顺序,建立软 件系统的状态图。

19-面向对象分析

19-面向对象分析
• 如毕业设计题目与教师和学生存在关联,但题目 中不应定义“教师姓名”、“学号”之类的属性。
图书馆系统的第2张类图
图书管理员 职工号 姓名 读者 姓名 身份证号 借书卡号 借书限额 可用限额 图书目录 图书 馆藏流水号 状态 罚款细则
图书品种 书名 国际书号 作者 出版社 出版日期 简介 价格 馆藏数量 可借数量
分析模型与用例模型
用例:外观
类图:内部结构 交互图:内部行为
软件的基本组成——类
• 学习OOA,找到实现用例功能的类
:系统
:图书管理 员
Loop
输入读者借书卡 读者信息 输入书号 图书信息
: 图书管理 员 : 借书窗口
系统做了些什么 (事件流),谁 去做的(对象)?
: 读者 : 图书
1. 提供读者借书卡(号) 2. 验证读者身份 2.1. 取读者信息 2.2. 检查读者借书条件
不同类别的概念(续)
• 规格说明:系统中关于对象的规格信息的描述。
– 如图书品种,每种图书有一个唯一的馆藏号,同时该 图书还包含一些描述信息,如书号、价格、作者、出 版社等,多本图书对象共用这些规格说明。这是一种 经过了抽象的概念,应该识别为概念类。
• 业务规则或政策:系统中经常使用的业务规则或 政策的文字描述。
4、关联的导向性(Navigability)
• 角色的导向性特征表示可以通过关联从源类 导向到目标类上。也就是说给定关联一端的 对象就能够容易并直接地得到另一端的对象。 • 识别关联的导向可以推迟,与设计实现有关。 通常是源对象存储了对目标对象的一些引用
读者 Reader
1 登记 1..*
借书记录 Loan
属性的表示
借书记录 borrowDate:Date returnDate:Date

第8章 需求分析与验证

第8章   需求分析与验证
BillingSystem
汇总选课计划 Timer
8.1.1 顺序图—“制订选课计划”用例的顺序图
课程注册管理系统中“制订选课计划”用例的时序图 ScheduleManager TimeConflictChecker CourseOffering Schedule DataPersistenceService
前言(续)
需求分析的主要完成者是来自软件开发方的需求工程师, 其他参与者包括软件构架师和利益相关方,以及项目软件经 理和质量保证工程师。与需求获取类似,当待开发的软件是 更大系统的一部分时,系统工程师应在软件需求分析过程中 扮演客户或用户的部分角色。 需求分析活动是在需求获取的工作成果的基础上展开的, 其输入制品与需求获取活动的输出制品相同。在所有这些输 入制品中,用例模型最重要。 需求分析的输出制品主要是软件需求的分析模型,该模 型是需求规约的主要组成部分,同时也是后续软件设计、构 造和测试活动的工作基础。
第8章
需求分析与验证
前言
需求分析的任务是在需求获取的输出制品的基础上,获 得对软件需求更深入、更完整的理解,并且将软件需求表示 为面向软件设计人员、易于修改和维护的分析模型。 基于上一章所述的用例模型建立软件需求的分析模型是 需求分析活动的焦点。在用例模型已成的情形下为何还要构 建分析模型?理由有二:
图5-1
1:addCourseOfferings 如果计划已确认, 则报错返回 1.1:<<create>> 1.2:checkConflict 1.2.1:getCourseOfferings
课程注册管理系 统中“制订选课 计划”用例的顺 序图
1.2.2:*[对所有待添加的课程设置][对门已有的课程设置] checkTimerConflictBetween2CourseOfferings 获取当前计划中已有的 所有课程设置
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

边界类的表示方法
边界类在模型中有两种表示方法,如下 图所示。一种是构造性<<boundary>>的类 形式,另一种是图标形式。
<<boundary>> 边界类名称
边界类名称
图7-3:边界类的表示方法
2.控制类(Control)
控制类是用于封装一个或几个用例所特 有的流程控制行为,通过它可建立系统的 动态行为模型。它有效地分离了边界类对 象和实体类对象,使系统更能承受边界的 变更,它还将用例所特有的行为与实体类 对象分离,使得实体类对象在用例和系统 中具有更高的可复用性。
2.查看帖子的用例规约。 第1步:进入分组讨论区界面。 讨论区成员:选择进入相应的分组讨论区。 系统:将分组讨论区中信息全部显示出来。 第2步:查看帖子。 讨论区成员:选择需要查看的帖子。 系统:显示帖子的全部内容。
分析以上用例规约中存在的边界类、实 体类和控制类。
拓展练习 (1)根据“新增帖子”的用例描述,给出 “删除帖子”、“修改帖子”的用例描述。 (2)分析“删除帖子”、“修改帖子”中存 在的边界类、控制类和实体类。
: Student
扩展思考:时序图与协作图的比较
8.4 习题与练习
1.用哪种UML图可以表示对象的交互?他们的组成 元素都有哪些? 2.描述对象A和对象B之间“打电话”的时序图,并 将其转换为协作图。 3.选择一个系统(例如工资管理系统、飞机订票系统 或图书管理系统等),分别用OOA方法对它进行分析,并 给出分析模型。 4.根据以下用例图,分析储户在取款过程中存在的分 析类,并画出时序图和协作图。
边界类:表示参与者与系统之间的交互; 实体类:表示系统存储和管理的永久信息; 控制类:表示系统在运行过程中的业务控制逻辑。
这种划分的基本思想是将对象在系统中所承担 的行为按照其作用和变化影响程度进行分类,将 变化对系统结构的影响限制在一个相对明确的范 围内。
需求分析的过程
理解用例模型 识别实体类
1)实体类的识别质量很大程度上取决于分析人员书写 文档的风格和质量; 2)自然语言是不精确的,因此在分析自然语言描述时, 应该尽量使描述文档中的一些措辞规范化,以弥补这种不 足; 3)在自然语言描述中,名词可以对应类、属性或同义
词等多种类型。
8.2.5 用例分析示例
修改帖子
查看帖子
讨论区人员
回复帖子
控制类的特点:
独立于环境,不随环境的变更而变更; 确定用例中的控制逻辑和事务; 在实体类的内部结构或行为发生变更时, 也不会变更; 使用或规定若干实体类的内容,协调这些 实体类的行为; 可能按不同的流程或方式执行。
控制类的表示
控制类在模型中有两种表示方法,如下 图所示。一种是构造性<<control>>的类形 式,另一种是图标形式。
面向对象分析完成下列内容: 1)发现和定义系统存在的类。
2)识别分析类。
3)定义交互行为,即对象行为模型。
8.2 识别分析类
分析类的来源:用例规约
分析类的角度:
系统与角色的边界; 系统使用的信息; 系统的控制逻辑。
8.2.1 什么是分析类
在面向对象的分析中,类代表了一组对象所 共同拥有的属性和行为。在分析识别类中,根据 分析角度的不同,将分析类划分为边界类、实体 类和控制类。
<<entity>> 实体类名称
实体类名称
图7-5:实体类的表示方法
8.2.2 识别边界类
通常,一个参与者与一个用例之间的交互或者通信 对应一个边界类。边界类信息收集是从参与者的角度考虑, 而这些边界类信息将来可以被实体类和控制类所使用。下 图示意了边界类识别的基本方法,也就是在每一对“用 例—参与者”之间确定一个边界类。
学生
选课
课程目录系统
Student
Schedule
RegistrationController
CourseOffering
sd seq
:Student
:RegisterCourseForm
:RegistrationController :CourseCatalogSystem
:Schedule
:Student
8.2.4 识别实体类
实体类通常是用例中的参与对象,对应 着现实世界中的“事物”,识别实体类需 要开发人员进一步理解应用领域,可以通 过分析用例描述和词汇表等发现备选的实 体对象。
实体类的因素包括以下几点: 人员 组织 物品 设备 事件 表格
识别实体类应当注意的以下几个问题:
新增帖子
1.新增帖子的用例规约 第1步:进入分组讨论区界面。 讨论区成员:选择进入相应的分组讨论区。 系统:将分组讨论区中信息全部显示出来。 第2步:新增帖子。 讨论区成员:要求新增一条帖子信息。 系统:进入新增帖子界面。 第3步:填写帖子。 讨论区成员:填写帖子中的具体信息。 系统:显示输入的内容。 第4步:提交。 讨论区成员:提交填写好的讨论区。 系统:保存该讨论区到内部数据库。
<<control>> 控制类名称
控制类名称
图7-4:控制类的表示方法
3.实体类(Entity)
实体类是用于对必须存储的信息和相关 的行为建模,其主要职责是存储和管理系 统中的信息。它通常具有持久性,即他们 的属性和关系需要长期保存,有时甚至在 系统整个生命周期都存在。
实体类的表示
实体类在模型中有两种表示方法,如下 图所示。一种是构造性<<entity>>的类形式, 另一种是图标形式。
:CourseCatalog
1://create schedule()
2://get course offerings() 3://get course offerings(forSemester)
4://get course offerings() 5://display course offerings()
识别分析类
识别边界类
识别控制类 定义交互行为
评审分析模型 图7-2:需求分析过程
1.边界类(Boundary)
边界类是用于描述外部参与者与系统之间的交互。 一个系统可能有多种边界类: 用户界面类:用户和系统用户进行通信; 系统接口类:用户和其他软件系统进行通信; 设备接口类:为硬件设备提供接口。
8.3.1 时序图
以时间顺序显示对象交互的图,它显 示了参与交互的对象和所交换消息的顺序。 由于对象生存期的引入,时序图具有时间 顺序的概念,从而可以清晰地表示对象在 其生存期的某一时刻的动态行为。
1.时序图的组成
(1)对象 (2)生命线 (3)消息 (4)消息条件 (5)标号 (6)激活(控制期)
用户
用例
外部系统
用户界面 图7-6:识别边界类的示意图
外部系统接口
识别边界类应注意以下几个问题:
边界类应关注参与者与用例之间交互的信息或者响应的事件, 不要描述窗口组件等界面的组成元素; 在分析阶段,力求使用用户的术语描述界面;
边界类实例的生命周期不限于用例的事件流,如果两个用例同 时与一个参与者交互,那么它们很可能会一边共用一个边界类, 一边增加边界类的复用性。
8.2.3 识别控制类
控制类负责协调边界类和实体类,通常在现实世界中没有 对应的事物,它负责接受边界类的信息,并将其分发给实 体类。 控制类与用例存在着密切的关系,它在用例开始执行时创 建,在用例结束时取消。一般来说,一个用例对应一个控 制类,如下图所示。
用户
用例
外部系统
控制逻辑 图7-7:识别控制类的示意图
例3:绘制新增帖子的协作图。
例4:绘制学生选课的协作图。
sd seq 5://display course offerinngs() 6://display blank schedule
: CourseCatalog
(from Actors)
4://get course offerings()
识别控制类应当注意以下几个问题:
当用例比较复杂时,特别是在产生分支事件流的情况 下,一个用例可以有多个控制类; 在有些情况下,用例事件流的逻辑结构十分简单,这 时没有必要使用控制类,边界类可以实现用例的行为; 不同用例包含的任务之间存在着比较密切的联系,则 这些用例可以使用一个控制类,其目的是复用相似部 分以降低复杂性。
6://display blank schedule()
7://select 4 primary and 2 alternate offerings()
8://create schedule with offerings()
9://create with offerings()
10://add schedule(Schedule)
:RegisterForCourseForm
1://create schedule() 7://select 4 primary and 2 alternate offerings()
2://get course () 8://create schedule with offerings()
(from Actors)
(from Actors)
8.3.2 协作图
协作图是表示角色间交互的图,主要用 来描述对象间的交互关系。协作图是一种 基于结构的表示交互的方法,强调参加交 互的对象的组织。
1.协作图的组成
(1)对象 (2)链 (3)消息
2.协作图的生成
协作图使用对象图作为基础,产生一张 协作图,首先要将参加交互的对象作为图 的顶点;然后,把链接这些对象的链表示 为图的弧;最后,用对象发送和接收的消 息来修饰这些链,这就提供了在协作对象 的结构组织的语境中观察控制流的一个清 晰的可视化轨迹。
相关文档
最新文档