I guess two main use-case diagrams in building an automated system (Software) from a non-automated system are:

  1. Analysis of the existing system by a use-case diagram.
  2. Mapping the current use-cases and requirements to the software use-case diagram.

How then the meaning of the actors differ in these two diagrams?

For example I want to implement a software for a non-automated library. Is the librarian an actor of the existing system or maybe part of the system itself? Does the librarian turns to an actor when I draw the use-case diagram of the software system?

I myself guess when I want to analyze the existing system, I should look it as a library with its all staff and services, then the only actor is member!? But when I want to build a software for it, I should suppose the software as the system and everyone who works with it as an actor. Are they correct assumptions to find the actors of the existing and new system?

  • "Your questions should be reasonably scoped..." (help center)
    – gnat
    Commented Feb 4, 2015 at 15:03
  • @gnat I am trying to narrow my question if you mean that.
    – Ahmad
    Commented Feb 4, 2015 at 15:07
  • @gnat My main question is about the role of librarian in these two analysis, if I narrow the question to it then it's OK?
    – Ahmad
    Commented Feb 4, 2015 at 15:15
  • recent edit feels like an imprvement but I find it still difficult to understand sorry
    – gnat
    Commented Feb 4, 2015 at 15:18
  • I don't think analyzing the existing manual system via use-cases and use-case diagrams is going to be all that productive. What would be considered "the system" in that case? The only meaningful definition would be the parts that the software is going to replace. If "the system" is what the software is going to replace then the diagrams would end up being identical. So no gain. Instead, just analyze the manual system to identify the operations the automated system is going to need and then write use-cases for those operations.
    – Dunk
    Commented Feb 4, 2015 at 18:34

1 Answer 1


When looking at a system that is going to be (partially) automated, what is considered part of the system (old or new) and who the actors are depends on the scope of the automation project.

To take your library example and a project to automate the lending administration.

In the non-automated system, the librarian (who records when a book has been borrowed and returned and collects any late-return fees when the book is returned) is part of the system.

If the automated system just covers the activities that the librarian did before, then the librarian is suddenly completely out-of-scope for the software system. He is neither part of the system, nor an actor.

On the other hand, if the automated system also tracks where each book is located (but without the means to physically move books), then the librarian would become an actor who notifies the system that a book has been moved from the collection-bin to the correct place on the shelf.

If the automation project were to digitize the index-card system of the library, then there might not even be a distinction between the librarian using the system or a member. Both would belong to the same class of actor: User.

Not the answer you're looking for? Browse other questions tagged or ask your own question.