advanced system analysis on automated library management system

86
Automated Library Management System Design

Upload: yubraj-pokharel

Post on 14-Jan-2017

203 views

Category:

Technology


1 download

TRANSCRIPT

Automated Library

Management System ­ Design

Advanced System Analysis

Abstract

The main goal of this report is to introduce the key concept and analyzing the strategy for the development of the Automated Library System for the Islington College. This report is divided into the three main parts describing its three main components that will be used during the development. The actual development is not included in this report but all the analysis and deigns that are used in the development are details analyzed in this chapter. The actual cost i.e. direct cost as well as the indirect cost is also analyzed details in this report.

2 | Page

Advanced System Analysis

Table of Contents

Chapter 1. Selection of a Methodology

1.1 SSADM Methodology

1.2 DSDM Methodology

1.3 SCRUM Methodology

1.4 Extreme Programming

Chapter 2. Project Plan

2.1 Planning

2.1.1 Project Cost

2.2 Managing

2.3 Designing

2.4 Coding

2.5 Testing

Chapter 3. Design

3.1 Requirements

3.1.1 Functional Requirements

3.1.2 System Requirement

3.2 Use Case Diagrams

3.2.1. Login Use Case Diagram

3.2.2 Add Book Use Case Diagram

3.2.3 Librarian Use Case Diagram

3.2.4 Add Member User Case Diagram

3.2.5 Search Member Use Case Diagram

3.2.6 Member Use Case Diagram

3.2.7 Search Book Use Case Diagram

3.3 Class Diagram

3.4 Sequence Diagrams

3 | Page

Advanced System Analysis

3.4.1 Sequence diagram for login

3.4.2 Sequence diagram for Adding member

3.4.3 Sequence diagram for adding books

3.4.4. Sequence diagram for booking system

3.4.5. Sequence diagram for searching book

3.4.6 Sequence diagram for searching users

3.5 Activity Diagrams

3.5.1. _ Activity diagram for login

3.5.2 _ Activity diagram for adding member

3.5.3 _ Activity diagram for adding books

3.5.4 Activity diagram for assuring books

3.5.5 Activity diagram for returning the book

3.6 ER Diagram

3.5 Interface Designs

3.5.1 User Login

3.5.2 Search Book

3.5.3 Member info

3.5.4 Book Details

3.5.4 Book Info

3.5.5 User Status

3.6 Application Architecture

Appendix

Appendix A: Gantt Chart

Appendix B: ER Diagram

References

4 | Page

Advanced System Analysis

List of Figures Figure 1: SSADM life cycle (System Development Life Cycles (SDLC) – Sharper Tutorials.)

Figure 2:DSDM lifecycle (DSDM Atern Project Structure; Overview | M.C. Partners & Associates)

Figure 3: SCRUM lifecycle

Figure 4:XP life cycle

Figure 5: Overall plan for islington library.

Figure 6: Iteration 1 for islington library.

Figure 7: Iteration 2 for islington library.

Figure 8: Iteration 3 for islington library.

Figure 9: Iteration 4 for islington library.

Figure 10: Use case diagram for login

Figure 11: Use case diagram for adding books

Figure 12: Use case diagram showing system for librarian

Figure 13: Use case diagram for register users

Figure 14: Use case diagram for searching students

Figure 15:Use case diagram showing system for users

Figure 16: Use case diagram for searching books

Figure 17:Class Diagram for Automated Library Management System

Figure 18: Sequence diagram for login into the system

Figure 19: Sequence diagram for registration of users

Figure 20: Sequence diagram for register books in the system

Figure 21: Sequence diagram for booking

Figure 22: Sequence diagram for searching the books

Figure 23: Sequence diagram for searching the users

Figure 24: Activity diagram for login

5 | Page

Advanced System Analysis

Figure 25: Activity diagram for adding members

Figure 26: Activity diagram to take a book

Figure 27: Activity diagram for returning the books

Figure 28: ER Diagram

Figure 29: User Login

Figure 30: Search Book

Figure 31: Member Info

Figure 32: Book Details

Figure 33: Book Info

Figure 34: User Status

Figure 35: Application Architecture

6 | Page

Advanced System Analysis

List of Tables

Table 1: Table showing the direct cost used in the development of Library system.

Table 2: Indirect cost for the development of the library system.

7 | Page

Advanced System Analysis

Chapter 1. Selection of a Methodology Introduction to project The project is on Islington Library which currently has a manual system of handling member

registration, book issuance, book returning etc. This report intends to provide a full specification

