UML第4章 用例视图_第1页
UML第4章 用例视图_第2页
UML第4章 用例视图_第3页
UML第4章 用例视图_第4页
UML第4章 用例视图_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、自动售货系统客户购买饮料定期检修技师修理销售人员放入货物模拟基金项目模拟基金项目用例图说明了系统应该有哪用例图说明了系统应该有哪些功能,每个功能些功能,每个功能为谁服务为谁服务用例视图中包含4个用例图l用例图用例图l从系统从系统外部外部来观察系统提供哪些服务或系统具有来观察系统提供哪些服务或系统具有什么样的行为什么样的行为 l优点优点 易于沟通易于沟通 关注关注用户的目标用户的目标,可以较准确地描述需求,可以较准确地描述需求l用例图的元素用例图的元素l系统系统边界边界l参与者参与者l用例用例l参与者、用例之间的关系参与者、用例之间的关系画图建模l什么是参与者什么是参与者l系统系统外部外部l参与

2、参与了用例的了用例的执行过程执行过程l参与者的类型参与者的类型l系统用户、外部系统、某些进程系统用户、外部系统、某些进程l如何确定参与者如何确定参与者l寻找参与者:寻找参与者:P59l参与者的确认:参与者的确认:P59l参与者之间的关系参与者之间的关系l图图4-4、图、图4-5l用例解析用例解析l定义定义l用例实例、用例实例、使用使用场景场景l用例是文本用例是文本l用例仅表示功能性需求用例仅表示功能性需求参与者对系统使用方式的描述lP61lP61自动售货系统客户购买饮料定期检修技师修理销售人员放入货物识别与认识用例是一个渐近的过程识别与认识用例是一个渐近的过程用例只有名称用例只有名称l购买饮料

3、购买饮料l在客户选择并支付以后,自动售货机弹出饮料在客户选择并支付以后,自动售货机弹出饮料l定期检修定期检修l技师对自动售货机进行定期维护,使它能够保持技师对自动售货机进行定期维护,使它能够保持良好的工作状态良好的工作状态l修理修理l出现故障时,技师排除故障出现故障时,技师排除故障l放入货物放入货物l销售人员给自动售货机添加饮料销售人员给自动售货机添加饮料给用例一个简短的描述给用例一个简短的描述客户与机器之间的交互用例的详细描述用例的详细描述l用例表示法用例表示法l简述简述l详述:用例描述、用例叙述详述:用例描述、用例叙述l用例执行过程的多样性用例执行过程的多样性与分类方法与分类方法l主主事件

