Question

enter image description here

Are "post answer" and "vote" an extension of browsing? Since you have to SELECT / VIEW (?) a question in order to answer or vote. Or can I simply say in my use case text that you must have selected a question as a precondition? Should I also change Browsing to search only?

diagram info : I try to depict a basic uml use case diagram for a system really similar to the stackexchange websites. Just consider a simplified version. I know there are many ways to draw these diagrams but I did my best to declutter and keep only the high level functionalities. Authorised user is someone who is logged in. Let's suppose that you can only browse and search for questions if you are not logged in. Credentials are mostly for checking the reputation.

Was it helpful?

Solution

To answer the question in the title first, your use-case diagram is entirely correct.

To be honest, I am missing one use-case and that is a "login" use-case in which an unauthorized user becomes an authorized user.

Are "post answer" and "vote" an extension of browsing? Since you have to SELECT / VIEW (?) a question in order to answer or vote. Or can I simply say in my use case text that you must have selected a question as a precondition?

If you can imagine another way of reaching a question's page other than browsing, for example if somebody sends you a direct link to a question, then "post answer" and "vote" can be used completely independently of browsing. This means they are not extensions.

You can indeed say in the use case text that you must be viewing the question as a precondition for being able to perform that use-case.

Should I also change Browsing to search only?

I don't see any reason to replace Browsing with Search, but you can have them as independent use-cases.

Let's suppose that you can only browse and search for questions if you are not logged in.

Based on your diagram, my assumption was that both authorized (logged-in) and unauthorized (not logged-in) users can browse and that you don't need any credentials/reputation to do so.

Licensed under: CC-BY-SA with attribution
scroll top