for the development of Automated Library System for Islington College with the selected

methodology. The project is carried out through XP methodology with previous comparison of

methodology done.

The various possibilities for the development of Islington Library could be the following

methodologies:

1 SSADM

2 DSDM

3 Scrum and

4 XP

8 | Page

Advanced System Analysis

1.1 SSADM Methodology SSADM is a waterfall method for the analysis and design of information systems. SSADM can

be thought to represent a pinnacle of the rigorous document­led approach to system design, and

contrasts with more contemporary agile methods such as DSDM or Scrum.

Figure 1: SSADM life cycle (System Development Life Cycles (SDLC) – Sharper Tutorials.)

For SSADM puts special emphasis on the analysis of the system and its documentation, this

causes the danger of over­analyzing, which can be very time and cost consuming (Kanban.

2012).Due to various types of description methods, checks of consistency cannot be carried out.

Especially with large systems, the outline diagram can become very unclear, because all

relevant data flows have to be included. (ITC Infotech, India, 2012.)

SSADM can’t be used for the development of Islington Library for the following reasons :

1 SSADM puts special emphasis on the analysis of the system and its documentation which

causes the danger of over­analyzing and can be time and cost consuming(Kanban. 2012).

For the development of Islington Library we do not need an absolute documentation for

the system.

2 Due to various types of description methods, checks of consistency cannot be carried out.

9 | Page

Advanced System Analysis

3 The outline diagram can become very unclear, because all relevant data flows have to be

included. (ITC Infotech, India, 2012.). As the system of Islington Library is small and

medium­sized systems in which we do not include all the data flows.

10 | Page

Advanced System Analysis

1.2 DSDM Methodology

The another possibility for the development of Islington Library, DSDM, is the robust Agile

framework for effective Project Management and Delivery; providing best practice guidance for

on time, in budget delivery of projects – with proven scalability to address projects of all sizes

and for any Business Sector. (DSDM Atern – DSDM Atern. 2012)

Figure 2:DSDM lifecycle (DSDM Atern Project Structure; Overview | M.C. Partners & Associates)

Yet, DSDM can’t be used for the development of Islington Library for the following reasons :

1 DSDM places relatively little emphasis on quality delivering solid prototypes quickly,

rather than the actual product quickly.(Compare Dsdm And Xp. 2012) So, DSDM is

generally for RAD no matter what the coding approach is. Since Islington library has got

clear requirements and has to be delivered a solid product, there is no necessity of

building a quick prototype being ignorant on coding approach.

11 | Page

Advanced System Analysis

2 DSDM does not recognize that the Cost Of Change Curve may be flattened. (Compare

Dsdm And Xp. 2012) This is another reason for not choosing DSDM for development of

Islington Library, because changes can always not be expected in a monster way. They

can appear with a constant line of curve, when cost is considered.

3 DSDM uses timeboxing to manage risk per iteration while the other methodology like XP

uses more responsive techniques. (Compare Dsdm And Xp. 2012) Timeboxes are

generally of longer periods, hence making it quite tedious process of development, which

may affect the development process of Islington library because there is nothing amazing

and much interesting about project tasks, as it revolves only around the Library.

12 | Page

Advanced System Analysis

1.3 SCRUM Methodology

The Library management system can also be developed using the scrum methodology. Among

all the agile methodologies, Scrum is unique because it introduces the idea of “empirical process

control.” It uses a real world progress of the project. In Scrum, projects are divided into succinct

work cadences, known as sprints, which are typically one week, two weeks, or three weeks in

duration. At the end of each sprint, stakeholders and team members meet to assess the progress

of a project and plan its next steps. This allows a project’s direction to be adjusted orreoriented

based on completed work, not speculation or predictions (Scrum Methodology & Agile Scrum

Methodologies. 2012). Scrum has certain practices and is also a commitment and result oriented.

In SCRUM project is delivered using increments of the shippable products. Here on each day the

task to be done is discussed before starting it and at the end what is achieved is also discussed.

After the delivery of each parts of the product a group meeting between the developing and

stakeholder teams takes place which focuses on quality assurance they want to have in their

system.

Figure 3: SCRUM lifecycle

13 | Page

Advanced System Analysis

Development of Library management system may be beneficial by using the SCRUM because in

SCRUM:

1. The principles are easy to understand as well as easy to implement.

2. All the rules and development is technological and tools agnostics.

3. The system is built and tested several times focuses on each drawback as well as on its

removal and modifications.

Instead of its advantages there are also several points which are briefly discussed below about

