Search code examples
authenticationumluse-caseuse-case-diagram

UML: is this use case true for a user authentication?


I'm make a use case for a user authentication for a website, and when the user register a new account the website send a verification email to the user.

Is this use case correct? If not, how can I improve it?

This is the use case I made: enter image description here


Solution

  • This diagram is syntactically wrong: the dashed lines should be arrows which are either «includes» or «extends» to explain the dependencies between use cases.

    Semantically the diagram could be correct (depending on how you decide for the dependencies) with the following remarks:

    • The actor service must be an external autonomous system and not an internal verification service in the same system.
    • The use cases shall be independent and have no order between them. Hence, are you sure it’s ok to first login and then register?
    • Breaking a functionality (e.g. registration) down into smaller ones (e.g. send email) is called "functional decomposition". Although it is not forbidden by UML, it is not recommended by practitioners, as it leads to overly complex diagrams.

    The key issue with this diagram is purpose: despite the many bubbles, we still don't know what the goals of the actors are, nor what the purpose of the system is. But this is what use cases should tell us. supposed t. Use case should focus. Login and registration are not really goals: they are just a necessary step to do something more meaningful.