Agent-based University Library System



Similar documents
4. Multiagent Sys stems Design. Part 2: The PROMETHEUS methodology.

LIBRARY MANAGEMENT SYSTEM PHASE II

Active Directory User Management System (ADUMS)

Software Requirements Specification. Web Library Management System

Claverack Free Library CIRCULATION POLICY

Support to Reading Groups

Deltek Touch Time & Expense for GovCon. User Guide for Triumph

Taulia Supplier Portal User Guide

Eloquent Librarian Planning Guide

Mass Announcement Service Operation

INTEGRATION GUIDE. General Radius Config

State Library of Western Australia Get-It loan and copy service

Content Filtering Client Policy & Reporting Administrator s Guide

Add in Guide for Microsoft Dynamics CRM May 2012

Agent-Oriented Software Engineering

Koha 3 Library Management System

Business Bill Pay. Help Guide

GoToMeeting, GoToWebinar & GoToTraining. Active Directory Connector Administration Guide Hollister Avenue Goleta CA 93117

Frequently Asked Questions: Cisco Jabber 9.x for Android

CPS122 - OBJECT-ORIENTED SOFTWARE DEVELOPMENT. Team Project

Portals and Hosted Files

WEST VIRGINIA UNIVERSITY

SYSTEM DEVELOPMENT AND IMPLEMENTATION

Course Registration Case Study

How To Set Up Dataprotect

User Guide. You will be presented with a login screen which will ask you for your username and password.

Using a Remote SQL Server Best Practices

Customer admin guide. UC Management Centre

Getting Started With SAM Director SAM Director User Guide

Auto Rental System Requirements Specification Statement: Assumptions:

Use Case Diagrams. Tutorial

PaperCut Payment Gateway Module - Heartland Quick Start Guide

Installing Lumension Endpoint Management and Security Suite (L.E.M.S.S.) Using a Remote SQL Server

Ross Video Limited. DashBoard Server and User Rights Management User Manual

Phone: Fax: Box: 230

How To - Implement Clientless Single Sign On Authentication with Active Directory

Colorado Ski Racing Management System

Summary. How-To: Active Directory Integration. April, 2006

AEC Version Installation/Upgrade Quick Start Guide

1. Data Domain Pre-requisites. 2. Enabling OST

Using the VMware vrealize Orchestrator Client

Spectrum Technology Platform. Version 9.0. Administration Guide

IFML by Example: Modeling an Online Bookstore

Rational Software. Course Registration System Use-Case Model

one Managing your PBX Administrator ACCESSING YOUR PBX ACCOUNT CHECKING ACCOUNT ACTIVITY

Office of Information Technology Resources Handbook for NSC Employees

Implementing XML-based Role and Schema Migration Scheme for Clouds

Remote access set up for a home PC

Vision Document Airline Reservation System

Cathay Business Online Banking Quick Guide

PINsafe Multifactor Authentication Solution. Technical White Paper

LATITUDE Patient Management System

The full setup includes the server itself, the server control panel, Firebird Database Server, and three sample applications with source code.

Tool Tip. SyAM Management Utilities and Non-Admin Domain Users

SonicWALL Security Quick Start Guide. Version 4.6

Software Requirements Specification for DLS SYSTEM

Kaseya 2. User Guide. Version 1.1

Features of AnyShare

Manual. Version: 1.0.0

Your Organisation s Website 2. Ensuring that back-office systems are positioned to effectively support your website

Managing Users and Identity Stores

SchoolBooking SSO Integration Guide

Searching and Applying for Positions

Business Portal for Microsoft Dynamics GP User s Guide Release 5.1

Micros Troubleshooting & Error Message Guide.

CMS Server Installation Guide

F2103 GPRS DTU USER MANUAL

Chapter 4. Appointment Scheduling

Magento Extension REVIEW BOOSTER User Guide

RS MDM. Integration Guide. Riversand

ACR Triad Site Server Click Once Software System

Internet Auctioning. The buyers 'view' the items on the server, and if they want to bid for it, they need to have a client to lodge a bid.

ThinManager and Active Directory

ABB solar inverters. User s manual ABB Remote monitoring portal