why not to use SCRUM for the development of the library management system.

1. The library management is not such a big project and all the additional programmed planning

and the changing requirements are not all required here. Using SCRUM costs bit more and also

needs additional documentations prepared that’s way using the SCRUM for its development may

not be appropriate.

2. In our project we are going to have all the previous requirements required for the development

of the system and all are previously set, which means we are not going to change any

requirements. The scrum mainly focuses on the changing requirement that’s way we may not

have to use it.

3. Management systems such as Library Management system needs lots of integration between

its modules like as: student, teachers and so on so the developer needs to be together during the

14 | Page

Advanced System Analysis

development but SCRUM developer may be personally dedicated i.e. Chickens, but in our

project all the developer teams needs to be together that’s way scrum may not be appropriate.

4. The daily meeting is the main agenda of the scrum which is not needed in our project.

Because all the necessary requirements and the task according to the priorities are all set up

earlier which all are required to set up before starting project.

5. SCRUM focuses on the shorter more structured sprints, and prioritizes backlog items Scrum's

aim goal is to get estimations of how long development will take(agile ­ What is the difference

between Scrum and Extreme Programming? StackOverflow. 2012.)

6. It does not address the practices required to create "goods" of any kind, but instead gives us

the process that will take us from the inception of a vision to the final product,regardless of the

actual development process. (Agile ­ What is the difference between Scrum and Extreme

Programming? Stack Overflow. 2012.)

7. Scrum has nothing to say about programming. (Agile ­ What is the difference between Scrum

and Extreme Programming? Stack Overflow. 2012.)

15 | Page

Advanced System Analysis

1.4 Extreme Programming The methodology that suits the best for the development of Islington library is XP.

Extreme Programming is a discipline of software development based on values of simplicity,

communication, feedback, and courage.

Figure 4:XP life cycle

It works by bringing the whole team together in the presence of simple practices, with enough

feedback to enable the team to see where they are and to tune the practices to their unique

situation. (xProgramming.com. 2012.)

The reasons for using XP for the Islington Library are as follows :

1 Focuses of XP are more on paired programming, prioritizing the tasks, and more test

driven development.(agile ­ What is the difference between Scrum and Extreme

Programming? Stack Overflow. 2012.) This feature helps the development of the

Islington Library software with great quality.

2 XP is more about helping developers get things done as quickly and maintainable as

possible. (agile ­ What is the difference between Scrum and Extreme Programming?

Stack Overflow. 2012.)

16 | Page

Advanced System Analysis

3 It gives us a process with which to create software in an agile and productive way. It

deals with, though doesn't specialize in the management of the development process, and

focuses mostly on the engineering practices required to deliver software, with quality.

(agile ­ What is the difference between Scrum and Extreme Programming? Stack

Overflow. 2012.)

17 | Page

Advanced System Analysis

Chapter 2. Project Plan The Islington Library shall be developed following XP practices. As XP focuses more on the

Programming and then on the fly testing, the software product of better quality can be expected.

The five phases of XP practices for the development of Islington library are as following:

2.1 Planning The Planning phase is started with User stories and conduction of Spike solutions. A week is

to be spent on that, after which is conducted a meeting with Customers, Team Manager and

Programmers for the scheduling of releases with everyone’s agreement.

The more important part after that is the iteration planning based on the User stories.

The overall planning is as given below:

Figure 5: Overall plan for islington library.

The project is divided on 4 iterations of not more than 15 days. Resources for each iteration are

Customer, Team Manager and Programmers.

18 | Page

Advanced System Analysis

The iterations are as following:

Iteration 1 – Librarian Module (Book Part)

Iteration 2 – Librarian Module (Member Part)

Iteration 3 – Member Module

Iteration 4 – Administrator Module

19 | Page

Advanced System Analysis

Iteration 1 – Librarian Module (Book Part)

The first Iteration is of 11 days, with 8 tasks. Each task will be tested by the programmer himself

right after the coding is completed. Each task is of 1 working day.

Figure 6: Iteration 1 for islington library.

The tasks are as follows:

Create Book Categories

Update Book Categories

Create Book

Update Book

Delete Book

Update Book Borrowing Period

Create Authors and Publishers Information

20 | Page

Advanced System Analysis

Update Authors and Publishers Information

Iteration 2 – Librarian Module (Member Part)

The second Iteration is of 10 days, with 7 tasks, each task being tested by the programmer

himself right after the coding is completed. Each task is of 1 working day.

Figure 7: Iteration 2 for islington library.

The tasks are as follows:

Accept Membership Request

Create Membership Request

Reject Membership Request

Update Membership Request

Issue Books to Members

Return Books to Members

Renew Books to Members

21 | Page

Advanced System Analysis

22 | Page

Advanced System Analysis

Iteration 3 – Member Module

The third Iteration is of 12 days, with 5 tasks and each task is of 1 working day.

Figure 8: Iteration 3 for islington library.

The tasks are as follows:

Give a provision to Retrieve/Update personal information to Member

Search through books by subject, title, authors or any other information related to book

place a request for Renewal

place a request for Booking

Suggest a book to be brought to the library book collection

23 | Page

Advanced System Analysis

Iteration 4 – Administrator Module

The fourth Iteration is of 12 days, with 3 tasks.

Figure 9: Iteration 4 for islington library.

The tasks are as follows:

View the fine details of Members returning Books late

Check the Return of Books

Check the Issuance of Books

24 | Page

Advanced System Analysis

2.1.1 Project Cost

The overall cost of the project is calculated through direct and indirect cost during the different

phases of the development.

2.1.1.1 Direct cost The direct cost is calculated for the project duration of 58 days as shown on the project plan

which is as shown in Appendix A of the very document.

SN Title Cost Per

Day(NRs)

Total Cost (2 Months)

1

Programmer 1 800 46, 400

2 Programmer 2 600 34, 800

3 Tester

700 7, 000

Total Direct Cost 88, 200

Table 1: Table showing the direct cost used in the development of Library system.

Apart from Direct cost of developers and testers, indirect cost needs also to be considered.

25 | Page

Advanced System Analysis

2.1.1.2 Indirect cost Indirect costs refer to all those costs that are indirectly related to the project in its development.

All the basic costs that are directly related to the development of the project such as the salary of

the programmer, analysis’s etc. all refers to the direct cost. The indirect costs include cost of

electricity, cost of travelling, cost of printing etc.

a. In our project we do not need to travel a lot, only once before the starting of the project

with the librarian of the Islington College is needed so it can be neglected. If further

meeting with the librarian is needed then it will be conducted using the video conference

on online.

b. The Islington college library is a 30 days long project so the cost of electricity needed for

it should be included as the indirect cost. As due to huge amount of load shedding in the

context of Nepal we need to manage some extra budget for the electricity to continue the

project.

c. The cost related to the project manager is also considered as the indirect cost, because

he/she only survey or check the actual development and progress of the project without

taking part in the real development.

d. Islington college library management system is complete server based application so to

test the system we also need to hire a server. That server will store all the necessary

information of the system in the database. For the development of Islington management

library system we have to hire such a server for about a month.

e. Rent is also considered as the indirect cost for any project. The price that is needed to pay

as the rent of the developing company needs to be included in the indirect cost of the

project.

26 | Page

Advanced System Analysis

The calculation of indirect cost is given below:

SN Title Cost(NRs)

1

Total cost of electricity used during the development of project 8, 000

2 Total money needs to pay the Team manager 30, 000

3 Cost of server needed to store data

2, 000

4 Rent of the developing office (X% of total rent)

14, 000

Total Indirect Cost 54, 000

Table 2: Indirect cost for the development of the library system.

Thus, the total cost of project is 142, 000 NRs. However, depending upon the condition can

increase up or decrease down with a little margin.

27 | Page

Advanced System Analysis

2.2 Managing

The Islington Library is managed through standup meetings. It ensures that each task is

completed perfectly, and tests are passed. The resources involved are:

1. Team Manager

2. Programmers

2.3 Designing

Designing holds the third phase of Islington Library development. This phase mainly focuses

on creating system metaphor for each module or the iteration. Also, the CRC cards for design

sessions are created. Finally refactoring is carried out in system metaphor or CRC cards if

needed. The resources involved are:

1. Team Manager

2. Programmers

3. Designers

2.4 Coding

Just after the designs are completed, coding is started. The XP methodology urges to focus on

programming standards and design patterns, that’s why this phase of the whole methodology is

highly important for carrying the development further. It has to be carried out in such a way that

each task of Islington library is testable.

The resources involved for this phase are Programmers.

28 | Page

Advanced System Analysis

2.5 Testing

The Testing in Islington library is carried out in two ways,

1. Unit testing

2. Acceptance Testing

The Unit testing is carried out by the programmer himself during the coding, with completion

of each task. Whereas the System Testing and Acceptance Testing is carried out at the end after

the results of all iterations of Islington library are integrated as a single module by the testers first

