Deterrent Examples

In this chapter we would like to present some real-world deterrent examples, which definitely should not inspire you.

Example 1

aa

  • Names should start wiht the capital letter
  • Actors do not need to be stereotyped
  • Use case names should have the form <verb> <direct object>
  • If the analyst decides to include reference to the related business process (the grey "use case"), it should not definitelly be modeled as a use case, let alone to be place within the system boundary and connected using the include relationship
  • Use cases should be at user-goal level without implementation details - the fact the messages are delivered using push notifications does not belong to use case
  • Deals with registration is overcomplicated name - Sign up is much better
  • Reads incoming messages is not a well-chosen name either. Use case should also reflect what the user wants from the system. User wants do display messages so the use case should be named Display messages

Example 2

aa

  • Missing system boundary
  • Names should not be in third person
  • Typical functional decomposition - many includes
  • 'Works with payment' says nothing and serves only as a package of other functionalities. It is not a use case.
  • Confirms payment is just a step, functionality, it should not be a use case

Example 3

aa

  • It is not a use case diagram at all
  • My account is not a system, it is a section
  • Author just used use case notation to describe which services are called when two functions are triggered - don't do this

Example 4

aa

  • Requirements should be connected directly to the use case which realizes them
  • Use case called "Requirements" is a nonsense

Example 5

aa

  • Use case diagram represents use cases for just one system. Deviding the boundaries to two system is not correct.
  • Actors should always be placed outside of the system boundary
  • If you decide to model a system as an actor (which we do not recommend), it should be really a system. API is not a system.

Example 6

Use cases are tricky, even companies like IBM struggle to get them right:

alt

Example 7

This example is from a tutorial presented by an online drawing tool, used by thousands of proffessionals:

aa

Example 8

No comment

aa