UML -- 统一的图形语言

用例图:需求捕获,测试依据
类图:静态系统结构
对象图:对象之间的关联
构件图:构件之间的关联
部署图:构建的物理部署

以上几种图的作用:描述系统结构

顺序图:捕获时间顺序
协作图:强调对象协作
状态图:生命周期状态转换
活动图:工作流程模型

作用:描述系统行为

UML 运用于开发过程——总结

1、完成Use Case Diagram & Document

  画用例图和完成用例文档,文档是最主要的。

  画用例图的工具有很多,Ratinal Rose、PowerDesign、viso等工具都是可以的。

2、对于比较复杂的Use Case 用 Activity 图辅助说明(有人推荐在这里使用sequence),

  有些用例可能会包含多个分支业务和协作等复杂业务,需要用到活动图分解说明;当然,用顺序图(Sequence)也行,怎么好理解怎么来。

3、根据Use Case & Document和Activity Diagram,分析业务领域的概念,抽象出概念模型。

4、分析概念模型,抽象出类。

5、分析类的职责和关系,做出类图。

6、根据类图和Use case & Document 来制作Sequence、Collabration(协作图,和Sequence是可以相互转换的)、State Chart(状态图)等各种图示。

7、重复迭代5-6,直至“完美”。

  根据图示完善类图、根据类图完善图示,比说可以优化类之间的设计,加入在OO基础上加入设计模式的思路进行优化设计,这个根据设计者的水平和经验,设计出的方案也是不一样的。记住:没有任何模式是完美无缺的,够用就行了。项目是有时间限制的。

8、Coding。

9、测试并修改,有必要的话从前面的步骤开始改起,或从1、或从5。

10、部署并和用户一起进行测试(验收测试)。

11、从实施和测试的反馈驱动下一次的1—>11。

图是死的,人是活的,UML各种图的用法并没有一定之规,只有所谓的 Best Practice(最佳实践)。怎么用都可以,怎么舒服怎么用。

Rose 下载地址和安装路径参详网友链接:http://blog.csdn.net/zml_2015/article/details/50807150

UML 运用于开发过程——总结的更多相关文章

  1. UML精粹2 - 开发过程

    迭代和瀑布过程 两者的本质区别是,你如何将一个项目分解为更小块. 瀑布风格基于活动来分解项目.为了构建软件,你不得不做某些活动:需求分析.设计.编码和测试.为期一年的项目可能有2个月的分析阶段,然后是 ...

  2. UML简介

    Unified Modeling Language (UML)又称统一建模语言或标准建模语言,是始于1997年一个OMG标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型 ...

  3. UML(统一建模语言)

    最近看了一个UML图,所以特意来了解一下UML 统一建模语言 锁定 同义词 UML(统一建模语言)一般指统一建模语言 本词条由“科普中国”百科科学词条编写与应用工作项目 审核 . Unified Mo ...

  4. UML状态图和活动图

    UML状态图和活动图 统一建模语言UML(Unified Modeling Language)是非专利的第三代建模和规约语言.UML是一种开放的方法,用于说明.可视化.构建和编写一个正在开发的.面向对 ...

  5. UML的9种图例解析

    摘自: http://blog.csdn.net/fatherican/article/details/44966891 UML图中类之间的关系:依赖,泛化,关联,聚合,组合,实现 类与类图 1) 类 ...

  6. uml 在需求分析阶段的应用

    上一篇博客写了uml在软件开发过程中的应用,这以篇要详细介绍一下UML在需求分析过程中的应用. 以机房收费系统为例进行讲解,先介绍一个该系统. 首先该系统的用户分为三个等级,一般用户,操作员,管理员, ...

  7. uml学习书籍

     uml真正实用的书5这是足够.学习如以下的处理: <UML distilled><--><UML和模式应用>-><UML用户指南> 附加两本&l ...

  8. 【转】UML的9种图例解析

    UML图中类之间的关系:依赖,泛化,关联,聚合,组合,实现 类与类图 1) 类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性.操作.关系的对象集合的总称. 2) 在系统中, ...

  9. UML用法及状态图,活动图介绍

    统一建模语言UML(Unified Modeling Language)是非专利的第三代建模和规约语言.UML是一种开放的方法,用于说明.可视化.构建和编写一个正在开发的.面向对象的.软件密集系统的制 ...

随机推荐

  1. activity生命周期实例(不同启动模式)

    1.生命周期的几个阶段介绍: onCreate: 表示activity被创建,做一些初始化工作如调用setContentView去加载界面布局资源.初始化Acitivity所需数据等. onResta ...

  2. Java学习之路(十二):IO流<三>

    复习:序列流 序列流可以把多个字节输入整合成一个,从序列流中读取到数据时,将从被整合的第一个流开始读取,读完这个后,然后开始读取第二个流,依次向后推. 详细见上一篇文章 ByteArrayOutput ...

  3. Eclipse *的下载(图文详解)

    不多说,直接上干货! 简单了解,Eclipse是绿色软件,下载下来是个压缩包,只需要解压,加上jdk就可以运行了. 相比MyEclipse而言,它是免费的,后者是收费的.各有侧重吧 有很多人用Ecli ...

  4. VMware workstation 11 的下载

    不多说,直接上干货! VMWare Workstation 11的下载详细: 谷歌FQ,进入. 具体怎么达到可以FQ,见 FQ软件lantern-installer-beta.exe(推荐) 成功! ...

  5. springboot-4-整合fastjson

    使用fastjson作为springboot的默认json解析, 原来使用的是jackson 1, 引入依赖 <dependencies> <dependency> <g ...

  6. 分布式处理与大数据平台(RabbitMQ&Celery&Hadoop&Spark&Storm&Elasticsearch)

    热门的消息队列中间件RabbitMQ,分布式任务处理平台Celery,大数据分布式处理的三大重量级武器:Hadoop.Spark.Storm,以及新一代的数据采集和分析引擎Elasticsearch. ...

  7. 业务ID 生成规则

    在实际业务中,是否碰到过这种场景: 我们需要一个单号,要在业务系统里面保证唯一,保证增长? 在运营过程,需要知道业务单发生的时间,最好不用经过系统查找就知道发生的时间? 在排障过程中,不用再次查找就知 ...

  8. 在Bash中定制炫酷的命令提示符

    如果你使用的是Linux桌面(例如:Fedora或者Ubuntu)的话,在Terminal上使用Bash通常是必须地,但是默认的Bash提示符都很普通.本文将提供简单的Bash脚本(通过定制PS1)定 ...

  9. Angular中的$q的形象解释及深入用法

    作者:寸志链接:https://zhuanlan.zhihu.com/p/19622332来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 早上,老爸说:“儿子,天气如何 ...

  10. Android应用博客目录

    应用有很多,开个博客都放进来方便查找,也方便修改 1 语言类: 1.1 JAVA 基础语言知识JAVA Collection与Collections,Array与Arrays的区别 JAVA练手--S ...