Software design document

 

Executive Summary:

A Library Management System is a software or an app-based program to manage the primary housekeeping functions. It maintains the record of the library and also protects the existing database of resources and consumers. It somehow reduces the burden of manually managing the whole process, registering various data, and managing the process. The library management system is a way more effective in operating the whole process and workflow that generally happens in a Library. Here, the library management system has been briefed, along with its purpose, the objectives, the deliverables, the results. The system design and development have been briefly discussed. Several workflows, several diagrams, charts, processes have been defined as well. Starting from its block diagram to case diagram, class identification to technologies used, everything has been covered in this part. Besides, the functionalities of every part of the system and workflow have been discussed. Hence, though the system developed in this project seems basic, it is quite effective, and the Though the UI, and technology used seem fundamental yet, it is adequate for self-learning (Voorhees, 2020).

 

Table of Contents

Introduction.. 3

Background of the project 3

Purpose of the LMS designs Document: 3

Structure of software package: 4

Conceptual Model 6

Technology Used in Library Management System and the functionalities: 6

System overview.. 9

Architectural design pattern: 10

Design Viewpoints. 13

Logical viewpoints. 13

Information Viewpoint 14

Interface viewpoints. 18

Interaction viewpoints. 19

Traceability Chart 20

Conclusion. 22

Reference. 24

 

 

Introduction

Background of the project

A Library Management System is a software or an app-based program to manage the primary housekeeping functions. It maintains the record of the library and also protects the existing database of resources and consumers. It somehow reduces the burden of manually managing the whole process, registering various data, and managing the process. The library management system is a way more effective in operating the entire process and workflow that generally happens in a Library. Besides, there is no additional issue with recording the data, keeping it safe and reserved. It helps to maintain the process flow of borrowing a book by the students, renewing the subscription, renewing a book borrowing, entering new books, replenishing the library collection, etc. Libraries rely on library management systems to manage asset collections as well as relationships with their members (Durfee et al. 2016). In general, this software smoothens the way of operating the whole library by a librarian or any other authority. LMS makes it easy to allot the books, take payments, keep track of the inventory or the availability, delay returning the book or expiry of the subscription plan of different readers or borrowers, and notify them accordingly. Hence, the Library management system helps in tracking the books and their checkouts and smoothens the process of maintaining members’ subscriptions and profiles, etc.

Library Management Systems is gaining popularity in School Libraries, Public Libraries, Libraries in colleges and other educational institutes, Libraries in different organizations, National Libraries, Reference Libraries, etc.

Purpose of the LMS designs Document:

The library management system’s design document would provide a detailed overview of designing the whole system, the functional keys, or the factors considered to design the information system. It will help identify each module needed for the Library Management system application and let us understand the modules’ functionalities and importance. The modules are defined during the system design phase, and the main aim is to supply internal logic for every module as identified (Durfee et al. 2016).

Structure of software package:

A library is where readers or lecturers borrow a book for a stipulated period for some special payment or under some subscription or membership fee. Also, libraries are often replenished with new books; availability is upgraded as well. The software design document should align with all these works involved in a library.

The software design would include the following functional components.

The structures of the software package are as follows:

The components that are involved in the module decomposition are as follows:

Benefits Expected

Conceptual Model

Technology Used in Library Management System and the functionalities:

■For Backend, the technology used could also be:

■ For the front end, there can be the use of

For the execution of developing a library management system through JAVA, the system and business requirements are as follows:

Java is selected for the simplicity of the language and also because it is Object-oriented. It is even easier than C++ and eliminates all the complexities. Java also prevents activities from external sources, and also, after completion and compilation, Java coverts all the Code to the bytecode.

For data management in the library management system, MySQL is suggested to be used. MYSQL is an effective data management system that can have and be used by multiple users. Also, the same supports and can be operated on multiple platforms. If premium services and additional support are needed, the license can be purchased from Oracle (Rommel et al., 2020).

■Table to be Considered:

Three major tables needed to create the Library management system:

■ For Coding: Five major functions of the library management system is chosen. Separate coding will be done for individual functions. The major parts considered are:

Also, to create a GUI, I will be using Swing. Swing is a library or program components used to create graphical user interface components such as scroll bars, buttons, dialog boxes, etc.

System overview

Figure 1: Block diagram

Block Diagram for Library Management System:

The Block diagram is almost similar to the class diagram of the Same system. It includes many blocks that are similar to classes. Some major blocks consist of several components. The main blocks that are considered are as follows:

Library: The main block is the library in the organization around which the entire system. The system itself is designed around the block (Wakabayashi et al., 2020). It has attributes like ‘Name’ to distinguish it from any other libraries and ‘Address’ to describe its location.

Book: The basic building block of the system. Books have components like ISBN, Title, Subject, and Publishers.

BookItem: Books under a particular name might have several versions, several editions, several translational versions, and several parts as well. All these come under the book item block. Each booking item would have a separate Code.

Account: There will two types of accounts considered in the block diagram of the library management system. One account will be associated with the admin or the librarian, and another will be a general user account.

Library card: Each member or user will have to make a subscription with a particular tenure. As per the subscription, he or she will have a library card. Cards will be used for a user against borrowing a book (Devadiga, 2017). It can components like user Id, name, etc.

BookLending: Manage the checking-out of book items.

Catalog: Catalogs contain a list of books sorted on certain criteria. Our system will support searching through four catalogs: Title, Author, Subject, and Publish-date.

Fine: This block is mainly made in order to estimate the delay in book return, and according to that, the late fine is calculated and billed. It will fetch the late fee and update the user details accordingly.

Author: This generally identifies the author. A particular book will have a particular author. However, one author will have many books.

Shelf: Books will be placed on racks or shelves. A particular category of books will be placed on a particular shelf. Hence Shelf ID, Book ID are some of the components in this block.

Notification: This Block will be responsible for sending a notification to the users. Notification can be related to the expiration of their membership, their issue and return update, the time left to return, the expiration of the tenure of keeping the book, the late fee, and the late fee payment update (Hsiao and Chen, 2018).

Each block or class will have different attributes, as well. Several attributes for several blocks:

Architectural design pattern:

Class Diagram for Library Management System :

Aggregation and Multiplicity are two important points that are taken as two components while drawing a block diagram for the Library management system.

Aggregation: Aggregation represents different relationships between entities. It also exhibits a relationship where one thing develops or creates different abstractions in the same class but can also reside independently from the other without any dependency. The diagram as drawn below shows an evident exhibition of the aggregation, which is represented by an edge with a diamond-shaped pointer pointed at the superclass. The Library Management System is a superclass that consists of various classes (Grasland, 2016). For this superclass, the classes are User/reader, book, and the librarian, Whereas user is also a superclass which has an account as its class. All of these share a relationship, and these relationships are known as aggregate relationships.

What is Multiplicity?

Multiplicity denotes the relationship between different classes. The relationship can be particular or various. There can be one to one, one to many, many to one, and many to many relationships between the different classes. For example, many users would have a relationship with many books that is many to many relationships. And if the user number is one, then that is one too many relationships for a user and account. That is one to one relationship (Royer et al. 2019). Hence, to understand the same thing in the diagram. One to one relationship has been denoted by 1, for zero elements 0 has been used. And, the symbol * has been used to denote the many to many relationships.

Classes of Library Management System :

Library Management System class –

It manages all operations of the Library Management System. It is a central part of the organization for which software is being designed.

Each block or class will have different attributes, as well:

Library Management System Methods –

Design Viewpoints

Logical viewpoints

Figure 2: Logical viewpoints diagram

