我们在写用例场景的时候遇到扩展点怎么办?

When we writing a use case scenario what should I do if there is an extention point?

当我们为基本用例编写用例场景时,如果包含用例(包含关系),我们将其包含在基本流程 的用例场景。例如:-

UC name : Pay Bill 
Actor : Customer
Basic Flow :  1. Include ::( Validate User Login).
              2. Press View Unpaid bills button.
              3. System show list of unpaid bills.
etc...

如果与扩展点有扩展关系怎么办?我应该在用例场景中的什么地方提到它?

<<extends>> 关系就像(无条件的)<<include>> 只是它绑定到某些条件。所以你可以按照你的方式写。

基本流程列出了执行 UC 时最常发生的步骤。你没有把任何选项放在那里。假设很简单 - 如果一切正常,您将完成基本流程中描述的步骤。

任何偏差(即使也经常发生)都放在替代流程中。您只列出与基本流程不同的步骤。您的替代流程以触发时的条件开始,然后是替代流程的步骤。最后一步可能是某种完整的流程结束或 return 到基本流程(不一定在您离开它的同一个地方)。

备选流程再次仅描述了一种可能的流程。如果可能出现进一步的偏差,它们将提出新的替代流程(完成可能是替代替代)。

请注意,替代流程并不自动意味着您可以扩展您的 UC(相反,直接根据定义,您将在一个 UC 中拥有多个可能的流程,并且只有在极少数情况下,其中一些才会显示一些扩展 UC)。

在您的情况下,您可能有如下替代流程:

3a No unpaid bills

    3a1 System shows pop-up message "No unpaid bills"
    3a2 User clicks OK button
    3a3 System returns to main screen