浅谈UML建模
目前正在学习大神老师的软件体系结构真是让我受益颇多,其中对于UML的讲述尤为精彩。解决了我在学习软件工程基础这门课的短板。这里很感谢我的大神老师。
统一建模语言UML是英文名Unified Modeling Language,Grady Booch、 James Rumbaugh和Ivar Jacobson三人一起发明了这门语言,他们三人也被称为UML三友。这门语言不同于java、c++等这些编程语言,他有着自己的标准表达规则,是一门分析设计语言,是由图形符号表达的用于绘制软件蓝图的标准建模语言。
UML主要用在构造需求模型和设计模型,他有13种图分别是
- 用例图
- 类图
- 对象图
- 包图 (UML2.0)
- 组合结构图 (UML2.0)
- 顺序图
- 通信图
- 定时图 (UML2.0)
- 状态图
- 活动图
- 交互概览图 (UML2.0)
- 组件图
- 部署图
其中用到最多也是最终要的是用例图和类图,当然包图、顺序图、状态图、活动图、组件图、部署图也用到的比较多。其中用例图、状态图、活动图、顺序图主要用在需求建模上面。其中类图、包图、组件图、部署图、对象图、组合结构图主要用来进行设计建模。
根据我个人看来,UML的作用主要发挥在进行一个模型的建立,建模过程把复杂的问题分解成易于理解的小问题,已达到问题求解的目的。一个优秀的架构师必须同时掌握这两种建模方式才能做到需求进架构出的境界,架构师是出于需求分析人员和编码人员的桥梁所以掌握UML技术甚至比编码水平更重要,一个需求模型和设计模型的好坏直接关系到项目的成败和可复用性、可维护性、可移植性,建模是开发优秀软件的所有活动中的核心部分之一,可以实现对系统的结构的可视化控制。
UML是不仅仅是业务人员和开发人员进行交流的语言,而且还是开发人员之间进行交流的重要形式,一个普通的程序员也要学习UML,至少要看着架构师画出的UML技术建模的图可以写的出相应的代码。可见UML图从上到业务分析人员到架构人员再到普通程序员都是多么的重要
学习重在总结实践,在以后的文章中会逐个对需求建模技术和技术建模进行逐一的总结。