and then the customers themselves.

29 | Page

Advanced System Analysis

Chapter 3. Design

3.1 Requirements

3.1.1 Functional Requirements

The functional requirements of the system are as follows :

1 Librarian should be able to insert books.

2 Librarian should be able to modify books.

3 Librarian should be able to delete books.

4 Librarian can accept or reject a membership request according to the Library Policy or

Payment Methods.

5 Librarian should be able to increase the period of borrowing a book for any specific type

or group of users.

6 Librarian should be able to edit book categories.

7 Librarian should be able to arrange books by categories.

8 Librarian should be able to add authors and publishers information.

9 Librarian should be able to edit authors and publishers information.

10 Librarian should be able to send notification to people who have exceeded deadline or

about to exceed date.

11 Librarian should be able to record books returned by members.

12 Librarian should be able to add membership request.

13 Librarian should be able to edit membership request.

14 Librarian should be able to delete membership request.

15 Librarian should be able to reject membership request.

16 Librarian should be able to issue books to members.

17 Librarian should be able to return books to members.

18 Librarian should be able to renew books to members.

19 Librarian can charge fine to members exceeding return date.

20 Member should be able to view personal information and modify it.

30 | Page

Advanced System Analysis

21 Member can have the ability to search through books by subject, title, authors etc.

22 Member can place a request for booking.

23 Member can place a request for renewal.

24 Member may suggest a book to be brought to library.

25 Admin should be able to check issuance of books.

26 Admin should be able to check return of books.

27 Admin should be able to view the fine details of members returning books late.

3.1.2 System Requirement

1 System should be able to be operated in online/offline status.

2 Bar code generation should be done for Books.

3 Bar code generation should be done for Members.

31 | Page

Advanced System Analysis

3.2 Use Case Diagrams

Use case diagrams overview the usage requirements for a system. They are useful for presentations to management and/or project stakeholders, but for actual development you will find that use cases provide significantly more value because they describe "the meat" of the actual requirements. The use case diagrams for the library management system are given below:

3.2.1. Login Use Case Diagram

32 | Page

Advanced System Analysis

Figure 10: Use case diagram for login

Use case Name: Login

Primary Actor: Users of the library

Purpose: This is implemented in order to enable user authentication. For this a valid

username and password must be used by the existing user.

33 | Page

Advanced System Analysis

Input: The login page to the Library System is displayed where users input their

username and password.

Output: The system will then check the username and password and if matched then the

system will direct them to their home page otherwise the appropriate error message will be

displayed.

Successful steps

Actor action System response

i. User select username

ii. User select password

iv. User logged in successfully.

iii. Verifies username and password

Exception: If username and password does not match system ask user for maximum three times.

34 | Page

Advanced System Analysis

3.2.2 Add Book Use Case Diagram

Figure 11: Use case diagram for adding books

35 | Page

Advanced System Analysis

Use case Name: add books

Primary Actor: Librarian

Pre­Condition: Librarian must be logged in.

Post­Condition: Books must be added to the database.

Purpose: Librarian can add books which late on can be used to view the information

and its availability in the library.

Input: Users will be provided the upload page from where they can upload book

details.

Output: Those uploaded books now can be displayed in library system.

Successful steps

Actor action System response

1.User enter book information from their

system

3.Press Upload Button

2. System check for valid book name and

type.

4. Upload the books detail to the server.

Exception: Books details must be fulfilled.

36 | Page

Advanced System Analysis

3.2.3 Librarian Use Case Diagram

37 | Page

Advanced System Analysis

Figure 12: Use case diagram showing system for librarian

Use case Name: System for librarian

Primary Actor: Librarian

Purpose: This is implemented in order to enable Librarian to use the whole system.

Input: Librarian after the successful login enter into the system.

Output: The whole system will then be visible to the librarian from where he/she can

manage library related tasks.

38 | Page

Advanced System Analysis

3.2.4 Add Member User Case Diagram

Figure 13: Use case diagram for register users

39 | Page

Advanced System Analysis

Use case Name: Register user Primary Actor: Liberian

Purpose: This is implemented in order to enable new user authentication. A valid user

account must be provided for this.

Input: The user request to register for the system.

Output: The system provide registration page for the users from where they can register

their name for the use of library

Successful step

Actor action System response

i. Liberian select username

ii. Liberian select password

iii. Liberian enter user ID

iv. Liberian enter member type

v. Liberian enter contact detail

vii. User Successfully Registered

vi. Register user

Exception: If username already exists then system update the user account.

40 | Page

