UML 运用于开发过程——总结
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 运用于开发过程——总结的更多相关文章
- UML精粹2 - 开发过程
迭代和瀑布过程 两者的本质区别是,你如何将一个项目分解为更小块. 瀑布风格基于活动来分解项目.为了构建软件,你不得不做某些活动:需求分析.设计.编码和测试.为期一年的项目可能有2个月的分析阶段,然后是 ...
- UML简介
Unified Modeling Language (UML)又称统一建模语言或标准建模语言,是始于1997年一个OMG标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型 ...
- UML(统一建模语言)
最近看了一个UML图,所以特意来了解一下UML 统一建模语言 锁定 同义词 UML(统一建模语言)一般指统一建模语言 本词条由“科普中国”百科科学词条编写与应用工作项目 审核 . Unified Mo ...
- UML状态图和活动图
UML状态图和活动图 统一建模语言UML(Unified Modeling Language)是非专利的第三代建模和规约语言.UML是一种开放的方法,用于说明.可视化.构建和编写一个正在开发的.面向对 ...
- UML的9种图例解析
摘自: http://blog.csdn.net/fatherican/article/details/44966891 UML图中类之间的关系:依赖,泛化,关联,聚合,组合,实现 类与类图 1) 类 ...
- uml 在需求分析阶段的应用
上一篇博客写了uml在软件开发过程中的应用,这以篇要详细介绍一下UML在需求分析过程中的应用. 以机房收费系统为例进行讲解,先介绍一个该系统. 首先该系统的用户分为三个等级,一般用户,操作员,管理员, ...
- uml学习书籍
uml真正实用的书5这是足够.学习如以下的处理: <UML distilled><--><UML和模式应用>-><UML用户指南> 附加两本&l ...
- 【转】UML的9种图例解析
UML图中类之间的关系:依赖,泛化,关联,聚合,组合,实现 类与类图 1) 类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性.操作.关系的对象集合的总称. 2) 在系统中, ...
- UML用法及状态图,活动图介绍
统一建模语言UML(Unified Modeling Language)是非专利的第三代建模和规约语言.UML是一种开放的方法,用于说明.可视化.构建和编写一个正在开发的.面向对象的.软件密集系统的制 ...
随机推荐
- Java之集合(十一)IdentityHashMap
转载请注明源出处:http://www.cnblogs.com/lighten/p/7381905.html 1.前言 查看JDK源码总是能发现一些新东西,IdentityHashMap也是Map的一 ...
- Vue中子组件调用父组件的方法
Vue中子组件调用父组件的方法 相关Html: <!DOCTYPE html> <html lang="en"> <head> <meta ...
- java数据结构之(堆)栈
(堆)栈概述栈是一种特殊的线性表,是操作受限的线性表栈的定义和特点•定义:限定仅在表尾进行插入或删除操作的线性表,表尾—栈顶,表头—栈底,不含元素的空表称空栈•特点:先进后出(FILO)或后进先出(L ...
- scala combineByKey用法说明
语法是: combineByKey[C]( createCombiner: V => C, mergeValue: (C, V) => C, mergeCombiners: ( ...
- 关于mpvue和wafer2-client-sdk的 微信登录失败,请检查网络状态
关于mpvue和wafer2-client-sdk的登录使用. 错误形式: <script> // import {get} from './util' import qcloud fro ...
- Django 模板中 变量 过滤器 标签 的使用方法
一.变量 1.变量的形式是:{{variable}}, 当模板引擎碰到变量的时候,引擎使用变量的值代替变量. 2.使用dot(.)能够访问变量的属性 3.当模板引擎碰到dot的 ...
- mac 上安装 redis
1.从http://redis.io 下载redis包,这里选择了redis-3.2.3 2.将下载的 redis-3.2.3.tar.gz 包拷贝到 /usr/local 目录 3.执行 sudo ...
- 用java实现一个简易编译器-语法解析
语法和解析树: 举个例子看看,语法解析的过程.句子:“我看到刘德华唱歌”.在计算机里,怎么用程序解析它呢.从语法上看,句子的组成是由主语,动词,和谓语从句组成,主语是“我”,动词是“看见”, 谓语从句 ...
- 快排,归并和Shell排序
快速排序 快速排序的执行流程: (1) 先从数列中取出一个数作为基准数. (2) 将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边. (3)再对左右区间重复第二步,直到各区间只有一个数. ...
- [CQOI 2018]解锁屏幕
Description 题库链接 给出平面上 \(n\) 个点,一开始你可以选任何一个点作为起点,接着对于每一个你在的位置,你可以选取一个未走过的点.将路径(线段)上所有的点均选上(包括起点终点),并 ...