上接:UML从需求到设计--用例

从开始接触UML到现在对UML逐渐有了更深入的了解.刚开始,对于UML总是感觉UML就是图.一提起UML 就想着这个是画图的东西.

具体这些图都是干什么的.为什么会有这些图.在一个项目中 ,到底那个图是首先出现的.这些图的出现顺序是什么.脑子里还是比较混乱.

下面我用自己的理解说明一下

UML由视图(views,)图(diagrams),模型元素(model elements),通用机制(general mechanism) 构成

一:视图:视图分为用例视图,设计视图,过程视图,实现视图,配置视图

二:图:图包括

用例图,

静态图(类图,对象图,包图),

行为图(状态图,活动图),

交互图(顺序图,协作图)

实现图(构件图,配置图)

三:模型

模型是UML中的”细胞”,是构成UML的元素一样.模型元素包括:类,对象,关系,消息等

四:通用机制:

UML的其他信息.比如注释,和一些扩展机制.比如基于UML的一些标记,约束.等

看到第一和第二个了吗?是不是有点蒙.他们说的不是一回事吗.不都是图吗?我们平时说的都是第二个.所以忽略了第一个.

其实视图是一个总体的概念.视图是由多个图构成的.就像是亚洲和国家的关系.亚洲包括很多国家.但是国家不一定全部属于亚洲.

把图分拆为视图一定程度上更好的反映了系统的形成过程.

这个过程如下:

1:用例视图:在系统的形成过程中,首先产生的就是用例图.这个是系统分析人员对客户需求的一个总结.产生在需求分析阶段.有了用例图,才会有下面的各种视图.

2:用例图完了.接下来要产生那个图呢?我自己的理解就是包图.有了用例以后,你就进入了概要设计阶段.这个阶段解决系统的基本架构.也就是系统的分层(这个在OOD中流行).每个层基本上就是你的包.每个层分在一个包中.

比如典型的MVC模式中.UI BLL DAL Entity是典型的包.这样接下来的工作就是对每个层进行分析了.

3:包图做完了以后,系统的整体架构就出来了。接下来出来的就是类图,也就是系统比较关键的部分。类图一般是由数据库对应的实体层映射来的。然后在每一层找到他的映射。最后再分别在每一层利用相关的模式去调整自己的类图。使系统的可维护性,可扩展性达到更好的要求。比如经典的工厂模式,外观模式等。

4:类图做完以后,这个时候产生什么图呢?最为合适的应该是系统的实现视图和配置试图。其实在包做做完以后。系统的构件图就应该出来了。每一个包应该就是一个层。再.net平台上。每一个包就是一个独立的dll文件,供其他程序调用,这个也就是我们构件图中的组件。再加上数据库和一些用户要求的设备,基本上构件图就出来了。

配置图只是比构件图多了系统的物理架构。其实物理结构在需求分析的阶段就已经确定了。

5:系统的基本结构和模块,类确定以后。接下来就是比较具体的每一个用例的实现过程。这个就是时序图。时序图在UML中也是比较重要的一个。时序图,用例图,类图被认为是UML的核心视图。时序图已经和代码比较接近了。时序图和协作图可以很容易的转换。只要轻轻的点一下就ok了(大家知道吗)。时序图做完以后,系统就基本出来了。

6:一些其他的视图如活动图,状态图。个人认为功能不大。如果是大型的系统。在画时序图前用他们分析一下系统的流程还是比较好的。但是它们给人的感觉就是面向过程的。

当然在画图的过程中总是要用到UML的其他元素。比如画图时我们要添加注释,时序图中传递的消息等。

最后提出一点。这里用的是我熟悉的rose 来说明UML 的。其他工具比如和它齐名的pd其本上也是这些功能。只是有所侧重罢了。Rose是面型对象,然后向数据库建模发展。Pd和它正好相反。

还有很多高级的功能期待我们去使用 ,发现。

下接:UML从需求到实现----包图

转自:http://blog.csdn.net/lsh6688/article/details/6239126

