UML (Unified Modeling Language) 统一建模语言
基于面向对象的可视化建模语言
从需求分析到技术规范,再到结构设计及配置要求,UML都提供了模型化和可视化的支持。
代码生成器:UML模型 -》 程序源代码
逆向生成器:程序源代码 -》 UML模型
OMG (Object Management Group) 对象管理组
——————————————————————————————
UML静态模型图:
|--类图
|--对象图
|--包图
|--组件图
|--部署图
|--组成结构图
UML动态模型图
|--用例图
|--序列图
|--协作图
|--活动图
|--状态图
|--交互纵览图
|--计时图
类图:
描述系统中各种类之间的静态结构。
对象图:
类图的一个实例,显示在某一时间点上系统可能呈现出的样子。
包图:
包的图标就像一个带标签的文件夹
把共同工作的元素放到这样的一个带标签的文件夹中。
组件图:
描述代码组件的物理结构及各组件之间的依赖关系
组件可以是可执行程序、库、表、文件、文档。
部署图
展示了运行时处理节点及其组件的部署。
描述系统硬件的物理拓扑结构以及在此结构上执行的软件
说明系统结构的静态部署视图
说明分布、交付、安装的物理系统
组成结构图
从类的内部来审视这个类
用例图
描述系统外部的执行者与系统提供的用例之间的某种联系
即谁使用了哪个用例
序列图、时序图、顺序图
描述对象之间传送消息的时间顺序,反映对象之间的一次特地交互过程
协作图
描述对象之间的动态协作关系,侧重描述各对象之间存在的消息收发关系
状态图
对类描述的补充
展示此类对象所具有的可能的状态以及某些事件发生时其状态的转移情况
活动图
特殊的状态图
描述一个操作中要进行的各项活动的执行过程
常用来描述一个用例的处理流程
交互纵览图
直观表达一组相关顺序图之间的流转逻辑
计时图
展示交互过程中的真实时间信息
具体描述对象状态变化的时间点以及维持特定状态的时间段
——————————————————————————————
建模技术
模型是现实系统的简化
方便程序设计者与客户之间的沟通
方便程序设计者之间的相互沟通和协作
软件建模:抽象出系统的本质。
从问题领域转移到解决领域。
目的:把结构和系统行为联系起来,并对系统的体系结构进行可视化和控制
基本原则:
|--选择好的模型
|--每个模型可以有多种表达方式
|--与现实相联系
|--孤立的模型是不完整的
作用:
现实世界 —映射—》计算机世界
实现过程:
需求 -》模型 -》编码
面向对象软件建模:
原始需求 -》分析建模:需求模型、分析模型、设计模型 -》程序实现
UML建模基本过程:逻辑模型-》物理模型
逻辑模型建立过程:
静态 1、描述需求
静态 2、根据需求建立系统的静态结构
动态 3、描述系统行为
/描述需求
/--静态建模
/--用例图
/--类图
/--包图
/--对象图
/--组件图
/--部署图
/--动态建模
/--顺序图
/--协作图
/--状态图
/--活动图