Use case diagram : distingishing the actor of a use case

Requirementsuse-case

I know a system contains a set of use case diagrams and not one use case diagram, but anyway in the first step to find the system requirements or to analyze them I have problem in distinguishing the actor of a use case.

suppose the system is : Library

one actor is the Member
and one actor is the Librarian.

a typical use case is Borrow a book

Suppose the one who interacts with the software is Librarian. Then borrow a book should be associated with librarian or the member?

In fact Borrow a book use case is a service of the system for the member. but the actor who interacts with it is the librarian.

In which stage and in which use case diagram I should use the member as actor and associate it with the Borrow a book use case? and in which diagram I should associate it with the librarian?

Also the librarian is really an actor of the system or its part of a system?

Best Answer

Remember the definition of an actor: an entity that interacts with your system. The librarian is the one who is actually interacting with the system (the library), whereas the member is just requesting the librarian for a book, and does not care where the hell that book comes from. Then the member is an actor on the librarian, who is a system in herself.

The librarian: a system, actor on the library

Library: a system

Member: an actor on the librarian