软件工程 第10章:关系分析

合集下载

《软件工程》第10章 软件维护

《软件工程》第10章 软件维护

北京大学远程教育课程
Software Engineering_Chapter10-2
问题定义
计划 时期 可行性论证 及软件计划
需求分析
概要设计 开发 时期
详细设计Байду номын сангаас
编码
测试 运行时期 运行/维护
北京大学远程教育课程
Software Engineering_Chapter10-3
本章主要内容
• 10.1 软件维护的定义,目标与任务 • 10.2 软件维护的类型 • 10.3 软件的可维护性
北京大学远程教育课程
Software Engineering_Chapter10-13
10.2.1 改正性维护(续)
• 实践表明,软件测试和排错不可能完全暴露并改正一个大 型软件系统中的所有错误。 • 经过统计分析,在典型的市场销售的软件包中,还有缺陷 的代码行约占代码总行数的3%。正式投入使用的软件中 含有错误是不足为奇的,即使是已运行多年的软件。 • 改正性维护举例:
北京大学远程教育课程
Software Engineering_Chapter10-6
10.1.3 软件维护的任务
• 一个软件开发机构60%的精力用在维护现有的软件上。随 着产品的增加,这个比例还将不断提高。不仅当前的软件 版本要维护,仍在使用的旧版本和即将投入使用的新版本 也将需要维护。 • 在软件整个运行周期中,不仅要解决原有问题,还要解决 修改过程中产生的新问题。因此软件维护是一个无穷尽的 过程。
Software Engineering_Chapter10-18
10.2.4 预防性维护
• 维护人员不要单纯等待用户提出维护的请求,而应该选择 那些还能使用数年、目前虽能运行,但不久就须作重大修 改或加强的软件,进行预先的维护。预防性维护可以改善 软件的可维护性,减少今后对它们维护时所需要的工作量。

计算机科学与技术专业课课件_软件工程SE_Chapter10

计算机科学与技术专业课课件_软件工程SE_Chapter10

拥有银行账户的储户有权申请领取现金兑换卡。使用现金兑换卡可以通过 ATM访问自己的账户。目前仅限于用现金兑换卡在ATM上提取现金(即取 款),或查询有关自己账户的信息(例如,某个指定账户上的余额)。将 来可能还要求使用ATM办理转账、存款等事务。
2013-8-31
上海大学计算机学院
7
ATM系统的需求陈述
择事务类型(取款、查询等)。当用户选择取款时,ATM请求用户输 入取款额。最后,ATM从现金出口吐出现金,并且打印出账单交给用 户。
2013-8-31
上海大学计算机学院
8
建立对象模型
◆面向对象分析首要的工作,是建立问题域的对象 模型。 ◆对象模型描述了现实世界中的“类-&-对象”以 及它们之间的关系,表示了目标系统的静态数据 结构。
上海大学计算机学院
12
候选类—&—对象
银行,自动取款机(ATM),系统,中央计算机,分行计算机, 柜员终端,网络,总行,市,街道,分行,营业厅,储蓄所, 软件,成本,柜员,储户,现金,支票, 账户, 事务,现金兑 换卡,余额,磁卡,分行代码,卡号,副本,访问,用户,信息, 密码,类型,取款额,账单。
●找出所有候选的类-&-对象; ●筛选候选的类-&-对象。
2013-8-31
上海大学计算机学院
11
找出候选的类-&-对象
◆ 非正式分析方法
● 以用自然语言书写的需求陈述为依据,把陈述中的
1) 名词作为类-&-对象的候选者, 2) 形容词作为确定属性的线索, 3) 动词作为服务(操作)的候选者。
2013-8-31
去除冗余
银行,ATM,中央计算机,分行计算机,柜员终端,网络,总行, 市,街道,分行,营业厅,储蓄所,软件,成本,柜员,储户,现 金,支票, 账户,事务,现金兑换卡,余额,分行代码,卡号, 访问,信息, 密码,类型,取款额,账单,通信链路,事务 日志。

关系分析ppt课件

