How to display tracking system with UML Use Case diagram?

288 views Asked by At

I'm building a system of theft detection. One of the features is a proccess that runs 24/7 gets videos from a security cameras system, tracks them and saves some data about those videos. Once a day the system will check the saved data and use it.

I was asked to draw a use case diagram and I'm not sure how to do so. There is no trigger for this procces , it is just keep running all the time. but it does interacts with other external actor - the cameras' system.

Is there a way to display it on a use case diagram??

2

There are 2 answers

0
Christophe On

Use-case diagrams show the purpose of a system. Here a definition in plain language by Ivar Jacobson, the inventor of use-cases:

A use case is all the ways of using a system to achieve a particular goal for a particular user. Taken together the set of all the use cases gives you all of the useful ways to use the system, and illustrates the value that it will provide.

Unfortunately, your narrative doesn't look like a use-case: It's just a description of what needs to be done from a technical point of view, but not why, nor how it may help users or stakeholders. If you find the goal behind this process, you'll have your use-case!

Your narrative mentions two systems: an anti-theft system and a camera system. If these are two independent and autonomous systems, one could be the actor of the other:

  • The way you're explaining it, it seems that your anti-theft system is an actor of the camera system. The camera system could provide use cases such as: Perform videosurveillance, and find back video records with motion. Your system would be a system-actor of the latter, since finding back video records is a goal of your system.

  • The camera system could also be viewed as an actor of your system, that contributes to achieving a use-case.

This being said, if you want to model the behavior from the system viewed from the inside, you may be more interested in activity diagrams than in use-cases: your querying process would be an action performed under some conditions, and the information it generates may launch subsequent actions.

0
granier On

The solution could be to define a use case not linked to an actor and associated to a state machine, see fig 18.12 of version 2.5.1 of UML specification. And state machine transiitions may be trigered by time.

Like that you create a use case who defines "the specification of the functionalities offered by the subject." .

Another way is to describe the usage of checks done on saved data. I guess that checks are done to detect some events on video and to create alerts,or mails, or files that are read by administrator or whatever.

Then You can create a use case "read alerts mails" associated to the administrator actor and then describe the content of the mail and therefore specify the checks done by the system on videos.