natlib library system

55
System Development Methodology CE00321-2 Group Assignment Mohomad Azeem - CB002665 Nuwan Fernando - CB002791 Prageeth Madhushanka - CB002742 Hand out Date: - 30 th March 2009 Hand in Date: - 9 th June 2009 Intake: - HF08A1SE Lecturer : Mrs. Rasitha Jayasekara

Upload: prageeth-madhushanka

Post on 15-Nov-2014

149 views

Category:

Documents


3 download

DESCRIPTION

New Library System for Natlib library.The purpose of this system is to move from manual operation to modern computerized operation that will facilitate the librariansto do their job more efficiently, effectively and accurately.

TRANSCRIPT

Page 1: Natlib Library System

System Development Methodology

CE00321-2

Group Assignment

Mohomad Azeem - CB002665

Nuwan Fernando - CB002791

Prageeth Madhushanka - CB002742

Hand out Date: - 30th March 2009

Hand in Date: - 9th June 2009

Intake: - HF08A1SE

Lecturer : Mrs. Rasitha Jayasekara

Page 2: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 1

ABSTRACT

Software development is not merely coding; the most critical success factor is how well the software is accepted by the target users.

To begin with, different structured methodologies were analyzed and the best for this particular project was selected. Project planning is directly related to the development approach accordingly.

Different tools and techniques were used to model different views of the proposed system: the requirements, such as DFD, ER, ELH, etc. It can be presented to the client in order to verify what is required in the new system. Once verification was done these models are directly manipulated for system design. In order to control the scope and boundary of the project there were many assumptions made and they can be found under “list of assumptions” on page 3.

Designs were made on functionality, architecture and interface. Functionality and architecture can be done with less involvement of end-users; but requires “tech guys” to take part in it. However apart from developing what is required in the new system, the most challenging is the interface design.

To conclude with, this document represents the development of a software system for Natlib Library to handle its daily operations.

Page 3: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 2

ACKNOWLEDGEMENTS

We would like to thank our lecturer Mrs. Rasitha Jayasekare for the utmost effort shown to us for the

better of the project. We are also highly grateful to her for the guidance and the manner in which she

coped with our problems within the project duration. And we appreciate her dedication and we are

thankful Mrs. Rasitha Jayasekare for her greatest effort which she paid for us.

We would like to extend our appreciation towards Asia Pacific Institute of Information Technology for

the support such as providing us the necessary laboratory and library facilities which were references and

guides to our project. At the same time we would like to be thankful for all the other lecturers who helped

us to make this project a success.

Also we would like to thank our batch mates and our friends for giving us their open-minded

guidance and advice throughout this project which was so helpful to us in completing this project

in a relaxed manner.

Last but not least our heartiest thanks go to our Parents for giving us the support towards the

completion of the project.

Page 4: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 3

LIST OF ASSUMPTIONS

• Natlib have realized that this project will be feasible. • The system will access purchase department’s database. • Natlib is operated in Sri Lanka. • Each reader is required to present their national identity card for registration. • Registration is free and library service is provided exclusively for Sri Lankan citizens. • The library contains minimum 10 copies of each title, and one copy is kept for reference. • Each loan is given a maximum period of 10 days. • Reservations will be made by the librarians, upon the request from registered readers. • A reservation can be cancelled, if the response time from the reader exceeds 5 days after

being notified. • If a book is not returned within 10 days, 20 Rs per day will be charged as a fine. • Staff cannot borrow books. • A reader can borrow a book only if all the existing payments are settled. • If a returned book is found to be damaged, the reader will be charged between 1,000 Rs

to 50,000 Rs; depending on the book replacement cost. • For each overdue loan, only one reminder will be sent on a particular day. • If a Reader fails to return book(s) within 60 days, the copy will be removed and the case

will be handled by the legal team of the library, which is beyond scope of this project. • Loan reminders are issued by the librarians as email or phone calls or both.

Note: Monitory unit “Rs” used in this document represents Sri Lankan Rupee.

Page 5: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 4

LIST OF FIGURES

Figure 1: System Functional Requirements .................................................................................. 12 Figure 2: Contex ........................................................................................................................... 13 Figure 3: DFD level 1 ................................................................................................................... 14 Figure 4: DFD level 1 for Process 1 ............................................................................................. 15 Figure 5: DFD Level 1 for Process 3 ............................................................................................ 15 Figure 6:DFD Level 2 for Process 3.2 .......................................................................................... 16 Figure 7: DFD level 1 for Process 4 ............................................................................................. 16 Figure 8: DFD Level 1 for process 5 ............................................................................................ 17 Figure 9: Entity Relationship Diagram ......................................................................................... 27 Figure 10: Entity Life History- Reader ......................................................................................... 28 Figure 11: Entity Life History-Book............................................................................................. 28 Figure 12: Entity Life History -BookCopy ................................................................................... 29 Figure 13: Entity Life History-Reservation .................................................................................. 29 Figure 14: System Hierarchy diagram .......................................................................................... 30 Figure 15: Network Architecture .................................................................................................. 30 Figure 16: Screen design-Main ..................................................................................................... 31 Figure 17: Screen design-View Reader Loans .............................................................................. 31 

LIST OF TABLES

