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