Unified University Inventory System (UUIS) Software Requirements Specifications

Department of Veterans Affairs VistA Integration Adapter Release Enhancement Manual

Self-Service Active Directory Group Management

Dr. Pat Mirenda. Software Design Specification Document

Working with H-drive, I-drive, and DropBox Files Online

Workflow Conductor Widgets

SQL Server for developers. murach's TRAINING & REFERENCE. Bryan Syverson. Mike Murach & Associates, Inc. Joel Murach

Download and Install the Citrix Receiver for Mac/Linux

In this topic we will cover the security functionality provided with SAP Business One.

ATX Document Manager. User Guide

PROCEDURE FOR USING ONLINE REPORTING

LetMC.com Training Support Part 2 Issue /05/09 Accounting Irish Edition

Application. 1.1 About This Tutorial Tutorial Requirements Provided Files

CA /BrightStor ARCserve9 Backup Software

Script for Administering Computer-Based Tests. Polk County Midterm and Final Exams

Mac - Juniper Remote Desktop Instructions

Installation Instruction STATISTICA Enterprise Server

PekaoBIZNES 24 QUICK Start. User Guide First steps in the system

Microsoft Dynamics GP Release

OMU350 Operations Manager 9.x on UNIX/Linux Advanced Administration

User Guide for External Candidates

INTEGRATION GUIDE. DIGIPASS Authentication for Office 365 using IDENTIKEY Authentication Server with Basic Web Filter

User Guide. Module 4: Managing Your Account

Home Counselor Online User s Guide for Mortgage Professionals

a. Inheritance b. Abstraction 1. Explain the following OOPS concepts with an example

Q: What discounts do I get when I purchase my account in $100 increments?

Transcription:

_ Course Number: SENG 609.22 Session: Fall, 2004 Course Name: Agent-based Software Engineering Department: Electrical and Computer Engineering Document Type: Project Report Agent-based University Library System Instructor: Dr. Behrouz Far Cheng Zhong, Ningsi Liu

Index..2 1.0 Introduction.3 2.0 System overall Specification...3 2.1 System general description..3 2.2 Requirement..4 2.2.1 Functions..4 2.2.2 General Constrains. 4 2.3 Assumption....5 3.0 System Design Document....5 3.1 Agent Based Analysis....5 3.2 Role schema...6 3.3 System Architecture....11 3.3.1 Agent Description... 12 3.3.2 Generic agent structure.....12 4.0 Overall design architecture diagram ( in Use case View)... 13 5.0 Package Hierarchy.....14 5.1 Detailed design.....15 Borrower Services...15 I. Search Books II. Fine Payment III. Borrower Personal Info Librarian Services.. 17 I. Order New Books II. Respond Borrower s Search III. Librarian Personal Info Administrator Services.. 20 I. Maintain Books Management II. Make Master Category III. Administrator Personal Info Accounting Staff Services. 22 I. View Borrower s Fine status II. Process Fine 6.0 Conclusion..23 7.0 Reference....23 1. Introduction - 2 -

Agent-based University Library System is a multiagent system that allows: Borrowers to manage their personal information, reserve for the books and report loss/damage of books. Book Administrator to maintain whole collection of books physically: Purchasing new books to fulfill the orders from professors, reporting the out-of-date/wearing books to General Book Manager, updating Master Category of Library, and preparing the books for picking up. Librarians to manage book lists including responding to requirements from Borrower, and report the loss/damaged to General Book Manager. We adopt the GAIA methodology to analyze and design system, and MSC to define the detailed design. 2. 0 System overall Specification 2.1 System general description Book Management Personal Info Management System Order Books Manage main Categories Borrower Reserve Books Search Books Administrator Fine Management Librarian Figure 1: Booking Management System Figure 2: Personal Info Management System The top-level system description is shown in Figure. 1 and 2. The University Library System consists of two parts: Booking management System. Personal Management System Booking Management System consists of following use cases: - 3 -