Table 1: Decision Table for Process 3.2 ....................................................................................... 21 Table 2: Data Dictionary D1-Publisher ........................................................................................ 22 Table 3: Data Dictionary D2-Supplier .......................................................................................... 23 Table 4: Data Dictionary D3-Book ............................................................................................... 23 Table 5: Data Dictionary D4-BookCopy ...................................................................................... 24 Table 6: Data Dictionary D5-Reader ............................................................................................ 24 Table 7: Data Dictionary D6-Loan ............................................................................................... 25 Table 8: Data Dictionary D7-Reservation .................................................................................... 25 Table 9: Data Dictionary D8-Payment ......................................................................................... 26 

Page 6: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 5

TABLE OF CONTENTS

ABSTRACT ................................................................................................................................... 1 

ACKNOWLEDGEMENTS ......................................................................................................... 2 

LIST OF ASSUMPTIONS ........................................................................................................... 3 

LIST OF FIGURES ...................................................................................................................... 4 

LIST OF TABLES ........................................................................................................................ 4 

1.0 INTRODUCTION................................................................................................................... 7 

1.1 Project Overview ................................................................................................................... 7 

1.2 Problem Statement ................................................................................................................ 7 

1.3 Project Objectives ................................................................................................................. 7 

1.4 Scope ..................................................................................................................................... 8 

1.5 Constraints ............................................................................................................................. 8 

2.0 SYSTEM DEVELOPMENT APPROACH .......................................................................... 9 

2.1 Purpose .................................................................................................................................. 9 

2.2 Structure & Scope ................................................................................................................. 9 

2.3 Methods of Analysis............................................................................................................ 10 

2.4 Design.................................................................................................................................. 10 

2.5 Implementation .................................................................................................................... 10 

3.0 SOFTWARE REQUIREMENTS SPECIFICATION ....................................................... 12 

3.1 System Functional & Non-Functional Requirements ......................................................... 12 

3.2 Process Diagrams ................................................................................................................ 13 

3.2.1 Context ......................................................................................................................... 13 

3.2.2 Level 0 .......................................................................................................................... 14 

3.2.2.1 Level 1 for Process 1 ................................................................................................. 15 

3.2.2.2 Level 1 for Process 3 ................................................................................................. 15 

3.2.2.3 Level 2 for Process 3.2 .............................................................................................. 16 

3.2.2.4 Level 1 for Process 4 ................................................................................................. 16 

3.2.2.5 Level 1 for Process 5 ................................................................................................. 17 

3.3 Process Specification ........................................................................................................... 18 

Process 1.1: Register New Title ........................................................................................... 18 

Page 7: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 6

Process 1.2: Register New Copy ........................................................................................... 18 

Process 2.0: Register Reader ................................................................................................. 18 

Process 3.1: Search for Title .................................................................................................. 19 

Process 3.2.1: Check Membership ........................................................................................ 19 

Process 3.2.2: Check Loan .................................................................................................... 19 

Process 2.3.3: Check Payment ............................................................................................... 20 

Process 2.3.4: Issue Loan ...................................................................................................... 20 

Process 3.3: Send Loan Reminder ......................................................................................... 20 

Process 4.1: Make Reservation .............................................................................................. 21 

Process 4.2 Send Reservation Notification ............................................................................ 21 

3.4 Data Dictionaries ................................................................................................................. 22 

3.5 Data Requirements: Entity Relationship Diagram .............................................................. 27 

3.6 Entity Event Models ............................................................................................................ 28 

3.6.1 Reader ........................................................................................................................... 28 

3.6.2 Book.............................................................................................................................. 28 

3.6.3 Book Copy .................................................................................................................... 29 

3.6.4 Reservation ................................................................................................................... 29 

4.0 DESIGN ................................................................................................................................. 30 

4.1 System Structure ................................................................................................................. 30 

4.2 Network Architecture .......................................................................................................... 30 

4.3 Interface Design .................................................................................................................. 31 

5.0 CONCLUSION ..................................................................................................................... 32 

6.0 BIBLIOGRAPHY & REFERENCES ................................................................................. 34 

APPENDIX 1 Data Dictionary .................................................................................................. 35 

1a Data Flows ............................................................................................................................ 35 

1b External Entity ...................................................................................................................... 38 

APPENDIX 2 Screen Design ...................................................................................................... 39 

APPENDIX 3 Gantt Chart ......................................................................................................... 45 

APPENDIX 4 PERT Chart ........................................................................................................ 46 

APPENDIX 5 Work Load Matrix ............................................................................................. 48 

APPENDIX 6 Meeting Minutes ................................................................................................. 49 

Page 8: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 7

1.0 INTRODUCTION

1.1 Project Overview

The project code name is “GrantReader”. Hereafter the use of GrantReader explicitly refers to the construction of a new Library System for Natlib library. The purpose of this system is to move from manual operation to modern computerized operation that will facilitate the librarians to do their job more efficiently, effectively and accurately.

1.2 Problem Statement

The increased number of members & books at Natlib library has caused greater volume of work for the librarians. This increased workload has greatly increased response time of the library service and its efficiency is reduced accordingly. Due to this reason, member complaints have increased greatly and there is fear that if this problem is not well addressed, Natlib’s reputation may fall.

Natlib currently uses manual methods, this increases response time and users are more susceptible to errors. With the collective pressure, librarians are making more mistakes in the data entry and manipulation process e.g. reservation notification is given to the wrong member, etc.

There are opportunities for a new information system to solve the above mentioned problem. Mainly:

• Development of an information system is socially and economically feasible. • It will facilitate the library to focus more on quality of service, rather than continuous

errors correction due to the current manual operation.

1.3 Project Objectives

