时序图

看懂UML类图和时序图

北城余情 提交于 2019-12-30 05:40:56
UML在软件工程中使用较多,通过使用UML图可以较清楚地表示软件的架构关系,这里介绍一下UML中 比较重要的两种图:类图和时序图。 类图 类图是用来表示类之间的关系的,类与类之间的关系可以用以下六种关系: 继承关系,继承关系又被分为实现关系和泛化关系,实现关系是继承抽象类的关系,而泛化关系是继承非抽象类的关系。 聚合关系/组合关系,两种关系都是用来表示实体对象之间的关系,表示整体由部分构成的语义,组合关系较强,聚合关系中如果整体不存在了,部分还是可能存在的,而组合关系中,整体不存在了,部分肯定就不存在了。   关联关系,表示两个事物之间是有关系的。   依赖关系,表示一个事物依赖于另外一个事物。    时序图 时序图是显示对象之间交互的图,这些对象是按时间顺序排列的。时序图中显示的是参与交互的对象及其对象之间的消息交互顺序。 时序图包括的建模元素主要有:对象(Actor),生命线(Lifeline),控制焦点(Focus of control),消息(Message)等等。 参考: http://design-patterns.readthedocs.io/zh_CN/latest/read_uml.html#id1 来源: https://www.cnblogs.com/feng-ye/p/6605318.html

UML介绍

China☆狼群 提交于 2019-12-25 13:57:07
 统一建模语言( Unified Modeling Language, UML)又称标准建模语言,是始于 1997年的一个 OMG标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格,到构造和配置。   *注:OMG, Object Management Group 对象管理组织 UML常见图分类    UML从考虑系统的不同角度出发,定义了 用例图 、 类图 、对象图、包图、状态图、活动图、 序列图 、协作图、构件图、部署图等 10种图。   常见的UML图有用例图(Use Case Diagram)、类图(Class Diagram)和序列图(Sequence Diagram)。下面也将主要阐述这三种UML图. 一、为什么要学习 UML UML 是 Unified Modeling Language (统一建模语言)的简称。 UML 是对软件密集型系统中的制品进行可视化、详述、构造和文档化的语言。制品 {Artifact} 是指软件开发过程中产生的各种各样的产物,如模型、源代码、测试用例等。 Ø UML 建模可以达到以下目的: Ø 使用模型可以更好地理解问题 Ø 使用模型可以加强人员之间的沟通 Ø 使用模型可以更早地发现错误或疏漏的地方 Ø 使用模型可以获得设计结果 Ø 模型为最后的代码提供依据 二、 UML

看懂UML类图和时序图

佐手、 提交于 2019-12-24 20:57:23
原文: 看懂UML类图和时序图 这里不会将UML的各种元素都提到,我只想讲讲类图中各个类之间的关系; 能看懂类图中各个类之间的线条、箭头代表什么意思后,也就足够应对 日常的工作和交流; 同时,我们应该能将类图所表达的含义和最终的代码对应起来; 有了这些知识,看后面章节的设计模式结构图就没有什么问题了; 本章所有图形使用Enterprise Architect 9.2来画,所有示例详见根目录下的design_patterns.EAP 从一个示例开始 请看以下这个类图,类之间的关系是我们需要关注的: 车的类图结构为<<abstract>>,表示车是一个抽象类; 它有两个继承类:小汽车和自行车;它们之间的关系为实现关系,使用带空心箭头的虚线表示; 小汽车为与SUV之间也是继承关系,它们之间的关系为泛化关系,使用带空心箭头的实线表示; 小汽车与发动机之间是组合关系,使用带实心箭头的实线表示; 学生与班级之间是聚合关系,使用带空心箭头的实线表示; 学生与身份证之间为关联关系,使用一根实线表示; 学生上学需要用到自行车,与自行车是一种依赖关系,使用带箭头的虚线表示; 下面详细介绍这六种关系; 类之间的关系 泛化关系(generalization) 类的继承结构表现在UML中为:泛化(generalize)与实现(realize): 继承关系为 is-a的关系;两个对象之间如果可以用 is-a

类图、用例图、时序图、状态图、活动图、流程图、顺序图

