全面认识九种基本的UML模型图
2010-07-02 10:17 flyfish1986 csdn.net 字号:T | T
一键收藏,随时查看,分享好友!
UML模型图你是否熟悉,本文就向大家简单介绍一下,从考察系统的不同角度出发,UML定义了不同的模型图,欢迎大家一起来学习。
AD:
本文和大家重点讨论一下UML模型图的概念,标准建模语言UML定义了下列5类、共9种模型图,每种模型图都有各自的特点,相互之间也有一定的联系。具体内容请看本文详细介绍。
九种基本的UML模型图
从考察系统的不同角度出发,UML定义了不同的模型图。
1用例图
用例描述系统的功能及外部的使用者,即确定谁来使用系统,使用系统做什么.用例就是指体统提供的功能的一种描述,执行者是那些可能使用这么写用例的人或者外部系统,二者之间的联系描述了"谁使用哪个用例"用例图着重于从系统外部执行者的角度描述系统需求提供哪些功能,并且指明这么系统的使用者是谁.
2类图
UML模型图中类图描述系统的静态体系结构,构成系统的类,还有类之间的关系.类图用于描述描述类模型,系统总体结构的设计直至代码的实现.类模型类似于数据模型,要开发一个面向职责的类模型.类是指一些具有相同属性和行为的对象.对象是人们对现实世界中各种事物或概念的一种高度抽象.任何事物都可以看作是具有某些属性和动态行为的对象.类与类之间有着多种不同的联系.相互关联(例如消息的传递),依赖性(一个类依赖或使用另一个类),特化(一个是另一个类的特例或子集),包(将一些类并入一个包中).所有这些联系以及类的属性和行为都可以在类图中清晰的加以描述,类图适合用于软件开发的各个阶段.
3对象图
对象图是类的一种实例化,描述系统在某个时刻可能包含的对象和相互关系.一张对象图表示的是与其对应的类图是一个具体实例,即系统在某一时期或者某个特定时刻可能存在的具体对象实例以及它们相互之间的具体关系.
4状态图
状态图是对类的一种补充描述,它展示此类对象所具有的所有可能状态以及某些事件发生时其状态转移的情况.状态的改变叫做转移.状态的转移可以伴随着某个动作,它表明当转移发生时系统要做些什么.
5顺序图
顺序图描述几个对象之间的动态协作关系.UML模型图中顺序图的重点在于它非常直观地展示了对象之间传递消息的时间顺序,反映了对象之间的一个特定的交互过程.如在系统执行过程某个特定时刻发生的事情.
6合作图
合作图是对象图的另一种表达方式,它描述系统中的对象及其相互之间的通信关系.
7活动图
活动图描述系统中各种活动的执行顺序,UML模型图中活动图通常用来描述一个操作中所要进行的各项活动的处理流程,或者某种交互流程.
8构件图
构件图描述程序代码的组织结构.构建可以是源代码构件,二进制目标构件,可执行构件或者文档型构件.构件图说明各种构件之间的依赖关系.
9配置图
配置图描述系统中硬件和软件的物理配置情况和系统体系结构。在UML分析和设计模型时,应尽量避免把模型转换成某种特定的编程语言.
分享到:
相关推荐
类图能够让我们在正确编写代码以前对系统有一个全面的认识。类图是一种模型类型,确切的说,是一种静态模型类型。类图描述的是系统的结构,展示了类之间的关系,帮助开发人员更好地理解系统的内部结构。 二、对象图...
3. UML模型是对系统全面的抽象表示,涵盖了从领域问题到计算机系统解决方案的映射过程。通过建模,开发者可以更清晰地理解和表述问题,以及找到有效的解决方案。 **建模的意义:** - **模型的理解与认识**:模型...
本章提供了一个关于UML的基本概述,并快速介绍了UML的基本概念,帮助读者建立起对UML的认识基础。 ### 第四章:UML与Java的融合 此章讲解了Java语言与UML之间的映射关系,覆盖了一些基本的UML结构。读者将学会如何...
python学习资源
jfinal-undertow 用于开发、部署由 jfinal 开发的 web 项目
基于Andorid的音乐播放器项目设计(国外开源)实现源码,主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的学习者,也可作为课程设计、期末大作业。
python学习资源
python学习资源
python学习一些项目和资源
【毕业设计】java-springboot+vue家具销售平台实现源码(完整前后端+mysql+说明文档+LunW).zip
HTML+CSS+JavaScarip开发的前端网页源代码
python学习资源
【毕业设计】java-springboot-vue健身房信息管理系统源码(完整前后端+mysql+说明文档+LunW).zip
成绩管理系统C/Go。大学生期末小作业,指针实现,C语言版本(ANSI C)和Go语言版本
1_基于大数据的智能菜品个性化推荐与点餐系统的设计与实现.docx
【毕业设计】java-springboot-vue交流互动平台实现源码(完整前后端+mysql+说明文档+LunW).zip
内容概要:本文主要探讨了在高并发情况下如何设计并优化火车票秒杀系统,确保系统的高性能与稳定性。通过对比分析三种库存管理模式(下单减库存、支付减库存、预扣库存),强调了预扣库存结合本地缓存及远程Redis统一库存的优势,同时介绍了如何利用Nginx的加权轮询策略、MQ消息队列异步处理等方式降低系统压力,保障交易完整性和数据一致性,防止超卖现象。 适用人群:具有一定互联网应用开发经验的研发人员和技术管理人员。 使用场景及目标:适用于电商、票务等行业需要处理大量瞬时并发请求的业务场景。其目标在于通过合理的架构规划,实现在高峰期保持平台的稳定运行,保证用户体验的同时最大化销售额。 其他说明:文中提及的技术细节如Epoll I/O多路复用模型以及分布式系统中的容错措施等内容,对于深入理解大规模并发系统的构建有着重要指导意义。
基于 OpenCV 和 PyTorch 的深度车牌识别
【毕业设计-java】springboot-vue教学资料管理系统实现源码(完整前后端+mysql+说明文档+LunW).zip