Beruflich Dokumente
Kultur Dokumente
Mini - Project
7795543419
dharm0795@gmail.com
An SRS minimizes the time and effort required by developers to achieve desired
goals and also minimizes the development cost. A good SRS defines how an application will
interact with system hardware, other programs and human users in a wide variety of realworld situations. Parameters such as operating speed, response
time, availability, portability, maintainability,footprint, security and speed of recovery from
adverse events are evaluated. Methods of defining an SRS are described by
the IEEE (Institute of Electrical and Electronics Engineers) specification 830-1998.
The following diagram clearly depicts the process of SRS document development before
commencement of a project.
Business requirements
o project's business context,
o business objectives,
Solution vision
o general system description,
o list of its characteristics,
o assumptions and dependencies
Business contest
o description of all stakeholders in the project
o description of project priorities
After acceptance of the document by all project participants, transition to phase of tracing
user requirements occurs. This is usually done by a series of meetingsworkshops/interviews, during which all subsequent system functionalities are analyzed,
which are ascribed to the business process.
During these workshops, analysts develop use cases or user histories. Such documents
describe in detail the process of user interaction with the application (and possible
interactions between systems). Sometimes user interface models (prototypes) are drawn up
as images of forms. Such image sometimes gives a better idea about system behavior. It
also allows for improvement of user interface ergonomic.
While designing user interfaces, we follow our usefulness principles and principles of
reasonable access to data, in orderto find the compromise between user requirements and
system load. Together with user requirements, other requirements are traced, including nonfunctional requirements (e.g. specification of application availability level, time of data
storage in the database.) All requirements are collected together in the final Software
Requirements Specification document.
Types of Requirements:
The below diagram depicts the various types of requirements that are captured during SRS.
Functional :
Functional requirements describe the features, functioning, and usage of a
product/system/software from the perspective of the product and its user.
Business Rules
Administrative functions
Authentication
Authorization levels
Audit Tracking
External Interfaces
Certification Requirements
Reporting Requirements
Historical Data
Non-Functional
Non-functional requirements are not non-functional at all. Rather, they describe various
quality factors, or attributes, which affect the functionality's effectiveness. They do not
exist in the abstract but only with respect to relevant functionality.
Accessibility
Compliance
Documentation
Disaster recovery
Efficiency
Effectiveness
Extensibility
Fault tolerance
Interoperability
Maintainability
Privacy
Portability
Quality
Reliability
Resilience
Response time
Robustness
Scalability
Security
Stability
Supportability
Testability
Performance
Maintainability
Reliability
Interface
Safety
Quality
Operational
Resource
Benefits of a SRS?
The basic issues that the SRS writer(s) shall address are the following:
a) Functionality. What is the software supposed to do?
b) External interfaces. How does the software interact with people, the systems
hardware, other hardware, and other software?
c) Performance. What is the speed, availability, response time, recovery time of
various software functions, etc.?
d) Attributes. What are the portability, correctness, maintainability, security, etc.
considerations?
e) Design constraints imposed on an implementation. Are there any required
standards in effect, implementation language, policies for database integrity,
resource limits, operating environment(s) etc.?
Characteristics of a SRS
An SRS should be :o
o
o
o
o
o
o
o
Correct
Unambiguous
Complete
Consistent
Ranked for importance and/or stability
Verifiable
Modifiable
Traceable
Correct - This is like motherhood and apple pie. Of course you want the specification to be
correct. No one writes a specification that they know is incorrect. We like to say - "Correct
and Ever Correcting." The discipline is keeping the specification up to date when you find
things that are not correct.
Unambiguous - An SRS is unambiguous if, and only if, every requirement stated therein
has only one interpretation. Again, easier said than done. Spending time on this area prior
to releasing the SRS can be a waste of time. But as you find ambiguities - fix them.
Complete - A simple judge of this is that is should be all that is needed by the software
designers to create the software.
Consistent - The SRS should be consistent within itself and consistent to its reference
documents. If you call an input "Start and Stop" in one place, don't call it "Start/Stop" in
another.
Ranked for Importance - Very often a new system has requirements that are really
marketing wish lists. Some may not be achievable. It is useful provide this information in the
SRS.
Verifiable - Don't put in requirements like - "It should provide the user a fast response."
Another of my favorites is - "The system should never crash." Instead, provide a quantitative
requirement like: "Every key stroke should provide a user response within 100 milliseconds."
Modifiable - Having the same requirement in more than one place may not be wrong - but
tends to make the document not maintainable.
Traceable - Often, this is not important in a non-politicized environment. However, in most
organizations, it is sometimes useful to connect the requirements in the SRS to a higher
level document. Why do we need this requirement
This system would be used by members who may be students or professors of that University to
check the availability of the books and borrow the books, and by the librarian to update the
databases. The purpose of this document is to analyze and elaborate on the high-level needs
and features of the Online Library System. It focuses on the capabilities and facilities provided
by a Library. The details of what all are the needs of the Online Library System and if it fulfils
these needs are detailed in the use-case and supplementary specifications.
1.1 Purpose:
The purpose of Software Requirements Specification (SRS) document is to describe the
external behavior of the Online Library System. Requirements Specification defines and
describes the operations, interfaces, performance, and quality assurance requirements of the
Online Library System. The document also describes the nonfunctional requirements such as
the user interfaces. It also describes the design constraints that are to be considered when the
system is to be designed, and other factors necessary to provide a complete and
comprehensive description of the requirements for the software. The Software Requirements
Specification (SRS) captures the complete software requirements for the system, or a portion of
the system.
1.2 Scope:
The Software Requirements Specification captures all the requirements in a single document.
The Online Library System that is to be developed provides the members of the Library and
employees of the library with books information, online blocking of books and many other
facilities. The Online Library System is supposed to have the following features.
The product provides the members with online blocking of books capabilities and the
Online Library System is up and running all day.
The system provides logon facility to the users.
The system provides the members with the option to check their account and/or change
their options like password of the account whenever needed all through the day during
the library hours.
The system allows the members to block the books 24 hours a day and all the through
the semester.
The system lets the library staff to check which all members have blocked the books and
whether they can borrow any more books or not.
The system allows the Librarian to create the books catalog, add/delete books and
maintain the books catalog.
The system updates the billing system as and when the member borrows or returns a
book.
The book catalog is automated and the decision of offering the book based on the
category of the book is automatically decided.
We also have an order department, which manages to add or remove a book from the
Library.
1.3. Glosaary
Term
Definition
Librarian
User
Database
1.4 Overview:
SRS will include two Major sections:
1) Overall Description: This section of the SRS will provide the general factors that affect
the product and its requirements. It provides the background for those requirements. The
items such as product perspective, product function, user characteristics, constraints,
assumptions and dependencies and requirements subsets are described in this section.
2) Requirement Specification: This section of SRS contains all the software requirements
mentioned in section 2 in detail sufficient enough to enable designers to design the
system to satisfy the requirements and testers to test if the system satisfies those
requirements.
2)Overall Description:
2.1 System Environment:
addItem
search
admin
user
addMember
craeteRoles
return
member
issue
librarian
calculateFine
accountInfo
viewReport
2.2.
Administrator
User
Librarian
Member
2.2.1. Librarian
Use case: issue books, account info, calculate fine, view report.
The role performed by librarian is
1) Librarian issues the book to the students
2) Later while the student returns the book, he checks the account of the student
3) Based on the last return date, he calculates the fine
4) Later he return the card, updates the database and views the report
2.2.2 Administrator
Use case: addItem, addMember, createRoles, search for user.
The role performed by Administrator is
1) He can add members to the library i.e user
2) he can create new roles in the library to manage the library
3) he also can search for user to make further verification
2.2.3 User
Use case: search
1) he can search for the book and get the book issued
2) later he returns the book based on the return date
2.2.4 Member
Use case: return, search
1) a member can search for the book
2) later he returns the book based on the return data
A librarian can add, delete and update book status and search from the database. A user can
borrow, return books, reserve books and search for books. He can also renew his loan period. If
a book is overdue, the user will be fined $0.10 each day over the due. If a book is reported lost,
the user will pay the full cost of the book.
The library is a nation-wide library with several branches. When the users searches the books,
the system will output which branches have the books, and which branch is the nearest to user's
home address. The search function allows both users and librarians to search by title, rating,
category, author, publisher, ISBN, language, branch, keywords. The system also allows
browsing
by
the
same
parameters.
There is a feedback system where the users can give a rating and comments to the book
after they have returned it
Only the authorized members can access the database. This is done by giving a separate id to
everyone accessing the database.
3.1.1 Constraints:
1) The person whose name is on the id is responsible for all the books taken on it.
2) When the book is returned to the library, make sure that the database is updated.
3) Keep the id in secret, in order to avoid others misusing it.
4) If the books is not returned in time , the students will be fined.
5) When the last date is crossed, the fine database will automatically be updated.
3.1.2 Safety Requirements
The database may get crashed at any certain time due to virus or operating system failure.
Therefore, it is required to take the database backup.
librarian
STUDENT
l_id
l_name
l-doj
S_name
S_id
S_department
borrow book()
return book()
1..*
issue book()
check id()
grant permission()
add book()
1..*
DATABASE
filename
update()
delete()
SUPPLIER
S-ID
S_NAME
SEARCH()
TELL AVAILABILITY()
OPNAME()
user
Librarian
LMS
DataBase
1: authenicate user
2: succesful login
3: issue book
4: check for book status
5: available or waiting
6: suucessfully issued
7: return book
8: check status
9: calculate fine
10: return card
4.3Collaboration
Diagra
user
3: issue book
7: return book
6: suucessfully issued
2: succesful login
Librarian
LMS
8: check status
1: authenicate user
9: calculate fine
DataBas
e
verify
enter login
name
authenic
ate
check for
book
issue
book
logut
caluculat
e fine
return
book
authenic
ate
check for
book
available
issue
book
return
calculate
fine
late
in time
pay fine
return
card
logout
borrow book
librarian