UML用例图画法体会
- 格式:docx
- 大小:55.16 KB
- 文档页数:3
南京信息工程大学实验(实习)报告一、实验目的1.熟悉活动图的基本功能和使用方法。
2.掌握如何使用建模工具绘制活动图方法。
二、实验器材1.计算机一台。
2.Rational Rose 工具软件。
三、实验内容根据图书管理系统开发进度,在完成对系统的需求建模,得到用例模型后,应针对每个用例进行业务分析,说明其具体的业务流程,现系统分析部指派您完成该项任务。
要求:用活动图来描述系统中已知用例的业务过程:1.描述删除读者用例。
四、实验步骤绘制“删除读者信息”用例的活动图。
删除读者信息一般按照以下步骤进行:(1)管理员在录入界面,输入待删除的读者名;(2)“业务逻辑”组件在数据库中,查找待删除的读者名;(3)如果不存在,则显示出错信息,返回步骤(1),如果存在则继续;(4)“业务逻辑”组件判断“待删除的读者”是否可以删除;(5)如果不可以,则显示出错信息,返回步骤(8),如果可以则继续;(6)在数据库中,删除相关信息;(7)显示删除成功信息;(8)结束。
绘图步骤:(1)在用例图中,找到删除的用例,在删除用例上单击右键,在弹出的快捷菜单中选“New”,Rose工具也会弹出一个菜单,选”Activity Diagram”,选中后单击,便可以新建好一个活动图。
(2)新建好活动图后,双击删除的活动图,然后把在左边的工具栏内点击“Swinlane“,在右边的图添加一个泳道,并命名为administrator.按照此步骤,再添加另一个泳道,并命名为SystemTool。
(3)接着在左边的工具上选取开始点,并在administrator的泳道上添加;添加完开始结点后,再来为此活动图添加活动,在左边的工具栏上选中Activity这个图标,在administrator 这边的泳道上添加一个活动,命名为登录(login),再在开始结点和活动登录(login)之间添加活动关系。
(4)完成步骤(2)后,登录输入需要对输入的信息进行验证,则在图中添加一个验证框:添加验证框后,验证的内容,如果通过,则允许管理员进行查询操作;如不能通过,则结束。
UML用例图的绘制与分析UML(Unified Modeling Language)是一种用于软件开发的建模语言,它提供了一种标准的图形化表示方法,用于描述系统的结构和行为。
其中,用例图是UML中最常用的图之一,用于描述系统的功能需求和用户之间的交互关系。
本文将介绍UML用例图的绘制与分析。
一、概述UML用例图是一种高层次的视图,用于表示系统中的参与者(Actor)和用例(Use Case)之间的关系。
参与者可以是人、其他系统或外部设备,用例则表示系统提供的功能。
用例图可以帮助开发人员和用户理解系统的功能需求,并提供一个沟通的桥梁。
二、绘制用例图绘制用例图的第一步是确定参与者和用例。
参与者是与系统交互的实体,他们可以是用户、其他系统或外部设备。
用例是系统提供的功能,它描述了系统完成的任务或目标。
在绘制用例图时,可以使用椭圆形表示参与者,使用矩形表示用例。
接下来,需要确定参与者和用例之间的关系。
一种常见的关系是关联关系(Association),表示参与者与用例之间的关联。
关联关系可以用实线箭头表示,箭头指向用例。
另一种关系是包含关系(Include),表示一个用例包含了另一个用例。
包含关系可以用虚线箭头表示,箭头指向被包含的用例。
还有一种关系是扩展关系(Extend),表示一个用例可以在另一个用例的基础上进行扩展。
扩展关系可以用虚线箭头表示,箭头指向被扩展的用例。
最后,可以添加注释和约束条件来完善用例图。
注释可以用于解释用例的功能或描述参与者的特征。
约束条件可以用于限制用例的执行条件或前置条件。
三、分析用例图用例图不仅仅是一种图形化的表示方法,它还可以用于分析系统的功能需求和用户之间的交互关系。
通过分析用例图,可以发现系统中可能存在的问题或改进的空间。
首先,可以通过用例图来识别系统的功能需求。
每个用例代表了一个系统功能,通过分析用例图,可以清楚地了解系统需要完成哪些任务或目标。
如果用例图中缺少一些重要的用例,说明系统的功能需求可能不完整,需要进一步补充。
U ml用例图心得序言:用例图主要用来描述“用户、需求、系统功能单元”之间的关系。
它展示了一个外部用户能够观察到的系统功能模型图。
【用途】:帮助开发团队以一种可视化的方式理解系统的功能需求。
用例图所包含的元素如下:1. 参与者(Actor表示与您的应用程序或系统进行交互的用户、组织或外部系统。
用一个小人表示。
2. 用例(Use Case用例就是外部可见的系统功能,对系统提供的服务进行描述。
用椭圆表示。
3. 子系统(Subsystem用来展示系统的一部分功能,这部分功能联系紧密。
4. 关系用例图中涉及的关系有:关联、泛化、包含、扩展。
如下表所示:a. 关联(Association表示参与者与用例之间的通信,任何一方都可发送或接受消息。
【箭头指向】:指向消息接收方b. 泛化(Inheritance就是通常理解的继承关系,子用例和父用例相似,但表现出更特别的行为;子用例将继承父用例的所有结构、行为和关系。
子用例可以使用父用例的一段行为,也可以重载它。
父用例通常是抽象的。
【箭头指向】:指向父用例c. 包含(Include包含关系用来把一个较复杂用例所表示的功能分解成较小的步骤。
【箭头指向】:指向分解出来的功能用例d. 扩展(Extend扩展关系是指用例功能的延伸,相当于为基础用例提供一个附加功能。
【箭头指向】:指向基础用例e. 依赖(Dependency以上4种关系,是UML定义的标准关系。
但VS2010的用例模型图中,添加了依赖关系,用带箭头的虚线表示,表示源用例依赖于目标用例。
【箭头指向】:指向被依赖项5. 项目(Artifact用例图虽然是用来帮助人们形象地理解功能需求,但却没多少人能够通看懂它。
很多时候跟用户交流甚至用Excel都比用例图强,VS2010中引入了“项目”这样一个元素,以便让开发人员能够在用例图中链接一个普通文档。
用依赖关系把某个用例依赖到项目上:然后把项目-》属性的Hyperlink设置到你的文档上;这样当你在用例图上双击项目时,就会打开相关联的文档。
UML学习心得体会第一篇:UML学习心得体会——uml学习体会养成良好的绘制uml序列图的习惯在学习uml的过程中,你可能会遇到绘制uml序列图的问题,这里就讨论一下怎样才能养成良好的绘制uml序列图的习惯。
有一些方法可以帮助您提高uml序列图的质量和效力。
它们包括:和主题问题专家一起验证决策;使解决方案尽量简单;为绘制消息和返回值选择一种一致且有效的风格;将序列图分层;遵循一致的逻辑风格;牢记序列图是动态的。
一:验证决策绘制uml序列图时,我做了一些对其它模型可能有潜在影响的决策。
例如,在对第10步建模时,假设(大致上是个设计决策)费用显示屏幕同时也处理学生对费用是否可接受所进行的验证。
该决策应该由用户界面原型反映出来,并由主题问题专家(sme)进行验证。
您应该和sme(特别是那些对于如何开发类似模型有着深刻见解的富有经验的人)一起执行序列图的绘制工作。
二:保持简单在对第2和第3步建模时,我忽然意识到学生可能应该使用口令进入系统。
在向sme提出了这个概念后发觉我错了:姓名和学号组合对于我们的目的来说已经足够唯一,并且学校也不希望增加复杂的口令管理。
这是个很有意思的决策,因为这是学校的一个运作策略,所以可以作为一条商业规则记载到增补规范中。
通过与sme一起检验这个想法,而不是假定我比他们知道得更多,我避免了“镀金”的机会,因而减少了我们小组开发这一系统所需的工作。
三:绘制消息和返回值绘制uml序列图时我更喜欢从左至右地绘制消息,从右至左地绘制返回值,尽管这样对于复杂的对象/类来说不总是非常合适。
我将消息上的标签和返回值对齐到离箭头最近的位置。
我不喜欢在序列图上标出返回值,为的是使图尽可能地简化。
不过,始终标出返回值也同样有效,特别是在序列图用于设计而不是分析目的时。
(我希望我的分析图尽量简单,而设计图尽量全面。
)在分析期间,我的目标是理解逻辑和确保逻辑的正确性。
而在设计期间,则要赋予消息精确的细节。
UML用例图的绘制技巧UML(Unified Modeling Language)是一种用于软件系统的建模语言,它提供了一套标准的图形符号和规范,用于描述系统的结构和行为。
其中,用例图是一种常用的图示工具,用于描述系统的功能需求和用户之间的交互。
在绘制UML用例图时,我们需要掌握一些技巧,以确保图示的清晰、准确和易于理解。
本文将介绍一些常用的绘制技巧,帮助读者更好地应用UML用例图。
1. 确定系统边界在绘制用例图之前,我们需要明确系统的边界。
系统边界是指系统与外部实体之间的分界线,它定义了系统的范围和界限。
确定系统边界是用例图绘制的第一步,它可以帮助我们理清系统的功能和参与者之间的关系。
2. 识别参与者参与者是指与系统进行交互的外部实体,可以是人、其他软件系统或硬件设备等。
在绘制用例图时,我们需要识别所有的参与者,并将它们表示为图中的符号。
参与者通常以人的图标或简单的图形表示,以便于理解和识别。
3. 确定用例用例是指系统的功能需求,描述了系统与参与者之间的交互过程。
在绘制用例图时,我们需要明确系统的所有用例,并将它们表示为图中的椭圆形符号。
每个用例应该具有一个简洁明确的名称,以便于理解和识别。
4. 确定参与者和用例之间的关系参与者和用例之间的关系是用例图的核心内容。
在绘制用例图时,我们需要明确参与者与用例之间的关系,并将它们表示为图中的连线。
常见的关系有:关联关系(Association)、包含关系(Include)、扩展关系(Extend)等。
这些关系可以帮助我们理清系统的功能和参与者之间的交互流程。
5. 添加扩展和包含关系扩展和包含关系是用例图中的重要概念,用于描述用例之间的依赖关系。
扩展关系表示一个用例可以在另一个用例的基础上进行扩展,而包含关系表示一个用例可以包含另一个用例。
在绘制用例图时,我们可以使用带箭头的虚线来表示扩展关系,使用带箭头的实线来表示包含关系。
6. 使用注释和说明在绘制用例图时,我们可以使用注释和说明来提供额外的信息和解释。
用例图初感UML是一组图示符号的标准。
所谓图示符号,就是一组定义好的图示,它们可以表达定义好的各种意思。
用UML进行软件建模,就是用规定好的符号画图,这些图表达了开发人员脑中的软件系统。
用UML进行软件建模,其难度并不比我们小时候上的美术课更难。
在美术课上,一个圆形加上四根线条表示太阳,一个三角形加上一个矩形表示房子;同理,在UML的用例图中,一个椭圆表示用例,一个小人表示参与者。
我并不认为它们之间有质的区别,想到我对这种小学生画图课恐惧了几年,不由得感到羞愧。
用例图是UML的九个图中较为重要和常用的一种图。
常常用于软件开发的需求分析阶段,也能用于软件的系统测试阶段。
简单的来说,用例图是描述系统的外部视图。
在开始设计一个软件系统时(更广义的情况下,可以用来设计任何系统),需要一种手段来发现系统的功能,用例图虽然是图示,但是这些图示隐含了一种启发系统功能的手段。
其实所有的UML图都只包含图示和标准,并不包含方法,但是它们往往隐含了某种方法。
UML和软件开发方法的关系,很类似于汉字和语文的关系。
用例图包含了三种基本的概念:用例、角色和系统。
它们可以组合起来表达系统的外部视图。
而且这种表达方式是如此直观和简单。
第一张用例图画用例图是一件很简单的事情,而且感觉还很舒适,因为用例图简洁、直观。
虽然用例图不能像HelloWorld一样运行,也不能生成代码,不过画一张清晰的用例图还是很有成就感的。
我使用的工具是Eclipse+EclipseUML插件,功能不如Rose,但是是开源而且免费的(EclipseUML有free版也有企业版),而且效果也不错。
第一张用例图如下:可以看出图中有一个系统(保险商务系统),两个角色(客户和保险销售员)以及三个用例(签订保险单、销售统计资料、客户数据资料),另外还有四个连接线以及一个注释。
如果在纸上或者合适的工具中,画这样一张用例大概只需要五分钟吧。
不过仅仅画出来是没有意义的,需要弄清楚其背后真正的含义才行。
UML用例图中的用例规约与系统需求细化与优化技巧的实践与总结在软件开发过程中,用例图是一种常用的建模工具,用于描述系统的功能需求和用户与系统之间的交互。
而用例规约则是用例图的一部分,用于详细描述每个用例的具体行为和功能。
本文将探讨在UML用例图中的用例规约与系统需求细化与优化技巧的实践与总结。
一、用例规约的作用与重要性用例规约是用例图中用例的详细描述,它包括前置条件、后置条件、基本流程和扩展流程等内容。
用例规约的作用在于明确系统的功能需求,为开发人员提供清晰的指导,同时也为测试人员提供测试用例的基础。
用例规约的编写要求准确、完整、一致,能够有效地传达需求信息。
二、用例规约的编写技巧1. 确定用例的边界:在编写用例规约之前,需要明确用例的边界,即确定该用例的输入、输出和操作对象。
这有助于准确定义用例的前置条件和后置条件。
2. 描述用例的基本流程:基本流程是用例的主要流程,描述了用户与系统之间的交互过程。
在编写基本流程时,应注意流程的逻辑性和可读性,避免出现歧义和冗余。
3. 考虑异常情况:除了基本流程,用例规约还应考虑系统可能出现的异常情况,并编写相应的扩展流程。
这有助于全面地描述用例的功能和行为。
4. 使用简洁的语言:用例规约应使用简洁明了的语言,避免使用过于复杂的术语和句式。
这有助于提高用例规约的可读性和理解性。
三、系统需求细化与优化技巧1. 分解需求:在系统需求细化过程中,需要将整体需求分解为更具体、更详细的子需求。
这有助于明确每个子需求的功能和行为,并为后续的设计和开发提供指导。
2. 确定优先级:在需求细化过程中,需要根据业务需求和用户需求的重要性,确定各个需求的优先级。
这有助于合理安排开发资源,确保关键需求的优先实现。
3. 定义验收标准:为了保证需求的正确实现,需在需求细化过程中定义相应的验收标准。
验收标准应具体明确,便于开发人员和测试人员进行验证和测试。
4. 不断迭代与优化:需求细化是一个迭代的过程,需求的完善和优化需要不断地与业务和用户进行沟通和反馈。
UML中的业务用例图的绘制方法和实例分析UML(Unified Modeling Language)是一种用于软件系统建模的标准化语言,它提供了一套丰富的图形符号和规则,用于描述系统的结构、行为和交互。
其中,业务用例图是UML中的一种图示工具,用于描述系统的功能需求和用户与系统之间的交互。
本文将介绍业务用例图的绘制方法,并通过一个实例分析来说明其应用。
一、业务用例图的绘制方法业务用例图主要由参与者(Actor)和用例(Use Case)两个元素组成。
参与者是系统外部的角色,可以是人、其他系统或外部设备等,用例则是描述系统功能的场景。
下面是绘制业务用例图的步骤:1. 确定参与者:首先要明确系统与外部世界的交互角色,这些角色可以是系统的用户、其他系统或外部设备等。
2. 确定用例:根据系统的功能需求,确定系统需要提供的各个功能场景,每个场景都可以作为一个用例。
3. 绘制参与者和用例:使用UML中的图形符号,将参与者和用例绘制在图中。
参与者通常用人的图标表示,用例则用椭圆形表示。
4. 连接参与者和用例:使用关联线将参与者与用例连接起来,表示参与者与用例之间的交互关系。
一般来说,参与者可以触发用例的执行,也可以接收用例的输出。
5. 添加关系:根据实际情况,可以添加其他关系,如扩展关系、包含关系等,以更准确地描述系统的功能和交互。
二、实例分析为了更好地理解业务用例图的应用,下面以一个在线购物系统为例进行分析。
在这个系统中,主要涉及的参与者有顾客和管理员。
顾客可以进行商品浏览、商品搜索、添加商品到购物车、结算购物车等操作,管理员则可以进行商品管理、订单管理等操作。
根据上述分析,我们可以绘制如下的业务用例图:(图示:一个包含顾客、管理员和相关用例的业务用例图)从图中可以看出,顾客和管理员是系统的两个主要参与者,它们与系统之间存在着不同的交互。
顾客可以通过浏览商品和搜索商品来获取所需的商品信息,然后将商品添加到购物车,并最终结算购物车。
2.设计模式常⽤的UML图分析(⽤例图、类图与时序图)1-⽤例图概述1. 展现了⼀组⽤例、参与者以及他们之间的关系。
2. ⽤例图从⽤户⾓度描述系统的静态使⽤情况,⽤于建⽴需求模型。
⽤例特征保证⽤例能够正确捕捉功能性需求,判断⽤例是否准确的依据。
1. ⽤例是动宾短语2. ⽤例是相互独⽴的3. ⽤例是由⽤户参与者启动的4. ⽤例要有可观测的执⾏结果5. ⼀个⽤例是⼀个单元参与者 ActorUML中,参与者使⽤⼀个⼩⼈表⽰:1. 参与者为系统外部与系统直接交互的⼈或事务,于系统外部与系统发⽣交互作⽤2. 参与者是⾓⾊⽽不是具体的⼈3. 代表参与者在与系统打交道时所扮演的⾓⾊4. 系统实际运作中,⼀个实际⽤户可能对应系统的多个参与者。
不同⾓⾊也可以只对应⼀个参与者,从⽽代表同⼀参与者的不通实例⽤例 Use Case系统外部可见的⼀个系统功能单元。
系统的功能由系统单元所提供,并通过⼀系列系统单元与⼀个或多个参与者之间交换的消息所表达。
系统单元⽤椭圆表⽰,椭圆中的⽂字简述系统功能:关系 Relationship常见关系类型有关联、泛化、包含和扩展关联 Association表⽰参与者与⽤例之间的通信,任何⼀⽅都可发送或接受消息。
箭头指向:指向消息接收⽅:⼦系统 SubSystem⽤来展⽰系统的⼀部分功能(紧密联系)泛化 Inheritance继承关系,⼦⽤例和⽗⽤例相似,但表现出更特别的⾏为;⼦⽤例将继承⽗⽤例的所有结构、⾏为和关系。
⼦⽤例可以使⽤⽗⽤例的⼀段⾏为,也可以重载它。
⽗⽤例通常是抽象。
箭头指向:指向⽗⽤例2-类图描述系统中的类,以及各个类之间的关系的静态试图。
表⽰类、接⼝以及它们之间的协作关系,⽤于程序设计阶段。
注意:1. 抽象类或抽象⽅法⽤斜体表⽰2. 如果是接⼝,则在类名上⽅加 <<Interface>>3. 字段和⽅法返回值的数据类型⾮必需4. 静态类或静态⽅法加下划线类图实例:类图中的事务及解释如图,类图从上到下分为三部分,分别为类名、属性和操作1. 属性:如果有属性,则每⼀个属性都必须有⼀个名字,另外还可以有其它的描述信息,如可见性、数据类型、缺省值等2. 操作:如果有操作,则每⼀个操作也都有⼀个名字,其它可选的信息包括可见性、参数的名字、参数类型、参数缺省值和操作的返回值的类型等类图中的六种关系1.实现关系 implements (类实现接⼝)⽤空⼼三⾓虚线表⽰2.泛化关系 extends (表⽰⼀般与特殊的关系) is-a⽤空⼼三⾓实线表⽰3.组合关系 (整体与部分的关系) contains-a实⼼菱形实现表⽰eg.有头类、⾝体类与⼈类类三个类,则⼈类类中应包含头类及⾝体类这两个属性,则⼈类类与头类和⾝体的关系即为组合关系。
UML⽤例图前些时间参加了潘加宇⽼师的技术讲座,UML建模技术受益匪浅。
我也把平时的⼀些积累和上次的收获总结在这篇⽂章中,主要讲解⽤例图相关的知识。
⽤例图是软件需求分析到最终实现的第⼀步,它描述⽤户如何使⽤系统及使⽤系统什么样的功能。
⽤例图从业务⾓度上体现谁来使⽤系统、⽤户希望系统提供什么样的服务,以及⽤户需要为系统提供的服务,也便于软件开发⼈员最终实现这些功能。
⽤例图在开发中被⼴泛的应⽤,但是它最常⽤来描述系统提供了什么样的功能给什么样的⽤户使⽤。
在官⽅⽂档中⽤例图包含六个元素,分别是:执⾏者(Actor)、⽤例(Use Case)、关联关系(Association)、包含关系(Include)、扩展关系(Extend)以及泛化关系(Generalization)。
但是有些UML的绘图⼯具多提供了⼀种直接关联关系(DirectedAssociation)。
⽤例图可⼀个包含注释和约束,还可⼀个包含包,⽤于将模型中的元素组合成更⼤的模块。
有时,可以将⽤例的实例引⼊到图中。
⽤例图模型如下所⽰,执⾏者⽤⼈形图标来标识,⽤例⽤椭圆来表⽰,连线表⽰它们之间的关系。
⼀、执⾏者(Actor)1、执⾏者概念是指⽤户在系统中扮演的⾓⾊。
如图1-1是⼀个⽤户管理的⽤例图,图中的⽤户、管理员就是⽤例的执⾏者。
图1-12、从业务中找出执⾏者获取系统⽤例⾸先要找出系统的执⾏者。
我们可以通过⽤户回答⼀些问题的答案来识别执⾏者。
可以参考以下问题:1. 谁使⽤系统的主要功能(主要使⽤者)?2. 谁需要系统⽀持他们⽇常⼯作?3. 谁来维护、管理系统使其正常⼯作(辅助使⽤者)?4. 系统需要控制哪些硬件?5. 系统需要其他哪些系统交互?这⾥包含其他计算机系统或者应⽤程序。
6. 对系统产⽣结果感兴趣的是哪些⼈和哪些事物?3、执⾏者之间关系因为执⾏者是类,所以多个执⾏者之间可以具有与类相同的关系。
在⽤例图中,使⽤了泛化关系来描述多个执⾏者之间的公共⾏为。
UML用例图画法体会
一、UML用例图
用例图主要用来图示化系统的主事件流程,它主要用来描述客户的需求,即用户希望系统具备的完成一定功能的动作,通俗地理解用例就是软件的功能模块,所以是设计系统分析阶段的起点,设计人员根据客户的需求来创建和解释用例图,用来描述软件应具备哪些功能模块以及这些模块之间的调用关系,UML用例图包含了用例和参与者,用例之间用关联来连接以求把系统的整个结构和功能反映给非技术人员(通常是软件的用户),对应的是软件的结构和功能分解。
用例是从系统外部可见的行为,是系统为某一个或几个参与者(Actor)提供的一段完整的服务。
从原则上来讲,用例之间都是独立、并列的,它们之间并不存在着包含从属关系。
但是为了体现一些用例之间的业务关系,提高可维护性和一致性,用例之间可以抽象出包含(include)、扩展(extend) 和泛(generalization)几种关系。
共性:都是从现有的用例中抽取出公共的那部分信息,作为一个单独的用例,然后通后过不同的方法来重用这个公共的用例,以减少模型维护的工作量。
1、包含(include)
包含关系:使用包含(Inclusion)用例来封装一组跨越多个用例的相似动作(行为片断),以便多个基(Base)用例复用。
基用例控制与包含用例的关系,以及被包含用例的事件流是否会插入到基用例的事件流中。
基用例可以依赖包含用例执行的结果,但是双方都不能访问对方的属性。
UML用例图中包含关系对典型的应用就是复用,也就是定义中说的情景。
但是有时当某用例的事件流过于复杂时,为了简化用例的描述,我们也可以把某一段事件流抽象成为一个被包含的用例;相反,用例划分太细时,也可以抽象出一个基用例,来包含这些细颗粒的用例。
这种情况类似于在过程设计语言中,将程序的某一段算法封装成一个子过程,然后再从主程序中调用这一子过程。
例如:业务中,总是存在着维护某某信息的功能,如果将它作为一个用例,那新建、编辑以及修改都要在用例详述中描述,过于复杂;如果分成新建用例、编辑用例和删除用例,则划分太细。
这时包含关系可以用来理清关系。
2、扩展(extend)
扩展关系:将基用例中一段相对独立并且可选的动作,用扩展(Extension)用例加以封装,再让它从基用例中声明的扩展点(ExtensionPoint)上进行扩展,从而使基用例行为更简练和目标更集中。
UML用例图中扩展用例为基用例添加新的行为。
扩展用例可以访问基用例的属性,因此它能根据基用例中扩展点的当前状态来判断是否执行自己。
但是扩展用例对基用例不可见。
对于一个扩展用例,可以在基用例上有几个扩展点。
例如,系统中允许用户对查询的结果进行导出、打印。
对于查询而言,能不能导出、打印查询都是一样的,导出、打印是不可见的。
导入、打印和查询相对独立,而且为查询添加了新行为。
因此可以采用扩展关系来描述:
3、泛化(generalization)
UML用例图中泛化关系:子用例和父用例相似,但表现出更特别的行为;子用例将继承父用例的所有结构、行为和关系。
子用例可以使用父用例的一段行为,也
可以重载它。
父用例通常是抽象的。
在实际应用中很少使用泛化关系,子用例中的特殊行为都可以作为父用例中的备选流存在。
例如,业务中可能存在许多需要部门领导审批的事情,但是领导审批的流程是很相似的,这时可以做成泛化关系表示:
上面是我参考的一篇文章,觉得将三种关系的区别讲得很清晰,在此基础上结合自己的系统,对项目(在线购物系统)的用例做了整体的描绘。