As per the identified problems above this project aims to ensure quality of service by Netlib Library; by developing an effective, efficient and satisfactory system. However, the system will not address all the issues that exist at the Netlib library. Hence the boundaries and functionalities will be defined in scope statement on page 8.

Page 9: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 8

1.4 Scope

GrantReader will ensure that the system will include the following features. On the other hand, those features that are not mentioned below will be excluded.

Functional:

• Provide modules which can:

1. Register new titles and new copies.

2. Register readers into the library.

3. Handle book loan issue.

4. Arrange book reservation.

5. Reservation and Loan reminders.

6. Reception of books as they are returned.

7. Collection of payments, include:

Overdue.

Damage.

Non – Functional:

• Ensure security for the Netlib library’s data.

• A user-friendly interface.

• Generation of book usage and user statistics.

• The system shall be efficient and accurate.

.

1.5 Constraints

• The system shall be user-friendly and satisfy Librarians of Natlib. • Software shall produce accurate results and information. • A prototype shall be created on or before 09th June 2009.

Page 10: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 9

2.0 SYSTEM DEVELOPMENT APPROACH

2.1 Purpose Releasing a software product with high success rate is the objective of software development

companies in the world since them unable to develop bug free software. Today most of the

software development companies spent large amount of money to reduce and maintain good

quality in their products. Software professionals have the challenge to choose appropriate

development methodology since efforts are taken to improve software development process.

The assignment requires creating set of documents that are relevant to the chosen methodology

along with a prototype application to be developed. The project has to be planned in such a way

that more focus is to be given for analysis and design and less for the implementation. This is

where SSADM fits for this project. SSADM does not focus on implementation, on the other

hand it provides a structured approach to analyze, design and development. Other methodologies

can also be considered such as RAD; which the development team is well experienced and

require faster handover, JAD; maximum user involvement where effective communication with

all stakeholders and experts of the domain are conducted in controlled environments to generate

set of requirements and designs. One alternative option is to have a hybrid approach where the

structure of SSADM is used and prototyping to be used for interface design.

2.2 Structure & Scope Development of productive software’s depends on several factors mainly analysis and design. In

the past software professionals generally believed that step by step approach is the best way for

software development. These traditional methodologies are highly structured as well as

document oriented. Throughout the development, project team has to produce documents,

diagrams which will give complete understanding of the system for programmers and users. As a

result it covers feasibility study to development of a product using various techniques and tools.

The combined approach of SSADM and prototyping was the best suitable approach for this

project. Where prototyping will only be used for interactive screen design; gearing towards User

Centered Design.

Page 11: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 10

2.3 Methods of Analysis In traditional methodologies it discusses more about problem or current system to get a better

understanding of it. Investigating current system and business system options (BS) are used to

discuss requirement analysis process. It helps to identify system functions, logics and the system

scope. Tools and techniques with the visual model diagrams are found to be more effective in

system analysis such as DFD, ELH, ER, etc.

2.4 Design This stage deals with how the requirements of the new system are carried out. System has

designed according to the investigation which has done during the analysis process.

The resulting document is only the “Design Specification”. Prototyping will be used to design a

more user-friendly interface. Moreover, prototyping will be used to evaluate the interface;

validate how well the interface fits for the task as well as compare the interface with the HCI

design principles, etc. For the purpose of redesign low fidelity prototyping will be used and a

high fidelity prototype will be created once a sufficient amount of interface requirements are

collected.

2.5 Implementation VB.net and SQL Server 2005 are to be used for the development of prototype. One reason is that

VB.NET and Structured Query Language is relatively easier to create a functional prototype,

compared with other technologies; ultimately faster development time.

Why SSADM

• SSADM used for project where requirements are not too complex. It has all the necessary

stages that should follow to provide a complete solution at the end.

• This project provides all the major requirements in the case study!

• SSADM is mainly focused analysis & design, as well as the set of documents that follows

the structure; more focus is to be given to generate analysis and design documents.

Page 12: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 11

• Tools and techniques which are used in SSADM help to provide a complete and accurate

business solution for a problem.

• SSADM is a highly structured top down approach; each completed step is an input for

next step.

• The project requires to propose the best solution and with a prototype to simulate the

solution. SSADM structure captures all the views and modeling tools to ensure all the

requirements are captured and validated with the set of requirements.

Why not SDLC

• Usually involved large project where requirements are complex and often not clear.

• Takes more time to develop the system.

To conclude, the project will be structured as per SSADM and prototyping will be used for interface design to ensure the end product is more closer to the user expectation, as a result hybrid approach is collectively the best fit for this particular project.

Page 13: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 12

3.0 SOFTWARE REQUIREMENTS SPECIFICATION

System requirements were identified by studying the given case study and observation of a library environment. Based on the analysis, the functional and non functional requirements were captured.

The systems needs were modeled in terms of the operations, the data requirements and the effect of operation on the data. These will be represented as data flow, entity relationship and entity life history diagrams.

3.1 System Functional & Non-Functional Requirements

The functional and non-functional requirements are mentioned under scope statement on page 8. The usecase diagram below represents the functional requirements of the system.

Figure 1: System Functional Requirements

Page 14: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 13

3.2 Process Diagrams

3.2.1 Context \

Figure 2: Contex

Page 15: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 14

3.2.2 Level 0

Figure 3: DFD level 1

Page 16: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 15

3.2.2.1 Level 1 for Process 1

Figure 4: DFD level 1 for Process 1