关系分析ppt课件
处理消息的进程或线程已经存在,并且与发送者 同步地接收消息
某些消息所指出的接收者可能并不关心这种消息 接收者异地接收和处理消息
10.4 消息连接
5. 消息的接收者是否其他
定向消息
消息定向地发送给其他接受者
广播消息
消息发送给某个范围内所有的可能的接受者
10.4 消息连接
OOA方法,应该识别和表示的主要问题
class3
m1
1
class2
n
10.3 实例连接
三元关联
三类对象之间的联系 如,在“人员”、“项目”和“语言”三类对
象之间可能需要表达这样的关系
“某人员使用某种语言从事某个项目”
class1
class2
class3
第10章 关系分析
1 整体-部分结构 2 一般-特殊结构 3 实例连接 4 消息连接
个对象的依赖关系 对象实例间的一种二元关系 两类对象之间不带属性的实例连接
在具有实例连接关系的类之间画一条连接线将它们 连接起来
连接线的旁边给出表明其意义的连接名 在连接线的两端用数字标明其多重性
10.3 实例连接
实例连接与整体-部分分结构的异同
相同点
都是对象实例间的一种静态关系 都是通过对象的属性来体现的
软件工程
第10章 关系分析
1 整体-部分结构 2 一般-特殊结构 3 实例连接 4 消息连接
对象类与10外.1部的整关体系-部分结构
1. 聚合关系对象之间的整体-部分关系 2. 继承关系:对象类之间的一般-特殊关系 3. 对象之间的静态联系:通对象属性反映的
联系 4. 对象之间的动态联系:对象行为之间的依
不同点
实例连接中的对象之间分不出谁是整体、谁是部分 整体-部分分结构中的对象在实现世界中含有明显的

软件工程第10章 面向对象分析

软件工程第10章 面向对象分析

10.1 面向对象分析的基本过程
10.1.1.概述
面向对象分析,就是抽取和整理用户需求并建立问题域 精确模型的过程。 面向对象分析过程从分析陈述用户需求的文件开始。 接下来,系统分析员应该深入理解用户需求,抽象出目
标系统的本质属性,并用模型准确地表示出来。 在面向对象建模的过程中,系统分析员必须认真向领域
首先,面向对象分析通过控制读者能见到的层次数目 来控制可见性。
其次,面向对象分析增加了一个主题层,它可以从一 个相当高的层次描述总体模型,并对读者的注意力加 以指导。
10.1 面向对象分析的基本过程
在概念上可以认为,面向对象分析大体上按照下列顺 序进行:
寻找类与对象,识别结构,识别主题,定义属性, 建立动态模型,建立功能模型,定义服务。 但是,分析不可能严格地按照预定顺序进行,大型、 复杂系统的模型需要反复构造多遍才能建成。 分析也不是一个机械的过程。系统分析员必须与领域 专家及用户反复交流,以便澄清二义性,改正错误的 概念,补足缺少的信息。
主要内容
10.1 面向对象分析的基本过程 10.2 需求陈述 10.3 建立对象模型 10.4 建立动态模型 10.5 建立功能模型 10.6 定义服务
10.2 需求陈述
10.2.1. 书写要点
需求陈述应该阐明“做什么”而不是“怎样做”!
应该描述用户的需求而不是提出解决问题的方法。 应该指出哪些是系统必要的性质,哪些是任选的性质。 应该避免对设计策略施加过多的约束,也不要描述系
10.3 建立对象模型
10.3.1. 确定类与对象
类与对象是在问题域中客观存在的,系统分析员的主 要任务就是通过分析找出这些类与对象。 首先找出所有候选的类与对象; 然后从候选的类与对象中筛选掉不正确的或不必

《软件工程》课件第10章 面向对象的Coad方法

