System as Actor?

When developing a use case. Is it possible to have a system as a Actor?

Actors take action on the system you are describing. Are you asking whether it is possible for a system to take action on itself? Does it make sense to model that in a use case? If you really feel the need to model this, ask yourself whether you’re within the scope of the domain you’re modelling and consider using a different diagram to illustrate what you’re trying to describe.

Keep in mind that the use case descriptions describe the interaction between the system and the actor(s). If the system is doing some self-processing then you would simply state that in your flow of events and how the results of the processing is presented to the actor(s) for them to take further action.

However, by “a system”, one could assume you mean some system acting upon the system you are describing. I’ve seen “time” used as an actor and I’ve seen sensor devices used as actors as well. If that’s your case, then yes, it would make sense to depict these as actors in your use cases.

Hope that helps.

Two colleagues of mine and I had the same discussion yesterday. I argued that you couldn’t model a system as an actor on itself, while they insisted it can. I’m still convinced that modeling a system as an actor in it’s own use case model is a bad idea.

However advanced, a system is an inanimate object that needs on outside trigger to put it into motion. That trigger could be provided by anyone or anything: a user, a pre-defined moment in time, the input from another system, etc. But the system can NEVER provide the initial trigger by itself: it can not decide on itself to take action, just like a wheelbarrow can never decide to take a stroll just out of its own accord. You can push it; gravity can pull it downhill; an earth tremor can wobble it along,… Those instances are all actors outside of the wheelbarrow system.

Therefore, to me a system can not be an actor on itself. Whatever use case a system calls upon, the trigger to do so is always provided by an outside instance.

Am I making any sense or do I have a wrong point of view on this matter?

Am I making any sense or do I have a wrong point of view on this matter?

Makes perfect sense to me; I love the wheelbarrow analogy.

A system CAN be an actor ON ANOTHER system.

UML, in that case, uses a box to represent that kind of actor.

I’ve not been able however to do this in VP.

Actually, in VPUML, if you right-click on an actor in a use case diagram, you can select Presentation Options -> Display Option -> Box Shape with Keyword to achieve this effect.