3.2.2.2 Level 1 for Process 3

Figure 5: DFD Level 1 for Process 3

Page 17: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 16

3.2.2.3 Level 2 for Process 3.2

Figure 6:DFD Level 2 for Process 3.2

3.2.2.4 Level 1 for Process 4

Figure 7: DFD level 1 for Process 4

Page 18: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 17

3.2.2.5 Level 1 for Process 5

Figure 8: DFD Level 1 for process 5

Page 19: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 18

3.3 Process Specification

Process 1.1: Register New Title BEGIN

obtain new book title(s)

get Publisher details from publisher file

store book title and related publisher id into Book file

Finish the operation

END

Process 1.2: Register New Copy BEGIN

obtain new book title(s)

get Title details from Book file

store book title and related id into BookCopy file

Paste Copy id on the book

Finish the operation

END

Process 2.0: Register Reader FOR EACH non member request

IF request is to clarify information

Provide required information

ELSE IF request is to process membership

Collect reader details

Enter the collected data

Provide membership number

END IF

NEXT

Page 20: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 19

Process 3.1: Search for Title DO Obtain Book title OPEN Book File If Searched Title== Title Display “Available”

Else Display “Not Available”

Close Book File Finish the operation

Process 3.2.1: Check Membership DO Obtain NID# OPEN Reader File If Searched NID# = NID# If eligible Status = Eligible Display “Eligible” Else Display ”You cannot borrow books” Else Display “Not a Member” Close Member File Finish the operation

Process 3.2.2: Check Loan DO Obtain NID#

OPEN Loan File If Searched NID# == NID# Display “Loan ID” Else Display “Not a Member” Close Loan File Finish the operation

Page 21: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 20

Process 2.3.3: Check Payment DO Obtain NID#

OPEN Payments File If Searched NID# == NID# Display “Payment ID” Else

Display “Not a Member”

Close Payments File

Finish the operation

Process 2.3.4: Issue Loan DO Obtain NID# OPEN Readers File If Searched NID# == NID# If Searched Copy ID = =Copy ID

Display “Availability”

If Availability== Available Open Loan File Enter Copy ID and NID# Enter other required attributes Save Record End If End If Else Display “Not a Member” Close Loan, Reader Files Finish the operation

Process 3.3: Send Loan Reminder DO open Lone file

Take book lend readers contact details

Send lone reminders

Close Reader Files

END the operation

Page 22: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 21

Condition Stubs

Conditions/Courses of Action

Rules 1 2 3 4 5

New copy received Y Y N N N A copy is returned Y Y N Y Y Returned copy damaged Y N N Y N

Action Stubs Send loan X X X X X Table 1: Decision Table for Process 3.2

Process 4.1: Make Reservation DO obtain reservation details, membership details

OPEN Readers File

If Searched NID# = NID# Then

Make reservation

Open reservation file

Update reservation file

Close reservation file

Else

Display “Not a Member”

CLOSE Reader Files

FINISH the operation

Process 4.2 Send Reservation Notification DO

OPEN reservation details

IF receive the reserved book copy

Send reservation notifications

Update reservation details

END IF

CLOSE reservation Files

FINISH the operation

Page 23: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 22

3.4 Data Dictionaries

Data dictionaries represent the data structure and detailed attributes of the entities that are represented in the Data Flow Diagram as “data stores”.

In the mean time, data dictionaries for external entities can be found on APPENDIX 1a on page 38 and data flows can be found on page 35.

Name: D1- Publisher

Description: Stores information about publishers of the books

Input data flows:

Output data flows: Publisher details, Publisher List

DataStructure: Publisher_ID+ Publisher +Phone+Fax+Address+Email + Country Code

Data Element Name Description Type Length Output Format Supplier_ID Uniquely identifies

Book Publisher. Alphanumeric 6 XX

Publisher Full Name of the Publisher Alphanumeric 30 Phone Telephone number of the

Publisher Alphanumeric 14 (XXXX)XXX-

XXXX-XXX Fax Fax number of the Publisher Alphanumeric 14 (XXXX)XXX-

XXXX-XXX Address Address of the Publisher Alphanumeric 50 Email Publisher’s email address. Alphanumeric 50 [email protected] Country Code Country code of publisher Alphanumeric 3 XXX Table 2: Data Dictionary D1-Publisher

Name: D2-Supplier

Description: Stores information about suppliers.

Input data flows:

Output data flows: Reader details

DataStructure: Supplier_ID+ Supplier +Phone+Fax+Address+Email

Page 24: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 23

Data Element Name Description Type Length Output Format Supplier_ID Uniquely identifies

Book suppliers. Alphanumeric 6 XX

Supplier Full Name of the Supplier Alphanumeric 30 Phone Telephone number of the

supplier Alphanumeric 14 (XXXX)XXX-

XXXX-XXX Fax Fax number of the supplier Alphanumeric 14 (XXXX)XXX-

XXXX-XXX Address Address of the supplier Alphanumeric 50 Email Supplier’s email address. Alphanumeric 50 [email protected] Table 3: Data Dictionary D2-Supplier

Name: D3-Book

Description: Stores information about titles.

Input data flows: Book details

Output data flows: Book details.

Data Structure: = Book identity + title + publisher + price + (place) + (supplier)

Data Element Name Description Type Length Output Format ISBN Uniquely identifies a title Alphanumeric 20 Title Name of the book Alphanumeric 20 Edition The revision version Alphanumeric 2 Pub_ID Book publisher Alphanumeric 4 Pub_Place Country or the place of

