软件设计: 把软件开发想清楚的过程.
软件工程: 对软件开发全过程进行建模和管理.
模型: 对问题的书面上的无歧义文字或图形的描述.简言之, 模型是对现实的简化. 通过模型, 人们可以了解所研究事物的本质.
建模: 对现实系统进行适当的过滤, 用适当的表现规则描述出简洁的模型.
UML 采用了一组形象化的图形(如类图)符号作为建模语言, 使用这些符号可以形象地描述系统的各个方面
UML 通过建立图形之间的各种关系(如类与类之间的关系)来描述模型。
关联关系、依赖关系、泛化关系、实现关系。
用例图: 也称为用户模型图, 是从软件需求分析到最终实现的第一步, 它是从客户的角度来描述系统功能.
用例图包含 3 个基本组件: 参与者、 用例、 关系;
参与者: 与系统打交道的人或其他系统即使用该系统的人或事物. 在 UML 中参与者用人形图标表示
用例: 代表系统的某项完整的功能. 在 UML 中使用一个椭圆来表示
关系: 定义用例之间的关系 ------ 泛化关系, 扩展关系, 包含关系
泛化关系: 表示同一业务目的(父用例)的不同技术实现(各个子用例).
包含关系:一个用例可以包含其他用例具有的行为, 并把它包含的用例行为作为自身行为的一部分. 在 UML 中包含关系用虚线箭头加 “<<include>>”, 箭头指向被包含的用例扩展关系:如果在完成某个功能的时候偶尔会执行另外一个功能, 则用扩展关系表示.在 UML 中扩展关系用虚线箭头加 “<<extend>>”, 箭头指向被扩展的用例。
类图:
类图是面向对象系统建模中最常用的图. 是定义其他图的基础,用来显示系统中的类, 接口 以及它们之间的关系,主要元素有类, 接口和关系. 其中关系有关联关系, 泛化关系, 依赖关系和实现关系. 在类图中也可以包含注释和约束.
泛化关系:在 UML 中, 泛化关系用来表示类与类, 接口与接口之间的继承关系. 泛化关系有时也称为"is a kind of"关系,在 UML 中泛化关系用一条实线空心箭头由子类指向父类
实现关系:在 UML 中, 实现关系用来表示类与接口之间的实现关系. 在 UML 中实现关系用一条虚线空心箭头由子类指向父类
依赖关系:对于两个相对独立的系统,当一个系统负责构造另一个系统的实例,或者依赖另一个系统的服务时,这两个系统之间体现为依赖关系.
关联关系:对于两个相对独立的系统,当一个系统的实例与另一个系统的一些特定实例存在固定的对应关系时,这两个系统之间为关联关系。
关联关系--聚合关系:聚合关联是一种特殊的关联. 它表示类间的关系是整体与部分的关系. 简言之: 关联关系中的一个类描述了一个较大的事物, 它由较小的事物组
成. 聚合关系描述了 “has a” 的关系, 即整体对象拥有部分对象整体和部分之间用空心菱形箭头的连线连接, 箭头指向部分
关联关系--组成关系:组成关系是更强形式的聚合. 组成关系中, 整件拥有部件的生命周期, 所以整件删除时, 部件一定会跟着删除. 而且, 多个整件不可以同时共享同一
个部件, 整件不会拥有部件的生命周期, 所以整件删除时, 部件不会被删除.再者, 多个整件可以共享同一个部件,UML 中组成关系用实心的菱形实线表示
关联关系--导航性:导航性表示可从源类的任何对象到目标类的一个或多个对象遍历. 即: 给定源类的一个对象, 可以得到目标类的所有对象. 可以在关联关系上加上箭
头表示导航方向.
只在一个方向上可以导航的关联称为单向关联,用一个带箭头的方向表示; 在两个方向上都可以导航的关联称为双向关联, 用一条没有箭头的实线表示.