Order books: professors or senior librarians (General Book Manager) can order new books for library via this system. Manage main categories: the librarian can update the categories. For example, deleting the lost/wearing item from database, adding new coming books, and setting/modifying the lending policies for books, etc. Reserve books: borrower can place hold on their favorite books, or make special booking with course id from instructors. Fine management: borrower can pay fines for overdue books on-line by credit/debit card, or just cash to the human agent in the library. Search books: borrower can search their books by providing title, author, or subjects of book not only in one library, but also in connected libraries. 2.2 Requirements 2.2.1 Functions The borrowers should be allowed in Agent-based University Library System to:. register in system; be authenticated by ID or password.. manage their own information such as personal password, date of graduate which will be confirmed later by the system with relative server.. find the books information by keywords such as title, author, caller ID, section number, date of publication, and location where it is stacked.. place holds on the books which are available for them.. report loss/damaged and get value for paying for.. get approximate period time to wait for the held books and recommendations from the system.. pay fines/value of lost book by credit/debit card. The Book Administrator should be allowed in Agent-based University Library System to:. be authenticated by system with their employee ID, password, and/or other relative information.. browse the Master Category of Library to find out the books should be added, and report wearing/out-of-date books to General Books Manager.. check the orders for buying book to supply library. 2.2.2 General Constraints 1. The user interface should be simple, so all the staff of library and borrowers required no special training. 2. A maximum of 10000 concurrent users should be supported by the system. 3. System can be accessed remotely from outside of campus. 4. System response time would be no more than 15 seconds. 2.3 Assumptions. The date resource of the qualified borrowers including student and all university - 4 -

staff and interface should be ready to access.. The database of categories of library and its interface should be available to access. 3.0 System Design Document 3.1 Agent-based Analysis The system is designed for the university library, so within our problem domain, the organization entities which actually are the organization roles in our system are Borrower, Book Administrator, and Librarian. Roles: 1. Borrowers: The main role of borrower is to manage their own personal information through a interface agent, interact with Librarian to get their favorite books, and to interact with fine system to pay fines and value of the lost book. 2. Book Administrator: The main role of Administrator is maintaining the all collection books physically by interacting with Librarian and General Books Manager. He should figure out which books are old enough to take off shelves. 3. Librarian: The first role is to response to requirements from borrower. He should tick off the books that have already been lent out, and updates the related information of books he lent out, and reports the loss/damaged to General Books Manager and Fine System. The second role is to communicate with borrower by auto-email system to inform them to pick up their reserved books, urge borrower to return the overdue books. 4. Besides of physical roles, there is also a logical organizational entity, which play important role. They are Fine system and General Book Management System. The Fine System collects all borrowers fine information, or value of paying for lost books, and warns for delayed payment of fines. It also takes charge of doing transaction with certain bank. The General Book Management System is the most important role, which should be able to manage whole collection of books. It has authority to establish the lending policies for every book, and make order for new books. So, the roles in Agent-based University Library System are:. Borrower role. Book Administrator role. Librarian role. Fine System role. General Book Management System 3.2 Role schema Role schema: librarian - 5 -

Description: Response to borrowers requirements: search, reserve, and report of loss; informs borrowers to pick up their reserved books, urges borrower to return the overdue books. Protocols and Activities: RespondSearch, RespondHolding, RespondLossDamagedReport, InformBorrowerInfo Permissions: RespondSearch Reads: MasterCategoryLibrary Generates InformationSentToBorrower Permissions: RespondHolding Reads: BookID BorrowerID Generates: InformationToBorrower InformationToBookAdministrator Permissions: RespondLossDamagedReport Reads: BookID BorrowerID Generates: InformationToBookAdministrator InformationToFineAgent Permissions: InformBorrowerInfo Reads MasterCategoryLibrary Generates: InfoSentBorrower Responsibilities: RespondSearch Reading whole category of Library Check to see if response list is empty Responsibilities: RespondHolding Modify the status of held books Check for valid input data Responsibilities: RespondLossDamageReport Modify the status of lost/damaged books - 6 -