publication Alphanumeric 14

Price Price of the book Numeric 8 Lib_ID Publishers country identifier Alphanumeric 4 Pb_Year Year of publication Sup_ID Book supplier Alphanumeric 4 No_Of_Copies Total number of copies

available Numeric 2

Table 4: Data Dictionary D3-Book

Page 25: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 24

Name: D4-Book Copy

Description: Stores information about copies of titles.

Input data flows: Copy details, Copy status update, Copy status.

Output data flows: Copy details.

Data Structure: = copy number + loan status + condition

Data ElementName Description Type Length Output Format Copy_ID Uniquely identifies a copy Alphanumeric 4 ISBN Name of the book Alphanumeric 20 Availability The revision version Alphanumeric 1 Y / N Condition Book publisher Alphanumeric 4 Type Country or the place of

publication Alphanumeric 14

Table 5: Data Dictionary D4-BookCopy

Name: D5-Reader

Description: Stores information about publishers whose books are there in the library.

Input data flows: Reader loan status update, Reader payment status update, Reader details, Reader details update,

Output data flows: Reader details

Data Structure: member_ID + F_Name + L_Name + Phone + (Mobile) + Address + Email + Sex + No_of_Lones + Pending_Payments

Data Element Name Description Type Length Output Format Member_ID Uniquely identifies

Book publishers. Alphanumeric 6 RXXXXXX

F_Name First name of the Reader Alphanumeric 20 L_Name Last name of the reader Alphanumeric 20 Phone Telephone number of the

reader Alphanumeric 14 (XXXX)XXX-

XXXX-XXX Mobile Mobile number of the reader Alphanumeric 14 (XXXX)XXX-

XXXX-XXX Address Address of the reader Alphanumeric 20 Email Reader’s email address. Alphanumeric 20 [email protected] Sex Reader’s country identifier Alphanumeric 4 XXXX No_of_Lones Number of books lend by the

reader Numeric XXXXXX

Pending_Peyments Payments which has to be given by reader

Currency

Table 6: Data Dictionary D5-Reader

Page 26: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 25

Name: D6-Loan

Description: Stores information about loans made by readers.

Input data flows: Loan Details, Loan Reminder Update, Loan Update

Output data flows: Loan Records, Loan Details

Data Structure: Loan_ID, NID#, Copy_ID, Return_Date, Returned_Date, OverdueAmount, DamageAmount, IssuedBy, ReceivedBy

Data Element Name Description Type Length Output Format Loan_ID Uniquely identifies

Loans. Alphanumeric 6

NID# Alphanumeric 6 Copy_ID Alphanumeric 6 Return_Date Date/Time Returned_Date Date/Time OverdueAmount Currency DamageAmount Currency IssuedBy Alphanumeric ReceivedBy Alphanumeric Table 7: Data Dictionary D6-Loan

Name: D7-Reservation

Description: Stores information about reservations made by readers

Input data flows: Reservation Details

Output data flows: Reservation Details

Data Structure: Res_ID, ISBN, NID#, Date, Offer/Cancel, Lib_ID

Data Element Name Description Type Length Output Format Res_ID Uniquely identifies

Loans. Alphanumeric 6

ISBN Alphanumeric NID# Alphanumeric 6 Date Date/Time Offer/Cancel Alphanumeric Lib_ID Alphanumeric 6 Table 8: Data Dictionary D7-Reservation

Page 27: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 26

Name: D8-Payment

Description: stores details about received payments.

Input data flows: Payment details.

Output data flows: -

Data Structure: = (Damage) + overdue + LibrarianID

Data ElementName Description Type Length Output Format Loan_ID Uniquely identifies a record Alphanumeric 4 OverdueAmount Total for overdue charges Numeric 8 XXXXXX.XX DamageAmount Total for damage charges Numeric 8 XXXXXX.XX Lib_ID Book publisher Alphanumeric 4 Date Country or the place of

publication Numeric 10 XX/XX/XXXX

Table 9: Data Dictionary D8-Payment

Page 28: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 27

3.5 Data Requirements: Entity Relationship Diagram

Figure 9: Entity Relationship Diagram

Page 29: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 28

3.6 Entity Event Models The effects of events on the entities are modeled as Entity Life History diagrams as shown below. However, the diagrams represent entities that require further explanation and abstract entities are not shown.

3.6.1 Reader

Figure 10: Entity Life History- Reader

3.6.2 Book

Figure 11: Entity Life History-Book

Page 30: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 29

3.6.3 Book Copy

Figure 12: Entity Life History -BookCopy

3.6.4 Reservation

Figure 13: Entity Life History-Reservation

Page 31: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 30

4.0 DESIGN Designs were made based on the task analysis of the library operations and hence screens will reflect the operation for which it was designed for.

Database was designed for relational model and all the required data that were captured in the analysis phase is included in the design. Relational data model requires to have normalized tables; however the normalization process is not mentioned in this document.

4.1 System Structure

Figure 14: System Hierarchy diagram

4.2 Network Architecture Based on the captured requirements and type of operation that is to be handled by the system, client-server architecture is the best feasible solution.

Figure 15: Network Architecture

Page 32: Natlib Library System

4.3 IntInterfacbasis ofshown t

The stostorybo

Figure 16:

Figure 17:

terface Dce design wf physical dto stakehold

ryboard of moards can be

Screen design-M

Screen design-V

