软件工程导论class14面向对象方法学引论.ppt
《软件工程导论class14面向对象方法学引论.ppt》由会员分享,可在线阅读,更多相关《软件工程导论class14面向对象方法学引论.ppt(55页珍藏版)》请在三一办公上搜索。
1、软件工程导论第 14 课,9.4.2 表示关系的符号,9.4.2 表示关系的符号,类与类之间通常有关联、泛化(继承)、依赖和细化等4种关系1 关联关联表示两个类的对象之间存在某种语义上的联系,9.4.2 表示关系的符号,普通关联:最常见的关联关系,只要在类与类之间存在连接关系就可以用普通关联表示。例如,作家使用计算机,我们就认为在作家和计算机之间存在某种语义连接,因此在类图中应该在作家类和计算机类之间建立关 联关系,黑三角表示关联方向,(2)关联的角色,在任何关联中都会涉及到参与此关联的对象所扮演的角色,在某些情况下显式标明角色名有助于别人理解类图例:一个人与另一个人结婚,必然一个人扮演丈夫的
2、角色,另一个人扮演妻子的角色。如果没有显式标出角色名,则意 味着用类名作为角色名。,(3)限定关联(3)限定关联(3)限定关联,限定关联通常在一对多或多对多的关联关系中,可以把模型中的 重数从一对多变成一对一,或从多对多简化成多对一例如,某操作系统中一个目录下有许多文件,一个文件仅属于一 个目录,在一个目录内文件名确定了惟一一个文件。可见,利用限定词把一对多关系简化成了一对一关系图9.7查找 目录-文件名-文件,(4)关联类,为了说明关联的性质可能需要一些附加信息,可以引入一个关联类来记录这些信息。关联中的每个连接与关联类的一个对象相联系。关联类通过一条虚线与关联连接。,图9.8 有4个连接,
3、每个连接都对应一个队列,2 聚集,聚集也称为聚合,是关联的特例。聚集表示类与类之间的关系是整体和部分的关系。在陈述需求时使用的“包含”、“组成”、“分为部分”等字句,往往意味着存在聚集关系。除了一般聚集之外,还有两种 特殊的聚集关系,分别是共享聚集和组合聚集。,(1)共享聚集,如果在聚集关系中处于部分方的对象可同时参与多个处于整体方对象的构成,则该聚集称为共享聚集。一般聚集和共享聚集的图示符号,都是在表示关联关系的直线未端,紧挨整体类的地方画一个空心的菱形,(2)组合聚集,如果部分类完全隶属于整体类,部分与整体共存,整体不存在了 部分也会随之消失(或失去存在的价值了),则该聚集称为组合聚集(简
4、称为组成)。例如,在屏幕上打开一个窗口,它由文本框、列表框、按钮和菜 单组成,一旦关闭了窗口,各个组成部分也同时消失,窗口和它的组成部分之间存在着组合聚集关系组成关系用实心菱形表示,3 泛化,在UML中的泛化关系就是通常所说的继承关系,它是通用元素和具体元素之间的一种分类关系。具体元素完全拥有通用元素的信息,并且还可以附加一些其他信息。泛化针对类型而不针对实例,一个类可以继承另一个类,但一个对象不能继承另一个对象。实际上,泛化关系指出在类与类之间存在“一般特殊”关系。泛化可进一步划分成普通泛化和受限泛化。,(1)普通泛化,需要特别说明的是没有具体对象的类称为抽象类抽象类通常作为父类,用于描述其
5、他类(子类)的公共属性和 行为。图示抽象类时,在类名下方附加一个标记值abstract操作的图示方法,在标记后面跟一个性质串abstract,例子:一副工程蓝图由许多图形组成,图形可以是直线,圆,多边形或组合图,而多边形由直线组成,组合图由各种线型混合而成,(2)受限泛化,可以给泛化关系附加约束条件,以进一步说明该泛化关系的使用方法或扩充方法,这样的泛化关系称为受限泛化预定义的约束有种:多重,不相交,完全和不完全,这些约束都是语义约束。,多重继承指的是,一个子类可以同时多次继承同一个上层基类。与多重继承相反是不相交继承 完全继承指的是父类的所有子类都已在图中穷举不完全继承指的是父类的所有子类没
6、有都穷举出来,4 依赖和细化,(1)依赖关系:依赖关系描述两个模型元素之间的语义连接关系,其 中一个模型元素是独立的,另一个模型元素不是独立的,如果独立的模型元素改变,将影响依赖于它的模型元素。箭头指向独立的类(2)细化关系:当对同一个事物在不同抽象层次上描述时,这些描述之间具有细化关系。箭头由更详细层指向上层,9.5 动态模型,动态模型表示瞬时的,行为化的系统的“控制”性质,它规定了对象模型中的对象的合法变化序列。状态是任何可以被观察到的系统行为模式,每个类的动态行为用一张状态图来描绘 各个类的状态图通过共享事件合并起来,从而构成系统 的动态模型 动态模型是基于事件共享而互相关联的一组状态图
7、的集 合,动态模型的三要素:事件(event):引发对象状态改变的控制信息(瞬时)状态(status):即对象的属性所处的情形(可持续)行为(action):对象要达到某种状态所做的操作(耗时),注意:状态图:适合描述跨越多个用例的单个对象的行为,不适合描述多个对象之间的协作行为 不应对系统中的每个类都画状态图,而只应对某些 关键类建立状态图;而且应将状态图与其它技术组 合使用,9.6 功能模型,表示变化的系统的“功能”性质,它指明了系统应该“做什么”,因此更直接地反映了用户对目标系统的需求功能模型由一组数据流图组成,在面向对象方法学中,数据流图 远不如在结构分析设计方法中那样重要 一般说来,
8、与对象模型和动态模型比较,数据流图并没有增加新 的信息UML提供的用例图也是进行需求分析和建立功能模块的强有力工具,在UML中把用用例图建立起来的系统模型成为用例模型。,9.6.1 用例图,用例图包含的模型元素:系统,行为者,用例及用例之间的关 系图中的方框代表系统,椭圆代表用例,线条人代表行为者,它们之间的连线表示关系,系统,系统被看作是一个提供用例的黑盒子,内部如何工作,用例如何实现,这些对于建立用例模型来说都是不重要的。系统的方框边线表示系统的边界,划定系统的功能范围描述系统功能的用例置于方框内。行为者置于方框外。,用例,用例是可以被行为者感受到的,系统的一个完整的功能在UML中把用例定
9、义成系统完成的一系列动作,动作的结果能被特定的行为者察觉到。用例具有下述特征:(1)用例代表某些用户可见的功能,实现一个具体用户目标(2)用例总是被行为者启动的,并向行为者提供可识别的(3)用例必须是完整的,用例,用例是一个类,它代表一类功能而不是使用该功能的某个具体实例。用例的实例是系统的一种实际使用方法,通常把用例的实例称为脚本。脚本是系统的一次具体执行过程例如,在自动售货机系统中,张三投入硬币购买矿泉水,系统收到钱后把矿泉水送出来,上述过程就是一个脚本;李四投币买可乐,但是可乐卖完了,于是系统给出提示信息并把钱退还给李四,这个过程是另一个脚本。,行为者,行为者是指与系统交互的人或其他系统
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 导论 class14 面向 对象 方法 引论
链接地址:https://www.31ppt.com/p-6610855.html