笔记目录
一、UML介绍
1. 什么是UML
- UML统一建模语言;
- UML语言适用于可视化、详述、构造、文档化;
- 软件密集型系统的神器。
2. UML的特点
- 统一的标准:已成为面向对象的标准化的统一的建模语言;
- 面向对象;
- 可视化、表达能力强大;
- 独立于过程;
- 概念明确,建模表示法简洁,图形结构清晰,容易掌握使用。
3. UML和程序设计语言的关系
- 用Java,C++等程序设计编码实现一个系统;
- 用UML是对一个系统建立模型;
- 一些CASE工具可以根据UML所建立的系统模型产生Java,C++或其他程序设计语言代码框架,如Rose。
4. 关于UML的一些认识
- UML不是一个独立的软件工程方法,而是面向对象软件工程方法中的一个部分;
- 一个比喻:UML中所提供标准的图符,相当于音乐五线谱里的乐符,学会看乐符才能看得懂乐谱,才能进一步创造音乐。同样,懂得UML中的图符才能进行系统分析和设计;
- OOA/OOD教您活用UML的图符,以及活用时所必须遵循的原则及步骤。
二、UML的构成
1. 基本构造快(basic building blocks)
1)事物(things)
- 结构事物(structural things)
- 行为事物(behavioral things)
- 分组事物(grouping things)
- 注释事物(annotational things)
2)关系(relationships)
- 依赖(dependency)
- 关联(association)
- 泛化(generalization)
- 实现(realization)
3)图(diagrams)
UML 1.x 版本中的9类图:
- class diagram (类图)
- object diagram (对象图)
- use case diagram (用例图)
- sequence diagram (顺序图)
- collaboration diagram (协作图)
- statechart diagram (状态图)
- activity diagram (活动图)
- component diagram (构件图)
- deployment diagram (部署图)
UML 2.0 中的图:
- Activity Diagram
- Class Diagram
- Communication Diagram (通信图)
- Component Diagram
- Composite Structure Diagram (组成结构图)
- Deployment diagram
- Interaction Overview Diagram (交互概要图)
- Object Diagram
- Package Diagram
- State Machine Diagram (状态机图)
- Sequence Diagram
- Timing Diagram (定时图)
- Use Case Diagram
2. 规则(rule)
1)UML的语义规则
- names (命名)
- scope (范围)
- visibility (可见性)
- integrity (完整性)
- execution (执行)
3. 公共机制(common mechanisms)
1)UML的四种通用机制
- specifications (详述,规范说明)
- adornments (修饰)
- common divisions (通用划分)
- Class/Object (类/对象)
- Interface/Realization(接口/实现)
- extensibility mechanisms (扩展机制)
- stereotypes (版型, 构造型 词汇)
- tagged values (标记值 属性)
- constraints (约束 语义)
三、UML再系统开发各阶段的应用
- 在分析阶段,用户的需求用UML模型来描述。
- 在设计阶段,引入定义软件系统中技术细节的类(如处理用户接口、数据库、通信和并行性等问题的类)。
- 在实现阶段,用面向对象程序设计语言将来自设计阶段的类转换成实际的代码。
- UML模型还是测试阶段的依据。
- 单元测试使用类图和类规格说明
- 集成测试使用构件图和协作图
- 系统测试使用用例图来验证系统的行为