Software Engineering Project: Developing a Library System Application

Verified

Added on  2020/02/03

|17
|4328
|364
Project
AI Summary
This software engineering project report details the development of a library system application for New-land University. The project begins with an introduction to software and information systems, followed by an explanation of how systems approaches relate to information systems. It then explores the importance of models in software engineering, describing the Waterfall and V-models in detail. The project further includes a requirements analysis based on the university's needs, covering system analysis, feasibility studies, and functional requirements. The report also mentions the use of CASE tools and concludes with a class diagram, providing a comprehensive overview of the library system development process. The student has provided this project to Desklib to help other students.
Document Page
SOFTWARE
ENGINEERING
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
Table of Contents
INTRODUCTION...........................................................................................................................1
TASK 1............................................................................................................................................1
1.1 Explain what is meant by software systems and information systems.................................1
1.2 Explain how systems approaches relate to information systems..........................................2
1.4 Select and describe two different models used in software engineering..............................3
TASK 2 ...........................................................................................................................................5
2.1 Produce requirements analysis based upon the needs of the university................................5
2.2 CASE Tools..........................................................................................................................9
2.3 Class Diagram.....................................................................................................................10
CONCLUSION..............................................................................................................................13
REFERENCES..............................................................................................................................14
Document Page
INTRODUCTION
Software engineering can be termed as a branch of computer science that mainly deals
with the development, management and the implementation of the different rigid computer
programs (Abraham and et.al., 2011). It includes several steps like researching or deep studying
of the specific project, recognising the issues, make a for that documentation work and at last
dealing that difficulties and designing the required project. The project is based on the software
engineering. The PIE Mapping that is an organisation of London founded in 2002 has an
contract from New-land University. And as being at the post of software developer my task is to
develop a software application that will allow Students to use the library resources including the
borrowing and returning of books, scanning and printing documents and interactions with staff
and computer systems (Wohlin and et.al., 2012.). This project is explaining the software and
information system and also the use of different models in software engineering.
TASK 1
1.1 Explain what is meant by software systems and information systems
The information system can be defined as the systematic study of the hardware and the
software that are used by the civilians and the corporation in order to gather and check the data
that are related to the specific computer based project. The processing, manipulating as well as
the communicating or supplying the relevant data which are created after the previous processing
among the different sector of the organisation as per their need. There are different components
of the information system. Some of them are listed below:
Hard ware: These are the physical devices like keyboard, mouse, monitor, central
processing unit, etc. that are used for the purpose of feeding the input or the data into the
software.
Software: Being the soul of the information system the software is defined as the a set of
instruction that are tells the system's hardware that what the work is to be done in order to
implement the given task. The operating system and the application software are the two
main categories of the software (Juristo. and Moreno., 2013). The examples are Microsoft
windows and the Microsoft Excel of the operating system and the application software
respectively. Some other components of the software are data, people, and process.
1
Document Page
The software system is a set of systems that consists of different components
intercommunicates with each other aiming to perform the technical tasks. This is the most
important part of the computer system consisting of different programs and the configuration
files. These configuration files are used to set the programs of the computers. The operating
system, games engines, different software that are based on the computational science, the
industrial automation are some of the examples of the software system.
1.2 Explain how systems approaches relate to information systems
System approaches are nothing but the approaches or the steps involving in solving the
issues related to the development of projects. Various organisation that relies on the information
technology or the system uses SDLC that is the system development life cycle for the purpose of
solving the issues of the system analysis. Several system approaches are used for this purpose.
According to the water fall model the system approaches would constitute following steps
regarding the information system:
Development of feasibility study: in this steps the employees or the software developer analyse
the product characteristics such as to recognise whether the product is commercially, socio-
culturally, technologically as well as the corporation-ally feasible or not (Harman and et.al.,
2012).
Determining the facts: several measures are taken in order to search or identify the
different requirements of the user by inter-acting with them. This tasks involves interviews,
observations of the work that is based on the present or latest system, and by putting several
questions in-front the clients.
Evaluating the need of the system development: The software developer before
developing the appropriate system needs to focus on the client’s work that is what work
the client might have to perform in order to achieve their short term or long term goals.
This process of gauging the end user’s operations would involve certain steps that are
following:
Scope definition: an equipment is used regarding the observation and examination of the
user needs (Cruzes. and Dyba, 2011).
Problem analysis: This involves the recognition of the issues that are risen during the
development of the required system.
Logical design: Identification of objects that are logically related.
2
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
Decision analysis: at last making the final decision.
These all system approaches are related to the information system as they are fully dependent on
the components of system software and the application of the information and technology.
1.3 Describe the importance of the use of models in software engineering
The software models act as the pillars for the development of the required
products. Certain models that are given by the scholars of the information system are used as per
the situation (Brambillaand et.al., 2012). There are different software models that are used by the
software developers in order to develop and design the system software according to the demand
of clients as well as the organisation. some of them are listed below:
Waterfall model
Iterative model
Big Bang model
Spiral model
V- model
The different above written software are very important as they are treated as
guide lines. Because it tells the different steps like requirement gathering, the feasibility study of
the product, the system analysis, software design, coding, testing, integration, implementation,
operation and maintenance and various other process that are required to create a new product.
The steps order must be maintained as any improper use of the process can led to some technical
errors. If the product will show any unsupportive nature in future after developing that then the
software engineers would also perform the risk handling to resolve that error. Before developing
any product, it is the main task of the engineer is to analyse the SDLC (software development
life cycle). Although to design or develop the model for the required system is the theoretical
work but it must be carried on as per the client demand and the documentation work is saved.
1.4 Select and describe two different models used in software engineering
There are different models in the software engineering that are discussed below:
Waterfall Model: This is one of the oldest models. The organisation can use this model
to develop their creative ideas regarding the invention of the required project. In this
model all the phases of the software development life cycle is used such as requirement
gathering, system analysing, testing, coding, implementation, operations and maintenance
3
Document Page
(Bourque, P. and Fairley, 2014). In this model the testing starts after the developing
process of the product is completed.
(Figure: Waterfall model, 2017)
V- model: The main disadvantage of the waterfall model is that the next step or stage
cannot be initiated until the previous one is completed. This creates troubles for the
software engineers because no one can move in backward processing even some wrong
task is performed. So the engineers have to concentrates very seriously on each stage
(Arcuri and Briand, 2011). To overcome from this situation, the V-model is introduced.
This model provides the measures that can be used to test the wrong one by moving in
reverse direction.
The test plans as well as the test cases are applied or created at each and every stage.
These plans are used for the verification and validation of the designed product as per the
need of the stage or situation. But it is to be carefully recognised that the engineers will
do the task of verification and the validation in a parallel manner. So this model is also
called verification and validation model. This risk handling task contributed a lot in the
field of development of the product.
4
Document Page
(Figure: V-Model, 2017)
TASK 2
2.1 Produce requirements analysis based upon the needs of the university
Requirement analysis is also known as requirement engineering. It is nothing but the
process of recognizing the expectation of the user for a newly created product. The user tells his
requirements or the demand according to their need and ordered the company for the
modification in the existed product. The requirements must be quantifiable that is it can be
measured and the modifications must be relevant. The Newland University wanted to develop a
software application that will allow students to use the library resources including the borrowing
and returning of books, scanning and printing documents and interactions with staff and
computer systems. Up to this point the university have been using very manual systems which
the staff are very happy to use and are concerned that the introduction of a new system will result
in the loss of jobs and an increase in complexity of the work that they do.
In order to develop an online library system where the tasks or activities of the students
are like issuing or returning the book with the help of internet based system the corporation
5
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
needs a software developer having the knowledge of languages like java, PHP, etc. The software
engineer will have to perform following analysis for developing a new system which is based on
the internet:
System analysis: This is the process of identifying the issues of the existed system that is
what are the problems faced by the clients or users. Like the manual library system of the
university has several problems of documentation, arrangement, maintenance, etc. The
need of the new system is discussed in this analysis so the developer will develop the new
system as per the user’s needs (Juristo and Moreno, 2013).
Feasibility study: This is process of extracting the impacts of the newly developed
system in the organisation. The impacts will be positive or negative. Here by developing
the new online library system has several positive impacts on the Newland University.
For example, the students can now easily issue or return the book simply by registering
on the University website without going to the library.
Economical Study: After Development of system there is more economical work going
to be happen. Student Not only saves money but save time. As they don’t have to stand in
queue for issuing of books though. They can also see the availability online of books they
are searching for.
Localization: There will be no localization issue any more as student don’t need to come
to library for all book issue. They can request, verify and event suggest only through this
portal only (Islam and et.al., 2011).
Software that has to be develop have to provide all essential actions to all staff members of
library and student also. There are different motivating factors that give order to create fresh
system that will be based on computer. Some of them are listed below:
To make modern or new database for college library. The data will be store in a catalogue
that is based on card.
To modify the working of library staffs and reduce the time.
For joining small database which is based on access, where the relevant information are
used to store that is about digital items.
The service of librarians can be expanded.
Checking the commercial capabilities of this library management system.
6
Document Page
This system will permit the distant or remote accessibility of customers to library
database after completing the procedures of authorization. Consumers can lookup, re-
new items and can also send request. This system will give remote approach or accesses
to other database.
Functional Requirements are the following:
System are storing all data regarding library staffs, consumers, their key access, etc.
It also stores several information about items and customers in two different or isolated
databases.
This will permit or give facility of inquiring items by authors, heading or keyword
(Gorton, 2014).
This system can handle approx 500 users and 1000 requests per minute at the same time.
This also give facilities of adding, deleting and modifying items in database by checking
availability of items.
System will create report of requests for all library staffs on regular basis. This is based
on the decision-making done by them about getting the item.
This system will generate notification and then send this to users by giving mails to them
after delinquency automatically.
System will also permit customers to attain their personal data and status.
Non - Functional Requirements are following:
Look and Feel Requirements
As per the requirement or need of users, the system of college have to include following
interfaces:
System interface have to be similar for users and library staff members that is created on
the basis of c++ or java application.
But the dis- similarities will depend on the functioning of users. Customers have system
that have simple version that is they do not perform adding, removing and modifying
possibilities.
While the system executive will involve c++ or java application, command line
arguments and system files.
7
Document Page
Web interface: This interface will give the facilities of searching, requesting and
renewing procedures and connecting with other online databases. It perform well in
different browsers.
Usability Requirements
As this is written above, users of products are adults, so there is no special needs to make
simpler system.
It must be ergonomically and clear interface.
This interface includes prompts and aids in avoiding faults.
Product are utilized by users without training.
Performance Requirements
The interface between customers and system must have a minimum response time of 3
seconds while having maximum response time of 5 seconds.
Responding should be done at faster rate in order to avoid clash between responses of
customers.
System will be accessible for 24 hours regularly or for 365 days.
This system will handle 600 users and 1200 requests per minimum at the same time.
Operational Requirements
System can be utilised on workstations of IBM- compatible having a free space of 50 M
bytes on HDD for work stations of library ( 80 G bytes for server) and 32 M bytes RAM
for library work stations ( 256 M bytes for server).
This system will be accurately enforced in all internet browsers (Basili, 1996).
System will have correct interface if there is MS SQL Server and MS Access
applications.
Maintainability and Portability Requirements
Verification of modification will be done at least only once per day like changing done in
password, any database alteration, entry of new users, etc.
This system will give notification via emailing about over due of each item , outcomes of
reservation, availability of reserved items,etc. automatically on regular basis.
This system is expecting to work on MS Windows 95/98/200/NT/XP
Security Requirements
8
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
This system will give security by permitting system executive and library staffs to do
modification in databases after the procedures of authorization (Gram bow and Reichert
2011).
Only college student and staff will be allowed to access the system after doing the
procedures of authorization.
Legal Requirements
All personal data will provide protection.
System will follow the standardized quality assurance.
2.2 CASE Tools
For Case tools we have different module on which user and staff will act on.
Following is the Use Case Diagram of the requested system:
There will be two actor of the system:
User (Student)
Staff
User/Student can borrow books for specified period, and return it on the issued return date.
9
Document Page
If student want to scan request like scanning of particular books, document, manuscripts, etc., he
can do it easily here, just by dropping the request for that and then give the required accessed
material to staff of the library (Bourque and et.al., 1999).
If Student want to print request like printing of poster, pages, flags, etc. he can do it, just by
dropping request for same. It will also save the cost of deploying of printer on shared network
and also save from further attacks like networks hacks.
Interaction is a must between student and staff (Juristo and Moreno, 2013). As in future if there
is any problem regarding books issue or any related queries so he can concern here.
The above mentioned Use Case tools will helps in understanding the roles and responsibility
of various actors. This also show the participation of specific users that is (Student and staff
here). This also shows different activities performed by them. Users can easily perform
different activities like printing, scanning, borrowing, returning, etc. For instance, if user
want to print poster, pages, etc. then they can do it by just requesting for it to the system.
2.3 Class Diagram
Class Diagram explain different module and coupling between them, we will try to
reduce the coupling between modules as possible.
10
Document Page
There will be following classes in system:
Books
User
Borrow
Scanning
Printing
Interaction Staff
Interaction System
There will be following association between classes in system :
(Books, User) – Borrow
For borrowing books there must be user so it is a multiple inheritance, if
we it implements it in Java we need interface for sure. It is so because if we there exist a
borrower then there must be books and user both.
As one user can issue multiple books so we have to work on that also, i.e. there is many to one
relationships between borrower and books.
11
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
We have to also work on the constraints like Availability of books and Type of user requesting
for books (Dyba and et.al., 2005).
For issue a book we have attributes which are must before issuing the books as explained in class
Diagram
Borrow – Return
For returning books first books must be issued, for issuing a book there
must be book and user who will request. So this follow inheritance concepts and here we will use
the same concepts to establish the dependencies.
For a quality system, this is basic property which we have to follow it should be flexible, concise
and most of all easy to use. Therefore, we have implement it is object oriented structure and
while implementing this module we will observer it here for same (Fu-Qing, 2005).
For return a book we have attributes which are must before returning the books as explained in
class Diagram
User – Scan
For scanning document, we must have user who will request the scan.
Scanning may include various documents for scanning.
There should be constraints like scanning costs and pages that all we have to take in our concern.
Each should be identified uniquely therefore we need scan id. Here is also dependencies as scan
require users.
User – Interaction Staff
User can interact with staff as for various issues related to library.
Like books issuing request, books lost, requesting for bringing new books to library
User – Interaction System
User can also interact with system like for view his details.
Following User Details:
Profile
Book Details
Issued Details
Return Details
User – Printing
12
Document Page
User who want to print their document can also request there printing request by booking slots
(Karolak and Karolak, 1995)
There is printing id for each print operation. It will identify user, amount, no. of pages’ user
requested.
Interaction staff and interaction system are taken in the class diagram as it is very
important to interact with staff members as well as from system. There are certain issues that
have to be disused with staff members or librarians. In interaction system various details are
provided to fill like details related to book, issuing of date, returning details, etc.
CONCLUSION
From the above base report, it has been concluded that the software engineering is very
important that is used in the process of development as well as improvement of the software
based products. Different models are used in this regard. Also the information and the system
software are complementary to each other. The New land university uses the software
engineering in the development of the online library system so that there will be no issues
regarding the issuing and returning of the book will created.
13
Document Page
REFERENCES
Book & journal
1 Gorton, I., 2014. Cyberinfrastructures: Bridging the divide between scientific research and
software engineering.Computer,47(8), pp.48-55.
Abraham and et. al., 2011. The state of the art in end-user software engineering. ACM
Computing Surveys (CSUR).43(3). p.21.
Arcuri, A. and Briand, L., 2011, May. A practical guide for using statistical tests to assess
randomized algorithms in software engineering. InSoftware Engineering (ICSE), 2011 33rd
International Conference on(pp. 1-10). IEEE.
Basili, V. R., 1996, May. The role of experimentation in software engineering: past, current, and
future. InProceedings of the 18th international conference on Software engineering (pp. 442-
449). IEEE Computer Society.
Bourque and et. al., 1999. The guide to the software engineering body of knowledge. IEEE
software.16(6). pp.35-44.
Bourque, P. and Fairley, R. E., 2014.Guide to the software engineering body of knowledge
(SWEBOK (R)): Version 3.0. IEEE Computer Society Press.
Brambillaand et. al., 2012. Model-driven software engineering in practice.Synthesis Lectures on
Software Engineering.1(1). pp.1-182.
Cruzes, D. S. and Dyba, T., 2011, September. Recommended steps for thematic synthesis in
software engineering. InEmpirical Software Engineering and Measurement (ESEM), 2011
International Symposium on(pp. 275-284). IEEE.
de Oliveira Barros, M. and Dias-Neto, A. C., 2011. 0006/2011-Threats to Validity in Search-
based Software Engineering Empirical Studies.RelaTe-DIA.5(1).
Dyba and et. al., 2005. Evidence-based software engineering for practitioners.IEEE
software.22(1). pp.58-65.
Fu-Qing, Y. A. N .G., 2005. Thinking on the development of software engineering
technology.Journal of software.1(6). p.1.
Grambow and Reichert 2011. Contextual injection of quality measures into software engineering
processes.Int'l Journal on Advances in Software.4(1&2). pp.76-99.
Harman and et. al., 2012. Search based software engineering: Techniques, taxonomy, tutorial.
InEmpirical software engineering and verification(pp. 1-59). Springer Berlin Heidelberg.
Islam, S., Mouratidis, H. and Jürjens, J., 2011. A framework to support alignment of secure
software engineering with legal regulations.Software & Systems Modeling.10(3). pp.369-394.
Juristo, N. and Moreno, A. M., 2013.Basics of software engineering experimentation. Springer
Science & Business Media.
Karolak, D. W. and Karolak, N., 1995.Software engineering risk management: A just-in-time
approach. IEEE Computer Society Press.
Salman and et. al., 2015, May. Are students representatives of professionals in software
engineering experiments? InProceedings of the 37th International Conference on Software
Engineering-Volume 1(pp. 666-676). IEEE Press.
Wohlin and et. al., 2012.Experimentation in software engineering. Springer Science & Business
Media.
14
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
Online
Requirements analysis (requirements engineering).2017.Available through:
<http://searchsoftwarequality.techtarget.com/definition/requirements-analysis>. [Accessed on
15th May 2017].
15
chevron_up_icon
1 out of 17
circle_padding
hide_on_mobile
zoom_out_icon
[object Object]