20
OOAD 和和和 UML 王王王 王王王王王王王

OOAD 和彩色 UML

  • Upload
    geneva

  • View
    133

  • Download
    0

Embed Size (px)

DESCRIPTION

中译本即将出版. OOAD 和彩色 UML. 王海鹏. Booch. 多年耕耘 朋友厉害 博学多闻. 《OOAD》. 第三版 半本理论,半本例子 极具理论深度. 复杂系统. 层次结构(宇宙组成) 相对基础性(天体物理学家和量子物理学家) 分离考虑(地面物体的运动) 共同的模式(万有引力、距离平方反比反比模式、统一场论) 稳定的进化中间态(病毒、细菌、单细胞、软体动物、脊椎动物、爬行动物、鸟类、哺乳动物、人类). 对象模型. 程序员所面对的概念演进 对象模型 — 道法自然 要素 — 抽象、封装、模块化、层次结构. 类和对象. - PowerPoint PPT Presentation

Citation preview

Page 1: OOAD 和彩色 UML

OOAD和彩色UML

王海鹏

中译本即将出版

Page 2: OOAD 和彩色 UML

Booch

• 多年耕耘• 朋友厉害• 博学多闻

Page 3: OOAD 和彩色 UML

《 OOAD 》

• 第三版• 半本理论,半本例子• 极具理论深度

Page 4: OOAD 和彩色 UML

复杂系统

• 层次结构(宇宙组成)• 相对基础性(天体物理学家和量子物理学家)

• 分离考虑(地面物体的运动)• 共同的模式(万有引力、距离平方反比反比模式、统一场论)

• 稳定的进化中间态(病毒、细菌、单细胞、软体动物、脊椎动物、爬行动物、鸟类、哺乳动物、人类)

Page 5: OOAD 和彩色 UML

对象模型

• 程序员所面对的概念演进• 对象模型—道法自然• 要素—抽象、封装、模块化、层次结构

Page 6: OOAD 和彩色 UML

类和对象

• 人类在认识现实世界的过程中普遍运用着三个构造法则–区分对象及其属性。如区分一棵树和树的大小,或它与其他对象的空间关系。

–区分整体对象及其组成部分。如区分一棵树和树枝。

–形成并区分不同对象的类。例如,形成所有树的类和石头的类。并区分它们。

Page 7: OOAD 和彩色 UML

类和对象

• 对象本质:状态、行为、标识符• 对象关系:链接、聚合• 类的本质:接口和实现(从服务的观点看)

• 类的关系:关联(语义上的依赖),继承、聚合、依赖

• 软件系统:一群不同类的对象在交互

Page 8: OOAD 和彩色 UML

分类

• 难度(动植物分类)• 主观性(出于不同目的,有不同分法)• 经典分类(属性,如婚否)• 概念聚集(爱情歌曲)• 原型(游戏,棋类游戏)

Page 9: OOAD 和彩色 UML

方法

• 表示法• 过程• 实务

Page 10: OOAD 和彩色 UML

Peter Coad

• 思考者和创造者• 只写心得,从不抄袭• 引退了

Page 11: OOAD 和彩色 UML

《 Color UML 》

• 彩色 UML建模方法• 一个企业的完整分析实例• 特征驱动开发( FDD)

Page 12: OOAD 和彩色 UML

时刻 - 时段(粉红色)

• 业务事件,特别是我们关注其时间的那些事件

• 可以有明细项• 可以有计划的时间和实际的时间• 例:提交开户申请

Page 13: OOAD 和彩色 UML

角色

• 参与业务事件(时刻 -时段)时,参与方 -地点 -物品所扮演的角色

• 角色与权限控制• 例:为业务员计算销售提成

Page 14: OOAD 和彩色 UML

参与方 - 地点 - 物品(绿色)

• 现实世界具体对象• 例:计算美国西海岸各港口作为目的地港的货物总金额

• 例:计算 XX基金的年化收益率

Page 15: OOAD 和彩色 UML

分类(蓝色)

• 产品目录(汽车型号、颜色)• 分级分组(客户分组)• 例:计算亚太地区客户今年的销售总额

Page 16: OOAD 和彩色 UML

操作

• 识别方法和交互• 特征

– <action> the <result> <by|for|of|to> a(n) <object>

• 例子– 提交开户申请– 为业务员计算销售提成– 例:计算美国西海岸各港口作为目的地港的货物总金额

– 例:计算 XX基金的年化收益率– 计算亚太地区客户今年的销售总额

Page 17: OOAD 和彩色 UML

模型的伸缩性和扩展

• 时刻 -时段和明细项• 算法扩展点

Page 18: OOAD 和彩色 UML

小练习

• 为银行按揭贷款业务建模,请考虑不同还贷策略和利率的变更

Page 19: OOAD 和彩色 UML

成功软件项目的共同特点

• 良好的架构愿景–架构:组件及其交互–业务架构:源自功能需求–技术架构:源自非功能需求

• 迭代增量式开发–分而治之–演进–持续集成

• 设计没做好,过程没贯彻( joke)

Page 20: OOAD 和彩色 UML

Q&A

• 谢谢大家!