1、为什么需要UML
- 面向过程开发方法的困难:复杂度太高,经常变化
- 面向对象开发方法的困难:
- 对象是怎么被抽象出来的?Why
- 对象的组合是如何实现现实的功能? How
- 对象的组合是表达了怎样的含义?What
凭借经验的开发也叫做拍脑袋,没有设计,反复尝试,拼拼凑凑作出一个系统来。
真正的设计,我们需要:
- 一种现实世界映射到对象世界的方法
- 一种从对象世界描述现实世界的方法
- 一种验证对象世界行为是否正确反映了现实世界的方法
UML可以做到:
- 现实世界到业务模型:使用用例图,将人、事、物、规则模型化
- 业务模型到概念模型:通过概念化的过程建立适合计算机理解和实现的模型
- 概念模型到设计模型:从概念模型获得了软件的蓝图,获得了建设软件所需要的所有组成内容和必要细节
UML的这个转换过程,是用例驱动的,其根本理论是 统一过程(RUP)
建模方法。
统一过程归纳和整理了很多在实践中总结出来的软件工程的最佳实践,是一个采用了面向对象思想,使用UML作为软件分析设计语言,并且结合了项目管理、质量保证等许多软件工程知识综合而成的一个非常完整和庞大的软件方法。统一过程是一个重量级的开发方法,区别与敏捷方法。