UML是一种统一建模语言,是面向对象系统开发过程中非常重要的一部分,主要使用图形符号来表示软件系统的设计,可以帮助项目团队进行内部沟通,找出潜在的需求点并进行设计和验证
UMLchina---潘加宇 | 软件需求设计方法学全程实例剖析幻灯片---潘加宇 | 《软件方法》书中自测题-题目全文+分卷自测(1-8章)16套111题---潘加宇 |
---|
[2020.01加一套题]UMLChina建模竞赛题大全-题目全文+分卷自测(11套110题)---潘加宇 | UMLChina建模竞赛题答案及解析------潘加宇 |
---|
- 1 需求分析阶段
- 用例视图
- 用例图---行为图,采用用例图描述需求
- 用例视图
- 2 需求设计阶段
- 设计视图
- 类图---静态图,用于定义系统中的类,类图描述系统中的类,以及各个类之间的关系的静态视图
- 对象图---静态图,类图的一个实例,描述了系统在具体时间点上所包含的对象及各个对象之间的关系
- 包图---静态图, 对构成系统的模型元素进行分组整理的图
- 进程视图
- 状态图---行为图,用来描述类的对象的所有可能的状态和时间发生时,状态的转移条件
- 活动图---行为图,用来描述满足用例要求所要进行的活动及活动间的约束关系
- 序列图---交互图,描述对象之间的交互顺序,着重体现对象间消息传递的时间顺序,强调对象之间消息的发送顺序,同时显示对象之间的交互过程
- 协作图---交互图,描述对象之间的合作关系,更侧重向用户对象说明哪些对象有消息的传递
- 交互图概览图---交互图,用活动图来表示多个交互之间的控制关系的图
- 设计视图
- 3 设计阶段
- 类图---静态图,对类的接口进行设计,用于定义系统中的类
- 组合结构图---表示类或者构建内部结构的图
- 概念架构设计==分层架构设计和API设计
- API设计
- REST API设计
- WEB API设计
- API设计
- 细化架构设计==模块设计
- 数据库设计
- 4 开发阶段
- 5 测试阶段
- 单元测试--采用类图和类的规格说明书
- 集成测试--采用类图、协作图
- 系统测试--采用用例图
- 6 交付阶段
- 实现视图
- 构件图---实现图,一种特殊的 UML 图,描述系统的静态实现视图
- 拓扑视图
- 部署图---实现图,定义系统中软硬件的物理体系结构
- 实现视图
- 结构事物
- 类(Class)---具有相同属性、方法、关系和语义的对象集合
- 类名(Name)是一个字符串
- 属性(Attribute),类的成员变量 ,[可见性]属性名:类型[=默认值],可见性”表示该属性对类外的元素是否可见,包括公有(Public)、私有(Private)、受保护(Protected)和朋友(Friendly)4 种,在类图中分别用符号+、-、#、~表示
- 操作(Operations)是类的任意一个实例对象都可以使用的行为,是类的成员方法,[可见性]名称(参数列表)[:返回类型],可见性”表示该属性对类外的元素是否可见,包括公有(Public)、私有(Private)、受保护(Protected)和朋友(Friendly)4 种,在类图中分别用符号+、-、#、~表示
- 接口(Interface)---指一个类或构件的一个服务的操作集合,它仅仅定义了一组操作的规范,并没有给出这组操作的具体实现
- 用例(User Case)---指对一组动作序列的描述,系统执行这些动作将产生一个对特定的参与者(Actor)有价值且可观察的结果
- 协作(Collaboration)---定义元素之间的相互作用
- 组件(Component)---描述物理系统的一部分
- 活动类(Active Class)---指对象有一个或多个进程或线程。活动类和类很相象,只是它的对象代表的元素的行为和其他元素是同时存在的
- 节点(Node)----定义为运行时存在的物理元素
- 类(Class)---具有相同属性、方法、关系和语义的对象集合
- 行为事物
- 交互(Interaction)---包括一组元素之间的消息交换
- 状态机(State Machine) ---由一系列对象的状态组成
- 分组事物---只有一种分组事物,即包。包纯碎是概念上的,只存在于开发阶段
- 包(Package)--- UML中唯一的组织机制
- 注释事物
3 关系
- 类关系记忆技巧
- 依赖关系(Dependency)---依赖(Dependency)关系是一种使用关系,它是对象之间耦合度最弱的一种关联方式,是临时性的关联。在代码中,某个类的方法通过局部变量、方法的参数或者对静态方法的调用来访问另一个类(被依赖类)中的某些方法来完成一些职责。依赖关系使用带箭头的虚线来表示,箭头从使用类指向被依赖的类
- 关联关系(Association)---是对象之间的一种引用关系,用于表示一类对象与另一类对象之间的联系,关联可以是双向的,也可以是单向的。在 UML 类图中,双向的关联可以用带两个箭头或者没有箭头的实线来表示,单向的关联用带一个箭头的实线来表示,箭头从使用类指向被关联的类。也可以在关联线的两端标注角色名,代表两种不同的角色
- 聚合关系(Aggregation)---聚合关系也是通过成员对象来实现的,其中成员对象是整体对象的一部分,但是成员对象可以脱离整体对象而独立存在,聚合关系可以用带空心菱形的实线来表示,菱形指向整体
- 组合关系(Composition)---也表示类之间的整体与部分的关系,但它是一种更强烈的聚合关系,整体对象可以控制部分对象的生命周期,一旦整体对象不存在,部分对象也将不存在,部分对象不能脱离整体对象而存在,组合关系用带实心菱形的实线来表示,菱形指向整体
- 泛化关系(Generalization)---对象之间耦合度最大的一种关系,表示一般与特殊的关系,是父类与子类之间的关系,是一种继承关系,泛化关系用带空心三角箭头的实线来表示,箭头从子类指向父类
- 实现关系(Realization)---是接口与实现类之间的关系。在这种关系中,类实现了接口,类中的操作实现了接口中所声明的所有的抽象操作,实现关系使用带空心三角箭头的虚线来表示,箭头从实现类指向接口