Advanced System Analysis

3.2.5 Search Member Use Case Diagram

Figure 14: Use case diagram for searching students

41 | Page

Advanced System Analysis

Use case name: search student Primary Actor: Librarian

Pre­Condition: Librarian must be logged in.

Post­Condition: Students name must be displayed.

Purpose: Its main purpose is to enable librarian to search the users they want to.

Input: Librarian Enter the name if the student.

Output: The name of the student similar to the entered name is displayed by the

system

Successful steps

Actor action System response

1 User enters the name of the student.

2. System shows the result related to the name

of the student entered.

Exception: Student name must be valid.

42 | Page

Advanced System Analysis

3.2.6 Member Use Case Diagram

Figure 15:Use case diagram showing system for users

43 | Page

Advanced System Analysis

Use case Name: System for users

Primary Actor: Users

Purpose: This is implemented in order to enable Users to use the whole system.

Input: Users after the successful login enter into the system.

Output: The whole system will then be visible to the Users from where he/she can book,

update their personal information etc.

44 | Page

Advanced System Analysis

3.2.7 Search Book Use Case Diagram

Figure 16: Use case diagram for searching books

45 | Page

Advanced System Analysis

Use case name: search books

Primary Actor: Users

Pre­Condition: User must be logged in.

Post­Condition: books must be displayed.

Purpose: its main purpose is to enable users to search the books which are in the

system database.

Input: User select the search book menu in the system and enter the name of the

book that they want to search.

Output: The searched books will be displayed along with its information.

Successful steps

Actor action System response

1. User enters the name of the book.

2. System shows the result related to the name

of the book entered.

Exception: Valid book name must be entered in order to search.

46 | Page

Advanced System Analysis

3.3 Class Diagram The class diagram for the Islington Library contain the following objects :

1 Member

2 Category

3 Book

4 Author

5 Publication

6 Stock

7 Librarian

8 Borrow

9 Membership

10 MemberType

11 BooksIssuancePolicy

12 UserLogin

13 DeadlineNotification

14 RenewalRequest

15 ReservationRequest

16 FinePolicy

17 FineType

The Member object holding integrated information about the member has the following

attributes : firstName, middleName, lastName, barCode, memberType, clearance, approvedBy

and userLogin.

Member object will request for Membership, maintained by the object Membership with

attributes; member, created, expiry and boolean active.

The Book is the another object holding master information about the book, with attributes title,

barCode, author, publication, category, active and stocks.

47 | Page

Advanced System Analysis

Book has a Author with attributes firstName, middleName, lastName and address. Book belongs

to the Category, while the category has name, description and issuable attributes. The publication

is another object holding information about the publication of the book. At any point in time,

Book can have certain number of Books, and that is maintained by the object Stock, with

attributes book, numberOfBooks, createdDate, active and createdBy. Book can have a

ReservationRequest with attributes member, book, requestCreated, bookingDate,

messageFromLibrarian, approval and approvedBy.

The Librarian object represents the person with the attributes; firstName, middleName, lastName

and userLogin. UserLogin is an another object holding username and password of Librarian and

Member as well.

The information about issuance of Books is maintained by the object Borrow. The object Borrow

has the attributes; member, issuedDate, expectedReturnDate, actualReturnDate, issuedBy, book,

finePolicy and returnApprovedBy.

Late Borrow can have FinePolicy. FinePolicy is an object with attributes descrpition, minNumberOfDays, maxNumberOfDays, amount, created and fineType. Borrow can have RenewalRequest, which holds the attributes borrow, requestCreatedDate,

approval and approvedBy.

48 | Page

Advanced System Analysis

49 | Page

Advanced System Analysis

Figure 17:Class Diagram for Automated Library Management System

3.4 Sequence Diagrams

Sequence diagram graphically helps us to show how the objects do interact with each other

through the message in the execution of the use case. This diagram also helps us to show how the

message are sent as well as received between the objects in the sequences (Jeffrey L. Whitten,

2002). For the development of sequence diagram for library system we have used Microsoft

Office Visio 2003. . In addition, boxes known as combine fragments are drawn around sets of

arrows to mark alternative actions, loops, and other control structures.

Notation used in Sequence diagram used in the Development of Library management

system.

Class

Class roles describe the way an object will behave in context.

Activation

Activation Boxes represents the time an object needs to complete

a task.

50 | Page

Advanced System Analysis

Messages

Messages are arrows that represent communication between

object.

Lifelines

Lifelines are vertical dashes lines

that indicate the object’s presence over time.