Asia Pac

esign was done bydesign. Lowders and cha

main screene found in A

Main

View Reader Loa

cific Institute o

y low fideliw fidelity pranges can b

n and “viewAPPENDIX

ans

of Information

ity prototyprototyping

be made easi

w reader loan2 on page 3

n Technology

ping; storybhas its advaily without

ns” are show39.

System Deve

– Sri Lanka

boards wereantages suctaking muc

wn in the fi

elopment Metho

e sketched tch as it canch time and

igures below

ods: CE00321-2

31

to form then be quickly

hence cost.

w, and more

2

1

e y

e

Page 33: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 32

5.0 CONCLUSION

Creating a product with maximum quality at minimum cost on given time is the challenge that

has to take in software development. As a result, most of the software development companies

spent large amount of money to accomplish this goal. Software professionals have taken many

efforts to improve software development process such as software development methodologies.

Traditional and agile methods can be identifying as two different approaches taken in to improve

software development process. These methodologies define the process of development of a

software product from the beginning to deploy the product. In this System Design Methodology

(SDM) module, it describes mainly about SSADM as a traditional software development

methodology with the tools and techniques that can be used in software design process.

Analyze, design and implementation can be describe as the critical steps of a software

development process. Analyze a problem or a current system will give you a better

understanding of it to do a good job in designing of new system. Software development

methodologies describe tools and techniques that can be useful in analyzing a system. Software

professionals usually use process modeling, data modeling and event modeling techniques such

as DFDs, Decision Trees, ER diagrams and ELH diagrams, etc; to get a better understanding of

the current system in an analytical way. This project also utilizes the use of the rich visualization

technique – UML. Usecase diagram was used to represent the functional requirements of the

system, although they are mainly used in Object Oriented Analysis and Design techniques.

Identifying the functionality of the propose system has done by the use of USE Case diagram.

This was used to represent the graphical view of the proposed system; the functional

requirements collectively. With the usecase, the project team has identified the users who

interact with the system and what are the major tasks which perform by each user. A user-

friendly interface was a major design challenge and it is the nature of any interface design. Task

analysis was very helpful designing the screens and forms to accomplish a defined operation.

Moreover, HCI design guidelines and best practices will ensure a satisfactory system. However,

it is a time consuming process that required maximum user involvement; mainly evaluate the

designs with users, therefore requires extensive communication skill as well.

Page 34: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 33

To conclude, this assignment has given an insight into selection of methodologies and enhanced

our practical knowledge of software design process and best practices of effective visual

communication of the process, mainly through diagramming techniques, etc. Apart from the

application of principles and techniques, we experienced the stress and trauma to get things done

on time and solving any problems that may have faced through; these situations are critical as

every decision counts and hence creative problem solving techniques must be integrated.

Meanwhile, this project has enlightened our knowledge of new technologies especially the

famous “Elegant Ribbon” interfaces as well as programming in VB.NET.

Page 35: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 34

6.0 BIBLIOGRAPHY & REFERENCES

Andersson, D. 2006, Software development methods [online], Available: http://www.microansa.se/it/software_development_methods_by_daniel_andersson.pdf [Accessed 17 April 2009].

Beighly, L., 2007, Head First SQL, O’Reilly Media, Inc., California, USA.

Bijay K. J. & Peter C. P. 2006, Design for Trustworthy Software: Tools, Techniques and Methodology of Developing Robust Software, 1st ed, Prentice Hall, Asia.

Butow, E., 2007, User Interface Design for Mere Mortals, Addison Wesley, New Jersey, USA.

Hoffer, J.A., George, J.F., Valacich, J.S. & Panigrahi, P.K. 2006, Modern Systems Analysis and Design, 4th ed, Pearson Education, Inc., USA.

Miles, R. & Pilone, D. 2008, Head First Software Development, O’Reilly Media, Inc., California, USA.

Pressman, R.S.2001, Software Engineering – A Practitioner’s Approach, 5th ed, McGraw Hill, New York, USA.

Rambaugh, J., Jacobson, E. & Booch, G. 1999, The Unified Modeling Language Reference Manual, Addison Wesley, California, USA.

Page 36: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 35

APPENDIX 1 Data Dictionary

1a Data Flows

Name: Membership Request

Description: to allow reader to take loans.

Source: Reader

Sink: 2.0 Register Reader.

Data Structure: = Name + Address + Telephone + Mobile + (Email).

Name: Publisher details.

Description: provides the publisher details for book title records.

Source: D1 - Publisher

Sink: 1.0 Register Book.

Data Structure: = publisher ID + publisher name.

Name: Supplier details

Description: a supplier supplies books to the library.

Source: D2 - Supplier

Sink: 1.0 Register Book.

Data Structure: = supplier ID + supplier name.

Name: Book details

Description: information of the titles in the library or new titles those are stored.

Source: 1.0 Register Book, 1.1 Register New Title

Sink: 1.0 Register Book, 1.2 Register New Copy, D3 – Book, 3.1 Search for Titles, 4.0 Make Reservation, 4.1 Make Reservation.

Data Structure: = Book ID + title + (publisher).

Page 37: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 36

Name: New title details

Description: the diversity of book in the library depends on the number of different titles available.

Source: Librarian external entity.

Sink: 1.0 Register Book, 1.1 Register New Title.

Data Structure: = ISBN + title + publisher + (published country) + year + edition + authors.

Name: New copy details

Description: the more copies available, the more books can be available for readers.

