浅谈UML——九种图(一)
前言
学UML将近两个星期了,对UML有了一定的了解,学过的没学过的都知道UML中最最最核心的部分要数那九个图了。浅谈UML九种图。
实例
1.用例图:
什么是用例?描绘一个系统外在可见的需求情况,是代表系统中各个项目相关人员(风险承担人)之间就系统的行为所达成的契约。
用例的基本元素:角色(用户对于系统而言所演的角色)这里的角色可以是人也可以是其他系统;硬件设备;时钟;
用例:用例就是在系统中执行一系列动作。
关系:泛化;依赖;关联;实现。
用例注意用点:应该清晰的定义系统的边界。防止用例过多(合并需求生成用例)从执行者的角度来命名用例。用例描述尽可能细化。避免执行者的名字不一致。避免执行者和用例之间的关系太复杂。注意用例的大小是否恰当。避免用例是否混乱。
用一张图来看:
举例说明:
2.类图:
如果某人在一条黑暗的胡同中走来,并说:“嗨,要不要看看一个UML图?”那个图就可能是一个类图。类图是使用最广泛的一种模型,用来表示系统中各个对象的类型以及其间存在的各种静态关系。什么是类?用来表述系统中各个对象的类型以及其间存在的各种静态关系,每个对象都扮演了一个角色,并为其他成员提供了特定的服务或执行特定的行为。类图的组成如图:
3.对象图:
面向对象软件开发中的“对象”是从现实世界的“对象”中获得灵感,并加以扩充的一个概念,下面是对鄙人对对象图的一些理解。
4.包图:
在面向对象软件开发中,类显然是构建整个系统的基本构造块。但是对于庞大的应用系统而言,其包含的类将是成百上千的再加上其间“阡陌交纵”的关联关系、多重性等,必然大大超过了人们可以处理的复杂度,因此必须引入一种新的构造块,一种能够解决这个问题的构造块——包。
注意问题:
a)避免循环依赖产生。
b)测试时可以以包为测试单位。
c)应该尽量把语义和概念上相同的元素放在同一个包中。
d)对于一个包,找出哪些包内的元素是可以在包外访问的,把这些元素定义为公共的,其他元素都定义为私有的或受保护的。
结语
到这里就给大家带来自己对九种图的小小理解,一张图胜过千言万语,本人菜鸟一枚,若有不恰当的地方,望大神斧正!
若安好,便是晴!
浅谈UML——九种图(一)的更多相关文章
- 浅谈UML——九种图(二)
前言 看我UML视频,对UML图有了一定的了解,终于明白了,为什么一幅图代表了千言万语.每一种图都有其特殊的存在,都在软件开发过程中起了至关重要的作用.那么如何阅读?如何绘制?请看下去: 1 行为图 ...
- 【转】浅谈UML的概念和模型之UML九种图
原文地址:浅谈UML的概念和模型之UML九种图 目录: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UML的视图,在每一种视图中都包含一个或多种图.本文我们重点讲解UML每种图的 ...
- UML九种图-包图、类图
UML九种图-包图.类图 一.包 (一)相关概念: 1.包: 一个包=一层=一个命名空间=一个文件夹 2.包的命名: 简单名:王老二 路径名:中国.河北省.廊坊市.廊坊师范学院.信息技术提高班.九期班 ...
- [UML]转:浅谈UML的概念和模型之UML九种图
转自:http://blog.csdn.net/jiuqiyuliang/article/details/8552956 目录: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UM ...
- [转]浅谈UML的概念和模型之UML九种图
目录: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UML的视图,在每一种视图中都包含一个或多种图.本文我们重点讲解UML每种图的细节问题: 1.用例图(use case dia ...
- UML_2_浅谈UML的概念和模型之UML九种图
转载:https://my.oschina.net/zhumenzhongren/blog/667353 上文我们介绍了,UML的视图,在每一种视图中都包含一个或多种图.本文我们重点讲解UML每种图的 ...
- UML九种图作用简介
UML(统一建模语言):是面向对象的可视化建模语言. UML中有3种构造块:事物.关系和图,事物是对模型中最具有代表性的成分的抽象,关系是把事物结合在一起,图聚集了相关的事物 UML中有九种图如下: ...
- UML 小结(6)- UML九种图的比较与学习
UML中的九种图: 用例图.类图.对象图.状态图.时序图.协作图.活动图.部署图.构件图. 1)用例图(Use Case Diagram) 它是UML中最简单也是最复杂的一种图.说它简单是因为它采用了 ...
- UML九种图 之 包图和对象图
前言 对象图和包图依然是对系统的静态的描写叙述.UML九种图加上包图,事实上是十幅图. 包图 1.构成 2.包中的元素 类.接口.用例.构件.其他包等.( ...
随机推荐
- Delphi中TList类应用
在DELPHI中指针最常见的就是和类TLIST结合起来使用.下面是一个很简单的例子,希望对这个例子的分析能让大家对使用TLIST类有一个简单的认识. 代码的功能是使用指针和Tlist来生成一个牌串,并 ...
- Javascript-- jQuery动画篇(1)
jQuery中隐藏元素的hide方法 让页面上的元素不可见,一般可以通过设置css的display为none属性.但是通过css直接修改是静态的布局,如果在代码执行的时候,一般是通过js控制元素的st ...
- 关于c++中的全局变量(不赋值的全局变量算定义)
定义有三种: 1.不赋值的定义:int a; 2.赋值的定义:int a=5; 或者 int a;a=5; 3.加extern的定义:extern int a=5;//其实和不加是一样的. 声明只有一 ...
- codeforces 637B B. Chat Order(map,水题)
题目链接: B. Chat Order time limit per test 3 seconds memory limit per test 256 megabytes input standard ...
- u盘安装ubuntu 12.04 server问题解决
问题: 使用UltraISO 9.5.3制作U盘启动盘,ISO文件使用ubuntu-12.04.2-server-i386.iso,ISO文件经过MD5验证是正确的. 将U盘查到计算机上,进bios选 ...
- Excel文本获取拼音
[说明] 版本:Excel 2010 文件后缀:.xls 有在.xlsb文件下使用未成功.建议使用.xls后缀. 1.调出“开发工具” 步骤:文件-->选项-->自定义功能区-->勾 ...
- ACM学习历程—HDU5587 Array(数学 && 二分 && 记忆化 || 数位DP)(BestCoder Round #64 (div.2) 1003)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5587 题目大意就是初始有一个1,然后每次操作都是先在序列后面添加一个0,然后把原序列添加到0后面,然后 ...
- Android App在Google App Store中搜不到
情景:Android App在Google App Store上架成功,三星手机可以在Google App Store中搜索到,但是三星tablet却无法在Google App Store中搜索到,目 ...
- html之ajax
正常情况下,html中的ajax(也就是XMLHttpRequest对象)是不能跨域的.(特殊情况,此处不讨论,请网上Google) ---跨域:是url的协议或ip或端口,其中有一个不同,就是跨域. ...
- Java中的String数据类型
本文主要是说明一些String数据类型的基本知识,有些杂乱,不过都是比较重要的东西,主要是参考了网上人的资料.原文网址:http://dev.yesky.com/91/2309091.shtml 主要 ...