简介 组件图又称构建图,用于显示系统各组件及各组件关系的物理视图. 组件图通常包括组件.接口.关系.端口和连接器,用来显示程序代码中相应的模块.源文件或源文件集合之间的依赖和泛化关系. 组件图中的组件通常由类图中的一个或多个类(对象)实现为系统中的模块.源文件.过程文件或可执行文件,最终构成系统的绝大部分功能单元. 组件图建模步骤 - 确定系统有哪些对外接口或端口 - 确定系统要用到哪些组件,识别出系统中的重要模块.库文件.源代码文件.数据表或文件.可执行文件或文档等,将其建模为一个个组件 -…
简介 类图是面向对象分析和设计的核心,用来描述系统各个模块中类与类之间.接口与接口之间.类与接口之间的关系,以及每个类的属性.操作等特性,一般在详细设计过程中实施. 类图本身就是现实世界的抽象,是对系统中各种概念进行建模,并描绘出它们之间的关系,所以类图关注的对象就是元素及元素之间的关系. 类图建模步骤 - 抽象出类实体 - 识别出类的主要属性 - 画出类之间的关系 - 对各个类进行分析.梳理.设计 类图的元素 类图中包含以下几种模型元素:类.接口.关系.协作.注释.约束.包. 类 在UML的图…
简介 通信图表示对象之间的消息往来,是表述时序图中信息交互的另一种UML图,介绍完时序图就要对照学习一下通信图,二者是一体两面的. 通信图和时序图可以相互转换,二者的侧重点不同,通信图侧重哪些对象发送或接收了哪些消息,时序图侧重对象之间消息交互的时间顺序. 通信图建模步骤 - 确定系统需要和哪些外部参与者交互通信 - 确定系统内哪些主要对象之间有发送或接收消息的需求 - 确定外部参与者与系统对象之间.系统内部对象与对象之间的消息内容和消息类型 - 用相应的链将参与者和对象.对象和对象或对象自身连…
简介 定时图也是一种交互图,用来描述对象或实体随时间变化的状态或值,及其相应的时间或期限约束.定时图应用较广,并不局限于软件工程领域. 定时图侧重与时间线相关的值或状态的改变,这些改变可能来自于收到消息.发生事件.系统内部变化或者由时间流逝带来的改变. 因为定时图是UML2.0中的新增图,所以一部分基于UML1.x的工具并不支持定时图的创建.本篇以Visual Paradigm作为定时图绘制工具. 定时图建模步骤 - 确定系统有哪些生命线,及对应的对象或实体 - 确定这些生命线分别有哪些状态或取…
简介 包图是对各个包及包之间关系的描述,展现系统中模块与模块之间的依赖关系.一个包图可以由任何一种UML图组成,可容纳的元素有类.接口.组件.用例和其他包等.包是UML中非常常用的元素,主要作用是分类.容纳其他元素.包与包之间的关系有泛化.细化和依赖,主要取决于包内部成员之间的关系. 包图建模步骤 - 分析系统的模型元素,运用分层设计把概念.语义和逻辑上相近的元素包含在同一个包中 - 对于每个包,分析包内每个元素的可访问属性,并标识出该元素的可见性 - 确定包与包中元素之间的泛化.细化.依赖关系…
简介 时序图表示参与者与对象之间.对象与对象之间的动态交互过程及时序关系. 时序图详细而直观地展示了对象随时间变化的状态.调用关系和消息时序,时序图中的主要元素有:参与者(Actor), 对象(Object),生命线(Lifetime).控制焦点(Focus of Control).消息(Message).组合片段(Combined Fragments)等. 时序图建模步骤 - 确定系统需要和哪些外部参与者交互 - 确定系统内哪些主要对象之间需要创建时序图 - 确定外部参与者与系统对象之间.系统…
简介 活动图描述从一个活动到另一个活动的执行顺序.约束条件.引用对象及状态结果等方面的控制流,适用于对业务用例.工作流程或程序实现建模. 活动图建模步骤 - 确定活动图的范围和边界,对哪些工作流.哪些活动.哪些对象建模 - 确定工作流的开始状态和结束状态 - 确定工作流的各个活动.活动之间的转换.活动涉及的对象 - 确定工作流中各个活动对应的分支与合并.分叉与汇合关系 - 找出活动图中的复杂活动集,用相应的子活动图展开描绘 - 找出活动图中多次重复的活动,抽象为扩展区域 活动图中的主要元素 活动…
简介 状态图主要用于描述对象在其生命周期中各种状态.状态之间的转换过程.触发状态转换的各种事件(条件)及执行的动作. 状态图构建步骤 - 找出适合用状态图描述的类.确定类中需要做状态图的重要对象 - 确定重要对象的主要状态.状态之间的转换事件.条件.动作.初次态等 - 细化状态之间的复杂转换和详细事件 - 精化复合状态.并发区域等 状态图与状态机 状态图的基础是状态机,熟悉状态图之前需要对状态机有大致的了解. 状态机是有限状态机的简称,可以用来模拟世界上的大部分事物.简单地说,状态机有三个特性.…
简介 对象图和类图的基本概念是类似的,可以看作类图在系统某一时刻的镜像,显示了该时刻系统中参与交互的各个对象以及它们之间的关系. 对象图的元素包括对象.链接.包,元素之间的关系和类图相似. 对象图建模步骤 - 参照相应的类图确定参与交互的各个对象,通常类在"class", "new", "extends", "implements" 等关键字后,对象名在类名后 - 确定类之间的关系,如依赖.泛化.关联.聚合.组合.实现等 -…
说到设计模式就不得不涉及建模思想,说到建模思想自然而然会应用UML,目前业界开源的UML工具很多,用起来也非常便捷.近几年来随着软件应用领域开发模式转向快速迭代试错,UML在敏捷开发,尤其是web及mobile开发领域应用越来越少. 就国内软件行业发展现状来说,稳定成熟的商业软件凤毛麟角,初具雏形的互联网App大行其道,竞争中的公司更看重的是快速占领市场,小团队快速迭代试错,而不是长期.精心打磨同一款软件产品,所以注重统一规范.充分需求分析.严密框架设计的UML显得相对繁琐,自然会被灵活敏捷的各…