uml基础-用例建模指南

uml基础-用例建模指南

ID:9282598

大小:159.50 KB

页数:18页

时间:2018-04-26

uml基础-用例建模指南_第1页
uml基础-用例建模指南_第2页
uml基础-用例建模指南_第3页
uml基础-用例建模指南_第4页
uml基础-用例建模指南_第5页
资源描述:

《uml基础-用例建模指南》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、用例建模指南级别:初级傅纯一,Rational中国区技术销售经理,IBM中国有限公司软件部2004年11月01日序言用例(UseCase)是一种描述系统需求的方法,使用用例的方法来描述系统需求的过程就是用例建模。用例方法最早是由IvaJackboson博士提出的,后来被综合到UML规范之中,成为一种标准化的需求表述体系。用例的使用在RUP中被推崇备至,整个RUP流程都被称作是"用例驱动"(Use-CaseDriven)的,各种类型的开发活动包括项目管理、分析设计、测试、实现等都是以系统用例为主要输

2、入工件,用例模型奠定了整个系统软件开发的基础。1.什么是用例?1.1参与者和用例从用户的角度来看,他们并不想了解系统的内部结构和设计,他们所关心的是系统所能提供的服务,也就是被开发出来的系统将是如何被使用的,这就是用例方法的基本思想。用例模型主要由以下模型元素构成:·参与者(Actor)参与者是指存在于被定义系统外部并与该系统发生交互的人或其他系统,他们代表的是系统的使用者或使用环境。·用例(UseCase)用例用于表示系统所提供的服务,它定义了系统是如何被参与者所使用的,它描述的是参与者为了使用

3、系统所提供的某一完整功能而与系统之间发生的一段对话。·通讯关联(CommunicationAssociation)通讯关联用于表示参与者和用例之间的对应关系,它表示参与者使用了系统中的哪些服务(用例),或者说系统所提供的服务(用例)是被哪些参与者所使用的。这三种模型元素在UML中的表述如下图所示。以银行自动提款机(ATM)为例,它的主要功能可以由下面的用例图来表示。ATM的主要使用者是银行客户,客户主要使用自动提款机来进行银行账户的查询、提款和转账交易。通讯关联表示的是参与者和用例之间的关系,箭头

4、表示在这一关系中哪一方是对话的主动发起者,箭头所指方是对话的被动接受者;如果你不想强调对话中的主动与被动关系,可以使用不带箭头的关联实线。在参与者和用例之间的信息流不是由通讯关联来表示的,该信息流是缺省存在的(用例本身描述的就是参与者和系统之间的对话),并且信息流向是双向的,它与通讯关联箭头所指的方向毫无关系。1.2用例的内容用例图使我们对系统的功能有了一个整体的认知,我们可以知道有哪些参与者会与系统发生交互,每一个参与者需要系统为它提供什么样的服务。用例描述的是参与者与系统之间的对话,但是这个对

5、话的细节并没有在用例图中表述出来,针对每一个用例我们可以用事件流来描述这一对话的细节内容。如在ATM系统中的"提款"用例可以用事件流表述如下:提款-基本事件流1.用户插入信用卡2.输入密码3.输入提款金额4.提取现金5.退出系统,取回信用卡但是这只描述了提款用例中最顺利的一种情况,作为一个实用的系统,我们还必须考虑可能发生的各种其他情况,如信用卡无效、输入密码错、用户账号中的现金余额不够等,所有这些可能发生的各种情况(包括正常的和异常的)被称之为用例的场景(Scenario),场景也被称作是用例的

6、实例(Instance)。在用例的各种场景中,最常见的场景是用基本流(BasicFlow)来描述的,其他的场景则是用备选流(AlternativeFlow)来描述。对于ATM系统中的"提款"用例,我们可以得到如下一些备选流:提款-备选事件流备选流一:用户可以在基本流中的任何一步选择退出,转至基本流步骤5。备选流二:在基本流步骤1中,用户插入无效信用卡,系统显示错误并退出信用卡,用例结束。备选流三:在基本流步骤2中,用户输入错误密码,系统显示错误并提示用户重新输入密码,重新回到基本流步骤2;三次输入

7、密码错误后,信用卡被系统没收,用例结束。…通过基本流与备选流的组合,就可以将用例所有可能发生的各种场景全部描述清楚。我们在描述用例的事件流的时候,就是要尽可能地将所有可能的场景都描述出来,以保证需求的完备性。1.3用例方法的优点用例方法完全是站在用户的角度上(从系统的外部)来描述系统的功能的。在用例方法中,我们把被定义系统看作是一个黑箱,我们并不关心系统内部是如何完成它所提供的功能的。用例方法首先描述了被定义系统有哪些外部使用者(抽象成为Actor),这些使用者与被定义系统发生交互;针对每一参与者

8、,用例方法又描述了系统为这些参与者提供了什么样的服务(抽象成为UseCase),或者说系统是如何被这些参与者使用的。所以从用例图中,我们可以得到对于被定义系统的一个总体印象。与传统的功能分解方式相比,用例方法完全是从外部来定义系统的功能,它把需求与设计完全分离开来。在面向对象的分析设计方法中,用例模型主要用于表述系统的功能性需求,系统的设计主要由对象模型来记录表述。另外,用例定义了系统功能的使用环境与上下文,每一个用例描述的是一个完整的系统服务。用例方法比传统的SRS更易于被用户所

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。