版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
UML图标图规定和操作规范一、UML图标图概述
UML(统一建模语言)图标图是一种用于描述系统架构、设计思路和组件关系的标准化图形表示方法。它广泛应用于软件开发、系统设计等领域,帮助团队清晰地沟通和文档化复杂系统。本规范旨在明确UML图标图的使用规则和操作步骤,确保图形表达的准确性和一致性。
二、UML图标图的基本规定
(一)图标图分类
1.用例图(UseCaseDiagram):描述系统与外部用户(参与者)之间的交互关系。
2.类图(ClassDiagram):展示系统中的类、属性、方法及其关系。
3.序列图(SequenceDiagram):表现对象间的交互顺序和时间顺序。
4.协作图(CollaborationDiagram):强调对象间的消息传递和协作关系。
5.状态图(StateDiagram):描述对象在生命周期中的状态变化。
6.活动图(ActivityDiagram):展现系统或用例的流程和逻辑。
7.组件图(ComponentDiagram):表示系统中的物理组件及其依赖关系。
8.部署图(DeploymentDiagram):描述系统在物理节点上的分布情况。
(二)图形规范
1.图标风格:采用标准UML符号,线条粗细、颜色需统一,建议使用黑色或深灰色线条。
2.命名规则:图元名称需简洁明确,避免使用缩写或歧义性词汇。
3.版本要求:使用最新版UML标准(如UML2.0或更高版本),确保兼容性。
三、UML图标图的操作规范
(一)用例图绘制步骤
1.确定参与者:列出所有与系统交互的外部用户(如“管理员”“访客”)。
2.定义用例:标注参与者可执行的操作(如“登录系统”“查看报告”)。
3.建立关系:用直线连接参与者和用例,箭头表示交互方向。
4.可选扩展:添加系统边界框(矩形),包含所有用例。
(二)类图绘制步骤
1.识别类:列出系统核心实体(如“用户”“订单”)。
2.定义属性:在类框上方标注属性(如“用户ID”“订单日期”)。
3.标注方法:在类框下方列出方法(如“登录()”“支付()”)。
4.建立关系:
-关联(实线):表示依赖关系。
-泛化(虚线+空心箭头):表示继承关系。
-聚合(空心菱形):表示整体与部分关系。
(三)序列图绘制步骤
1.确定对象:列出所有参与交互的类(如“客服”“系统”)。
2.绘制生命线:垂直虚线表示对象存在时间。
3.添加消息:用箭头标注方法调用(如“请求处理()”)。
4.排序时间:消息按时间顺序从上至下排列。
(四)协作图绘制步骤
1.确定对象:与序列图类似,但重点展示对象间的关系。
2.绘制对象框:用矩形表示对象,标注名称。
3.连接消息:用实线+箭头表示消息传递。
4.标注顺序号:用数字(1,2,3…)表示调用顺序。
(五)状态图绘制步骤
1.初始状态:用实心圆表示起始状态(如“空闲”)。
2.定义状态:用圆角矩形标注状态(如“处理中”“完成”)。
3.添加转换:用箭头表示状态变化,标注触发条件(如“收到请求”)。
4.终止状态:用空心圆表示结束状态。
(六)活动图绘制步骤
1.绘制起始点:用实心圆表示流程起点。
2.添加活动:用圆角矩形标注操作(如“验证输入”“计算结果”)。
3.建立分支/合并:用菱形表示决策点,箭头标注条件。
4.结束流程:用空心圆表示终点。
(七)组件图绘制步骤
1.标注组件:用矩形+双横线表示组件(如“数据库”“API模块”)。
2.定义接口:在组件框下方标注接口名称。
3.建立依赖关系:用虚线箭头表示组件间的调用。
4.可选包划分:用矩形包围相关组件,标注包名。
(八)部署图绘制步骤
1.确定节点:用立方体表示物理设备(如“服务器”“PC”)。
2.标注组件:在节点内绘制组件图标。
3.连接关系:用直线+箭头表示组件部署路径。
4.添加端口:在节点边缘标注连接点(如“网络接口”)。
四、注意事项
1.图形更新:每次系统变更时,需同步更新UML图标图。
2.团队规范:统一使用相同的绘图工具(如MicrosoftVisio、StarUML)。
3.版本控制:保留历史版本记录,便于追溯变更。
4.文档关联:UML图标图需与系统设计文档对应,编号一致。
一、UML图标图概述
UML(统一建模语言)图标图是一种用于描述系统架构、设计思路和组件关系的标准化图形表示方法。它广泛应用于软件开发、系统设计等领域,帮助团队清晰地沟通和文档化复杂系统。本规范旨在明确UML图标图的使用规则和操作步骤,确保图形表达的准确性和一致性。
二、UML图标图的基本规定
(一)图标图分类
1.用例图(UseCaseDiagram):描述系统与外部用户(参与者)之间的交互关系。
(1)适用场景:适用于需求分析阶段,明确系统功能边界和用户角色。
(2)核心元素:
-参与者(Actor):系统外部实体,用小人图标表示。
-用例(UseCase):系统功能,用椭圆形表示。
-系统边界(可选):用矩形包围所有用例。
-关系:包括关联(直线)、包含(«include»)、扩展(«extend»)、泛化(虚线+空心箭头)。
2.类图(ClassDiagram):展示系统中的类、属性、方法及其关系。
(1)适用场景:适用于系统设计阶段,定义数据结构和对象交互逻辑。
(2)核心元素:
-类(Class):用矩形表示,分为三个部分:名称、属性、方法。
-属性(Attribute):格式为“类型名称:属性名”,如`intage`。
-方法(Method):格式为“返回类型:方法名(参数列表)”,如`voidlogin(Stringusername)`。
-关系:包括关联(实线)、依赖(虚线)、泛化(空心箭头)、聚合(空心菱形)、组合(实心菱形)。
3.序列图(SequenceDiagram):表现对象间的交互顺序和时间顺序。
(1)适用场景:适用于详细设计阶段,明确方法调用流程。
(2)核心元素:
-生命线(Lifeline):垂直虚线表示对象存在时间。
-消息(Message):箭头表示方法调用,格式为`[时间]方法名(参数)`。
-回调(Return):向下的箭头表示返回值。
-并发(可选):用分叉/合并符号表示并行执行。
4.协作图(CollaborationDiagram):强调对象间的消息传递和协作关系。
(1)适用场景:适用于需要关注对象关系而非时间顺序的场景。
(2)核心元素:
-对象(Object):用矩形表示,标注名称。
-消息(Message):用实线+箭头表示,编号(1,2,3…)表示顺序。
-关联(实线):表示对象间的关系。
5.状态图(StateDiagram):描述对象在生命周期中的状态变化。
(1)适用场景:适用于描述具有复杂状态逻辑的对象(如订单、用户)。
(2)核心元素:
-状态(State):用圆角矩形表示,如“待处理”“已发货”。
-初始状态(Initial):实心圆。
-终止状态(Final):空心圆。
-转换(Transition):箭头表示状态变化,标注触发条件(如`onPayment`)。
-入口/出口(可选):用`<<entry>>`/`<<exit>>`标注动作。
6.活动图(ActivityDiagram):展现系统或用例的流程和逻辑。
(1)适用场景:适用于描述业务流程或算法逻辑。
(2)核心元素:
-起始/终止点(Initial/Final):实心/空心圆。
-活动(Activity):圆角矩形表示操作。
-分支/合并(菱形):表示决策点。
-并行(分叉/合并):用垂直线分隔并行分支。
-控制流:箭头表示执行顺序。
7.组件图(ComponentDiagram):表示系统中的物理组件及其依赖关系。
(1)适用场景:适用于系统架构设计,展示模块化结构。
(2)核心元素:
-组件(Component):矩形+双横线,标注名称和接口。
-接口(Interface):用`{<<interface>>}`标注。
-依赖(虚线箭头):表示组件间调用关系。
-关联(实线箭头):表示组件协作。
8.部署图(DeploymentDiagram):描述系统在物理节点上的分布情况。
(1)适用场景:适用于系统部署阶段,展示硬件和软件配置。
(2)核心元素:
-节点(Node):立方体表示物理设备(如服务器、PC)。
-组件(Component):在节点内标注。
-连接(直线箭头):表示网络或通信路径。
-端口(可选):在节点边缘标注连接点(如`eth0`)。
(二)图形规范
1.图标风格:
(1)线条:黑色或深灰色,粗细统一(主线1px,细线0.5px)。
(2)颜色:避免使用过多颜色,建议仅用黑色线条,关键关系可加粗。
(3)字体:Arial或TimesNewRoman,字号统一(名称12pt,注释10pt)。
2.命名规则:
(1)参与者:首字母大写(如`Customer`、`Admin`)。
(2)用例:动词短语(如`PlaceOrder`、`ViewProfile`)。
(3)类:名词(如`Product`、`Transaction`)。
(4)属性/方法:首字母小写,驼峰命名(如`orderDate`、`calculateTotal()`)。
3.版本要求:
(1)工具:使用支持UML2.0或更高版本的绘图工具(如StarUML、VisualParadigm)。
(2)标准:遵循《UnifiedModelingLanguageReferenceManual》(第2版或更高版)规范。
三、UML图标图的操作规范
(一)用例图绘制步骤
1.确定参与者:
(1)列出所有与系统交互的外部用户,包括直接和间接交互。
(2)示例:`Customer`(用户)、`SystemAdmin`(管理员)、`PaymentGateway`(第三方服务)。
2.定义用例:
(1)根据需求文档,列出参与者可发起的操作。
(2)避免过于细节或抽象,用例应明确描述系统价值。
(3)示例:`Customer`的用例包括`RegisterAccount`、`BrowseProducts`、`PlaceOrder`。
3.建立关系:
(1)关联:用直线连接参与者和用例,无箭头。
(2)包含:用«include»标签(如`PlaceOrder»include»PaymentProcessing`)。
(3)扩展:用«extend»标签(如`PlaceOrder»extend»ShippingOptions`)。
(4)泛化:用虚线+空心箭头(如多个参与者共享用例)。
4.绘制系统边界:
(1)用矩形框住所有用例,标注系统名称(如`E-CommerceSystem`)。
(2)可选:在边界外标注外部依赖(如`Database`、`Third-partyAPIs`)。
(二)类图绘制步骤
1.识别类:
(1)根据领域模型,列出核心实体(名词转换)。
(2)示例:`User`、`Product`、`Order`、`Payment`。
2.定义属性:
(1)列出每个类的属性,标注类型和可见性(+/-)。
(2)示例:`User`的属性:`+username:String`、`+passwordHash:String`、`-email:String`。
3.标注方法:
(1)列出核心方法,标注返回类型和参数。
(2)示例:`Order`的方法:`+calculateTotal():Double`、`+addItem(Itemitem):void`。
4.建立关系:
(1)关联:实线+空心箭头(如`Order`关联`User`)。
(2)依赖:虚线(如`Order`依赖`DateTime`类)。
(3)泛化:空心箭头(如`VIPUser`继承`User`)。
(4)聚合/组合:空心/实心菱形(如`Order`聚合`Item`)。
(三)序列图绘制步骤
1.确定对象:
(1)列出用例或操作涉及的核心对象。
(2)示例:`User`、`Cart`、`OrderService`、`PaymentProcessor`。
2.绘制生命线:
(1)横向排列对象,从上到下绘制垂直虚线。
(2)标注对象名称在生命线左侧。
3.添加消息:
(1)按时间顺序,用箭头标注方法调用(如`User->Cart:addItem(item)`)。
(2)区分同步(实线)和异步(虚线)。
(3)标注返回值(可选):`Cart<-OrderService:total`。
4.排序时间:
(1)消息从上至下排列,编号(1,2,3…)表示执行顺序。
(2)可选:用方括号标注时间范围(如`[t1]`)。
(四)协作图绘制步骤
1.确定对象:与序列图相同,但重点展示关系。
2.绘制对象框:
(1)用矩形标注对象,包含名称和角色(如`[User:initiator]`)。
3.连接消息:
(1)用实线+箭头表示消息传递,编号(1,2,3…)表示顺序。
(2)标注方法名(如`msg1:requestApproval()`)。
4.标注关系:
(1)用实线表示对象间的关联(如`User--Cart`)。
(2)可选:用注释框说明复杂关系。
(五)状态图绘制步骤
1.确定初始/终止状态:
(1)初始状态:实心圆,标注`<<initial>>`。
(2)终止状态:空心圆,标注`<<final>>`。
2.定义状态:
(1)用圆角矩形表示状态,按逻辑分组(如`Order`的状态:`Pending`、`Processing`、`Shipped`、`Delivered`)。
3.添加转换:
(1)用箭头表示状态变化,标注触发条件(如`onPayment->Processing`)。
(2)避免循环转换,必要时用菱形标注条件。
4.标注动作:
(1)用`<<entry>>`/`<<exit>>`标注状态进入/退出时的动作(如`<<entry>>updateStatus()`)。
(六)活动图绘制步骤
1.绘制起始/终止点:
(1)起始点:实心圆,标注`<<start>>`。
(2)终止点:空心圆,标注`<<end>>`。
2.添加活动:
(1)用圆角矩形表示操作,按流程顺序排列(如`ReceiveRequest`、`ValidateInput`)。
3.建立分支/合并:
(1)决策点:菱形,标注条件(如`isValid?`)。
(2)合并:用垂直线连接分支路径。
4.并行执行:
(1)分叉:用垂直线从活动延伸,标注`<<fork>>`。
(2)合并:用垂直线汇聚并行路径,标注`<<join>>`。
(七)组件图绘制步骤
1.标注组件:
(1)用矩形+双横线表示组件,标注名称(如`UserService`、`DatabaseModule`)。
2.定义接口:
(1)在组件下方用`{<<interface>>}`标注(如`UserService:{login,register}`)。
3.建立依赖关系:
(1)虚线箭头表示调用(如`Frontend->Backend:fetchUser()`)。
4.绘制组件依赖图:
(1)按模块划分,用包(矩形)封装相关组件(如`{Authentication}`包含`UserService`、`TokenGenerator`)。
(八)部署图绘制步骤
1.确定节点:
(1)列出物理设备(服务器、PC、数据库),用立方体表示。
(2)标注节点名称(如`Server1`、`DatabaseCluster`)。
2.标注组件:
(1)在节点内绘制组件图标,标注名称(如`Server1:{WebApp,API}`)。
3.建立连接:
(1)直线箭头表示网络连接(如`Server1->DatabaseCluster:SQL`)。
(2)标注协议(如`TCP/IP`)。
4.添加端口:
(1)在节点边缘标注连接点(如`Server1:eth0`)。
(2)用`<<port>>`标注(如`<<port>>8080`)。
四、注意事项
1.图形更新:
(1)每次系统需求变更时,需同步更新UML图标图,并记录变更日志。
(2)保持版本控制,使用版本号(如v1.0,v1.1)区分不同版本。
2.团队规范:
(1)统一绘图工具:团队内使用同一工具(如StarUML5.6.0)和模板。
(2)命名规范:所有图元名称需通过团队评审,避免歧义。
3.文档关联:
(1)UML图标图需与需求文档、设计文档对应,编号一致(如图1.1、图2.3)。
(2)在文档中引用UML图时,标注完整路径(如“详见附录B-1:用户注册用例图”)。
4.审核流程:
(1)初稿完成后,由架构师和开发团队交叉审核。
(2)审核通过后,存档至团队知识库(如Confluence空间)。
5.培训要求:
(1)新成员需接受UML绘图规范培训,完成练习考核。
(2)定期组织复习,确保团队对标准的理解一致。
一、UML图标图概述
UML(统一建模语言)图标图是一种用于描述系统架构、设计思路和组件关系的标准化图形表示方法。它广泛应用于软件开发、系统设计等领域,帮助团队清晰地沟通和文档化复杂系统。本规范旨在明确UML图标图的使用规则和操作步骤,确保图形表达的准确性和一致性。
二、UML图标图的基本规定
(一)图标图分类
1.用例图(UseCaseDiagram):描述系统与外部用户(参与者)之间的交互关系。
2.类图(ClassDiagram):展示系统中的类、属性、方法及其关系。
3.序列图(SequenceDiagram):表现对象间的交互顺序和时间顺序。
4.协作图(CollaborationDiagram):强调对象间的消息传递和协作关系。
5.状态图(StateDiagram):描述对象在生命周期中的状态变化。
6.活动图(ActivityDiagram):展现系统或用例的流程和逻辑。
7.组件图(ComponentDiagram):表示系统中的物理组件及其依赖关系。
8.部署图(DeploymentDiagram):描述系统在物理节点上的分布情况。
(二)图形规范
1.图标风格:采用标准UML符号,线条粗细、颜色需统一,建议使用黑色或深灰色线条。
2.命名规则:图元名称需简洁明确,避免使用缩写或歧义性词汇。
3.版本要求:使用最新版UML标准(如UML2.0或更高版本),确保兼容性。
三、UML图标图的操作规范
(一)用例图绘制步骤
1.确定参与者:列出所有与系统交互的外部用户(如“管理员”“访客”)。
2.定义用例:标注参与者可执行的操作(如“登录系统”“查看报告”)。
3.建立关系:用直线连接参与者和用例,箭头表示交互方向。
4.可选扩展:添加系统边界框(矩形),包含所有用例。
(二)类图绘制步骤
1.识别类:列出系统核心实体(如“用户”“订单”)。
2.定义属性:在类框上方标注属性(如“用户ID”“订单日期”)。
3.标注方法:在类框下方列出方法(如“登录()”“支付()”)。
4.建立关系:
-关联(实线):表示依赖关系。
-泛化(虚线+空心箭头):表示继承关系。
-聚合(空心菱形):表示整体与部分关系。
(三)序列图绘制步骤
1.确定对象:列出所有参与交互的类(如“客服”“系统”)。
2.绘制生命线:垂直虚线表示对象存在时间。
3.添加消息:用箭头标注方法调用(如“请求处理()”)。
4.排序时间:消息按时间顺序从上至下排列。
(四)协作图绘制步骤
1.确定对象:与序列图类似,但重点展示对象间的关系。
2.绘制对象框:用矩形表示对象,标注名称。
3.连接消息:用实线+箭头表示消息传递。
4.标注顺序号:用数字(1,2,3…)表示调用顺序。
(五)状态图绘制步骤
1.初始状态:用实心圆表示起始状态(如“空闲”)。
2.定义状态:用圆角矩形标注状态(如“处理中”“完成”)。
3.添加转换:用箭头表示状态变化,标注触发条件(如“收到请求”)。
4.终止状态:用空心圆表示结束状态。
(六)活动图绘制步骤
1.绘制起始点:用实心圆表示流程起点。
2.添加活动:用圆角矩形标注操作(如“验证输入”“计算结果”)。
3.建立分支/合并:用菱形表示决策点,箭头标注条件。
4.结束流程:用空心圆表示终点。
(七)组件图绘制步骤
1.标注组件:用矩形+双横线表示组件(如“数据库”“API模块”)。
2.定义接口:在组件框下方标注接口名称。
3.建立依赖关系:用虚线箭头表示组件间的调用。
4.可选包划分:用矩形包围相关组件,标注包名。
(八)部署图绘制步骤
1.确定节点:用立方体表示物理设备(如“服务器”“PC”)。
2.标注组件:在节点内绘制组件图标。
3.连接关系:用直线+箭头表示组件部署路径。
4.添加端口:在节点边缘标注连接点(如“网络接口”)。
四、注意事项
1.图形更新:每次系统变更时,需同步更新UML图标图。
2.团队规范:统一使用相同的绘图工具(如MicrosoftVisio、StarUML)。
3.版本控制:保留历史版本记录,便于追溯变更。
4.文档关联:UML图标图需与系统设计文档对应,编号一致。
一、UML图标图概述
UML(统一建模语言)图标图是一种用于描述系统架构、设计思路和组件关系的标准化图形表示方法。它广泛应用于软件开发、系统设计等领域,帮助团队清晰地沟通和文档化复杂系统。本规范旨在明确UML图标图的使用规则和操作步骤,确保图形表达的准确性和一致性。
二、UML图标图的基本规定
(一)图标图分类
1.用例图(UseCaseDiagram):描述系统与外部用户(参与者)之间的交互关系。
(1)适用场景:适用于需求分析阶段,明确系统功能边界和用户角色。
(2)核心元素:
-参与者(Actor):系统外部实体,用小人图标表示。
-用例(UseCase):系统功能,用椭圆形表示。
-系统边界(可选):用矩形包围所有用例。
-关系:包括关联(直线)、包含(«include»)、扩展(«extend»)、泛化(虚线+空心箭头)。
2.类图(ClassDiagram):展示系统中的类、属性、方法及其关系。
(1)适用场景:适用于系统设计阶段,定义数据结构和对象交互逻辑。
(2)核心元素:
-类(Class):用矩形表示,分为三个部分:名称、属性、方法。
-属性(Attribute):格式为“类型名称:属性名”,如`intage`。
-方法(Method):格式为“返回类型:方法名(参数列表)”,如`voidlogin(Stringusername)`。
-关系:包括关联(实线)、依赖(虚线)、泛化(空心箭头)、聚合(空心菱形)、组合(实心菱形)。
3.序列图(SequenceDiagram):表现对象间的交互顺序和时间顺序。
(1)适用场景:适用于详细设计阶段,明确方法调用流程。
(2)核心元素:
-生命线(Lifeline):垂直虚线表示对象存在时间。
-消息(Message):箭头表示方法调用,格式为`[时间]方法名(参数)`。
-回调(Return):向下的箭头表示返回值。
-并发(可选):用分叉/合并符号表示并行执行。
4.协作图(CollaborationDiagram):强调对象间的消息传递和协作关系。
(1)适用场景:适用于需要关注对象关系而非时间顺序的场景。
(2)核心元素:
-对象(Object):用矩形表示,标注名称。
-消息(Message):用实线+箭头表示,编号(1,2,3…)表示顺序。
-关联(实线):表示对象间的关系。
5.状态图(StateDiagram):描述对象在生命周期中的状态变化。
(1)适用场景:适用于描述具有复杂状态逻辑的对象(如订单、用户)。
(2)核心元素:
-状态(State):用圆角矩形表示,如“待处理”“已发货”。
-初始状态(Initial):实心圆。
-终止状态(Final):空心圆。
-转换(Transition):箭头表示状态变化,标注触发条件(如`onPayment`)。
-入口/出口(可选):用`<<entry>>`/`<<exit>>`标注动作。
6.活动图(ActivityDiagram):展现系统或用例的流程和逻辑。
(1)适用场景:适用于描述业务流程或算法逻辑。
(2)核心元素:
-起始/终止点(Initial/Final):实心/空心圆。
-活动(Activity):圆角矩形表示操作。
-分支/合并(菱形):表示决策点。
-并行(分叉/合并):用垂直线分隔并行分支。
-控制流:箭头表示执行顺序。
7.组件图(ComponentDiagram):表示系统中的物理组件及其依赖关系。
(1)适用场景:适用于系统架构设计,展示模块化结构。
(2)核心元素:
-组件(Component):矩形+双横线,标注名称和接口。
-接口(Interface):用`{<<interface>>}`标注。
-依赖(虚线箭头):表示组件间调用关系。
-关联(实线箭头):表示组件协作。
8.部署图(DeploymentDiagram):描述系统在物理节点上的分布情况。
(1)适用场景:适用于系统部署阶段,展示硬件和软件配置。
(2)核心元素:
-节点(Node):立方体表示物理设备(如服务器、PC)。
-组件(Component):在节点内标注。
-连接(直线箭头):表示网络或通信路径。
-端口(可选):在节点边缘标注连接点(如`eth0`)。
(二)图形规范
1.图标风格:
(1)线条:黑色或深灰色,粗细统一(主线1px,细线0.5px)。
(2)颜色:避免使用过多颜色,建议仅用黑色线条,关键关系可加粗。
(3)字体:Arial或TimesNewRoman,字号统一(名称12pt,注释10pt)。
2.命名规则:
(1)参与者:首字母大写(如`Customer`、`Admin`)。
(2)用例:动词短语(如`PlaceOrder`、`ViewProfile`)。
(3)类:名词(如`Product`、`Transaction`)。
(4)属性/方法:首字母小写,驼峰命名(如`orderDate`、`calculateTotal()`)。
3.版本要求:
(1)工具:使用支持UML2.0或更高版本的绘图工具(如StarUML、VisualParadigm)。
(2)标准:遵循《UnifiedModelingLanguageReferenceManual》(第2版或更高版)规范。
三、UML图标图的操作规范
(一)用例图绘制步骤
1.确定参与者:
(1)列出所有与系统交互的外部用户,包括直接和间接交互。
(2)示例:`Customer`(用户)、`SystemAdmin`(管理员)、`PaymentGateway`(第三方服务)。
2.定义用例:
(1)根据需求文档,列出参与者可发起的操作。
(2)避免过于细节或抽象,用例应明确描述系统价值。
(3)示例:`Customer`的用例包括`RegisterAccount`、`BrowseProducts`、`PlaceOrder`。
3.建立关系:
(1)关联:用直线连接参与者和用例,无箭头。
(2)包含:用«include»标签(如`PlaceOrder»include»PaymentProcessing`)。
(3)扩展:用«extend»标签(如`PlaceOrder»extend»ShippingOptions`)。
(4)泛化:用虚线+空心箭头(如多个参与者共享用例)。
4.绘制系统边界:
(1)用矩形框住所有用例,标注系统名称(如`E-CommerceSystem`)。
(2)可选:在边界外标注外部依赖(如`Database`、`Third-partyAPIs`)。
(二)类图绘制步骤
1.识别类:
(1)根据领域模型,列出核心实体(名词转换)。
(2)示例:`User`、`Product`、`Order`、`Payment`。
2.定义属性:
(1)列出每个类的属性,标注类型和可见性(+/-)。
(2)示例:`User`的属性:`+username:String`、`+passwordHash:String`、`-email:String`。
3.标注方法:
(1)列出核心方法,标注返回类型和参数。
(2)示例:`Order`的方法:`+calculateTotal():Double`、`+addItem(Itemitem):void`。
4.建立关系:
(1)关联:实线+空心箭头(如`Order`关联`User`)。
(2)依赖:虚线(如`Order`依赖`DateTime`类)。
(3)泛化:空心箭头(如`VIPUser`继承`User`)。
(4)聚合/组合:空心/实心菱形(如`Order`聚合`Item`)。
(三)序列图绘制步骤
1.确定对象:
(1)列出用例或操作涉及的核心对象。
(2)示例:`User`、`Cart`、`OrderService`、`PaymentProcessor`。
2.绘制生命线:
(1)横向排列对象,从上到下绘制垂直虚线。
(2)标注对象名称在生命线左侧。
3.添加消息:
(1)按时间顺序,用箭头标注方法调用(如`User->Cart:addItem(item)`)。
(2)区分同步(实线)和异步(虚线)。
(3)标注返回值(可选):`Cart<-OrderService:total`。
4.排序时间:
(1)消息从上至下排列,编号(1,2,3…)表示执行顺序。
(2)可选:用方括号标注时间范围(如`[t1]`)。
(四)协作图绘制步骤
1.确定对象:与序列图相同,但重点展示关系。
2.绘制对象框:
(1)用矩形标注对象,包含名称和角色(如`[User:initiator]`)。
3.连接消息:
(1)用实线+箭头表示消息传递,编号(1,2,3…)表示顺序。
(2)标注方法名(如`msg1:requestApproval()`)。
4.标注关系:
(1)用实线表示对象间的关联(如`User--Cart`)。
(2)可选:用注释框说明复杂关系。
(五)状态图绘制步骤
1.确定初始/终止状态:
(1)初始状态:实心圆,标注`<<initial>>`。
(2)终止状态:空心圆,标注`<<final>>`。
2.定义状态:
(1)用圆角矩形表示状态,按逻辑分组(如`Order`的状态:`Pending`、`Processing`、`Shipped`、`Delivered`)。
3.添加转换:
(1)用箭头表示状态变化,标注触发条件(如`onPayment->Processing`)。
(2)避免循环转换,必要时用菱形标注条件。
4.标注动作:
(1)用`<<entry>>`/`<<exit>>`标注状态进入/退出时的动作(如`<<entry>>updateStatus()`)。
(六)活动图绘制步骤
1.绘制起始/终止点:
(1)起始点:实心圆,标注`<<start>>`。
(2)终止点:空心圆,标注`<<end>>`。
2.添加活动:
(1)用圆角矩形表示操作,按流程顺序排列(如`ReceiveRequest`、`ValidateInput`)。
3.建立分支/合并:
(1)决策点:菱形,标注条件(如`isValid?`)。
(2)合并:用垂直线连接分支路径。
4.并行执行:
(1)分叉:用垂直线从活动延伸,标注`<<fork>>`。
(2)合并:用垂直线汇聚并行路径,标注`<<join>>`。
(七)组件图绘制步骤
1.标注组件:
(1)用矩形+双横线表示组件,标注名称(如`UserService`、`DatabaseModule`)。
2.定义接口:
(1)在组件下方用`{<<interface>>}`标注(如`UserService:{login,register}`)。
3.建立依赖关系:
(1)虚线箭头表示调用(如`Frontend->Backend:fetchUser()`)。
4.绘制组件依赖图:
(1)按模块划分,用包(矩形)封装相关组件(如`{Authentication}`包含`UserService`、`TokenGenerator`)。
(八)部署图绘制步骤
1.确定节点:
(1)列出物理设备(服务器、PC、数据库),用立方体表示。
(2)标注节点名称(如`Server1`、`DatabaseCluster`)。
2.标注组件:
(1)在节点内绘制组件图标,标注名称(如`Server1:{WebApp,API}`)。
3.建立连接:
(1)直线箭头表示网络连接(如`Server1->DatabaseCluster:SQL`)。
(2)标注协议(如`TCP/IP`)。
4.添加端口:
(1)在节点边缘标注连接点(如`Server1:eth0`)。
(2)用`<<port>>`标注(如`<<port>>8080`)。
四、注意事项
1.图形更新:
(1)每次系统需求变更时,需同步更新UML图标图,并记录变更日志。
(2)保持版本控制,使用版本号(如v1.0,v1.1)区分不同版本。
2.团队规范:
(1)统一绘图工具:团队内使用同一工具(如StarUML5.6.0)和模板。
(2)命名规范:所有图元名称需通过团队评审,避免歧义。
3.文档关联:
(1)UML图标图需与需求文档、设计文档对应,编号一致(如图1.1、图2.3)。
(2)在文档中引用UML图时,标注完整路径(如“详见附录B-1:用户注册用例图”)。
4.审核流程:
(1)初稿完成后,由架构师和开发团队交叉审核。
(2)审核通过后,存档至团队知识库(如Confluence空间)。
5.培训要求:
(1)新成员需接受UML绘图规范培训,完成练习考核。
(2)定期组织复习,确保团队对标准的理解一致。
一、UML图标图概述
UML(统一建模语言)图标图是一种用于描述系统架构、设计思路和组件关系的标准化图形表示方法。它广泛应用于软件开发、系统设计等领域,帮助团队清晰地沟通和文档化复杂系统。本规范旨在明确UML图标图的使用规则和操作步骤,确保图形表达的准确性和一致性。
二、UML图标图的基本规定
(一)图标图分类
1.用例图(UseCaseDiagram):描述系统与外部用户(参与者)之间的交互关系。
2.类图(ClassDiagram):展示系统中的类、属性、方法及其关系。
3.序列图(SequenceDiagram):表现对象间的交互顺序和时间顺序。
4.协作图(CollaborationDiagram):强调对象间的消息传递和协作关系。
5.状态图(StateDiagram):描述对象在生命周期中的状态变化。
6.活动图(ActivityDiagram):展现系统或用例的流程和逻辑。
7.组件图(ComponentDiagram):表示系统中的物理组件及其依赖关系。
8.部署图(DeploymentDiagram):描述系统在物理节点上的分布情况。
(二)图形规范
1.图标风格:采用标准UML符号,线条粗细、颜色需统一,建议使用黑色或深灰色线条。
2.命名规则:图元名称需简洁明确,避免使用缩写或歧义性词汇。
3.版本要求:使用最新版UML标准(如UML2.0或更高版本),确保兼容性。
三、UML图标图的操作规范
(一)用例图绘制步骤
1.确定参与者:列出所有与系统交互的外部用户(如“管理员”“访客”)。
2.定义用例:标注参与者可执行的操作(如“登录系统”“查看报告”)。
3.建立关系:用直线连接参与者和用例,箭头表示交互方向。
4.可选扩展:添加系统边界框(矩形),包含所有用例。
(二)类图绘制步骤
1.识别类:列出系统核心实体(如“用户”“订单”)。
2.定义属性:在类框上方标注属性(如“用户ID”“订单日期”)。
3.标注方法:在类框下方列出方法(如“登录()”“支付()”)。
4.建立关系:
-关联(实线):表示依赖关系。
-泛化(虚线+空心箭头):表示继承关系。
-聚合(空心菱形):表示整体与部分关系。
(三)序列图绘制步骤
1.确定对象:列出所有参与交互的类(如“客服”“系统”)。
2.绘制生命线:垂直虚线表示对象存在时间。
3.添加消息:用箭头标注方法调用(如“请求处理()”)。
4.排序时间:消息按时间顺序从上至下排列。
(四)协作图绘制步骤
1.确定对象:与序列图类似,但重点展示对象间的关系。
2.绘制对象框:用矩形表示对象,标注名称。
3.连接消息:用实线+箭头表示消息传递。
4.标注顺序号:用数字(1,2,3…)表示调用顺序。
(五)状态图绘制步骤
1.初始状态:用实心圆表示起始状态(如“空闲”)。
2.定义状态:用圆角矩形标注状态(如“处理中”“完成”)。
3.添加转换:用箭头表示状态变化,标注触发条件(如“收到请求”)。
4.终止状态:用空心圆表示结束状态。
(六)活动图绘制步骤
1.绘制起始点:用实心圆表示流程起点。
2.添加活动:用圆角矩形标注操作(如“验证输入”“计算结果”)。
3.建立分支/合并:用菱形表示决策点,箭头标注条件。
4.结束流程:用空心圆表示终点。
(七)组件图绘制步骤
1.标注组件:用矩形+双横线表示组件(如“数据库”“API模块”)。
2.定义接口:在组件框下方标注接口名称。
3.建立依赖关系:用虚线箭头表示组件间的调用。
4.可选包划分:用矩形包围相关组件,标注包名。
(八)部署图绘制步骤
1.确定节点:用立方体表示物理设备(如“服务器”“PC”)。
2.标注组件:在节点内绘制组件图标。
3.连接关系:用直线+箭头表示组件部署路径。
4.添加端口:在节点边缘标注连接点(如“网络接口”)。
四、注意事项
1.图形更新:每次系统变更时,需同步更新UML图标图。
2.团队规范:统一使用相同的绘图工具(如MicrosoftVisio、StarUML)。
3.版本控制:保留历史版本记录,便于追溯变更。
4.文档关联:UML图标图需与系统设计文档对应,编号一致。
一、UML图标图概述
UML(统一建模语言)图标图是一种用于描述系统架构、设计思路和组件关系的标准化图形表示方法。它广泛应用于软件开发、系统设计等领域,帮助团队清晰地沟通和文档化复杂系统。本规范旨在明确UML图标图的使用规则和操作步骤,确保图形表达的准确性和一致性。
二、UML图标图的基本规定
(一)图标图分类
1.用例图(UseCaseDiagram):描述系统与外部用户(参与者)之间的交互关系。
(1)适用场景:适用于需求分析阶段,明确系统功能边界和用户角色。
(2)核心元素:
-参与者(Actor):系统外部实体,用小人图标表示。
-用例(UseCase):系统功能,用椭圆形表示。
-系统边界(可选):用矩形包围所有用例。
-关系:包括关联(直线)、包含(«include»)、扩展(«extend»)、泛化(虚线+空心箭头)。
2.类图(ClassDiagram):展示系统中的类、属性、方法及其关系。
(1)适用场景:适用于系统设计阶段,定义数据结构和对象交互逻辑。
(2)核心元素:
-类(Class):用矩形表示,分为三个部分:名称、属性、方法。
-属性(Attribute):格式为“类型名称:属性名”,如`intage`。
-方法(Method):格式为“返回类型:方法名(参数列表)”,如`voidlogin(Stringusername)`。
-关系:包括关联(实线)、依赖(虚线)、泛化(空心箭头)、聚合(空心菱形)、组合(实心菱形)。
3.序列图(SequenceDiagram):表现对象间的交互顺序和时间顺序。
(1)适用场景:适用于详细设计阶段,明确方法调用流程。
(2)核心元素:
-生命线(Lifeline):垂直虚线表示对象存在时间。
-消息(Message):箭头表示方法调用,格式为`[时间]方法名(参数)`。
-回调(Return):向下的箭头表示返回值。
-并发(可选):用分叉/合并符号表示并行执行。
4.协作图(CollaborationDiagram):强调对象间的消息传递和协作关系。
(1)适用场景:适用于需要关注对象关系而非时间顺序的场景。
(2)核心元素:
-对象(Object):用矩形表示,标注名称。
-消息(Message):用实线+箭头表示,编号(1,2,3…)表示顺序。
-关联(实线):表示对象间的关系。
5.状态图(StateDiagram):描述对象在生命周期中的状态变化。
(1)适用场景:适用于描述具有复杂状态逻辑的对象(如订单、用户)。
(2)核心元素:
-状态(State):用圆角矩形表示,如“待处理”“已发货”。
-初始状态(Initial):实心圆。
-终止状态(Final):空心圆。
-转换(Transition):箭头表示状态变化,标注触发条件(如`onPayment`)。
-入口/出口(可选):用`<<entry>>`/`<<exit>>`标注动作。
6.活动图(ActivityDiagram):展现系统或用例的流程和逻辑。
(1)适用场景:适用于描述业务流程或算法逻辑。
(2)核心元素:
-起始/终止点(Initial/Final):实心/空心圆。
-活动(Activity):圆角矩形表示操作。
-分支/合并(菱形):表示决策点。
-并行(分叉/合并):用垂直线分隔并行分支。
-控制流:箭头表示执行顺序。
7.组件图(ComponentDiagram):表示系统中的物理组件及其依赖关系。
(1)适用场景:适用于系统架构设计,展示模块化结构。
(2)核心元素:
-组件(Component):矩形+双横线,标注名称和接口。
-接口(Interface):用`{<<interface>>}`标注。
-依赖(虚线箭头):表示组件间调用关系。
-关联(实线箭头):表示组件协作。
8.部署图(DeploymentDiagram):描述系统在物理节点上的分布情况。
(1)适用场景:适用于系统部署阶段,展示硬件和软件配置。
(2)核心元素:
-节点(Node):立方体表示物理设备(如服务器、PC)。
-组件(Component):在节点内标注。
-连接(直线箭头):表示网络或通信路径。
-端口(可选):在节点边缘标注连接点(如`eth0`)。
(二)图形规范
1.图标风格:
(1)线条:黑色或深灰色,粗细统一(主线1px,细线0.5px)。
(2)颜色:避免使用过多颜色,建议仅用黑色线条,关键关系可加粗。
(3)字体:Arial或TimesNewRoman,字号统一(名称12pt,注释10pt)。
2.命名规则:
(1)参与者:首字母大写(如`Customer`、`Admin`)。
(2)用例:动词短语(如`PlaceOrder`、`ViewProfile`)。
(3)类:名词(如`Product`、`Transaction`)。
(4)属性/方法:首字母小写,驼峰命名(如`orderDate`、`calculateTotal()`)。
3.版本要求:
(1)工具:使用支持UML2.0或更高版本的绘图工具(如StarUML、VisualParadigm)。
(2)标准:遵循《UnifiedModelingLanguageReferenceManual》(第2版或更高版)规范。
三、UML图标图的操作规范
(一)用例图绘制步骤
1.确定参与者:
(1)列出所有与系统交互的外部用户,包括直接和间接交互。
(2)示例:`Customer`(用户)、`SystemAdmin`(管理员)、`PaymentGateway`(第三方服务)。
2.定义用例:
(1)根据需求文档,列出参与者可发起的操作。
(2)避免过于细节或抽象,用例应明确描述系统价值。
(3)示例:`Customer`的用例包括`RegisterAccount`、`BrowseProducts`、`PlaceOrder`。
3.建立关系:
(1)关联:用直线连接参与者和用例,无箭头。
(2)包含:用«include»标签(如`PlaceOrder»include»PaymentProcessing`)。
(3)扩展:用«extend»标签(如`PlaceOrder»extend»ShippingOptions`)。
(4)泛化:用虚线+空心箭头(如多个参与者共享用例)。
4.绘制系统边界:
(1)用矩形框住所有用例,标注系统名称(如`E-CommerceSystem`)。
(2)可选:在边界外标注外部依赖(如`Database`、`Third-partyAPIs`)。
(二)类图绘制步骤
1.识别类:
(1)根据领域模型,列出核心实体(名词转换)。
(2)示例:`User`、`Product`、`Order`、`Payment`。
2.定义属性:
(1)列出每个类的属性,标注类型和可见性(+/-)。
(2)示例:`User`的属性:`+username:String`、`+passwordHash:String`、`-email:String`。
3.标注方法:
(1)列出核心方法,标注返回类型和参数。
(2)示例:`Order`的方法:`+calculateTotal():Double`、`+addItem(Itemitem):void`。
4.建立关系:
(1)关联:实线+空心箭头(如`Order`关联`User`)。
(2)依赖:虚线(如`Order`依赖`DateTime`类)。
(3)泛化:空心箭头(如`VIPUser`继承`User`)。
(4)聚合/组合:空心/实心菱形(如`Order`聚合`Item`)。
(三)序列图绘制步骤
1.确定对象:
(1)列出用例或操作涉及的核心对象。
(2)示例:`User`、`Cart`、`OrderService`、`PaymentProcessor`。
2.绘制生命线:
(1)横向排列对象,从上到下绘制垂直虚线。
(2)标注对象名称在生命线左侧。
3.添加消息:
(1)按时间顺序,用箭头标注方法调用(如`User->Cart:addItem(item)`)。
(2)区分同步(实线)和异步(虚线)。
(3)标注返回值(可选):`Cart<-OrderService:total`。
4.排序时间:
(1)消息从上至下排列,编号(1,2,3…)表示执行顺序。
(2)可选:用方括号标注时间范围(如`[t1]`)。
(四)协作图绘制步骤
1.确定对象:与序列图相同,但重点展示关系。
2.绘制对象框:
(1)用矩形标注对象,包含名称和角色(如`[User:initiator]`)。
3.连接消息:
(1)用实线+箭头表示消息传递,编号(1,2,3…)表示顺序。
(2)标注方法名(如`msg1:requestApproval()`)。
4.标注关系:
(1)用实线表示对象间的关联(如`User--Cart`)。
(2)可选:用注释框说明复杂关系。
(五)状态图绘制步骤
1.确定初始/终止状态:
(1)初始状态:实心圆,标注`<<initial>>`。
(2)终止状态:空心圆,标注`<<final>>`。
2.定义状态:
(1)用圆角矩形表示状态,按逻辑分组(如`Order`的状态:`Pending`、`Processing`、`Shipped`、`Delivered`)。
3.添加转换:
(1)用箭头表示状态变化,标注触发条件(如`onPayment->Processing`)。
(2)避免循环转换,必要时用菱形标注条件。
4.标注动作:
(1)用`<<entry>>`/`<<exit>>`标注状态进入/退出时的动作(如`<<entry>>updateStatus()`)。
(六)活动图绘制步骤
1.绘制起始/终止点:
(1)起始点:实心圆,标注`<<start>>`。
(2)终止点:空心圆,标注`<<end>>`。
2.添加活动:
(1)用圆角矩形表示操作,按流程顺序排列(如`ReceiveRequest`、`ValidateInput`)。
3.建立分支/合并:
(1)决策点:菱形,标注条件(如`isValid?`)。
(2)合并:用垂直线连接分支路径。
4.并行执行:
(1)分叉:用垂直线从活动延伸,标注`<<fork>>`。
(2)合并:用垂直线汇聚并行路径,标注`<<join>>`。
(七)组件图绘制步骤
1.标注组件:
(1)用矩形+双横线表示组件,标注名称(如`UserService`、`DatabaseModule`)。
2.定义接口:
(1)在组件下方用`{<<interface>>}`标注(如`UserService:{login,register}`)。
3.建立依赖关系:
(1)虚线箭头表示调用(如`Frontend->Backend:fetchUser()`)。
4.绘制组件依赖图:
(1)按模块划分,用包(矩形)封装相关组件(如`{Authentication}`包含`UserService`、`TokenGenerator`)。
(八)部署图绘制步骤
1.确定节点:
(1)列出物理设备(服务器、PC、数据库),用立方体表示。
(2)标注节点名称(如`Server1`、`DatabaseCluster`)。
2.标注组件:
(1)在节点内绘制组件图标,标注名称(如`Server1:{WebApp,API}`)。
3.建立连接:
(1)直线箭头表示网络连接(如`Server1->DatabaseCluster:SQL`)。
(2)标注协议(如`TCP/IP`)。
4.添加端口:
(1)在节点边缘标注连接点(如`Server1:eth0`)。
(2)用`<<port>>`标注(如`<<port>>8080`)。
四、注意事项
1.图形更新:
(1)每次系统需求变更时,需同步更新UML图标图,并记录变更日志。
(2)保持版本控制,使用版本号(如v1.0,v1.1)区分不同版本。
2.团队规范:
(1)统一绘图工具:团队内使用同一工具(如StarUML5.6.0)和模板。
(2)命名规范:所有图元名称需通过团队评审,避免歧义。
3.文档关联:
(1)UML图标图需与需求文档、设计文档对应,编号一致(如图1.1、图2.3)。
(2)在文档中引用UML图时,标注完整路径(如“详见附录B-1:用户注册用例图”)。
4.审核流程:
(1)初稿完成后,由架构师和开发团队交叉审核。
(2)审核通过后,存档至团队知识库(如Confluence空间)。
5.培训要求:
(1)新成员需接受UML绘图规范培训,完成练习考核。
(2)定期组织复习,确保团队对标准的理解一致。
一、UML图标图概述
UML(统一建模语言)图标图是一种用于描述系统架构、设计思路和组件关系的标准化图形表示方法。它广泛应用于软件开发、系统设计等领域,帮助团队清晰地沟通和文档化复杂系统。本规范旨在明确UML图标图的使用规则和操作步骤,确保图形表达的准确性和一致性。
二、UML图标图的基本规定
(一)图标图分类
1.用例图(UseCaseDiagram):描述系统与外部用户(参与者)之间的交互关系。
2.类图(ClassDiagram):展示系统中的类、属性、方法及其关系。
3.序列图(SequenceDiagram):表现对象间的交互顺序和时间顺序。
4.协作图(CollaborationDiagram):强调对象间的消息传递和协作关系。
5.状态图(StateDiagram):描述对象在生命周期中的状态变化。
6.活动图(ActivityDiagram):展现系统或用例的流程和逻辑。
7.组件图(ComponentDiagram):表示系统中的物理组件及其依赖关系。
8.部署图(DeploymentDiagram):描述系统在物理节点上的分布情况。
(二)图形规范
1.图标风格:采用标准UML符号,线条粗细、颜色需统一,建议使用黑色或深灰色线条。
2.命名规则:图元名称需简洁明确,避免使用缩写或歧义性词汇。
3.版本要求:使用最新版UML标准(如UML2.0或更高版本),确保兼容性。
三、UML图标图的操作规范
(一)用例图绘制步骤
1.确定参与者:列出所有与系统交互的外部用户(如“管理员”“访客”)。
2.定义用例:标注参与者可执行的操作(如“登录系统”“查看报告”)。
3.建立关系:用直线连接参与者和用例,箭头表示交互方向。
4.可选扩展:添加系统边界框(矩形),包含所有用例。
(二)类图绘制步骤
1.识别类:列出系统核心实体(如“用户”“订单”)。
2.定义属性:在类框上方标注属性(如“用户ID”“订单日期”)。
3.标注方法:在类框下方列出方法(如“登录()”“支付()”)。
4.建立关系:
-关联(实线):表示依赖关系。
-泛化(虚线+空心箭头):表示继承关系。
-聚合(空心菱形):表示整体与部分关系。
(三)序列图绘制步骤
1.确定对象:列出所有参与交互的类(如“客服”“系统”)。
2.绘制生命线:垂直虚线表示对象存在时间。
3.添加消息:用箭头标注方法调用(如“请求处理()”)。
4.排序时间:消息按时间顺序从上至下排列。
(四)协作图绘制步骤
1.确定对象:与序列图类似,但重点展示对象间的关系。
2.绘制对象框:用矩形表示对象,标注名称。
3.连接消息:用实线+箭头表示消息传递。
4.标注顺序号:用数字(1,2,3…)表示调用顺序。
(五)状态图绘制步骤
1.初始状态:用实心圆表示起始状态(如“空闲”)。
2.定义状态:用圆角矩形标注状态(如“处理中”“完成”)。
3.添加转换:用箭头表示状态变化,标注触发条件(如“收到请求”)。
4.终止状态:用空心圆表示结束状态。
(六)活动图绘制步骤
1.绘制起始点:用实心圆表示流程起点。
2.添加活动:用圆角矩形标注操作(如“验证输入”“计算结果”)。
3.建立分支/合并:用菱形表示决策点,箭头标注条件。
4.结束流程:用空心圆表示终点。
(七)组件图绘制步骤
1.标注组件:用矩形+双横线表示组件(如“数据库”“API模块”)。
2.定义接口:在组件框下方标注接口名称。
3.建立依赖关系:用虚线箭头表示组件间的调用。
4.可选包划分:用矩形包围相关组件,标注包名。
(八)部署图绘制步骤
1.确定节点:用立方体表示物理设备(如“服务器”“PC”)。
2.标注组件:在节点内绘制组件图标。
3.连接关系:用直线+箭头表示组件部署路径。
4.添加端口:在节点边缘标注连接点(如“网络接口”)。
四、注意事项
1.图形更新:每次系统变更时,需同步更新UML图标图。
2.团队规范:统一使用相同的绘图工具(如MicrosoftVisio、StarUML)。
3.版本控制:保留历史版本记录,便于追溯变更。
4.文档关联:UML图标图需与系统设计文档对应,编号一致。
一、UML图标图概述
UML(统一建模语言)图标图是一种用于描述系统架构、设计思路和组件关系的标准化图形表示方法。它广泛应用于软件开发、系统设计等领域,帮助团队清晰地沟通和文档化复杂系统。本规范旨在明确UML图标图的使用规则和操作步骤,确保图形表达的准确性和一致性。
二、UML图标图的基本规定
(一)图标图分类
1.用例图(UseCaseDiagram):描述系统与外部用户(参与者)之间的交互关系。
(1)适用场景:适用于需求分析阶段,明确系统功能边界和用户角色。
(2)核心元素:
-参与者(Actor):系统外部实体,用小人图标表示。
-用例(UseCase):系统功能,用椭圆形表示。
-系统边界(可选):用矩形包围所有用例。
-关系:包括关联(直线)、包含(«include»)、扩展(«extend»)、泛化(虚线+空心箭头)。
2.类图(ClassDiagram):展示系统中的类、属性、方法及其关系。
(1)适用场景:适用于系统设计阶段,定义数据结构和对象交互逻辑。
(2)核心元素:
-类(Class):用矩形表示,分为三个部分:名称、属性、方法。
-属性(Attribute):格式为“类型名称:属性名”,如`intage`。
-方法(Method):格式为“返回类型:方法名(参数列表)”,如`voidlogin(Stringusername)`。
-关系:包括关联(实线)、依赖(虚线)、泛化(空心箭头)、聚合(空心菱形)、组合(实心菱形)。
3.序列图(SequenceDiagram):表现对象间的交互顺序和时间顺序。
(1)适用场景:适用于详细设计阶段,明确方法调用流程。
(2)核心元素:
-生命线(Lifeline):垂直虚线表示对象存在时间。
-消息(Message):箭头表示方法调用,格式为`[时间]方法名(参数)`。
-回调(Return):向下的箭头表示返回值。
-并发(可选):用分叉/合并符号表示并行执行。
4.协作图(CollaborationDiagram):强调对象间的消息传递和协作关系。
(1)适用场景:适用于需要关注对象关系而非时间顺序的场景。
(2)核心元素:
-对象(Object):用矩形表示,标注名称。
-消息(Message):用实线+箭头表示,编号(1,2,3…)表示顺序。
-关联(实线):表示对象间的关系。
5.状态图(StateDiagram):描述对象在生命周期中的状态变化。
(1)适用场景:适用于描述具有复杂状态逻辑的对象(如订单、用户)。
(2)核心元素:
-状态(State):用圆角矩形表示,如“待处理”“已发货”。
-初始状态(Initial):实心圆。
-终止状态(Final):空心圆。
-转换(Transition):箭头表示状态变化,标注触发条件(如`onPayment`)。
-入口/出口(可选):用`<<entry>>`/`<<exit>>`标注动作。
6.活动图(ActivityDiagram):展现系统或用例的流程和逻辑。
(1)适用场景:适用于描述业务流程或算法逻辑。
(2)核心元素:
-起始/终止点(Initial/Final):实心/空心圆。
-活动(Activity):圆角矩形表示操作。
-分支/合并(菱形):表示决策点。
-并行(分叉/合并):用垂直线分隔并行分支。
-控制流:箭头表示执行顺序。
7.组件图(ComponentDiagram):表示系统中的物理组件及其依赖关系。
(1)适用场景:适用于系统架构设计,展示模块化结构。
(2)核心元素:
-组件(Component):矩形+双横线,标注名称和接口。
-接口(Interface):用`{<<interface>>}`标注。
-依赖(虚线箭头):表示组件间调用关系。
-关联(实线箭头):表示组件协作。
8.部署图(DeploymentDiagram):描述系统在物理节点上的分布情况。
(1)适用场景:适用于系统部署阶段,展示硬件和软件配置。
(2)核心元素:
-节点(Node):立方体表示物理设备(如服务器、PC)。
-组件(Component):在节点内标注。
-连接(直线箭头):表示网络或通信路径。
-端口(可选):在节点边缘标注连接点(如`eth0`)。
(二)图形规范
1.图标风格:
(1)线条:黑色或深灰色,粗细统一(主线1px,细线0.5px)。
(2)颜色:避免使用过多颜色,建议仅用黑色线条,关键关系可加粗。
(3)字体:Arial或TimesNewRoman,字号统一(名称12pt,注释10pt)。
2.命名规则:
(1)参与者:首字母大写(如`Customer`、`Admin`)。
(2)用例:动词短语(如`PlaceOrder`、`ViewProfile`)。
(3)类:名词(如`Product`、`Transaction`)。
(4)属性/方法:首字母小写,驼峰命名(如`orderDate`、`calculateTotal()`)。
3.版本要求:
(1)工具:使用支持UML2.0或更高版本的绘图工具(如StarUML、VisualParadigm)。
(2)标准:遵循《UnifiedModelingLanguageReferenceManual》(第2版或更高版)规范。
三、UML图标图的操作规范
(一)用例图绘制步骤
1.确定参与者:
(1)列出所有与系统交互的外部用户,包括直接和间接交互。
(2)示例:`Customer`(用户)、`SystemAdmin`(管理员)、`PaymentGateway`(第三方服务)。
2.定义用例:
(1)根据需求文档,列出参与者可发起的操作。
(2)避免过于细节或抽象,用例应明确描述系统价值。
(3)示例:`Customer`的用例包括`RegisterAccount`、`BrowseProducts`、`PlaceOrder`。
3.建立关系:
(1)关联:用直线连接参与者和用例,无箭头。
(2)包含:用«include»标签(如`PlaceOrder»include»PaymentProcessing`)。
(3)扩展:用«extend»标签(如`PlaceOrder»extend»ShippingOptions`)。
(4)泛化:用虚线+空心箭头(如多个参与者共享用例)。
4.绘制系统边界:
(1)用矩形框住所有用例,标注系统名称(如`E-CommerceSystem`)。
(2)可选:在边界外标注外部依赖(如`Database`、`Third-partyAPIs`)。
(二)类图绘制步骤
1.识别类:
(1)根据领域模型,列出核心实体(名词转换)。
(2)示例:`User`、`Product`、`Order`、`Payment`。
2.定义属性:
(1)列出每个类的属性,标注类型和可见性(+/-)。
(2)示例:`User`的属性:`+username:String`、`+passwordHash:String`、`-email:String`。
3.标注方法:
(1)列出核心方法,标注返回类型和参数。
(2)示例:`Order`的方法:`+calculateTotal():Double`、`+addItem(Itemitem):void`。
4.建立关系:
(1)关联:实线+空心箭头(如`Order`关联`User`)。
(2)依赖:虚线(如`Order`依赖`DateTime`类)。
(3)泛化:空心箭头(如`VIPUser`继承`User`)。
(4)聚合/组合:空心/实心菱形(如`Order`聚合`Item`)。
(三)序列图绘制步骤
1.确定对象:
(1)列出用例或操作涉及的核心对象。
(2)示例:`User`、`Cart`、`OrderService`、`PaymentProcessor`。
2.绘制生命线:
(1)横向排列对象,从上到下绘制垂直虚线。
(2)标注对象名称在生命线左侧。
3.添加消息:
(1)按时间顺序,用箭头标注方法调用(如`User->Cart:addItem(item)`)。
(2)区分同步(实线)和异步(虚线)。
(3)标注返回值(可选):`Cart<-OrderService:total`。
4.排序时间:
(1)消息从上至下排列,编号(1,2,3…)表示执行顺序。
(2)可选:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业后备人才培养方案
- 企业供应链追溯方案
- 企业改造工程管控方案
- 2025-2026学年准备上课啦教学设计
- 内蒙古呼和浩特市部分学校2025-2026学年七年级上学期期中联考数学试卷(含答案)
- 2026年江苏省南京市鼓楼区中考历史二模试卷(含答案)
- 2025-2026学年湖南省衡阳市常宁市第一中学等学校高一(下)期中数学试卷(含答案)
- 企业服务渠道融合方案
- 企业服务SOP落地方案
- 企业安全信息平台方案
- 现浇泡沫混凝土保温层施工实施细则
- 七氟丙烷检测合同范本
- (人教A版)必修第二册高一数学下学期期末综合测试卷(原卷版)
- 2024-2025学年湘教版七年级下学期期末质量评价数学试卷
- 2025年初中地理历年会考真题汇编及解析
- 幼儿园闽南语课题申报书
- 第一节 用Arduino单板机控制节日彩灯教学设计-2025-2026学年初中信息技术河大版2016八年级下册-河大音像版2016
- 2025年教师职称-上海-上海教师职称(基础知识、综合素质、高中语文)历年参考题库含答案解析(5套)
- 《流体力学》全套教学课件
- 煤矿企业融资方案书范本
- 苏州市农业发展集团有限公司招聘考试笔试试题(含答案)
评论
0/150
提交评论