面向对象分析与设计技术

上传人:tia****nde 文档编号:68263062 上传时间:2019-01-10 格式:PPT 页数:39 大小:555.90KB
返回 下载 相关 举报
面向对象分析与设计技术_第1页
第1页 / 共39页
面向对象分析与设计技术_第2页
第2页 / 共39页
面向对象分析与设计技术_第3页
第3页 / 共39页
面向对象分析与设计技术_第4页
第4页 / 共39页
面向对象分析与设计技术_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《面向对象分析与设计技术》由会员分享,可在线阅读,更多相关《面向对象分析与设计技术(39页珍藏版)》请在金锄头文库上搜索。

1、第四讲 面向对象分析与设计技术,4.1 概念模型 4.2 用面向对象方法建立 概念模型 4.3 面向对象设计的软件 生命周期 4.4 面向对象设计的方法,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,4.1.1 建立概念模型的动机,程序设计者必须清楚用户需求,才能设计出 易于使用和维护的大型信息系统。程序设计者 在设计过程中遇到的困难主要有以下几点:,缺乏对信息系统应用领域的了解; 不同的专业人员对同一概念的理解不同; 需求分析的结果很难被全体用户一致确认; 过早地进入信息系统实现阶段。,上述困难迫切需要某种工具

2、帮助实现程序设计者和用户之间的充分交流,并达成一致,概念模型就是这样一种工具。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,4.1.2 概念之间的关系,概念的定义:是对实体属性的抽象和概括。,概念的静态联系有三种形式:,(1)属性关系:即一个实体概念是另一个实体概念的属性。 (2)层次关系:即一个实体概念是另一个实体概念的上位概 念。 (3)并列关系:有两个实体概念都是同一实体概念的下位概 念,但这两个实体概念的外延不相交 。,概念的动态联系:由行为概念反映出来。,这种行为概念是行为的客体概念、主体概念、结果概

3、 念的联系纽带,又可以作为客体概念和主体概念的属性。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,4.1.3 信息系统的概念模型,概念模型的含义:程序设计者和用户对系统所涉 及的客观事物及其关系的理解,表现为一组相互 关联的概念。它是由一组概念通过各种概念间关 系构成的概念体系,抽象地描述了信息系统对象 的结构和行为两方面的特征和关系。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,构造概念模型的建模方法:“实体联系 法” (E-

4、R图法),三种基本符号:,长方形:表示实体集(类),在方框内写上该实体集的名 称(类名)。,学 生,课 程,椭圆形:表示属性,在椭圆中写上属性的名称。,菱形:表示关系,在菱形中写上关系的名称。,E-R图法的缺陷:只能表示概念之间的静态关系;无法表示概念之间的动态关系,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,概念模型的作用:,作为公共参考框架,帮助设计者和用户在系 统分析阶段进行充分交流。 帮助设计者理解信息系统的应用领域以及用 户需求。 作为数据模型的设计依据,也可用于检验和 评价系统设计。 作为文档的一部

5、分,在维护阶段有利于系统 的修改和扩充。 帮助用户从整体上理解和认识信息系统。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,面向对象方法是构造概念模型的方法 之一。与E-R图法相比,面向对象方法不 仅能够描述概念之间的静态关系,而且 能够描述概念之间的动态关系。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,4.2.1 识别对象和类,建立信息系统的基本思路:分析信息系统将取 代哪些人类活动,这些活动涉及到的具体事物、 具体过程和具

6、体规则。,识别对象首先要弄清信息系统拟解决问题涉及的 具体事物。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,按事物的存在,可将事物可以分为五类:,有形物:指的是看得见摸得着的东西。当拟解决问题确定 后,很容易找出与该问题相关的”有形物“。如人、药等。 角色:人或组织机构所扮演的角色。角色之间存在着紧密 联系。只要找出一个角色对象,就很容易找出一组相关的 角色对象。如”医生“、”病人“。 事件:事件对象表示发生的事件。如”出诊“”吃药“。 交互:交互对象具有”交易“或者”订合同“的性质,通常能将 多个对象联系起

7、来。如”购买“将售货员、顾客和商品联系 到一起。 规范:规范对象具有”标准“或”定义“的性质,例如产品的技 术指标和学校的专业培养目标都是规范。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,按照面向对象的观点,可以区分三类对象:,客观存在物:这一类对象包括有形物和角色对象,在面向对象系统中它体现问题的结构特性。 行为:这一类对象包括事件对象和交互对象。识别行为是识别对象的一部分,行为是信赖于对象的。在面向对象系统中它体现问题的行为特性。 概念:观察现实世界与获取应用领域知识是分不开的,在现实世界中,人的活动必然