This segment gives a blueprint of a legitimate perspective. This perspective depicts the coherent inner structure and the conduct of the framework being worked on (SUD). The primary assignment in the legitimate perspective is the dissemination of capacities to an order of consistent parts. The primary model kind of sensible perspective is the coherent part. It portrays the framework’s legitimate segments and their relationship (Baek, Lee, and Lee, 2016). This coherent part engineering structure is regularly impacted by nonfunctional models, e.g., viability or dependability. As opposed to the technical perspective, the sensible perspective doesn’t zero in on the specialized framework given, e.g., the regulators or specialized gadgets utilized.

 

Information Viewpoint

Figure 3: ER diagram

The ER diagram establishes individual entities involved in a library management system, shows communication, and establishes the relationship between the entities and the different workflows.

The factors considered are:

There are different entities in a Library Management System such as the authentication system, the readers, the staff, the publisher, books, reports, etc. The diagram, therefore, establishes the relationship between separate entities. Each entity has several attributes, as well. Two different entities can have one common attribute, as well (Brouwers et al. 2018). Here the relationship can be one too many, many too many, many to one, many to many as well.

Entities and their Attributes –

Relationships between Entities –

One reader can issue • 1 book at a time. But one reader can reserve many books at several times throughout his membership period. Hence it is a one to many relationships.

4.3 The sequence diagram as below shows three sequence diagram of a library management system. The sequence diagram generally establishes relationships between different objects like class objects as well as involved in the library management system (Agaronian et al. 2019). There can be various class and superclass objects. If we consider the log-in sequence diagram of the library management system, the objects include:

Explanation:

There is a log-in sequence involved in the library management system. An admin or librarian keeps track of the users. So here sequentially, an admin needs to put the ID and the password or other credentials of the user (Saggah, ATKINS, and CAMPION, 2020). During the log-in, there can be a loss of password for which admin can click on the forgot password option.

There can be a verification process involved as well, like captcha recognition, question answers, etc. There can be another authentication process as well in the sequence. So, the below diagram helps in understanding how a log-in page works in the case of a library management system.

Book issue sequence: Book Issue sequence diagram mainly illustrates the workflow during the book’s issue by a user and the activities or communications involved between different objects. The Object might include:

The Sequence:

Interface viewpoints

Figure 4: Software screenshots

It would be difficult work if you were making a perspective on your engineering each time you needed to return to first standards to characterize what ought to go into it. Luckily, you don’t exactly need to do that (Saggah, ATKINS, and CAMPION, 2020).

 

In his basic paper, Kruchten characterized four standard perspectives, in particular, Logical, Process, Physical, and Development. The IEEE standard makes this thought conventional (and doesn’t indicate some arrangement of perspectives) by proposing the idea of a perspective (Kwan et al. 2017).

Interaction viewpoints

Figure 5: Sequence diagram

Multiagent Systems (MASs) investigation centers around those frameworks in which numerous clever specialists collaborate. The operators are viewed as self-sufficient elements which contain insight that serves for taking care of their egotistical or normal issues and to accomplish certain objectives

Traceability Matrix

 

 

 

 

 

 

 

 

 

 

 

 

 

Figure 6: Traceability diagram

In programming improvement, a discernibility framework (TM) is an archive, generally, as a table, used to help with deciding the culmination of a relationship by corresponding any two baselined reports utilizing a many-to-numerous relationship examination. It is frequently utilized with significant level necessities (these regularly comprise promoting prerequisites) and itemized prerequisites of the item to coordinate pieces of the elevated level plan, point by point configuration, test plan, and experiments (Kwan et al. 2017).

 

Conclusion

The proposed project depicted in this document is a web-based application with the particular objective of taking care of the essential functional elements. Library management systems are used for overseeing the collection of resources and assets just as associations with their members. This way, library management systems are used in libraries to automate tracking books and their checkouts. Library management systems also entail database maintenance for adding new books and keeping records of books that have been obtained with their particular due dates.

The primary  objectives were:

The major objective of this project is to develop a system that helps manage the library’s operation.

Hence, the charts, the charts, and the testing chart everything briefs about the development of a basic but effective library management system and shows the functionality and applicability of the system.

 