51 | Page

Advanced System Analysis

3.4.1 Sequence diagram for login

Figure 18: Sequence diagram for login into the system

Description:

1. Choose username [user ­ system].

2. Choose password [user ­ system].

3. Choose gender [user ­ system].

4. Verify username and password [system]

5. Provide users a personal home page [system­ user]

52 | Page

Advanced System Analysis

3.4.2 Sequence diagram for Adding member

Figure 19: Sequence diagram for registration of users

Description

1. Enter user name [user­system].

2. Enter user type [user­system].

3. Enter user ID [user­system].

4. Enter user contact detail [user­system].

5. Verify user data [system].

6. Insert into database [system­database]

53 | Page

Advanced System Analysis

3.4.3 Sequence diagram for adding books

Figure 20: Sequence diagram for register books in the system

Description

1. Enter Book name [user­system].

2. Enter Book type [user­system].

3. Enter book ISBN number [user­system].

4. Enter author name [user­system].

5. Verify input data [system].

54 | Page

Advanced System Analysis

6. Insert into the database [system­database].

3.4.4. Sequence diagram for booking system

Figure 21: Sequence diagram for booking

Description

55 | Page

Advanced System Analysis

1. Enter username [user­system].

2. Enter password [user­system].

3. Verify user name and password [system]

4. Show initial home page [system]

5. Enter book name for search [system]

6. Search book in the database [system­database]

7. Show results [database­system]

8. Request booking [system]

9. Insert request into the database [system­database]

3.4.5. Sequence diagram for searching book

56 | Page

Advanced System Analysis

Figure 22: Sequence diagram for searching the books

Description

1. Enter username [user­system].

2. Enter password [user­system].

3. Verify user name and password [system]

4. Show initial home page [system]

5. Enter book name for search [system]

6. Search book in the database [system­database]

7. Show results [database­system]

57 | Page

Advanced System Analysis

3.4.6 Sequence diagram for searching users

Figure 23: Sequence diagram for searching the users

Description

1. Enter username [user­system].

2. Enter password [user­system].

3. Verify user name and password [system]

4. Show initial home page [system]

5. Enter user name for search [system]

58 | Page

Advanced System Analysis

6. Search users in the database [system­database]

7. Show results [database­system]

59 | Page

Advanced System Analysis

3.5 Activity Diagrams In its basic form, an activity diagram is a simple and intuitive illustration of what happens in a

workflow, what activities can be done in parallel, and whether there are alternative paths through

the workflow (ibm.com, 2006).

Notation use in Activity diagram of Library manage system

Initial State

A filled circle followed by an arrow

represents the initial state.

Action States

Action states represents the noninterruptiable

actions of object.

Action Flow

Action flow arrows illustrate the relationship

among action states.

Branching

A diamond represents a decision with

alternate paths.

60 | Page

Advanced System Analysis

Final State

An arrow pointing to a filled circle nested

inside another circle represents the final

action state.

61 | Page

Advanced System Analysis

3.5.1. Activity diagram for login

62 | Page

Advanced System Analysis

Figure 24: Activity diagram for login

This activity shows the login process into the Library system by its user. For the successful login

valid username and passwords must be provided. Upon successful login user are directed to their

home page.

63 | Page

Advanced System Analysis

3.5.2 Activity diagram for adding member

Figure 25: Activity diagram for adding members

This activity diagrams show the registration process of the users by the librarian. In order to

register into the system valid college ID is required along with the basic information of the user.

The system will check the user into the database if the users are already exists then their account

will be renewal.

64 | Page

Advanced System Analysis

3.5.3 Activity diagram for adding books

Figure 16: Activity diagram for adding a Book

65 | Page

Advanced System Analysis

This activity diagram shows the actual mechanism for adding the books into the library. In order

toad the book its complete information including its type, publication, author name must be

entered, and then the books information are added in to the server database.

3.5.4 Activity diagram for assuring books

Figure 26: Activity diagram to take a book

66 | Page

Advanced System Analysis

This activity diagram shows the assurance of books by the user from the library. Here at first the

availability of books is checked by the system into the database and if the books are available

then it is provided to the user with the return date calculated by the system. Then the detail

Information about this transaction is stored in the database.

67 | Page

Advanced System Analysis

3.5.5 Activity diagram for returning the book

Figure 27: Activity diagram for returning the books

This activity diagram is used to demonstrate the returning of the book issued by the uses. In

order to return the book at first the fine is calculated by the system for that particular book. If

68 | Page

Advanced System Analysis

