UML
采用面向对象技术设计系统,从应用的角度看,首先是描述需求,其次根据需求建立系统的静态模型,以构造系统的结构;最后描述系统的行为。UML的主要内容可以归纳为静态建模机制和动态建模两大类。
UML图 | |
---|---|
描述需求 | 静态建模: 用例图、类图、包图、对象图、组合结构图、构件图、部署图 |
建立静态模型 | |
描述系统的行为 | 动态建模: 状态机、活动图、顺序图、通信图、定时图、交互预览图 |
UML的图可按行为类型可进行如下分类
类型 | 包含 |
---|---|
静态图 | 类图、对象图、包图、组合结构图 |
行为图 | 状态机图、活动图 |
用例图 | 用例图 |
交互图 | 顺序图、通信图、定时图、交互概览图 |
实现图 | 构件图、部署图 |
UML一共13种图,通过它们的组合提供了建模系统的所有视图。UML中的视图一般分为以下5中。
说明 | 涉及的UML图 | |
---|---|---|
用例视图 | 描述一个系统应该具备的功能,指的是系统外部的参与者看到的系统功能。 | 用例图 |
逻辑视图 | 从系统的静态结构和动态行为角度显示如何实现系统的功能,关注系统内部 | 静态结构:类图、对象图; 动态建模:状态机图、顺序图、通信图、活动图 |
并发视图 | 显示了系统的并发性,并解决在并发系统中存在的通信问题和同步问题 | 行为图(状态机、活动图)、交互图(顺序图、通信图、定时图和交互概览图) |
组件视图 | 显示代码组件的组织结构 | 构件图 |
配置视图 | 描述了系统的部署(物理结构) | 部署图 |
系统开发的5个阶段:需求分析,系统分析,系统设计,程序实现和测试阶段。
面向对象
面向对象的程序设计思想:将数据以及对于这些数据的操作,封装在一个单独的数据结构中。
标识对象属性:分析出对象的哪些属性和系统紧密相连。识别过程中,对于问题领域的某个实体,不但要求其取值有意义,而且它本身在系统中必须是独立存在的,这是应该讲该实体作为一个对象,而不能作为另一对象的属性。
识别对象的行为:一般可将对象的行为分为三类:
(1)对于生命周期中的创建、维护、删除行为
例如,图书管理系统中的图书信息的创建、删除和修改
(2)计算性行为
典型的计算性行为:利用基本的对象属性值计算出派生出的属性值;响应其他对象的请求,完成某些数据处理功能,并返回结果。
(3)监视性行为(响应行为)
需要对对象的主要状态进行定义,对于每一个状态列出了能的外部事件、预期的反应,并适当精化。例如“图书”对象的状态可以是借出、库存等,在每一个状态可处理的事件及预期反应可以表示为响应行为。
UML 2与Rose建模从入门到精通