在设计工作流,三种分析类可以映射到任何实现架构,包括但不限于MVC、MVP、MVVM、六边形、洋葱型……甚至映射到不做任何分割的“架构”。 图8-38展示了三种分析类的责任、和需求的关系以及命名。 图8-38 分析类的责任、和需求的关系以及命名。 图8-39用序列图展示了三种分析类之间的协作。 图8-39 三种分析类在...
比如:ImplementsClass类实现Interface类。 UML类图使用带三角的虚线表示,由子类指向父类。 组合(Composition): 组合是次于前两者的关系,它表示的是整体和部分的关系。比如人和手的关系,当人不在了,手也就没了。 UML类图使用用实心菱形+实线+箭头图示表示,菱形的一边指的的拥有者ClassA,实线所在的一边为被拥有者Cla...
答:在软件开发的不同阶段都使用类图,但这些类图表示了不同层次的抽象。在需求 分析阶段,类图是研究领域的概念;在设计阶段,类图重点描述类与类之间的接口。由于分析类图主要描述应用领域中的概念,它们的类可以从这些概念中得出,或者说 分析类图中的类是从需求中获取的。设计类图描述软件的接口部分,而不是软件的实现部...
类图是锻炼面向对象分析(OOA:Object-Oriented Analysis)和面向对象设计(OOD:Object-Oriented Design)思想的重要的工具,是业务结构建模的重要工具。本章将会有大量的实战练习,你的OOA思想将会接受极大的考验和提升。 大纲: 3.1 面向过程与面向对象 3.2 类图的基础知识 3.3 类之间的关系 3.4 演练类之间的关系 3.5 类...
分析下面的类图,画出新的类图,将原图中的多对多关系转换为1:*(一对多)关系。(提示:使用关联类,将学生选课的选课记录作为关联类的类名。注意:要标注关联类的属性)(5分)答案:评分标准:使用关联类,将学生选课的选课记录作为关联类的类名的得3分,要标注关联类的属性得2分)如图1...
例如,在讲解分析类图时,我们是按照这样的顺序讲解知识: (1)识别类和属性 (2)审查类和属性 (3)识别类之间的泛化 (4)识别类之间的关联 如果把案例剖析分解到每个知识点,为了让案例的剖析符合内容的顺序,可能就会出现这样的情况: 讲解完识别类和属性后,案例剖析时,先列出很多类和属性,但没有泛化和关联关系,因为...
从分析工作流开始,我们每个内容都分为两章。一章讲述建模知识,一章讲述建模知识如何应用在本书案例中。这样的分割主要考虑到更符合实际的工作。 例如,在讲解分析类图时,我们讲解知识的顺序是这样的: (1)识别类和属性 (2)审查类和属性 (3)识别类之间的泛化 (4)识别类之间的关联 如果把案例剖析分解到每...
这些依赖关系并非时刻都存在,而是在信息系统执行某个用例的某个步骤时才会产生,而且持续的时间非常短——从分析工作流的假设来说,就是趋近于0。因此,要描述依赖关系,仅在类图上描述“A依赖于B”是不够的,还要具体到某个场景。例如,要描述A会调用B、C的操作,如图8-94在类图上画一根依赖的虚线箭头,不是...
UML图有很多种,但是并非必须掌握所有的UML图,才能完整系统分析和设计工作。一般说来,在UML图中,只要掌握类图、用例图、时序图的使用,就能完成大部分的工作。也就是说,掌握UML的20%,就能做80%的事情。 对于程序员来说,最频繁使用的莫过于类图。因此,这里我们只讲解UML类图。至于其它UML图,请在以后的工作中参阅更...
实际上,类图上已有的两个类有泛化关系但未识别的情况并不多,因为之前从用例规约识别类和属性时很有可能已经发现了。(2)自下而上(从特殊到一般)更多的情况是发现类图上已有的两个或多个类有共同特征,于是抽象出共同的超类,如图8-99所示。图8-99 自下而上-两个类之上有共同的超类 关联也可以看作类的...