Library L2 Library Librarian Librarian Request for loan accepted Scan member's ID card Has paid member- ship? Scan a book Process canceled Create a loan Move book to the shelf with reserved books Is there any other book remaining? Finish the loan If all of reader's books have been reserved, the loan has to be canceled. It is handled in the subprocess. Book reserved Check the desk Loan finishedRequest a fee Paid? Extend membership Printed bill System System Members Verify membership Book need to be picked up Reader is notified that he/she has to pick up the book within 3 days at the latest and that the book can be found on the shelf with reserved books. Membership extended Reader Name: Ondřej Dacer UČO: 465263 Description of process: There are 2 desks in the library. The first one is for registration of new members (readers) and the second one is for book loans. Consider a scenario when a member wants to borrow books from the library. He just grabs some books and approaches the desk. The librarian behind the desk asks for the library ID card and the books. First scans the member’s ID card. If the system says that the member has a valid membership, the librarian creates a loan, scans the books and finishes the loan. But if the member doesn’t have a valid membership, the librarian asks him to pay a fee. If the member is willing to extend his membership, he pays the fee, the librarian extends his/her membership, the system creates an email notification and the process continues the same as above. Otherwise, the process is canceled. If the reader wants to borrow a book which has been already reserved, the librarian puts the book on the shelf for all reserved books and the system creates a notification for the member who made the reservation. Unfortunately, the library doesn't have enough staff to pick up reserved books from the shelves and from time to time these situations occur. Reader who made the reservation No Yes Requestforloan No Emailnotification No Yes Yes Payment response Request for payment Emailnotification Manual task does not pass data, so gateway cannot decide (it should be user task) -0.5 This parallelism is unnecessary (this event happens immediately) -0.5 Result: 11