前言


通过看视频,对于UML也有了一些初步的了解。前面也介绍了UML的三个基本块规则和机制,只是这些东西就像是一个个机器的零部件。要组合起来才干发挥作用。

所以,实例才是验证自己学习好坏标准,以下我结合机房收费系统画了UML的九个实例图,如有认为不合适的地方,请大家多多不吝赐教:

类图(Class Diagram)


类图是描写叙述系统中的类,以及各个类之间的关系的静态视图。可以让我们在正确编写代码曾经对系统有一个全面的认识,在系统的整个生命周期都是有效的。

实比例如以下:

对象图(Object Diagram)


对象图所使用的表示符号与类图差点儿全然同样,它是类图的实例,它们的不同点在于对象图仅仅是显示类的对象实例,而不是实际的类。一个对象是类图的一个实例,因为对象存在生命周期,因此对象图仅仅能在系统某一时间段存在。对象图是类图的一种实例化图,描写叙述系统在某个时刻可能包括的对象和相互关系。实比例如以下:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">


用例图(Use CaseDiagram)


它从用户角度描写叙述系统的功能。

说明的是谁要使用这个系统,以及他们使用该系统能够做些什么。用例图描写叙述了一系列的角色和使用案例及它们之间的关系。

一个用例图包括了多个模型元素,如系统、參与者和用例,而且显示了这些元素之间的各种关系,如泛化、关联和依赖。实比例如以下:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">


活动图(ActivityDiagram)


描写叙述为满足用例要求所要进行的活动以及活动间的约束关系有利于识别并行活动。

可以演示出系统中哪些地方存在功能。以及这些功能和系统中其它组件的功能怎样共同满足前面使用用例图建模的商务需求。

活动图是使用例图所描写叙述的行为详细化。

实比例如以下:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">


状态图(State Diagram)


描写叙述一类的对象的全部可能的状态以及事件发生时状态的转移条件。通常状态图是对类图的补充,实际上并不须要为全部的类绘制状态图,而仅仅须要为那些有多个状态、而且其行为受外界环境的影响而会发生改变的类绘制状态图。能够捕捉对象、子系统和系统的生命周期。

他们能够告知一个对象能够拥有的状态,而且事件(如消息的接收、时间的流逝、错误、条件变为真等)会怎么随着时间的推移来影响这些状态。一个状态图应该连接到全部具有清晰的可标识状态和复杂行为的类;该图能够确定类的行为,以及该行为怎样依据当前的状态变化,也能够展示哪些事件将会改变类的对象的状态。实比例如以下:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">


序列图(SequenceDiagram)


用于显示对象间的动态合作关系。它强调对象之间消息发送的顺序,同一时候也显示对象之间是怎样交互的(交互过程),它强调的是时间和顺序。

实比例如以下:


协作图(CollaborationDiagram)


和序列图相似。它也显示对象间的动态合作关系,只是,除了显示信息交换外,协作图还显示对象以及它们之间的关系,它强调的是通信关系(怎样通信的)。能够看成是类图和顺序图的交集。

实比例如以下:

构件图(ComponentDiagram)


描写叙述用来建模的软件构件(如:代码部件,jar文件、EJB文件等)的物理结构以及各部件之间的依赖关系。一个部件可能是一个资源码部件、产品、文件、一个二进制部件或一个可运行部件。

构件图有助于分析和理解部件之间的相互影响程度。这些图由构件标记符和构件之间的关系构成。实比例如以下:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">


部署图(Deployment Diagram)


描写叙述一个系统的拓扑结构,定义系统中软硬件的物理体系结构。它能够显示实际的计算机和设备(用节点表示)以及它们之间的连接关系。也可显示连接的类型及部件之间的依赖性。

在节点内部。放置可运行部件和对象,以显示节点跟可运行软件单元之间的相应关系。

比如计算机和设备,以及它们之间是怎样连接的。部署图的使用是开发者、系统集成人员和測试人员。

实比例如以下:


总结:

这九种图在软件开发中负担着各自的作用。开发的不同阶段,可能会用到不同的UML图。这就须要对它有足够的熟悉。才干够非常好的去完毕一个系统的完整的UML图。所以。我仅仅是每一个图画了一个小样例。认知有限,希望大家多多指导。

