四、用例和用例图
作者:互联网
用例模型的基本组成部分:
- 用例:描述系统的功能;是对系统功能的宏观的、整体的描述。
- 角色(参与者):指那些与系统进行交互的外部实体,通常它是系统的一个用户,但它也可以是其它系统或硬件设备。凡是需要与系统进行交互的任何实体都可以称作参与者,用例往往必须向参与者传递一些数值,这些数值是参与者在系统中获得的信息。
- 系统
使用用例的目的:
- 明确系统应具备什么功能;
- 为系统的功能提供清晰一致的描述;
- 为系统测试打下基础,可以用于验证最终实现的系统所完成的功能是否符合客户的最初需求;
- 通过从需求的功能用例出发跟踪进入到系统中具体实现的类和方法,可以检查其是否正确。
用例图:
- 显示一组用例、参与者以及它们之间关系的一种图。
- 从用户的角度而不是开发者的角度来描述对软件产品的需求,分析产品所需的功能和动态行为。
- 作用:描述系统的功能需求和使用场景;促进各阶段开发工作的进度;验证和确认系统需求。
- 组成:参与者、系统边界、用例、关联。
- 参与者:角色。系统外部的一个人或者物,它以某种方式参与了系统的执行过程。参与者不是指人或事物本身,而是表示人或事物在系统中所扮演的角色。任何事物都可以是参与者。分为主要参与者(使用服务,一般画在系用例图系统边界的左边)、次要参与者(提供服务)和后台参与者。对参与者赋予能更好地表达其角色(作用)的名称。作用:建立系统的外部用户模型;对系统边界之外的对象进行描述。如果一组参与者具有共同的性质,可以把这些性质抽取出来放在另一个参与者中,这组参与者再从中继承,这种关系称为参与者之间的泛化关系。
- 用例:代表系统中各个项目相关人员之间根据系统的行为所达成的契约。一个用例描述系统的一项功能,功能被描述为一组动作序列的集合。每一个动作序列表示参与者与系统的一次交互,将为参与者产生一个可观察的结果值。每一个用例使用动词短语定义,该短语描述了系统必须完成的目标。特点:从系统的使用角度描述系统中的信息。描述用户提出的一些可见需求,对应一个具体的用户目标。用例中,只描述参与者可以看到的系统行为特征。通常是由某个参与者来驱动执行,只有当外部的参与者与系统交互时,该功能才会发生作用。用例把执行的结果反馈给参与者。用例在功能上具有完整性。
- 用例描述:从软件开发的角度,用例就是需求的文字性描述,主要是说明系统如何工作的功能性或行为性需求。用例图只是简单地用图形的方式描述了一下系统。用例是文本形式,不是图形。用例描述:对于每个用例,更加详细的说明,这以让别人对这个系统有一个更加详细的了解。
用例之间的可视化表示:
- 关系:泛化、包含、扩展、分组。
- 包含关系include:两个用例之间的关系,基本用例的行为包含了包含用例的行为。
- 用例A在其内部说明的某一位置上显式地使用用例B行为的结果,称为用例A包含用例B。
- 把几个用例的公共步骤分离出来,成为一个单独的被包含用例,以便多个用例复用。
- 用例包含关系中要避免用例中相同功能的重复描述,避免过长的用例。
- 在UML图中,使用带虚线箭头表示,并在线上标有<<include>>。
- 扩展关系extend:从扩展用例到基本用例的关系,基本用例必须声明若干“扩展点”,扩展用例只能在这些扩展点上增加新的行为和含义。
- 基本用例是一个完整的用例。
- 基本用例中存在一个扩展点,只有当扩展点被激活时,子用例才会被执行,扩展用例中必须包含触发和扩展点说明。
- 扩展用例根据已有用例的扩展点当前状态判断是否执行自己,扩展用例对基本用例不可见。
- 泛化关系:一般与特殊的关系。当多个用例共同拥有一种类似的结构和行为的时候,可以将它们的共性抽象成为父用例,其它的用例作为泛化关系中的子用例。子用例继承父用例的行为和含义,还可以增加或覆盖父用例的行为;子用例可以出现在任何父用例出现的位置(父和子均有具体的实例),也可以重载它。
- 分组关系:收集系统需求时,每个需求必须用一个单独的用例来表达,这时就需要某种方式来对这些需求进行分类。最直接的方法就是把相关的用例放在一个包中组织起来。一组用例可以放在一个文件夹中。
- 包含关系include:两个用例之间的关系,基本用例的行为包含了包含用例的行为。
- 共性:都是从现有的用例中抽取出公共的那部分信息,作为一个单独的用例,然后通过不同的方法来重用这个公共的用例,以减少模型维护的工作量。
建立用例模型的目的:
- 提取和分析足够的需求信息,该模型应该表达用户需要什么,而不涉及系统将如何构造和实现的细节。
- 用例模型由若干个用例图组成,主要用于需求分析阶段。
- 创建用例模型主要包括三部分:识别出系统中的角色和用例;区分用例之间的先后顺序(某些用例必须在其他用例之前完成);构建用例图模型(借助包含、扩展和泛化的关系给出用例之间的结构模型)。
小结:
- 用例模型实现系统需求分析,使得系统分析员和用户之间能够更好的沟通系统的需求。
- 用例图是显示一组用例、参与者以及它们之间的关系的图。
- 参与者在UML中通常以一个直立人的图形符号来表示;用例在UML中通常用一个椭圆图形符号来表示。
- 用例与参与者之间具有关联关系。
- 用例之间存在泛化关系、包含关系、扩展关系等。用例之间没有关联关系。
标签:关系,系统,扩展,用例,例图,参与者,描述 来源: https://blog.csdn.net/weixin_46920847/article/details/121318753