《软件工程》课件第10章 面向对象的Coad方法
(2) 对象层:在分析范围内找出全部的对象。 (3) 结构层:分析类的分类结构和组装结构。 (4) 属性层:描述每个对象的状态特征。 (5) 服务层:描述每个对象所具有的操作。
第10章 面向对象的Coad方法
3. 设计模型 Coad方法中,面向对象设计模型在面向对象的分 析模型的5个层次上由4个组元构成,如图10.1所示。
第10章 面向对象的Coad方法
从根本上统一思维模式的办法是在系统开发各个 环节中,统一采用人类原有的思维组织模式。人类典 型的思维过程是由三部分来进行组织的,即从现实世 界中区分出特定的客体及其属性;对客体的整体和组 成部分加以区分;对不同种类的客体给出表示,在此 基础上加以区分。面向对象的分析方法就建立在这3个 来自人类自己思维组织模式之上,依照客观世界本来 的规律来开发应用系统。
第10章 面向对象的Coad方法
3. 继承 继承是面向对象设计的另一种基本设计原则。 继承用来表示类之间相似性的一种机制,它简化 了与已定义过的相似类的定义,描述了一般和具体化 关系,在类层次结构和类网络结构中明确地说明了共 同的属性和服务。 这个原则构成了显式表达共同性的重要技术和基 础,继承能使设计者一次确定共同的属性和服务,同 时将这些属性和服务扩展到或限制到具体的实例中, 继承也可用于显示表示共同性。
第10章 面向对象的Coad方法 图10.4 分类结构的符号表示
第10章 面向对象的Coad方法
3) 组装结构 组装结构也是3种系统组织方法之一,它是“has a” 结构。例如,台灯有一个电灯泡,则台灯和电灯泡就是 这种结构的例子。台灯是整体,而电灯泡则是台灯的组 成部分之一。组装结构的表示如图10.5所示。整体类放 在图的顶部,部分类放在图的下端,用线把它们连起来, 用三角形表示这是一个组装结构的形式。连线上的数字 和范围表示了整体所包含的部分的数目。

软件工程 第10章 面向对象的方法

软件工程 第10章 面向对象的方法

第10章例题分析与解答作者:不详来源:2006年9月4日发表评论进入社区一、填空题1.面向对象方法认为系统是由应用域的___对象___组成。

2.对象具有状态,描述对象的状态用它的_属性值_____。

3.对象的抽象是_类_____。

4.类之间有两种结构关系,它们是分类关系和__组装____关系。

5.面向对象程序设计语言与其他程序设计语言的最主要差别是它具有_继承性_____。

6.动态模型描述了系统的__动态行为____。

二、选择题1.火车是一种陆上交通工具,火车和陆上交通工具之间的关系是( D)关系。

A.组装B.整体成员C.has aD.一般具体2.面向对象分析阶段建立的三个模型中,核心的模型是( C )模型。

A.功能B.动态C.对象D.分析3.对象模型的描述工具是( C)。

A.状态图B.数据流图C.对象图D.结构图4.在有多重继承的类层次结构中,它的类层次结构是(B )层次结构。

A.树型B.网状型C.环型D.星型5.描述类中对象的行为,反映了状态与事件关系的是( B )。

A.对象图B.状态图C.流程图D.结构图6.在确定属性时,所有( C)是候选的属性。

A.动词B.名词C.修饰性名词词组D.词组三、应用题1.建立窗口系统的对象模型。

问题陈述如下:窗口分为对话窗、图形窗、滚动窗三种;对话窗中有若干对话项,由唯一的项名字来确定,对话项分为按钮、选择项、正文项三种,选择项中有若干对话项入口;图形窗中有若干形状元素,形状元素分为一维形状和二维形状,一维形状又分为直线、圆弧、折线;二维形状分为圆、椭圆、矩形、多边形,其中多边形和折线由若干有序顶点组成,正文窗是滚动窗的一种,而图形滚动窗既是一种图形窗又是一种滚动窗。

2.在学校教学管理系统中,学生查询成绩就是系统中的一次交互,请用状态图来描述这种查询的交互行为。

答案:一、填空题1.对象2.属性值3.类4.组装5.继承性6.动态行为二、选择题1.D2.C3.C4.B5.B6.C三、应用题1.2.第10章自测题及参考答案作者:不详来源:2006年9月1日发表评论进入社区一、名词解释1.对象2.类3.属性4.操作5.消息6.消息传递7.方法8.关系9.关联10.一般具体关系 11.整体部分关系12.继承13.单重继承 14.多重继承15.多态性 16.角色17.受限关联 18.封装19.对象模型20.动态模型21.功能模型 22.事件23.状态24.事件追踪25.状态图26.动作27.活动28.处理29.数据流30.动作对象31.数据存储对象 32.重用性二、填空题1.对象具有封装性,实现了__数据与操作____的结合。

第10章软件工程标准化及软件

第10章软件工程标准化及软件

