基于UML2.0的系统设计思想

本文介绍了UML2.0在系统设计中的重要性,阐述了UML作为系统分析和设计的统一标准,如何在需求、设计、开发过程中发挥作用。通过用例图、类图、状态机图、活动图、序列图等多个维度,展示了UML在项目中的应用,并探讨了UML的三个使用层次:草稿、蓝图和程序。同时,文章提及了原型、CMMI在项目管理中的角色,强调了UML与其他工具共同构成项目成功的基石。
摘要由CSDN通过智能技术生成

UML(UnifiedModeling Language)是一种建模语言,更是一种系统分析设计的最佳实践方法。我从2003年开始接触UML,从UML1.1到2.0,感受到了UML的独特魅力,它不仅仅成为在项目和产品分析设计过程中的统一标准,还逐步成为了从需求到测试的最常用公共语言。

我记得在最早接触UML的那段时间,项目组还在辛苦的用着面向结构化的设计思想,写着SRS,画着流程图和数据流图;对OO的设计思想还未真正接触,对于UML只知道系统的设计可以通过9种不同的图来解剖系统,9种图代表了系统的9种纬度,至于如何用到项目中是完全没有概念。

后来,随着Java盛行,OO的思想占据主导,因此接触UML更多了。发觉了解UML越深入就越被其吸引,UML不仅仅是一些图,不仅仅是系统的不同剖面,更是一种业务和系统模型的构造过程。并开始在项目中推动使用UML的标准语言,比如用例图,比如类图。

直到现在,基于UML2.0的应用设计思想仍然是团队中需求、设计、开发人员的主要指导思想。虽然UML1.0的9种图如今扩展到2.0的13种图,然而思想却没有太大变化,在设计中我们依然以用例为驱动,在设计中注重对象的状态变化的分析,注重类的分析和对象间的关系行为分析。

如下图所示,概括了基于UML2.0的APP设计思想。

Ø  UML的用法

在我所接触到的项目中,UML是一种设计的指导思想,是一种标准。我经常把UML,CMMI和Prototype合称为项目成功的三驾马车。(现在Agile比较流行,特别是在需求容易变化,项目规模不大的前提下,RUP和Scrum为代表的敏捷方法是可以取代CMMI的一些做法。)

²  CMMI负责对项目的各个过程域提供最佳实践方法指导,通过流程、模版和规范来约束和指导操作行为,以减少项目风险和提升项目质量,同时确保组织级的资产成为可持续发展的财富。

²  Prototype是对需求过程最好的一种检验,我一直认为需求捕获和分析的能力是项目是否能够交付的最大保障。所以,我迷信通过Prototype来与用户迭代的确认,与开发测试人员按原型来验收成果。

²  UML不用多说了,是指导需求,设计和开发过程的一种思想。

另一方面,Martin把UML的用法从深浅分作三个层次:

²  草稿:是最常用的一种方法,主要用于沟通系统的某些层面。如果希望使用的更深入一些,可以通过正向工程和反向工程,实现模型和程序框架的互相推导。

²  蓝图:展现完整的系统设计细节,能够指导开发。与草稿的区别在于,草稿并不是完整,而是注重强调需要交流的重点;而蓝图是完整的,把程序工作变得更简单。草图是探索式的,蓝图是系统性的。

²  程序:以MDA(模型驱动开发)为基础,能够自动从

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值