8、关联了一系列的客观存在物和它们的行为,并且这种关联通常是有规律的。概念就是他们交流各领域知识的工具,是识别对象时的一类认识和分析对象。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,4.2.2 对象之间的通讯,对象之间的通讯是借助于消息完成的。,向一个对象发送消息就是调用该对象的某个 成员函数。一条消息就是一次函数调用。消息名 称和该成员函数名称相同,并且消息必须提供该 成员函数所需的入口参数。,调用某个对象的成员函数的唯一途径就是发 送消息。消息只表示请求,不保证动作;完全由 接收消息的对象决定是否响应该请求以

9、及响应的 具体方式。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,4.2.3 对象关系图示 类图,对象关系图能够确定系统设计中的消息通讯是否 完整。 对象类之间的静态结构关系 相互有消息传递的对象之间的动态关系,使用对象关系图的益处: 发现设计中的错误,特别是对象间关系的错误 作为实际编码时的依据 系统出错时的调试与检错,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,类的层次结构,类的层次结构表示信息系统中所有类关系的 轮廓,以这

10、种形式可以很容易地跟踪基类和派生 类之间的关系。,设有3个对象类A,B和C,其中B是从A中派生出来的, C又是从B中派生出来的。那么用类的层次结构图表示它们 之间的关系如下:,(1)一个类的所有派生类 按字母排序;,(2) 用锯齿形表示基类 下的派生类;,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,例1:在一个学校中有学生、教师、教室、办公 室和课程。设计一个类层次: 用Object作为所有类的公共基类,它有三个 派生类:人员类(person)、房间类(room)、课程 类(subject)。 人员类有两个派生

11、类:学生类(student)和教 师类(teacher)。 房间有两个派生类:教室类(classroom)和 办公室类(office)。 将这些类之间的关系给层次结构图表示出来。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,对象间的创建关系,对象间的创建关系是委托关系的具体实现。 一个对象在其成员函数中创建一个或多个关系对 象,然后委托它们进行部分工作,最后完成自身 工作。,若对象A在

12、实施方法m(C+中称为成员函数) 中创建了对象B,那么对象A和对象B之间通过方 法m构成了“创建关系”。正式说法为:对象A是对 象B的基于方法m的创建者。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,例2:在例1给出的学校系统中有关人员情况的类 有3个:person类、student类和teacher类。 在person类中有一个成员函数number()计算 全校的教师和学生的总人数。这需要student类 对和teacher类对象分别计数后,再由person类 对象汇总。因此,number()必须首先创建st

13、ud ent类对象和teacher类对象,然后再委托它们做 计数工作。 因此,在person类对象、student类对象和 teacher类对象之间存在着“创建关系”。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,对象间的聚合关系,对象间的聚合关系是指一个对象是由若干个 其它对象组合而成的,这是一种直接的包含关 系,对象的创建不需要通过中间方法来实现。当 该对象被创建时,组成它的各个对

14、象也将自动被 创建。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,例3:飞机类由机身类、引擎类、机翼类和尾翼 类四个对象类构成。这四个对象类在飞机类中以 成员对象的形式存在,它们之间体现的是对象之 间的聚合关系。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,对象间的消息流图,对象间的消息流图用来描述信息系统中对象 之间的消息流。它只描述相关对象之间交换的主 要消息,以帮助设计者和用户理解对象是如何通 过交互完成具体任务的。,消息

15、流图分为两种: 内向消息图:描述对象如何从外界对象接收消 息。 外向消息图:措述对象如何向外界对象发送消 息。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,例3:对象B和对象C分别向对象A发送了一条消息。,(对象A的内向消息图),(对象A的外向消息图),例4:对象A分别发送了一条消息向对象B和对象C。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,4.2.4 类描述语言,描述概念模型中类结构的语言被称作类 描述语言CDL。,CDL

16、中的成分可分为五部分: 1.class 用于定义类,格式为 class: 类名类描述子句 2.superclass 用于说明类的所有上位类(直接基类)的类描述子句,格式为 superclass: 上位类表 在上位类表中列出此类的所有直接基类的名字,中间用“,”隔开。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,3.attribute 用于说明类属性的类描述子句,格 式为 attribute: 属性定义; 属性既可以是一般数据,也可以是类。 4.method 用于描述类的方法,即类的行为特性,格式为 method: 方法名消息表; 消息表由该类向其它类发送的消息构成。 5. request 用于表达在一个类的方法中向其它类 发送的消息,格式为 request 请求消息表; 请求消息表由一组请求消息构成,每个请求消息的格式为:目标类.方法名(参数表)。,4.1 概念模型 4.2 用面向对 象方法建立概 念模型 4.3 面向对象 设计的软件 生命周期 4.4 面向对象 设计的方法,例5:学校

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号