UML中的图的出现顺序的更多相关文章

  1. UML中的图

    用例图.类图.包图.顺序图.协作图.状态图.活动图.构件图.部署图等 1.用例图 显示多个外部参与者以及他们与系统提供的用例之间的连接.用例是系统中的一个可以描述参与者与系统之间交互作用功能单元.用例 ...

  2. uml中活动图与流程图的区别

    活动图定义: 活动图是UML用于对系统的动态行为建模的另一种常用工具,它描述活动的顺序,展现从一个活动到另一个活动的控制流.活动图在本质上是一种流程图. 它是UML中用于对系统动态活动建模的图形,反映 ...

  3. UML 中关系图的解说

    最近在教软件工程项目实践,就又仔细了解了下UML中各种关系的意义,虽然有点简单,但是有些概念还是经常被混淆的,写在这里是为了加深印象. 关系列表: 继承关系(Generalization): 实现关系 ...

  4. [UML]UML系列——时序图(顺序图)sequence diagram

    系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...

  5. 浅谈UML中常用的几种图——用例图

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

  6. 【UML】-NO.44.EBook.5.UML.1.004-【UML 大战需求分析】- 顺序图(Sequence Diagram)

    1.0.0 Summary Tittle:[UML]-NO.44.EBook.1.UML.1.004-[UML 大战需求分析]- 顺序图(Sequence Diagram) Style:DesignP ...

  7. 3.UML中的类图及类图之间的关系

    统一建模语言简介 统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际标 ...

  8. GOF 的23种JAVA常用设计模式总结 02 UML中的类图与类图之间的关系

    统一建模语言UML 统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际 ...

  9. UML中的类图及类图之间的关系

    统一建模语言简介 统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际标 ...

随机推荐

  1. hdu 1176 免费馅饼(动态规划)

    AC code: #include<stdio.h> #include<string.h> #define max(a,b) (a>b?a:b) #define maxo ...

  2. WINDOWS渗透与提权总结(1)

    旁站路径问题: 1.读网站配置. 2.用以下VBS: 01 On Error Resume Next 02   03 If (LCase(Right(WScript.Fullname, 11)) = ...

  3. 定义declare、%TYPE%、ROWTYPE、加循环

    %TYPE:定义一个变量,其数据类型与已经定义的某个 数据变量的类型相同,或者与数据库表的某个列的数据类型相同,这时可以使用%TYPE. %ROWTYPE PL/SQL 提供%ROWTYPE 操作符, ...

  4. Component creation must be done on Event Dispatch Thread错误解决方法

    在用java swing 做例子,给页面设置皮肤样式的时候出现了这个错误: org.jvnet.substance.api.UiThreadingViolationException: Compone ...

  5. StackExchange Redis如何实现BRPOP/BLPOP

    今天在使用StackExchange Redis客户端时.我想要使用BRPOP,但是我发现StackExchange Redis并没有提供API,没办法只好找资料看文档了. 原来StackExchan ...

  6. codevs1080线段树练习

    题目描述 Description 一行N个方格,开始每个格子里都有一个整数.现在动态地提出一些问题和修改:提问的形式是求某一个特定的子区间[a,b]中所有元素的和:修改的规则是指定某一个格子x,加上或 ...

  7. Wormholes(Bellman-ford)

    Wormholes Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 33008   Accepted: 12011 Descr ...

  8. Mac下部署Android开发环境附加NDK

    作为开发者,我们深有体会,不管是进行什么开发,为了部署开发环境,我们往往需要折腾很长时间.查阅很多资料才能完成,而且这次折腾完了,下次到了另一台新电脑上又得重新来过,整个部署过程记得还好,要是不记得又 ...

  9. RecContentType有哪些

    HTML  页面text/javascript  `type="text/javascript"` 是比较老的写法IETF 推荐的是 `type="application ...

  10. pure MVC框架目标与好处

    框架一瞥 PureMVC是一个为创建基于经典MVC元设计模式应用的轻量级框架. 此框架是开源且免费的,已经被AS2,AS3,Java,C#以及其他流行语言所实现.这也允许在多样的平台上开发,包括: l ...