孤街醉人 提交于 2019-12-23 04:51:10
   软件工程(软件工程中的各种图一般用于以下三个阶段): 需求分析阶段:   用例图:用例图是指由参与者(Actor)、 用例 (Use Case),边界以及它们之间的关系构成的用于描述系统功能的视图。是系统的蓝图。      流程图:以特定的图形符号加上说明,表示算法的图,称为流程图或 框图 。    概要设计阶段:   类图:类图(Class diagram)是显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及它们与其他类的关系等。    详细设计阶段:   时序图:(Sequence Diagram),又名序列图、循序图,是一种UML交互图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。      状态图:状态图(Statechart Diagram)是描述一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态对不同的事件做出反应。      活动图:活动图(activity diagram,动态图)是阐明了业务 用例 实现的工作流程。      顺序图:顺序图是将交互关系表示为一个二维图。纵向是 时间轴 ,时间沿竖线向下延伸。横向轴代表了在协作中各独立对象的类元角色。类元角色用生命线表示。当对象存在时,角色用一条虚线表示,当对象的过程处于激活状态时,生命线是一个双道线。    来源: https://www.cnblogs.com

软件开发中会用到的图

流过昼夜 提交于 2019-12-19 13:47:20
阅读目录 背景 图为了解决什么问题 不同流程中适合运用的图 实际的运用 结语 一、背景   大家应该在从事软件开发领域工作时间有一段时间之后,就开始有画图的意识,不管是懵懂的学别人还是想更好的让其它人理解自己的一个观点。所谓“一图胜千言”,我们身处于软件开发这个 水很深且要求精确 的复杂 领域 里,要想把事情做好,最基本的是要把事情想明白,其次还要让相关的人能够明白你要说的东西,进行协作。   特别对于一位架构师来说,能否画得一手好图尤其重要,因为相关的干系人数较多,要让不同领域的人能够达成一个统一的认识,是一件不太容易但也是必须要做好的事情。 二、图为了解决什么问题   软件开发涉及的流程是:需求 --> 开发 --> 测试 --> 发布上线。作图本身是个设计的工作,是个前期工作。那么从软件开发的整个生命周期来说,用到的图的地方是在前期的需求、开发阶段较多。在软件开发这个非常抽象的领域,只要涉及到多人协作,那么通过文字来进行交流叙述是非常晦涩难懂的,需要沟通好几遍才能理解达成一致也是比较常见的情况。那么我们画图,就是为了把不适合用言语表述的内容通过作图的方式呈现出来,让相关协作者有一个共同的具象的参照物。这个参照物可以有它的额外价值,是对软件长期价值的延伸,一份一致、清晰的设计图,可以给后续的软件迭代提供非常有帮助的决策依据。当然保证设计图与系统的一致本身也是件费精力的事情。 三

Android原生MediaPlayer调用时序图

*爱你&永不变心* 提交于 2019-12-18 15:26:49
一、引言: 最近公司的同事经常会问我apk调用mediaplayer接口之后,native层的调用逻辑是什么样的,什么时候去打分播放器,什么时候创建native层的播放器等等,虽说mediaplayer在Android系统仅仅是一个“壳”,但是因为同时涉及apk和下层native,况且,这里面又借助了mediaplayerservice这么个binder服务,所以我花了些时间对整个mediaplayer的调用时序画了一个比较详细的图,现贴出如下,并做了一些简单的描述,有需求的可以参考下,有不妥的地方也请指正,感谢~ 二、mediaplayer调用时序图: 这里我基于了apk调用mediaplayer最简单的流程来绘制的图,图中红色虚线框内为binder服务,右边蓝色虚线框为mediaplayerfactory最终评分并选择的播放器,因为该native层播放器会实现IMediaPlayer.h的所有接口,具体的媒体通路就要看各个系统而定了,走芯片厂商定制或者stagefright框架的播放器,皆是通过修改mediaplayerfactory的评分实现的,这里不再赘述。 图中一些关键函数我高亮为蓝色字体,在整个mediaplayer的调用过程中,我们需要注意以下几点: 1.apk调用setdatasource接口之后

软件工程-第六组-设计图

