突然间,我一直需要创建一个用例,而且我已经在登录/注销时难以理解。
一位同事告诉我,他们应该是一个用例,如:
[login, admin stuff, logout]
但是我的大脑对我大喊大叫,登录应该包含需要登录的用例,而登出应该是登录的延伸。
[admin stuff -include> login -extends> logout]
那么,哪一个?
答案 0 :(得分:1)
绝对意义上的模型很少是对错的;对于给定的目的,它们或多或少都有用。用例是系统用户应该执行的操作模型。从你的(太简短的)描述中,我可能将Login和Logout建模为两个独立的独立用例。
为什么要从另一个中扩展一个?他们会从你的观点分享什么共性?
答案 1 :(得分:1)
用例是描述演员(用户/其他系统/ ......)目标的一种方式,这是通过与设计中的系统交互来实现的。
这导致大多数人从用例中排除身份验证(登录/注销),因为管理员不使用系统登录,而是管理系统。
但是,我倾向于认为,管理员的目标是由系统识别以防止滥用。这是一个相当低级别的用例,您应该自己决定是否包含它提供任何值。
关于用例之间的关系,你似乎对它们有点困惑。 管理员的东西包括登录方式,每当管理员使用系统进行管理时,他希望系统将他登录。这似乎有效,但你应该在“登录”和“身份验证”之间做出改变 - 管理员没有每次使用系统时都必须使用用户名和密码登录,但系统必须进行身份验证 - 验证用户身份(例如,通过用户名和登录,但之后使用cookie)。所以我会在这里命名。 管理员的东西扩展了注销手段,当管理员使用系统注销时,在某些情况下(情况)可能会发生,他也会使用系统管理内容。这显然毫无意义。如果你反过来转向 - 注销扩展了管理员的东西,它会更合理,但是你可以决定,如果注销真的是管理员使用系统的话。
希望您现在更好地理解用例,并且您能够自己做出正确的决定,祝您好运!