0

enter image description here



Are the included and extending use cases make sense?

Zia ur Rahman
  • 1,411
  • 4
  • 26
  • 43

3 Answers3

1

Basically yes, depending on what you are willing to achieve.

Include simply means that the included use case cannot exist on it's own and needs to by part of the use case, for which it is included and at the same time the basis use case won't be complete without the successful included use case.

This translated for your use case scenario will mean: In order the user (write a name for the actor) to log in, he has to enter his User id, enter his password, the system has to parse the id and the password and display the main screen.

Extends can optionally add some other steps to the main functionality, in this case to the log in, which means that it's optional to display an incorrect log in screen (somehow verbose in your scenario). This will also mean that Display Login screen is also optional, which IMO is not the case and it has to be included in the main use case, but this is relative to what you are willing to achieve.

Advice: Learn the exact UML specification. You need to write the name of the actors, to write down <<include>> and <<extend>> and to define a system. I will suggest you to use an UML editor instead of Paint or something similar. Check What's the best UML diagramming tool?

Community
  • 1
  • 1
Ivaylo Toskov
  • 3,911
  • 3
  • 32
  • 48
1

You mixed usecase (Login) and actions of login process in one diagram. Remove all usecases except for Login, and add activity diagram to desribe scenarion of login process.

Vladimir
  • 2,066
  • 15
  • 13
1

If you create use cases at the granularity you are proposing, you will probably die under the weight of the documentation you will produce.

Here you have only one use case: Login.

In that use case you have different parts, and among those, the usual scenario steps, where you will find, for example: 1.Enter user id 2. Enter password 3. ...

you also have a section named Exception scenarios, where you will find, for example, the Failed Login details (error message, behaviour, ...).

An example of use case inclusion would be Modify Account, which would include your Login use case, meaning you cannot modify your account without login in.

An example of use case extension would be specifying different method of login in (OTP, digital signature, etc) which would all extends the Login use case.

Mathieu Fortin
  • 1,048
  • 7
  • 17