ooad 和彩色 uml
DESCRIPTION
中译本即将出版. OOAD 和彩色 UML. 王海鹏. Booch. 多年耕耘 朋友厉害 博学多闻. 《OOAD》. 第三版 半本理论,半本例子 极具理论深度. 复杂系统. 层次结构(宇宙组成) 相对基础性(天体物理学家和量子物理学家) 分离考虑(地面物体的运动) 共同的模式(万有引力、距离平方反比反比模式、统一场论) 稳定的进化中间态(病毒、细菌、单细胞、软体动物、脊椎动物、爬行动物、鸟类、哺乳动物、人类). 对象模型. 程序员所面对的概念演进 对象模型 — 道法自然 要素 — 抽象、封装、模块化、层次结构. 类和对象. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/1.jpg)
OOAD和彩色UML
王海鹏
中译本即将出版
![Page 2: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/2.jpg)
Booch
• 多年耕耘• 朋友厉害• 博学多闻
![Page 3: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/3.jpg)
《 OOAD 》
• 第三版• 半本理论,半本例子• 极具理论深度
![Page 4: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/4.jpg)
复杂系统
• 层次结构(宇宙组成)• 相对基础性(天体物理学家和量子物理学家)
• 分离考虑(地面物体的运动)• 共同的模式(万有引力、距离平方反比反比模式、统一场论)
• 稳定的进化中间态(病毒、细菌、单细胞、软体动物、脊椎动物、爬行动物、鸟类、哺乳动物、人类)
![Page 5: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/5.jpg)
对象模型
• 程序员所面对的概念演进• 对象模型—道法自然• 要素—抽象、封装、模块化、层次结构
![Page 6: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/6.jpg)
类和对象
• 人类在认识现实世界的过程中普遍运用着三个构造法则–区分对象及其属性。如区分一棵树和树的大小,或它与其他对象的空间关系。
–区分整体对象及其组成部分。如区分一棵树和树枝。
–形成并区分不同对象的类。例如,形成所有树的类和石头的类。并区分它们。
![Page 7: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/7.jpg)
类和对象
• 对象本质:状态、行为、标识符• 对象关系:链接、聚合• 类的本质:接口和实现(从服务的观点看)
• 类的关系:关联(语义上的依赖),继承、聚合、依赖
• 软件系统:一群不同类的对象在交互
![Page 8: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/8.jpg)
分类
• 难度(动植物分类)• 主观性(出于不同目的,有不同分法)• 经典分类(属性,如婚否)• 概念聚集(爱情歌曲)• 原型(游戏,棋类游戏)
![Page 9: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/9.jpg)
方法
• 表示法• 过程• 实务
![Page 10: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/10.jpg)
Peter Coad
• 思考者和创造者• 只写心得,从不抄袭• 引退了
![Page 11: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/11.jpg)
《 Color UML 》
• 彩色 UML建模方法• 一个企业的完整分析实例• 特征驱动开发( FDD)
![Page 12: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/12.jpg)
时刻 - 时段(粉红色)
• 业务事件,特别是我们关注其时间的那些事件
• 可以有明细项• 可以有计划的时间和实际的时间• 例:提交开户申请
![Page 13: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/13.jpg)
角色
• 参与业务事件(时刻 -时段)时,参与方 -地点 -物品所扮演的角色
• 角色与权限控制• 例:为业务员计算销售提成
![Page 14: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/14.jpg)
参与方 - 地点 - 物品(绿色)
• 现实世界具体对象• 例:计算美国西海岸各港口作为目的地港的货物总金额
• 例:计算 XX基金的年化收益率
![Page 15: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/15.jpg)
分类(蓝色)
• 产品目录(汽车型号、颜色)• 分级分组(客户分组)• 例:计算亚太地区客户今年的销售总额
![Page 16: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/16.jpg)
操作
• 识别方法和交互• 特征
– <action> the <result> <by|for|of|to> a(n) <object>
• 例子– 提交开户申请– 为业务员计算销售提成– 例:计算美国西海岸各港口作为目的地港的货物总金额
– 例:计算 XX基金的年化收益率– 计算亚太地区客户今年的销售总额
![Page 17: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/17.jpg)
模型的伸缩性和扩展
• 时刻 -时段和明细项• 算法扩展点
![Page 18: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/18.jpg)
小练习
• 为银行按揭贷款业务建模,请考虑不同还贷策略和利率的变更
![Page 19: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/19.jpg)
成功软件项目的共同特点
• 良好的架构愿景–架构:组件及其交互–业务架构:源自功能需求–技术架构:源自非功能需求
• 迭代增量式开发–分而治之–演进–持续集成
• 设计没做好,过程没贯彻( joke)
![Page 20: OOAD 和彩色 UML](https://reader033.vdocuments.site/reader033/viewer/2022061412/568147ad550346895db4eb30/html5/thumbnails/20.jpg)
Q&A
• 谢谢大家!