我正在对系统进行需求分析,目前我尝试编写业务用例(BUC)并制作业务用例图。我目前使用以下准则:
当我为BUC提供可选的额外步骤时,我使用EXTEND语句指向可以找到这些可选步骤的BUC。扩展的BUC和扩展的BUC都可以存在于其自身。
当我在多个BUC中有重复功能时,我尝试将其提取并将其放入单独的BUC中。然后我在BUC中使用INCLUDE语句来解析功能,指向可以找到此功能的BUC。使用INCLUDE语句指向外部BUC的BUC无法在其上运行。
这一切都很好,直到我到达以下情况:
我考虑了以下选项:
有什么想法吗?
答案 0 :(得分:2)
include
在运行主UC时始终运行所包含的UC时使用。
extend
,但在某些备用流程中,也会运行扩展UC。
因此,在您的情况下,您应该使用extend
。
可以显示扩展点。您可以使用它来解释逻辑(澄清扩展UC在进入备用流时始终运行)。如果逻辑更复杂,您也可以将其放在注释中。
我不在这里讨论你的分解是否是一种正确的方法(但是期待其他人的讨论)。
答案 1 :(得分:0)
根据您的描述,您不是在进行用例合成,而是进行功能分解。这是完全错误的。用例合成中的重点是关注用例为其actor提供的附加值,而不是分解任何功能。
我强烈建议您阅读Bittner / Spence并了解基本知识,然后再继续前进 - 分别走回去寻找正确的目标。