概念:用例分解
用例分解是用于派生分析(和设计)元素的功能需求的技术。
关系
主要描述

简介

用例分解是用于派生分析(和设计)元素的功能需求的技术。活动的结果为:

  • 对子系统操作的调查
  • 对位置的托管子系统操作的调查
  • 对流程的已执行子系统操作的调查
  • 对子系统的用例调查(可选)

该技术使用标准 RUP 活动,以选择一组在体系结构方面重要的用例。 对于每个选定的用例,开发了事件的流程。这是对系统参与者和系统之间交互的描述。系统响应为黑匣;描述不引用体系结构元素。接下来,将黑匣步骤(将由系统操作执行)扩展为一个或多个白匣步骤,每个白匣步骤都由已命名的子系统执行。白匣步骤也与它们所在的 位置和执行它们的流程关联。每个跨越多个位置或流程(也就是说,需要多个位置或流程来完成)的白匣步骤会分解下去,直到可在单个位置由单个流程完成它。可在几个位置复制白匣步骤,但是这些都是独立的实例。 这些白匣步骤是成为子系统操作(等同于低级别逻辑分解上的系统操作)的候选方案。

单个子系统(参与了系统操作实现)的子系统操作的唯一顺序组合生成子系统用例(可选步骤)。

“子系统-位置”映射

在用例分解的开始阶段,您将处理通常跨越了(或甚至可能封装了)多个位置的系统;分解为子系统(和子系统的下一级系统)的深度是关于体系结构判断的问题,这取决于域和系统的复杂度等其他原因。但是,为达到性能分析的目的,理解某个位置上要施加的计算负载是非常重要的,这可根据在该位置执行的子系统操作来完成。因此,考虑对分解的以下规定:分解必须生成一组可在位置之间明确地进行划分的子系统操作;也就是说,子系统操作 跨越多个位置,而且对于性能来说,如果子系统操作(假设为子系统 A)需要在另一位置使用资源,则这些资源必须通过子系统操作(操作可能由该位置的子系统 A 自身提供,或是由其他子系统提供)使其自身可用。

如果子系统不跨越多个位置则该条件将明显地保持,但是如果能像所描述的那样划分子系统的操作,则该子系统可跨越多个位置,否则,子系统将被进一步分解。此处的讨论考虑到跨越多个位置的子系统的单个实例;总是可以在若干个位置复制子系统,但是这些是独立的实例。