fine exists then the user must have to pay that fine first in order to return the book otherwise the

books can be returned successfully.

3.6 ER Diagram The Entity Relationship for the Islington Library contains the following entities :

1 member

2 category

3 book

4 author

5 publication

6 stock

7 librarian

8 borrow

9 membership

10 books_issuance_policy

11 user_login

12 deadline_notification

13 renewal_request

14 reservation_request

15 fine_policy

Except for the Enums defined in the Class Diagrams, every object of Class Diagram acts as a

pure entity in the ER diagram, so, the same are attributes for each of the object in counterpart

database.

69 | Page

Advanced System Analysis

Figure 28: ER Diagram

70 | Page

Advanced System Analysis

71 | Page

Advanced System Analysis

3.5 Interface Designs

3.5.1 User Login

Figure 29: User Login

72 | Page

Advanced System Analysis

73 | Page

Advanced System Analysis

3.5.2 Search Book

Figure 30: Search Book

74 | Page

Advanced System Analysis

75 | Page

Advanced System Analysis

3.5.3 Member info

Figure 31: Member Info

76 | Page

Advanced System Analysis

3.5.4 Book Details

Figure 32: Book Details

77 | Page

Advanced System Analysis

78 | Page

Advanced System Analysis

3.5.4 Book Info

Figure 33: Book Info

79 | Page

Advanced System Analysis

80 | Page

Advanced System Analysis

3.5.5 User Status

Figure 34: User Status

81 | Page

Advanced System Analysis

3.6 Application Architecture

Figure 35: Application Architecture

82 | Page

Advanced System Analysis

Appendix

Appendix A: Gantt Chart

83 | Page

Advanced System Analysis

Appendix B: ER Diagram

84 | Page

Advanced System Analysis

References

DSDM Atern – DSDM Atern. 2012. DSDM Atern – DSDM Atern. [ONLINE] Available at:

http://www.dsdm.org/dsdm­atern. [Accessed 21 December 2012].

ITC Infotech , ITC Infotech, India, 2012. Structured Systems Analysis and Design . Structured

Systems Analysis and Design Methodology , Version 4, 1­7.

Compare Dsdm And Xp. 2012. Compare Dsdm And Xp. [ONLINE] Available at:

http://c2.com/cgi/wiki?CompareDsdmAndXp. [Accessed 21 December 2012].

Scrum Methodology & Agile Scrum Methodologies. 2012. Scrum Methodology & Agile Scrum

Methodologies. [ONLINE] Available at: http://scrummethodology.com/. [Accessed 21

December 2012].

agile ­ What is the difference between Scrum and Extreme Programming? ­ Stack Overflow.

2012. agile ­ What is the difference between Scrum and Extreme Programming? ­ Stack

Overflow. [ONLINE] Available at:

http://stackoverflow.com/questions/209011/what­is­the­difference­between­scrum­and­extreme­

programming/211128#211128. [Accessed 24 December 2012].

What is Extreme Programming? | xProgramming.com. 2012. What is Extreme Programming? |

xProgramming.com. [ONLINE] Available at: http://xprogramming.com/book/whatisxp/.

[Accessed 23 December 2012].

Introducing Agile Scrum XP and Kanban. 2012. Introducing Agile Scrum XP and Kanban.

[ONLINE] Available at:

85 | Page

Advanced System Analysis

http://www.slideshare.net/dimka5/introducing­agile­scrum­xp­and­kanban. [Accessed 23

December 2012].

Differences Between Scrum and Extreme Programming | Mountain Goat Software. 2012.

Differences Between Scrum and Extreme Programming | Mountain Goat Software. [ONLINE]

Available at:

http://www.mountaingoatsoftware.com/blog/differences­between­scrum­and­extreme­programm

ing. [Accessed 23 December 2012].

DSDM Atern Project Structure; Overview | M.C. Partners & Associates. 2012. [ONLINE]

Available at: http://www.mcpa.biz/2011/10/dsdm­atern­project­structure­overview/ . [Accessed

23 December 2012]

Anon., 2002. Sequence diagram. In Jeffrey L. Whitten, L.D.B.K.C.D. System Analysis and Design

Methods. New Delhi: Tata McGraw­Hill Publication Company Limited. p.655.

ibm.com, 2006. Activity Diagrams: What They Are and How to Use Them. [Online] Available at:

HYPERLINK "http://www.ibm.com/developerworks/rational/library/2802.html"

http://www.ibm.com/developerworks/rational/library/2802.html [Accessed 25 December

2012].

86 | Page