Check for the correctness of input data Responsibilities: InformBorrowerInfo Generate email for borrowers Check for the if the ID of receiver is correct Role schema: Book Administrator Description: Maintaining the all books should be adjusted physically; figuring out which books are old enough to take off shelves. Protocols and Activities: TakeOffBook, AddNewBook, PrepareForHolding Permissions: TakeOffBook Reads: InformationFromLibrarian //report of damaged books Generates: InformationToGeneral Permissions: AddNewBook Reads InformationSentFromGeneral Generates AdjustedBookList Permissions: PrepareForHolding Reads: MasterCategoryLibrary Generates: InformationToLibrarian Responsibilities: DeleteBook Updating Adjusted List of Books Check to see if books is adjusted Responsibilities: AddNewBook Updating Adjusted List Books Check to see if books is adjusted Responsibilities: PrepareForHolding - 7 -

pick up. Read the MasterCategoryLibrary to get list of books for preparing to Check if the books are correct Role schema: Borrower Description: Manage personal information, search, reserve books and report loss of books, and pay fines and value of the lost book. Protocols and Activities: ManagePersonalInfo, SearchBook, ReserveBook, ReportLossNDamaged, PayFine Permissions: ManagePersonalInfo Inputs: Relative personal information Generates: InformationToServer Permissions: SearchBook Inputs Book titles, Author, subjects Generates InformationToLibrarian Permissions: ReserveBook Inputs: Caller ID of book Generates: InformationToLibrarian Permissions: ReportLossNDamaged Inputs: Caller ID of book Borrower s ID Generates: InformationToLibrarian Permissions: PayFine Reads InfoFromFineAgent // for penalty Generates: PayorderToFineAgent Responsibilities: ManagePersonalInfo - 8 -

Activate membership of Library Input/modify personal information Make sure of that personal information is correct Responsibilities: SearchBook Able to search the favorite books by keywords or combination of it Check to see if keywords are suitable for searching. Responsibilities: ReserveBook Borrower can place their holds on available books Make sure the borrower has a valid name, ID, and password Responsibilities: ReportLossNDamaged Borrower can report the loss of books Borrower can get evaluated value of lost book Make sure the borrower s ID and password are correct Role schema: Fine System Description: Inform borrower the value of lost/damaged books officially and extra penalty for overdue. Transfer penalty into accounts in banks. Protocols and Activities: InformBorrower, TransferPenalty Permissions: InformBorrower Inputs: Borrower s ID Amount of penalty Simple explanation Generates InformationSentToBorrower Permissions: TransferPenalty Reads: BorrowerID Account ID of borrower Amount of penalty Generates: - 9 -

InformationToBank ReceiptToBorrower Responsibilities: InformBorrower Fine agent can send message to borrowers Make sure of that the message can be delivered correctly. Responsibilities: TransferPenalty Fine agent can help borrowers to do transaction of paying fine Make sure of that the transaction be correctly finished Role schema: General Book Management System Description: Manage whole collection of books: order new books, delete damaged or out-of-date books. Set lending policies for every book, and other kind of media. Protocols and Activities: ManageCategoryLibrary, OrderNewBooks Permissions: ManageCategoryLibrary Reads: MasterCategoryLibrary Generates InformationSentToBookAdministrator Permissions: OrderNewBooks Reads: InformationFromLibrarian Generates: InformationToBookAdministrator Responsibilities: ManageCategoryLibrary Modify the MasterCategoryLibrarian Delete the damaged/lost items from ManageCategoryLibrary Put the policies for every item in ManageCategoryLibrary Make sure of that all operations are authorized and correct. Responsibilities: OrderNewBooks Send the order for new books to Book Administrator Double check the list of new book is correct 3.3 System Architecture - 10 -

Web Client Interface Agent Borrower Agent Personal Agent Db Facilitator Agent Librarian Agent Fine System University Library System DB General Book Management System Books Administrator Agent Figure 3 System Architecture diagram for University Library System As shown in figure 3, the system architecture consists of high level agents such as Personal agent, General book management agent, and fine agent. The inner agent can - 11 -