4、事件流流(正常流、主成功场景正常流、主成功场景) 这是用例描述最核心的部分,记载了整个用例正常的执行过程。l替代流替代流(备选事件流)(备选事件流) 如果期间有一些其他情况发生(小插曲),但仍不至于影响用例的成功执行l例外流(例外流(异常流异常流)参与者与系统之间的交互l用例名称用例名称l简要说明简要说明l事件流事件流l特殊需求特殊需求l前置条件前置条件l后置条件后置条件l扩展点扩展点l使用肯定的陈述句使用肯定的陈述句l主语只能是主语只能是Actor或系统或系统l黑盒原则黑盒原则l只规定做什么,不追究如何做只规定做什么,不追究如何做l替代流的编写方法替代流的编写方法l例外处理的编号例外处理的编

5、号编号l处理销售处理销售l购买机票购买机票l参与者与用例之间的关系参与者与用例之间的关系l是通信关系,即交互(交换信息)是通信关系,即交互(交换信息)l用单向箭线表示用单向箭线表示Actor与与UseCase的关系的关系l启动者指向用例(主动)启动者指向用例(主动)l用例指向支持者(被动)用例指向支持者(被动)l为什么要引入用例之间的关系为什么要引入用例之间的关系l如果一个用例太复杂,将变得难于掌控与实现,如果一个用例太复杂,将变得难于掌控与实现,因此需要将用例分解,来简化复杂度。因此需要将用例分解,来简化复杂度。l用例分解,然后通过用包含、扩展和泛化关系在用例分解,然后通过用包含、扩展和泛化

6、关系在小用例小用例的基础上来构建复杂的用例。的基础上来构建复杂的用例。引入用例之间的关系,引入用例之间的关系,其目的是为了组织和管理用例更为方便其目的是为了组织和管理用例更为方便l安全会话和做交易这两个用例中都包含安全会话和做交易这两个用例中都包含了验证密码这部分内容,它是一个行为了验证密码这部分内容,它是一个行为序列(事件流),为了避免在这两个用序列(事件流),为了避免在这两个用例中例中重复地描述重复地描述验证密码的行为序列,验证密码的行为序列,可以创建一个验证密码用例,然后在安可以创建一个验证密码用例,然后在安全会话和做交易这两个用例中包含验证全会话和做交易这两个用例中包含验证密码用例。密

7、码用例。lP63,包含关系将一个用例包含关系将一个用例合并合并到另一个到另一个用例的行为序列中。用例的行为序列中。lUML表示表示l虚箭线指向包含用例虚箭线指向包含用例,关系名:关系名:l使用一:抽取公共用例使用一:抽取公共用例l使用二:简化使用二:简化简化复杂的用例、避免重复描述用例简化复杂的用例、避免重复描述用例l 还车还车ll4 顾客归还车辆顾客归还车辆l5 工作人员检查工作人员检查l6 系统处理还车系统处理还车l还车交纳罚金 交纳罚金 触发:超期或车辆损坏触发:超期或车辆损坏 扩展点:还车中的检查 级别:子功能 3 计算罚金 将可选的行为将可选的行为列列到到扩展用例扩展用例基用例基用例

8、lP64,扩展关系给用例(,扩展关系给用例(基用例基用例)添加增量)添加增量行为(行为(扩展用例扩展用例)。)。l扩展点:扩展点:扩展点是基用例中的标记扩展点是基用例中的标记 说明在基本用例说明在基本用例的某个位置(扩展点)时,如果的某个位置(扩展点)时,如果条件满条件满足足,就会执行,就会执行扩展用例扩展用例lUML表示表示l虚箭线指向基用例虚箭线指向基用例,关系名:关系名:l扩展关系与替代流程扩展关系与替代流程l用替代流程表示可选的事件流是最简单的方法用替代流程表示可选的事件流是最简单的方法l只有在基用例不允许修改的情况下,使用扩展关只有在基用例不允许修改的情况下,使用扩展关系。系。增量、

9、迭代地开发复杂的用例增量、迭代地开发复杂的用例l在基金模拟项目中,理财专员代客申购在基金模拟项目中,理财专员代客申购单笔基金时,并不是所有的申购都需要单笔基金时,并不是所有的申购都需要打印申购收执联,只有在投资人要求打打印申购收执联,只有在投资人要求打印时,才执行。印时,才执行。此处的打印申购收执联打印申购收执联是一种可选可选的行为,当投资人要求时,才将打印申购收执联的行为添加到申购单笔基金的过程中。可以将可选可选的行为单独记录到一个用例中,在需要时添加到基础用例中,这样基用例就更加简洁,便于实现简洁,便于实现。扩展关系扩展关系包含关系包含关系扩展用例只在基用例的某种特定条件下才被执行包含用例

10、是基用例必不可少的部分没有扩展用例,基用例本身也是完整的没有包含用例,基用例就不完整扩展用例是不完整的包含用例可以是完整的l比如比如“预定房间预定房间”或者或者“预定早餐预定早餐”都都有一套相同的服务规则,可以使用泛化有一套相同的服务规则,可以使用泛化描述。描述。子事件流S1是抽象的没有具体的执行序列在在“预定服务预定服务”用例中有一个抽象子事件流用例中有一个抽象子事件流“选选择服务择服务”,所以,所以“预定预定服务服务”是一个抽象用例是一个抽象用例;“选择服务选择服务”子子事件事件流的具体执行序列流的具体执行序列在在“预定房间预定房间”用例中。用例中。事件流执行的规则如下:事件流执行的规则如

11、下:实例化首先出现在子用例中,沿着基本事件流运行实例化首先出现在子用例中,沿着基本事件流运行,如果子用例没有定义基本事件流,则沿着父基本,如果子用例没有定义基本事件流,则沿着父基本事件流执行。事件流执行。在运行到在运行到“选择一项服务选择一项服务”的时候,执行子用例定的时候,执行子用例定义的义的“选择服务选择服务”子子事件流事件流。lP62,父用例表示通用的行为序列,通过,父用例表示通用的行为序列,通过插入额外的步骤或细化步骤,子用例插入额外的步骤或细化步骤,子用例实实例例化父用例。化父用例。lUML表示表示l与类的泛化一样与类的泛化一样l泛化与扩展泛化与扩展l扩展事件流是扩展事件流是临时附加

12、临时附加到到基基用例事件流的某个位用例事件流的某个位置上,置上,是属于是属于同一层同一层的的l泛化与包含泛化与包含l泛化和包含都是用于抽取用例的公共行为泛化和包含都是用于抽取用例的公共行为,但,但泛泛化关系要求父用例和子用例之间拥有化关系要求父用例和子用例之间拥有“is-a -kind-of”关系,这样继承才有意义。关系,这样继承才有意义。l在线股票经纪人系统中有三种交易:交在线股票经纪人系统中有三种交易:交易债券、交易股票和交易期权,它们都易债券、交易股票和交易期权,它们都有一些共同的执行步骤,如验证密码,有一些共同的执行步骤,如验证密码,但又有各自额外的步骤。但又有各自额外的步骤。生成订单

13、检查顾客身份发货付帐跟踪订单顾客急件加急订单发货员l用例关系的作用用例关系的作用l它只是组织和管理用例的一种方法它只是组织和管理用例的一种方法l不影响需求,需求是通过编写用例不影响需求,需求是通过编写用例描述描述来完成的来完成的,一定要分清重点,一定要分清重点lUseCase模型不是需求分析的模型不是需求分析的全部全部l用例捕获需求的优势用例捕获需求的优势l强调了用户的目标和观点强调了用户的目标和观点l简单通俗,便于用户参与简单通俗,便于用户参与l用例驱动的软件开发用例驱动的软件开发l用例的迭代用例的迭代l初始、细化、构造初始、细化、构造l从定义出发建模的步骤从定义出发建模的步骤l从业务流程中

14、识别系统用例从业务流程中识别系统用例1.确定系统的边界和范围,找出系统外部的参与者和外部系统确定系统的边界和范围,找出系统外部的参与者和外部系统2.确定每一个参与者所希望的系统行为确定每一个参与者所希望的系统行为3.把这些系统行为命名为用例把这些系统行为命名为用例4.绘制用例图绘制用例图5.为每一个用例编写用例说明为每一个用例编写用例说明6.区分主事件流、替代流和例外流区分主事件流、替代流和例外流7.把一些公共的行为分解为一批新的用例供其他用例引用把一些公共的行为分解为一批新的用例供其他用例引用8.把一些变更的行为分解为扩展用例把一些变更的行为分解为扩展用例9.精化用例图精化用例图重要l用例的

15、细化程度用例的细化程度l围绕参与者的围绕参与者的目标目标,以参与者要,以参与者要完成的任务完成的任务为依为依据来划分或分解用例据来划分或分解用例 系统执行用例将为参与者产生一个可观测的结果值系统执行用例将为参与者产生一个可观测的结果值l避免避免将用例的执行步骤识别为用例将用例的执行步骤识别为用例l图图4-20、图、图4-21lP68l用例图中的名称与确定系统用例时的名称用例图中的名称与确定系统用例时的名称l用例描述用例描述l用例之间的关系用例之间的关系给参与者一个名字和简短的描述给用例一个名字和简短的描述办理借书证借书处理还书处理工作人员新书入库系统维护图书管理系统管理员用户管理查询图书信息查

16、询借阅记录预订图书读者修改密码l请为图书馆工作人员的用例编写用例说请为图书馆工作人员的用例编写用例说明明l借书处理、还书处理借书处理、还书处理可以参照P69:确定系统用例P72 :图4-25实验实验2 2l根据用例说明,定义子用例,重新绘制根据用例说明,定义子用例,重新绘制用例图用例图l某饭店采购部准备实现计算机管理,采某饭店采购部准备实现计算机管理,采购部的具体工作如下:购部的具体工作如下:l每当库存量不足时,仓库保管员把所需采购的货每当库存量不足时,仓库保管员把所需采购的货品清单发送给采购部,采购部寻找合适的供应商品清单发送给采购部,采购部寻找合适的供应商并发采购订单给他们。供应商提供所需的货品。并发采购订单给他们。供应商提供所需的货品。当货品到达时,采购部把它们递交给仓库保管员当货品到达时,采购部把它们递交给仓库保管员。l 每当库存量不足时,仓库保管员把所需采购的货品每当库存量不足时,仓库保管员把所需采购的货品清单清单 给采购部给采购部l 采购部采购部 合适的供应商并合适的供应商并 采购订单给他们。采购订单给他们。l 供应商供应商 所需的货品。所需的货品。l 当货品到达时,采购部把它们当货品到达时,采购部把它

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论