Source: Librarian external entity.

Sink: 1.0 Register Book, 1.1 Register Copy Title.

Data Structure: = Copy ID+ ISBN + title + publisher +edition + authors+ Type.

Name: Copy details

Description: provides information about a book copies in the library. This information is provided for issue and return of loans.

Source: 1.0 Register Book, 1.2 Register New Copy, D4 – Book Copy.

Sink: D4 – Book Copy, 3.0 Borrow Book, 3.1 Search for Titles, 5.2 Check Damage.

Data Structure: = Copy ID+(ISBN)+[Condition][Status]+{title}.

Name: Library information request

Description: New comers, obtain library rules and procedures in order to get registered and loan books.

Source: Reader.

Sink: 2.0 Register Reader,

Data Structure: = {fees}+loan+(kind of books available)+other rules.

Page 38: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 37

Name: Library information / procedures

Description: information about the library is given to the potential Readers, they may become members or not depends on how much they agree with the rules and regulations of the library.

Source: 2.0 Register Reader.

Sink: Reader.

Data Structure: = {fees structure}+ maximum loan+(kind of books available)+fines and damage rules.

Name: Reader details

Description: New comers, obtain library rules and procedures in order to get registered and loan books.

Source: 2.0 Register Reader

Sink: D5 – Reader, 3.0 Borrow Book, 3.2 Issue Loan, 4.0 Make Reservation,