communicate based on the coordination of facilitator agent. All the agents register the services they can provide in facilitator agent and it provide the agent directory services to all connected agent, so the requesting agent can obtain the location and services of target agents. Then requesting agent can send messages directly to the target agent. Client does communicate with the agents only through the interface agent. All the core agents (borrower, book administrator, and librarian) would be valid through the personal agent. The personal agent can access domain specific service via other available agents. For example, the borrower agent can access the view of fine service via librarian agent. The core agents interact with Master Category of Library database to get required information. The personal agent isolates its own knowledge management database with other data source to offer personalized service to clients. 3.3.1 Agent Description The system consists of core agents Borrower agent, Librarian agent, and Fine Agent and high-level agents General Book Management agent, Personal agent. Personal Agent Personal agent can support different roles according to the login profile. It also allows the user to maintain their individual working environment and preferences. Besides, it also can offer different services for different roles. Librarian Agent Librarian agent provide basic core services such as searching books, interacting with General Book Management Agent to maintain the all collection books, interacting with the Fine Agent to deal with the penalty event, and some service for class order. General Book Management Agent General Book Management Agent handles the whole list of books in the library. When Librarian order a batch of new books for class, the agent should send this order to Book Administrator to buy it; when got the report of damaged books from Book Administrator, it has to adjust the index of Master Category of Library database. Fine Agent This agent is responsible for informing borrower amount of penalty, and provides a channel to help them transfer money into accepting account by credit /debit card. Borrower Agent Under roles of borrower agent, user can do register in library system, activate their membership, and require services from other agent. Facilitator Agent It provides directory service for all the agents. All the agents have to login on the facilitator agent before they can work. 3.3.2 Generic agent structure - 12 -

Validation Agent Agent Interface Core Function XML Parser Facilitator Agent Database Interface Event Listener Figure 4: Internal architecture of an Agent Agent architecture consists of following components. Agent Interface The Agent services are exposed only to inside of system to provide a way to access the core agents.. Database Interface Database interface provide basic database access function to the agent.. Event Listener Event listener seems like a daemon on webserver, which listens to incoming events, triggers, and establishes asynchronous information processing.. Core Functions Core functions provide all functionalities of core agent. The parameters transformed by XML parser is processed in this part, and the output back to the XML parser, which transforms it and sends back to agent interface.. Validation Agent Validation agent filters the authorized requests out of the input stream of requests. It protects the system from any illegal access. 4.0 Overall design architecture diagram (in Use case view) - 13 -

Figure 5 : This diagram gives the overall architecture of University Library System: It shows the services rendered to Borrower, Librarian, Administrator and the Fine Receiver Book Agent common to Borrower and Librarian Book List Agent View searching List Borrower s List Librarian reports Borrowing Books Responding search Online Fine Payment Borrower Info Librarian Info Manual Fine Fine Status Maintain Borrower Maintain Librarian Processing Information Information Fine System Book Administrator Maintain Book Master Category 5.0 Package Hierarchy - 14 -

Validate borrower (C ) Book Borrow (P ) Borrower borrow books (C ) Librarian manage books (C ) Borrower Personal Info (C ) Personal Info (P ) Librarian Personal Info (C ) Administrator Personal Info (C ) Fine payment (P ) Borrower online fine payment (C ) Process fee (C ) View fine detail (C ) Book Management (P ) Order New Books (C ) Maintain book Category (C ) Figure 6: Diagram showing the overall package hierarchy. Note that validate borrower class is in the most top hierarchy so that it will be common for all actors 5.1 Detailed design (activity diagram, sequence diagrams based on Actors) Borrower Service: - 15 -

Borrower Services Search Book Reserve Book Report Loss/damage Pay Fine I. Search Books Figure 8: This use case begins when the borrower input his/her personal info. The system verifies the information. If the info is valid then, the system prompts the borrower to select the desired activity: Search by book titles, Search by Author and Search by Subjects :Borrower :Book Management Update: Borrower s List Login Verify Login Request Book Searching Respond, If not eligible If yes, Update borrower Book list Update book list II. Fine Payment: - 16 -

Figure 9: This use case begins when the borrower input his/her personal info. The system verifies the information. If the info is valid, the borrower can pay fine online. : Fine Payment : Admin borrower Info Login Verify Login Request fine payment Respond, If not eligible If yes, request fine status Confirm payment Update admin info III. Borrower Personal Info Figure 10: This use case begins when the borrow log onto the system for updating his/her personal information. : Borrower : Borrower Personal Information Login Info Verify user Request (personal Info) Respond (personal info) Confirm Update Display Update Librarian Services: - 17 -