UML图与机房收费系统实例的更多相关文章

  1. UML实战总结——机房收费系统UML第一版部分图展

    距离机房收费系统已经过去了近2个月之久,如今的UML图才出来,从软件开发设计的逻辑上来讲这是顺序有问题的,不过,对于我们而言,而且是初次用面向对象的思想去设计和建模,就当是UML的一个实战练手的项目吧 ...

  2. 机房收费系统——UML类图

    在对一个软件系统进行设计和建模的时候,一般是从构造系统的基本词汇開始,包含构造这些词汇的基本属性和行为. 系统分析师假设要对所设计的系统清晰认识.还有考虑这些基本词汇之间的关系.而假设把这些行为可视化 ...

  3. 机房收费系统——UML用例图

    用例图(Use Case Diagram)是由软件需求分析到终于实现的第一步,说明的是谁要使用系统,以及他们使用该系统能够做些什么,是九种图里面最为基础且很重要的一张图.     用例图包含3方面内容 ...

  4. 机房收费系统之处理流程图与DFD图

    一直想把自己画的图拿出来与大家分享,不过说来惭愧,一是图还没画完,二是图画的确实不咋地, 对于机房收费系统还是感到混乱,图画的不好大家多多指正. 系统处理流程图: DFD图

  5. VB.NET 机房收费系统项目总结

    VB.NET机房收费系统项目总结 从2013年5月3日——2013年8月20日历时三个多月的.NET机房收费系统终于完成了.项目做完了,真有一种如释重负的感觉. 下面我将从文档.UML图,代码这三个方 ...

  6. VB.NET机房收费系统总结

    总感觉这次机房收费系统非常有份量,一直没有下手总结,从2014-7-27至2014-9-29.这中间有太多故事和成长.首先说一下两次机房收费系统的不同,它是我们从面向过程向面向对象的一个转变.在.NE ...

  7. VB.NET版机房收费系统---七仙女之系统登录

    VB.NET第一版机房收费系统,告一段落,验收的时候.问题也是大大的存在,没实用上设计模式,什么触发器.存储过程,都没实用上.看看其她小伙伴的,七层实现登录?那是什么东东,相比較我的三层而言,多了两倍 ...

  8. VB.NET<机房收费系统个人重构版>你都学会了什么(之五)

    接着上篇我们说的配置文件,今天我们来说一下接口. 1.UML图 2.三层架构 3.Sqlhelper 4.配置文件 5.接口 6.设计模式 什么是接口呢?我们可以将接口理解为用于沟通的中介的抽象化.可 ...

  9. .NET分层登陆——机房收费系统再总结

    去年的时候,我写过一篇机房收费系统登陆的总结文章,那是站在VB的基础上,直接查询数据库实现的登陆.是很初期的知识.如果想了解详情,请看VB查询数据库之登陆窗体--机房收费系统总结(一). 今天,我要换 ...

随机推荐

  1. Codeforces_789C_(dp)

    C. Functions again time limit per test 1 second memory limit per test 256 megabytes input standard i ...

  2. linux 配置Java、Mysql、Tomcat、Redis开发环境

    1.安装四个依赖 以下四个依赖必须按顺序联网安装:yum install glibc.i686yum -y install libaio.so.1 libgcc_s.so.1 libstdc++.so ...

  3. caffe LOG LOG_IF

    caffe使用了glog,在caffe的solver中输出都是用的LOG和LOG_IF LOG_IF是条件输出: LOG_IF(INFO, num_cookies > ) << &q ...

  4. 解决webstorm中vue语法没有提示

    首先看看webstrom内置的vue插件,打上勾,没有这个选项就要自己去下载插件了 如果插件还是没有语法提示,可以用下面的方法,自己添加语法进去搜索 unknown HTML tag attribut ...

  5. Webstorm安装、破解、使用

    Webstorm是专用于web开发的号称最好的的编辑器,界面美观大方,有黑.白和经典三大主题可选,使用起来整体感觉良好,破解也不是很麻烦. 一.安装 1.去官网下载正版安装包(建议所有软件都去官网下载 ...

  6. Spring boot 配置tomcat后 控制台不打印SQL日志

    在pom.xml中配置tomcat启动处加上: <dependency> <groupId>org.springframework.boot</groupId> & ...

  7. struts2与常用表格ajax操作的json传值问题

    struts与常用的dataTables和jqueryGrid等表格进行ajax传值时,经常会传值不适配的问题,这是因为struts在进行ajax操作时已经对你要操作的json数据进行了处理,所以不需 ...

  8. CentOS7-wget命令

    Wget主要用于下载文件,在安装软件时会经常用到,以下对wget做简单说明.转载自:https://www.cnblogs.com/lxz88/p/6278268.html 1.下载单个文件:wget ...

  9. CSS 全局样式

    设置全局 CSS 样式:基本的 HTML 元素均可以通过 class 设置样式并得到增强效果:还有先进的栅格系统.

  10. ruby on rails安装(win7x64)

    Ruby下载地址http://rubyinstaller.org/downloads/ (以安装2.1.7为例,2.2.3未能安装成功) 安装完之后测试是否安装成功