我给一些学生教授OOD&A课程。当我想要为一个系统绘制用例图或编写它们的场景时,我不知道应该包括系统中由人或计算机完成的所有(行为)操作,还是只关注由计算机完成的操作。
我认为用例图是分析任何系统行为的工具,它甚至可以是一辆汽车。
但是,当我们打算用计算机实现一个系统时,应该考虑哪些行为呢?如果我们考虑到系统中可以做的任何事情,即使是手动的,或者是由计算机自动完成的,那么我们如何以及何时可以提取出我们打算实现的软件系统的行为。
例如,假设我们想为自动提款机(Automated )制作一个软件:
职员可以打开自动取款机并把钱放进去。(这是手动完成的,是否应该将其视为系统的用例?)
假设系统的一个用例是取款,那么它的场景可能是:
案例1和2是由读卡器完成的,而不是我们的软件,我们应该考虑它们吗?或者最后的情况是由配药机制完成的,而不是我们的软件。
发布于 2014-10-08 21:34:38
用例定义了参与者和系统之间的交互。演员可以是一个人,另一个系统,或一个时钟。
更具体地说,在用例中,参与者指的是特定角色。因此,应该考虑的行为是那些与图表中的参与者符号所代表的角色相一致的行为,而不一定是这样的参与者可以采取的每一个行为。
更简单地说,从墙中拔出插头并不是您需要关注的一个操作(尽管它可能在某些问题缓解策略或物理安全场景中发挥作用)。相反,您需要关注的操作是特定角色所关注的行为,以及系统对这些操作的响应方式。
一个非常简单的用例示例:

这意味着“在注册用户的角色中,该参与者可以执行编辑文章的系统操作”。
收集这些用例的想法(在很大程度上)是为了识别所有相关的用户交互和系统响应,这将为您提供系统范围的总体概念,并为开发软件需求提供一个起点。
https://softwareengineering.stackexchange.com/questions/258460
复制相似问题