Figure 11: This diagram shows services rendered to librarian at high level. After librarian login, he/she can order new book, respond the borrower s search and remind borrower. Librarian Services Report loss/damage Responding borrower Reminding I. Order New Books Figure 12: When the librarian order new books, the book table will be updated. :Librarian :Book Management Update: Book Tables Login Verify Login Request ordering books Respond, If not eligible If yes, request Updating the book table Confirm and display updating II. Responding Borrower s Search - 18 -

Figure 13: When the librarian login, he/she can responds the borrower s requirement and remind the borrower. : Librarian : Borrower s Info Update: Borrower s List Login Verify Login Answer the borrower Respond, If not eligible If yes, Update borrower Book list Confirm and display updating III. Librarian Personal Info Figure 14: This use case begins when the Librarian log onto the system for updating his/her personal information. : Librarian : Librarian Personal Information Login Info Verify user Request (personal Info) Respond (personal info) Confirm Update Display Update - 19 -

Administrator Services Figure 15: This diagram shows the services rendered to administration staff at high level. After the administrator login, He/she can maintain the book adjustment and make a master category. Administrator Services Maintain book adjustment Maintain a master category I. Maintain Book Management Figure 16: Administrators maintain all the books that need to be adjusted, figuring out which book needed to be taken out from the shelves. : Administrator Login : Book Manament Update: Book tables Verify Login Request book adjustment Respond, If not eligible If yes, request to update Book tables Confirm and display updating - 20 -

II. Maintain Master Category Figure 17: Administrators make a master category for all the books. And update it according to the book status. : Administrator : Book Manament Update: Book tables Login Verify Login Request making category Respond, If not eligible If yes, request to update book tables Confirm and display updating III. Administrator Personal Info Figure 18: This use case begins when the borrow log onto the system for updating his/her personal information. : Administrator : Administrator Personal Information Login Info Verify user Request (personal Info) Respond (personal info) Confirm Update Display Update - 21 -

Accounting Staff Services Figure 19: This diagram shows the services rendered to the accounting staff at a high level. The accounting staff is a person who deals with the fine event. View borrow Fine details Process fine I. View Borrower Fine Status Figure 20: Accounting staff can view the status of borrower s fine based on the borrower s personal info such as card number. : Accounting Staff : Borrower Personal Information Login Info Verify user Request fine status Respond(display fine) Confirm Update Display Update - 22 -

II. Process borrower fine. Figure 21: Accounting staff can process borrower s fine. :Fine System : fine payment Update: borrower info User Login Verify Login Request fine payment Respond, If not eligible If yes, request services Update borrower info 6.0 Conclusion In this project we focused on analysis and design of multiagent library system of a university. It covers main operations on the circulation desk and back services. Three basic core agents (Librarian, Borrower, and Books Administrator) and two higher-level agents (General Book Manager, Fine) were abstracted to form a frame of the Library System. We have used role-based model to analyze and dig out the interaction between agents. In detailed design phase, we adopted MSC to describe the interchange of information among the agents. The final goal of the project is to develop an intelligent agent-based system to replace today s popular library management system that students and faculty will not stand in lines-up to get their books. The big improvements in this project are introduction of Fine Agent and Borrower Agent. It would be innovation to present module. 7.0 Reference: [1]: B.H.Far, SENG 609.22 Course Materials, 2004 [2]: Jennings and M. Wooldridge, Agent-oriented software engineering, Queen Mary & Westfield College, U of London - 23 -

[3]: M. Wooldridge, N.R. Jennings, D. Kinny The Gaia Methodology for Agent-Oriented Analysis and Design, Autonomous Agents and Multi-Agent Systems, 3, 285-312, 2000. [4]: B. H. Far, Software agent: Quality, complexity and uncertain issues, IEEE conf. on CI, 2002, p-1-10 [5]: C.A. Iglesias, et al. Analysis and Design of Multiagent Systems using MAS-CommonKADS, Proceedings of the AAAI'97 Workshop on Agent Theories, Architectures and Languages, Providence, USA, July, 1997-24 -