Data Structure: = {Membership#}+(payment status)+number of loans.

Name: Overdue amount

Description: A fine is collected when a loan is returned overdue. The amount depends on the number of days overdue.

Source: 5.0 Return Book , 5.3 Check Overdue

Sink: 6.0 Settle Payment

Data Structure: = (loan identity)+number of days+(amount).

Name: Payment details

Description: reader is informed about the total amount and other particulars about the payment a reader has to settle.

Source: 6.0 Settle Payment

Sink: Reader

Data Structure: = total+(damage amount)+(overdue amount)+([loan identity][book title])

Page 39: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 38

Name: Payment Receipt

Description: A proof of settled payment is given to the reader, which includes the details about the collective payment.

Source: 6.0 Settle Payment

Sink: Reader

Data Structure: = total+(damage amount)+(overdue amount)+([loan identity][book title])+date+(comment).

Name: Reader payment status update

Description: As soon as reader settles a payment, his or her pending payments are updated.

Source: 6.0 Settle Payment

Sink: D5 - Reader

Data Structure: = amount to be decremented.

1b External Entity

Name: Librarian

Description: Librarian facilitates the registration of readers, issue of loans, loan reminders, reservation, reservation notification and collection of payments.

Input Data Flows: Reservation records, Loan records.

Output Data Flows: New copy details, New title details, Damage details, Reservation notification, Loan reminder.

Name: Reader

Description: A reader gets registered with the system to obtain loans.

Input Data Flows: Library information / procedures, Membership, Book availability status, pending payments / expired loan status, loan confirmation, loan reminder, payment details, payment receipt, Reservation confirmation status, Reservation notification.

Output Data Flows: Library information request, Membership request, Reader details, New loan / book search request, Loan return, Reservation request.

Page 40: Natlib Library System

APPEN

Main scr

Main scr

NDIX 2 Scree

reen tab: Op

reen tab: Rea

Asia Pac

en Design

erations.

ader.

cific Institute oof Informationn Technology

Login Sflow.

System Deve

– Sri Lanka

Screen along

elopment Metho

with the nav

ods: CE00321-2

39

vigation

2

9

Page 41: Natlib Library System

Main scr

Main scr

Add new

reen tab: Sea

reen tab: Set

w title

Asia Pac

arch.

tting.

cific Institute oof Informationn Technology

System Deve

– Sri Lanka

elopment Metho

ods: CE00321-2

40

2

0

Page 42: Natlib Library System

Delete T

Delete C

View Lo

Title

Copy

oan Records

Asia Paccific Institute oof Informationn Technology

System Deve

– Sri Lanka

elopment Metho

ods: CE00321-2

41

2

1

Page 43: Natlib Library System

Issue Lo

Make Re

oans

eservation

Asia Paccific Institute oof Informationn Technology

System Deve

– Sri Lanka

elopment Metho

ods: CE00321-2

42

2

2

Page 44: Natlib Library System

Return B

Loan Re

Register

Book

eminder

r Reader

Asia Paccific Institute oof Informationn Technology

System Deve

– Sri Lanka

elopment Metho

ods: CE00321-2

43

2

3

Page 45: Natlib Library System

Update R

Delete R

Add Use

Reader Deta

Reader

er

Asia Pac

ils

cific Institute oof Informationn Technology

System Deve

– Sri Lanka

elopment Metho

ods: CE00321-2

44

2

4

Page 46: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 45

APPENDIX 3 Gantt Chart

Page 47: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 46

APPENDIX 4 PERT Chart

Critical path is shown by bold arrow. Activity dependency table is shown on the following page.

Page 48: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 47

Activity Description Duration Dependenciesa Selection of Methodology 1 -b Identification of problems 1 a

c Requirements Identification 3 a

d Data Modeling 5 b,ce Process Modeling 5 b,c,df DFD Documentation 3 eg ELH 5 d,e

h Requirements Specification 2 d,e,f,g

i Relational Database Design 8 h

j System Structure 2 hk Interface Design 8 h,jl Design Specification 3 I,j,km Database development 3 ln Screens Development 2 lo Programming 6 m,n

Page 49: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 48

APPENDIX 5 Work Load Matrix

Task Member Contribution / %

Azeem Nuwan Prageeth Selection of Methodology 30 30 40 Identification of Requirements 33.33 33.33 33.33 Identification of Issues 33.33 33.33 33.33 Data Modeling 30 40 30 Process Modeling 40 30 30 Event Modeling 30 30 40 DFD Documentation 33.33 33.33 33.33 Requirements Specification 40 30 30 Normalization 30 40 30 Data Constraints 40 30 30 Screen Designs 33.33 33.33 33.33 Architectural Design 33.33 33.33 33.33 System Structure 30 30 40 Design Specification 30 40 30 Overall Documentation 40 30 30 Prototype Development 33.33 33.33 33.33 Total contribution 33.75% 33.12% 33.12%

I hereby confirm that I the work load mentioned in the table above is valid

Member Name Signature

Azeem Nuwan Prageeth

Page 50: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 49

APPENDIX 6 Meeting Minutes System Development Methods

Minutes of the Meeting

Group - III

Meeting: 01

Meeting Called By : Azeem Venue : Online

Date : 06th April 2009.

Attendees : Azeem Time : 21:30

Prageeth

Nuwan

-------------------------------------------------------------------------------------------------------------------------------

Major Discussions

1. Discussed and decided a group leader 2. Gantt chart was presented by Azeem 3. Selection of a methodology Discussed the why we select this methodology 4. Assigned work in each group member for the upcoming week

Out Come

1. Azeem was selected as the group leader 2. Identify and scheduled the major tasks according to the Gant chart 3. SSADM methodology was selected to follow through-out the project 4. Introduction was assigned to Azeem 5. Minutes of the meetings will be handled by Nuwan 6. Document the selected methodology was assigned to Prageeth

Page 51: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 50

System Development Methods

Minutes of the Meeting

Group - III

Meeting: 02

Meeting Called By : Azeem Venue : L3 Class Room 6

Date : 15th April 2009.

Attendees : Azeem Time : 12:30

Prageeth

Nuwan

-------------------------------------------------------------------------------------------------------------------------------

Major Discussions

1. Discussed about the DFD and gave each member’s idea about main process of the DFD. 2. Discussed about the ER diagram and gave each member’s idea about main process of the

diagram. 3. Finalized documenting selected methodology.

Out Come

1. Azeem was assigned to create DFD and ER diagrams including other member’s ideas.

Page 52: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 51

System Development Methods

Minutes of the Meeting

Group - III

Meeting: 03

Meeting Called By : Azeem Venue : L3 Class Room 6

Date : 22th April 2009.

Attendees : Azeem Time : 12:30

Prageeth

Nuwan

-------------------------------------------------------------------------------------------------------------------------------

Major Discussions

1. Discussed about the DFD which Azeem create. 2. Discussed about some changers about the ER diagram.

Out Come

1. Nuwan was assigned to find out the errors in DFD. 2. Azeem was assigned to finalize the ER diagram.

Page 53: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 52

System Development Methods

Minutes of the Meeting

Group - III

Meeting: 04

Meeting Called By : Azeem Venue : L2 Syndicate Room

Date : 29th April 2009.

Attendees : Azeem Time : 16:30

Prageeth

Nuwan

-------------------------------------------------------------------------------------------------------------------------------

Major Discussions

1. Finalized DFD 2. Finalized ER diagram 3. Discussed about Data Dictionaries 4. Discussed about Entity Description tables

Out Come

1. Nuwan was assigned to create Entity Description tables. 2. Divided creating Data Dictionaries among group members. 3. Azeem was assigned to create Process Specifications. 4. Prageeth was assigned to create Entity Life History Diagrams.

Page 54: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 53

System Development Methods

Minutes of the Meeting

Group - III

Meeting: 05

Meeting Called By : Azeem Venue : L2 Syndicate Room

Date : 04th May 2009.

Attendees : Azeem Time : 16:00

Prageeth

Nuwan

-------------------------------------------------------------------------------------------------------------------------------

Major Discussions

1. Finalized Entity Description tables. 2. Finalized identifying main task in new system and discussed about design Hierarchical Task. 3. Discussed designs of the forms by drawing sketchers. 4. Finalized Process Specifications. 5. Finalized Entity Life History Diagrams.

Out Come

1. All members agreed on creating forms using Elegant Ribbon. 2. Divided designing forms among group members. 3. Designed a low fidelity prototype to the system. 4. Azeem was assigned to create data base with the help of other group members. 5. Prageeth was assigned to finalize the Hierarchical Task.

Page 55: Natlib Library System

System Development Methods: CE00321-2

Asia Pacific Institute of Information Technology – Sri Lanka 54

System Development Methods

Minutes of the Meeting

Group - III

Meeting: 06

Meeting Called By : Azeem Venue : L2 CR6

Date : 20th May 2009.

Attendees : Azeem Time : 12:30

Prageeth

Nuwan

-------------------------------------------------------------------------------------------------------------------------------

Major Discussions

1. Finalized each form which assigned to each group member. 2. Discussed about the reports which should be generated by the system. 3. Discussed about how to cording for the system. 4. Discussed about finalizing the documentation.

Out Come

1. Reports were assigned among group member. 2. Each group member was assigned to do cording for the forms which designed by them. 3. Each group member was assigned to finalize their part in the documentation. 4. Azeem took the responsibility of finalizing overall documentation.