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