软件工程标准化
1、软件工程功能标准框架
⑥数据:包括判定表规范、文档编制符号和约定、程序结构 和约定及其表示、计算机系统配置图符号和约定、软件状态转换 的人际通信的表示、基于计算机的应用系统的文档编制指南、软 件生存周期过程信息产品的内容指南、软件工程数据定义和交换 及高级Petri网等。
2、基于软件生存周期过程的软件工程路径框架
(11)开发进度月报
(6)详细设计说明书
(12)项目开发总结报告
(13)维护修改建议
软件文档
4、软件文档的编制要求
高质量的文档应当体现在以下几个方面: 准确、简明、完整、 灵活、有针对性、可追溯性。 为了能够编写出高质量的文档,应注意以下一些问题:
(1)应根据具体的软件开发项目,决定编制的文档种类。 (2)当所开发的软件系统非常大时,一种文档可以分成几卷编写。 (3)应根据任务的规模、复杂性,确定文档的详细程度。 (4)对国标中所建议的所有条款都可以扩展,以适应需要。 (5)程序的设计可采用多种表现形式。 (6) 文档的表现可以使用自然语言、也可以使用形式化的语言。 (7)当可以建立一些特殊的文档种类要求。
④技术:技术标准的框架以及相关国际标准如图10-7。包括 软件产品评价、软件过程评估、软件可信性、科技系统功能安全 的风险分析、功能人员和材料资源:包括TR15504-6:《软件过程评估第6 部分:评估员资格指南》和《计划中的对于知识软件工程体指南 的快速批准》。
(4) 质量保证标准(ISO9001~ISO9003)之间及其 与质量管理标准(ISO9004-1)的关系
①ISO9001、9002、9003质量保证标准之间的关系 从用途上看,它们各自独立,但它们内在有着紧密的关
系。ISO9003是最终检验和试验质量保证模式,含16项体系 要素,是三者中要求提供证据最少的质量保证模式; ISO9002是生产、安装和服务的质量保证模式,含19项体系 要素,ISO9002包容了ISO9003的要素;ISO9001是设计、 开发、生产、安装和服务的质量保证模式,含20项体系要 素,ISO9001包容了ISO9002的要素。

软件工程简答题答案 第五版

软件工程简答题答案 第五版

软件工程简答题第一章绪论1.什么是软件危机?软件危机有什么表现?软件危机产生的原因是什么?答:所谓软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

主要是指如何开发软件,怎样满足对软件日益增长的需求,如何维护数量不断膨胀的先有软件。

表现:(1)对于软件开发的成本和进度的估计很不准确。

(2)开发的软件产品不能完全满足用户要求,用户对已完成的软件系统不满意的现象常常发生。

(3)开发的软件可靠性差。

(4)软件通常没有适当的文档资料。

(5)软件的可维护性差。

(6)软件开发生产率提高的速度,远远跟不上计算机应用普及深入的趋势。

原因:软件开发中遇到的问题因找不到解决的办法,使问题积累起来,形成了尖锐的矛盾,导致了软件危机。

2.简述软件的发展过程。

答:软件生产的发展划分为三个年代:(1)程序设计时代:这一时期,软件的生产主要是个体手工劳动的生产方式。

(2)程序系统时代:由于计算机的应用领域不断扩大,软件的需求也不断增长,软件由于处理的问题域扩大而使程序变得复杂,设计者不得不由个体手工劳动组成小集团合作,形成作坊式生产方式小集团合作生产的程序系统时代。

(3)软件工程时代:软件工程时代的生产方式是采用工程的概念、原理、技术和方法,使用数据库、开发工具、开发环境、网络、分布式、面向对象技术来开发软件。

3.什么叫软件工程?软件工程是如何克服软件危机的?答:软件工程是将系统的、规范的、可度量的工程化方法应用于软件开发、运行和维护的全过程及上述方法的研究。

为了克服软件危机,人们从其他产业的工程化生产得到启示,采用工程的概念、原理、技术和方法来开发和维护软件。

4.软件工程的目标是什么?软件工程有哪些原则?答:软件工程的目标是:在给定成本、进度的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性并满足用户需求的软件产品。

原则如下:抽象、模块化、信息隐藏、局部化、完整性、一致性和可验证性。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2019/1/20
广东工业大学计算机学院
20
10.1.8 调整对象层和属性层

对于每个整体-部分分关系,整体对象中要增加一 个属性来表明它的部分对象。在该属性的详细说明 中要给出这个属性的数据类型。如果是紧密的结构, 用部分对象的类作为其数据类型;如果是松散的结 构,用对象指针或对象标识作为其数据类型。
广东工业大学计算机学院
29
10.2.5 多继承及多态性问题