Reference

Agaronian, A., Freyer, C.W.S., Bierbooms, C.G., Hoeijmakers, T.P.H., Jansen, T.K.H.G., Kafoe, T., Makantasis, I., Mankevic, K., Sinx, R.D., Smits, I.M. and Vlaswinkel, K.R., 2019. Architectural Design Document.

Baek, D., Lee, B., and Lee, J.W., 2016. Content-based Configuration Management System for Software Research and Development Document Artifacts. KSII Transactions on Internet & Information Systems, 10(3).

Brouwers, A.S., Kenbeek, M.M., Lifmann, A.R., de Vries, W.D., García, D.L., Traas, J.J., Honcoop, T., Gerards, P.G.R.M.J., Brons, D., Schalken, M.M.R. and Zannone, N., 2018. Architectural Design Document.

Devadiga, N.M., 2017, October. Tailoring architecture centric design method with rapid prototyping. In 2017 2nd International Conference on Communication and Electronics Systems (ICCES) (pp. 924-930). IEEE.

Drozd, O.V. and Kapulin, D.V., 2017, November. The model of electronic design document as a part of integrated information environment of radioelectronic enterprise. In 2017 Dynamics of Systems, Mechanisms and Machines (Dynamics) (pp. 1-5). IEEE.

Durfee, J.D., Frazier, C.R., Bandlow, A. and Jones, K.A., 2016. Contingency Contractor Optimization Phase 3 Sustainment, Software Design Document Contingency Contractor Optimization Tool-Prototype (No. SAND2016-4960). Sandia National Lab.(SNL-NM), Albuquerque, NM (United States); Sandia National Laboratories.,.

ER, JD and KUL, KP, Deliverable 2.1 Software Design Document.

Gaede, F., 2016. Design document for alignment Toolkit with tight coupling to DD4hep (No. AIDA-2020-MS18).

Grasland, H., 2016. Design document for parallel algorithm scheduling mechanism (No. AIDA-2020-MS20).

Hsiao, K.L. and Chen, C.C., 2018. What drives smartwatch purchase intention? Perspectives from hardware, software, design, and value. Telematics and Informatics, 35(1), pp.103-113.

Huang, W., Technical Design Document.

Kwan, A., Ye, D., Rahmanian, S. and Karimbil, S., 2017. Dynamic projector mount project: design document.

Moon, H.S., Zetina, J., Benson, A., Luu, K., Gorton, J. and Miller, T., Design Document.

Oostveen, S.P.O., Rajaraman, A., Zannone, N. and Genga, L., 2018. Architectural Design Document. Delta.

Rommel, M., Dukes, A.W., Duberstein, S.J., Downs, C.J. and Blackford, E.B., 2020. Cog-Pack (trade mark) Technical Design Document. Ball Aerospace and Technologies Fairborn United States.

Royer, P.D., Triplett, M.B., Simpson, B.C. and Rohlfing, K.S., 2019. A Design Document: Custom Analytical Tools and Automation for the Industrial Hygienist (No. PNNL-28089 Rev 1.01). Pacific Northwest National Lab.(PNNL), Richland, WA (United States).

Saggah, A., ATKINS, A. and CAMPION, R., 2020. A Pedagogical Game Design Document (Ped-GDD) to Promote Teachers’ Engagement in the Kingdom of Saudi Arabia.

Ubbink, J., Wouters, R., Zannone, N., Prins, M.W.J. and Brekelmans, W.W.C.C., 2017. Architectural Design Document.

Voorhees, D.P., 2020. Software Design Document. In Guide to Efficient Software Design (pp. 505-510). Springer, Cham.

Wakabayashi, T., Morisaki, S., Kasai, N., Atsumi, N. and Yamamoto, S., 2020. Tool Supported Detection of Omissions by Comparing Words between Requirements and Design Document. Journal of Information Processing, 28, pp.136-149.

error: Content is protected !!