Uml 用例图应该说明什么级别的复杂性?

Uml 用例图应该说明什么级别的复杂性?,uml,Uml,用例图应该说明什么样的复杂程度-应该包括多少细节,以及何时应该使用序列图或替代UML图的“分界点”是什么?尽管UML规范允许对任何UML图中可能出现的内容有很大的自由度,UC图中应包含以下内容: 演员 用例 可能是表示所考虑系统(SUC)的边界 这适用于“主要”UC图,但您可能会创建其他图,包括设计的需求和/或类等 现在,参与者首先是与SUC交互的所有对象。用例是所有那些表示SUC为其参与者提供的一些个人附加值(而不是一些技术过程!!)的气泡 用例图是关于系统的附加值,而不是关于技术特性 当

用例图应该说明什么样的复杂程度-应该包括多少细节,以及何时应该使用序列图或替代UML图的“分界点”是什么?

尽管UML规范允许对任何UML图中可能出现的内容有很大的自由度,UC图中应包含以下内容:

  • 演员
  • 用例
  • 可能是表示所考虑系统(SUC)的边界
这适用于“主要”UC图,但您可能会创建其他图,包括设计的需求和/或类等

现在,参与者首先是与SUC交互的所有对象。用例是所有那些表示SUC为其参与者提供的一些个人附加值(而不是一些技术过程!!)的气泡


用例图是关于系统的附加值,而不是关于技术特性

当然,简单的答案是,无论需要多详细(而不是多复杂)。对于更深入的分析,分析人员通常使用用例向非技术利益相关者证明他们所有基于使用的需求都得到了满足。为此,应该有足够的细节,以便经理、客户和营销人员有信心开发他们想要的产品。对于为开发人员捕获决策的用例图,应该有足够的细节,以便继续进行更深入的设计或编程。最好不要开发试图满足两种类型用户(涉众和开发人员)需求的图表。最后,这是一个反复绘制和审查的过程。从简单开始,根据需要添加细节。

用例

UML定义用例:

用例是捕获系统需求的一种手段,即:。, 系统应该做什么。(…)用例是一种规范 关于行为。用例的实例是指 紧急行为(…)。这样的 实例通常通过交互来描述

换句话说,它是一个系统在与外部世界交互时应该做什么的外部视图

细节的层次应该相当高。通常,用户与系统交互的顶层,即用户为实现其目标而调用的主要功能。使用通常的ATM示例,主要目标是“提取现金”、“查询账户余额”,当然不是“插入卡”、“键入pin”、“在菜单中选择操作”、“取钱”

但没有规范:你也可以有非常详细的图表。只是它们绘制起来会很痛苦,不一定会增加对需求的理解。这就是为什么,公认的做法是将高层用例(“海平面”)进一步详细描述为叙述,例如使用方法

用序列图切断

UML定义了序列图:

序列图通过聚焦于 交换的消息序列(..)相互作用 由序列图描述构成了理解 交互包中元类的语义


这里的重点更多地放在系统的内部结构和交换的消息上。然而,UML将用例视为一个专门的类图。考虑到这一点,如果您有非常详细的用例图,那么序列图应该描述和参与者与用例之间的交互。

好的,UCs应该由程序引用mers,但在他们采取行动之前,需要由架构师完成系统设计。这不是UC->类生成代码。还有很多步骤。从UC到类设计和协作。这是三方采取行动的地方:利益相关者、架构师和开发人员。@Jordan-C:Thomas提出了一个很好的观点。你不需要按顺序进行图,直到定义了类或至少是组件。