按照问题域和系统实际要求,如果类之间的关系是 多继承的,则应该建立多继承的一般-特殊结构。 OOA模型应该如实地映射问题域,所以在OOA中 暂不考虑实现条件,按问题域和系统责任的原貌建 立结构,到OOD时再根据具体的实现条件作必要 的调整。
2019/1/20
广东工业大学计算机学院
30

图10-7是一个多继承结构的例子
人员
名字
学生老师 来自人员类 来自学生类 名字 ...... 学号 ...... 所教课程 ...... ...... 老师学生类中定义 ......
..... ......
学生
老师
学号 专业
Hale Waihona Puke ..... ......所教课程 专业
2019/1/20
广东工业大学计算机学院
15
10.1.6 支持软件复用


在整体-部分分结构中通过组装而支持软件 复用是OO方法颇受重视的优点之一。在以 下两种情况下都可以运用整体-部分分结构 而实现或支持复用。 一种情况是在两个或更多的对象类中都有一 组属性和服务描述这些对象的一个相同的组 成部分。
2019/1/20
广东工业大学计算机学院
21
10.2 一般-特殊结构

10.2.1 一般-特殊结构及其用途 一般-特殊结构是由一组具有一般-特殊关系(继承 关系)的类所组成的结构。以两种方式给出了一般 类和特殊类的定义,从类的特征来看:如果类A具 有类B的全部属性和全部服务,而且具有自己特有 的某些属性或服务,则A叫作B的特殊类,B叫做A 的一般类。从类集合的元素来看:如果类A的全部 对象都是类B的对象,而且类B中存在不属于类A 的对象,则A是B的特殊类,B是A的一般类。这两 种定义本质上说是等价的。
2019/1/20 广东工业大学计算机学院 19


缺陷:对象反复删除/加入;二是不变化的属性, 要把旧对象中的信息复制到新对象中;三是概念一 个对象仅因一些特征变化,就让它全部变化。 2. 表示数量不定的组成部分 一个对象中若含有某种数量不定而内容相同的组成 部分,则会给实现带来困难。例如“书”这种对 象]
24
图10-6 一般-特殊结构连接
一般类
一般类
特殊类 特殊类 特殊类
特殊类
- 特殊结构连接符 ( a) 一 般 -- 特殊结构 (b)完 整 的 一 般 --
2019/1/20
广东工业大学计算机学院
25
10.2.3 如何发现一般-特殊结构



1. 按常识考虑事物的分类 问题域现行的分类方法往往比较正确地反映了事物 的特征、类别以及各种概念的一般性与特殊性。 2. 学习问题域的分类学知识 问题域现行的分类方法往往比较正确地反映了事物 的特征、类别以及各种概念的一般性与特殊性。 3. 按照一般-特殊结构的定义分析 按照一般-特殊结构的两种定义,引导两种思路。 一是把每个类看作一个对象集合,分析集合间的包 含关系。二是看一个类是不是具有另一个类的全部 特征。

一般-特殊结构的表示法,是用一般-特殊结构连接 符来连接该结构中的每个类,如图10-6所示。其 中图10-6(a)是一般-特殊结构连接符,从圆弧 引出的连线连接到一般类,从直线分出的连线连接 到每个特殊类。图10-6(b)是一个完整的一般特殊结构,它包括结构中的每个类。
2019/1/20
广东工业大学计算机学院
2019/1/20
广东工业大学计算机学院
11



问题域中事物之间的组成关系表现为多种方式。从 多种方式考虑事物之间的组成情况是发现整体-部 分分结构的基本策略。考虑以下几个方面: 1. 组织机构和它的下级组织及部分 2. 物理上的整体事物和它的组织部分 3. 组织与成员 4. 抽象事物的整体与部分 5. 一种事物在空间上包容其他事物 6. 具体事物和它的某个抽象方面
广东工业大学计算机学院
4

图10-1 整体-部分分结构的方式
部 分 对 象 整 体 对 象
整 体 对 象
整体对象
部 分 对 象 部 分 对 象 部 分 对 象
(a)对 象 指 针 或 对 象 标 识
嵌套对象 (b)镶 套对象
2019/1/20
广东工业大学计算机学院
5



2019/1/20
广东工业大学计算机学院
9

图10-2 组合关系的图形
整体
1 m 部分1
n m 部分2
2019/1/20
广东工业大学计算机学院
10
10.1.3 如何发现整体-部分分结构

整体-部分分结构可以清晰地表达问题域中 事物之间的组成关系,同时它又是一种用途 更为广泛的系统构造手段。这里讨论如何从 问题域发现整体-部分分结构。
2019/1/20
广东工业大学计算机学院
16

