UML学习笔记(一):项目沟通的语言

前言:

从入门开发到现在一年多时间,算是一个技术新人,所以在学习开发技术的同时,想将所学到的东西和自己的一些观点记录下来并与大家分享,希望有幸能为学习路上的其他新人带来帮助,也欢迎大家来一起交流。如发现写的不对或者有不同的看法,欢迎指出,在此深表感谢!


什么是UML

在项目的开发中,最重要而且复杂的部分就是需求分析阶段和软件设计阶段,众多编程语言则是实现软件需求的所谓的“程序员的基本功”,也许我们需要掌握一套软件设计的模式,往往能使项目的开发事半功倍。

UML(Unified Modeling Language)又称统一建模语言或标准建模语言,是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格,到构造和配置。 —— [ 百度百科 ]


为什么要使用UML

在现代软件工程中,需求到详细设计是非常重要的环节,也是开发者编码实现功能的重要向导,当我们去制作一份大篇幅的需求文档时,画图无疑是最清楚,最容易使开发者理解需求的一种方式。我们可以将此理解为建模,就是为了更好地理解要开发的系统而建立的模型,同样也作为之后测试、维护等等环节的根本依据。

描述一个需求可以有很多种方法,如果不同的人描述同一件事,那么由于思考的角度不同,文字记录下来的需求可能会千差万别,就算是用画图来说明所要开发的这个系统,也会出现不同样式的结果,所以这时我们就需要一门统一的语言来排除不同人画出图的二义性——UML。

比如我们在活动图中画一个实心圆表示开始,它就只代表开始,任何人看这个统一的图形都会理解为开始的意思,所以当使用这样一种建模语言后,每个人对于同一需求做出的图就会大致相似,而且对图形的理解也相同。


常用9种图

  • 用例图 描述角色与用例之间关系的图,说白了就是都有哪些角色,每个角色都有些什么功能。

  • 类图 从静态的角度分析模型,看系统中有哪些类,分析类与类之间的关系。

  • 对象图 可以理解为类图的实例,同对象一样,具有自己的生命周期。

  • 活动图 描述用例实现的工作流程,就是用例所要进行的活动和活动间的约束关系。

  • 状态图 描述类的对象所有可能出现的状态以及需要什么条件才能改变状态。

  • 顺序图 又称时序图,描述对象之间的交互,强调消息发送的顺序。

  • 协作图 同样也是描述对象之间的交互,更强调对象之间的合作关系。

  • 组件图 系统软件物理组成,分析系统可分为多少模块(组件),以及之间的依赖关系。

  • 部署图 描述软硬件的物理组成结构,实际环境中运行部署情况。


UML工具

  • Rational Rose2003,Rose2007(界面比较优美,功能强大,收费 需要破解)
  • StarUML (轻量级,免费,推荐)
    下载地址:http://staruml.sourceforge.net/en/
  • EA(界面优美,功能强大,收费,不好用)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值