二次信任 提交于 2019-12-17 07:40:14
目录 软件工程-第六组-设计图 相关链接 用例图 类图 时序图 分工 软件工程-第六组-设计图 相关链接 需求文档链接 第一次会议记录 demo进度 用例图 学生 社员社长 管理员 类图 类与表的对应 Student - 学生表 Association - 社团表 AssoManager - 社团人员表 Activity - 活动表 ActManager- 活动人员表 Place - 场地表 Announcement - 公告表 Admin 时序图 社长 学生 管理员 分工 姓名 学号 本次分工 罗灵洁 31701002 用例图 王秋鸿 31701004 时序图 郑诗雨 31701005 类图 郑珂亦 31701373 时序图 来源: https://www.cnblogs.com/z31701005/p/11878888.html

时序图学习

橙三吉。 提交于 2019-12-16 16:03:01
作用: 时序图(Sequence Diagram),又名序列图、循序图,是一种UML交互图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。 时序图的元素 我们在画时序图时会涉及7种元素:角色(Actor)、对象(Object)、生命线(LifeLine)、控制焦点(Activation)、消息(Message、组合片段。 a.角色(Actor) 系统角色,可以是人或者其他系统,子系统。以一个小人图标表示。 b.对象(Object) 对象位于时序图的顶部,以一个矩形表示。对象的命名方式一般有三种: 1 对象名和类名。例如:华为手机:手机、loginServiceObject:LoginService。 2 只显示类名,不显示对象,即为一个匿名类。例如::手机、:LoginSservice。 3 只显示对象名,不显示类名。例如:华为手机:、loginServiceObject:。 c.生命线(LifeLine) 时序图中每个对象和底部中心都有一条垂直的虚线,这就是对象的生命线(对象的时间线)。以一条垂直的虚线表。 d.控制焦点(Activation) 控制焦点代表时序图中在对象时间线上某段时期执行的操作。以一个很窄的矩形表示。 e.消息(Message) 表现代表对象之间发送的信息。 同步消息(Synchronous Message)

UML统一建模语言

安稳与你 提交于 2019-12-16 14:00:55
UML(Unified Modeling Language)是一种统一建模语言,为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。下面将对UML的九种图+包图的基本概念进行介绍以及各个图的使用场景。 UML的书籍推荐:《UML distilled》、《UML和模式应用》、《UML用户指南》、《UML对象设计与编程》、《UMLOracle8建模》、《大象-Thinking_in_UML》 UML(Unified Modeling Language)是一种统一建模语言,为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。下面将对UML的九种图+包图的基本概念进行介绍以及各个图的使用场景。 UML图分为静态视图和动态视图: 静态图分为:用例图,类图,对象图,包图,构件图,部署图。 动态图分为:状态图,活动图,协作图,序列图。 1、用例图(UseCase Diagrams):   用例图主要回答了两个问题:1、是谁用软件。2、软件的功能。从用户的角度描述了系统的功能,并指出各个功能的执行者,强调用户的使用者,系统为执行者完成哪些功能。   2、类图(Class Diagrams):     用户根据用例图抽象成类,描述类的内部结构和类与类之间的关系,是一种静态结构图。 在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现

UML时序图(Sequence Diagram)

拟墨画扇 提交于 2019-12-16 04:45:11
文章目录 什么是时序图 时序图的元素 角色(Actor) 对象(Object) 生命线(LifeLine) 控制焦点(Activation) 消息(Message) 自关联消息 认识时序图六种元素 时序图解释: 组合片段 常用组合片段举例 抉择(Alt) 选项(Opt) 循环(Loop) 并行(Par) 时序图的绘制工具 时序图的绘制步骤 时序图的绘制技巧: 练习事例 什么是时序图 时序图(Sequence Diagram),又名序列图、循序图,是一种UML交互图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。 让我们来看一看visio2016对时序图的的解释。 时序图的元素 我们在画时序图时会涉及7种元素:角色(Actor)、对象(Object)、生命线(LifeLine)、控制焦点(Activation)、消息(Message)、自关联消息、组合片段。其中前6种是比较常用和重要的元素,剩余的一种组合片段元素不是很常用,但是比较复杂。我们先介绍前6种元素,在单独介绍组合片段元素。 角色(Actor) 系统角色,可以是人或者其他系统,子系统。以一个小人图标表示。 对象(Object) 对象位于时序图的顶部,以一个矩形表示。对象的命名方式一般有三种: 1 对象名和类名。例如:华为手机:手机、loginServiceObject:LoginService。 2