另一种情况是系统中已经定义了某类对象, 在定义其他对象时,发现其中一组属性和服 务与这个已定义的对象是相同的,那就不必 再重复地定义这些属性与服务,只需建立它 与前一类对象之间的整体-部分分结构。
2019/1/20
广东工业大学计算机学院
17

例如,在一个机械加工厂的生产管理系统中,各种 机床、起重机和电动送料车等对象类中都有一组属 性和服务,描述这些对象中所装配的电动机。
2019/1/20
广东工业大学计算机学院
13



2. 是否属于问题域 整体-部分结构中的整体对象和部分对象都应该属 于当前的问题域,否则就不需要这个结构。 3. 是否有明显的整体-部分分关系 如果两个对象之间不能明显地分出谁是部分、谁是 整体,则不应该用整体-部分结构表示。 4. 部分对象是否有一个以上的属性 如果部分对象只有一个属性,应考虑把它取消,合 并到整体对象中去,变为整体对象的一个属性即可。
2019/1/20 广东工业大学计算机学院 12
10.1.4 审查与筛选


按10.1.3节所说的策略可以发现许多候选 的整体-部分分结构,但仍然需要进行审查 与筛选,可以从以下几方面考虑其是否需要: 1. 是不是系统责任的需要仅当结构中的整体
对象和部分对象都是系统责任需要的,并且两者之 间的整体-部分关系也是系统责任要求表达的,才 有必要建立这个结构
27
10.2.4 审查与调整


1. 是否符合分类学的常识 一般-特殊结构中各个类之间的关系应该符合分类 学的常识和人类的日常思维方式。检查方法是用 “is-a-kind-of”关系来衡量每一对一般类与特殊 类。 2. 系统责任是否需要这样的分类 在一个候选的一般-特殊结构中,特殊类与特殊类 以及一般类与特殊类之间,虽然从概念上讲是有所 区别的,但是系统责任却未必要求做出这样的区别。
广东工业大学计算机学院
8

10.1.2 表示法 图10-2是表示组合关系的图形符号。图中 上部是一个整体对象,下部是组成该组合关 系的方向:从三角形顶角引出的线指向整体 对角。三角形标记表明组合关系的方向:从 三角形顶角引出的线指向整体对象,从三角 形底边中点画出的线连到部分对象。通常, 把整体对象画在图的上部而把部分对象放在 下部,这样安排有助于模型的理解。
实现方法: class A { public: class B //定义在类A中的类 { public: …
2019/1/20
广东工业大学计算机学院
6

private:


… } void f(); private : int a;
}
2019/1/20
广东工业大学计算机学院
7
2019/1/20

2019/1/20
广东工业大学计算机学院
18
10.1.7 整体-部分分结构的进一步运用



整体-部分分结构是一种表达能力很强的系统构造 手段,还可以把它作为一种改进系统构造和解决某 些棘手问题的有效手段。 1. 表示动态变化的对象特征 对象的某些属性与服务在系统的运行和演化过程中 发生动态的变化。例如:系统中的“人员”对象。 在系统运行中随着时间的推移人员身份在发生变 化。 一般解决办法是删除旧的对象而用另一个类创建一 个新对象。
2019/1/20 广东工业大学计算机学院 22

一般类的特征集合则是特殊类集合的真子集;而特 殊类的对象实例集合是一般类对象实例集合的真子 集,如图10-5所示。
特征集合 对象实例集合 一般类的 特征 特殊类的特征 特殊类 一般类
2019/1/20
广东工业大学计算机学院
23
10.2.2 表示法
2019/1/20 广东工业大学计算机学院 26


4. 考察类的属性与服务 考察:一看一个类的属性服务是否适合这个类的全 部对象。另一方面检查是否有两个类含有一些共同 的属性的服务。 5. 考虑领域范围内的复用 可是考虑到它在同一个领域的可复用性。
2019/1/20
广东工业大学计算机学院
2019/1/20 广东工业大学计算机学院 3


10.1 整体-部分结构 整体 - 部分分关系反映了对象之间的构成关 系,它也称为聚集关系。 10.1.1 整体-部分结构及其用途 用于描述系统中各类对象之间的组成关系, 通过它可以看出某个类的对象以另外一些类 的对象作为其组成部分。
相关文档
最新文档