Raw 3

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 41

Chapter 3: System Requirements

analysis and specification


Objectives
- To introduce the concepts of software
requirements
- To describe user requirement and system
requirements
- To explain how software requirements may be
organized in a requirements document
Requirement
Requirement is defined as:
1. A condition or capability that must be possessed
by a system to satisfy a contract, standard,
specification, or other formally imposed
document.
2. A condition of capability needed by a user to solve
a problem or achieve an objective;
Requirement phase normally ends with a
Software Requirements Specification (SRS)
document

SRS specifies what the proposed system should do

Identifying and specifying requirement, also


involves people interaction.
Requirements
The requirements must be written so that several
contractors can bid for the contract
Once a contract has been given, the contractor must
write a system definition for the client in more
detail so that the client understands and can validate
what the software will do.
Both of these documents may be called the
requirements document for the system.
Function and Goals of requirement
- May be the basis for a bid for a contract - therefore
must be open to interpretation.
- Understand the requirements in detail.
- Define the requirements in a manner that is clear to
the client.
- Define the requirements in a manner that is clear
to the people who will design, implement and
maintain the system.
- Ensure that the client and developers
understand the requirements and their
implications.
The set of requirements must be the basis for
acceptance testing.
Why are Requirements Important?
Causes of failed software projects

- Incomplete requirements
13.1%
- Lack of user involvement 12.4%
- Lack of resources 10.6%
- Unrealistic expectations 9.9%
- Lack of executive support 9.3%
- Changing requirements 8.8%
- Lack of planning 8.1%
- System no longer needed 7.5%
Types of software requirements
1. User requirements
2. System requirements
3. Software specification
Software
requirements

System Software
User requirements
requirements specification
1. User requirements
 Statements in natural language plus diagrams of
the services the system provides and its operational
constraints. Written for customers
- Functional and
- Non-functional requirements

User requirement should describe functional and


non-functional requirements so that they are
understandable by system users who don’t have
detailed technical knowledge.
Functional requirements
- Statements of services the system should provide,
- how the system should react to particular inputs and
how the system should behave in particular
situations.
- Describe functionality or system services
- Functional user requirements may be high-level
statements of what the system should do
Examples of functional
requirements
- The user shall be able to search either all of the
initial set of databases or select a subset from it.
- In library, member should be able to borrow a
book, return a book, …
- The system shall provide appropriate viewers for
the user to read documents in the document store.
- Every book shall be allocated a unique identifier
(book_ID) which the user shall be able to copy to
the account’s permanent storage area.
No-Functional requirements
Also called Quality requirement.
They define system properties and constraints e.g.
reliability, response time, timing constraints,
constraints on the development process, standards
and storage requirements.
Non-functional requirements
Not directly concerned with specific services to be
delivered by the system.

Process requirements may also be specified


mandating to a particular system, programming
language or development method
Non-functional requirements may be more critical
than functional requirements. If these are not met,
the system is useless
Non-functional classifications
Product requirements

Requirements which specify that the delivered product must


behave in a particular way e.g. reliability, portability,
usability, efficiency (space(storage), performance ).

Performance
Eg. 1. The medical system shall be available to all clinics
during working hours Mon- Fri 7.30 -17.30, down time
should not exceed 5 second in any one day
2. The system shall accommodate 400 users during
the peak time from 8:00pm to 10:00 am local time.

3. All web pages generated by the system shall be


fully downloadable in no more than 7 seconds over
40kbps modem connection.

4. The system shall display the confirmation


messages to users within 4 seconds after user
submit information to the system.
Usability requirements include:
Well-structured user manuals
Informative /educational error messages
Help facilities
Well-formed graphical user interfaces
Organizational requirements
Requirements which are a consequence of
organizational policies and procedures e.g. process
standards used, implementation requirements,
delivery, etc.

Ex. Users of system shall authenticate themselves


using their identity card
External requirements
Requirements which arise from factors which are
external to the system and its development process e.g.
interoperability (Ability of a computer system to run
application programs from different vendors)
requirements, legislative requirements (privacy and
safety).

Safety
e.g : The system shall not operate if the external
temperature is below 4 degrees Celsius.
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.
Privacy
The system shall not disclose any personal
information about customers apart from their
name and reference number to the operators of the
system.
Requirements completeness and
consistency
Complete
They should include descriptions of all facilities
required
Consistent
There should be no conflicts or contradictions in the
descriptions of the system facilities
In practice, it is impossible to produce a complete
and consistent requirements document.
2. System requirements
A structured document setting out detailed
descriptions of the system services.

Minimum End-user Hardware Requirements


Such as Operating System , Processor , RAM, Screen
Resolution , Color Settings , Audio Support ,
Internet Connection Speed
Minimum End-user Software Requirements
Such as Web Browser, Adobe Flash Player…
Firewall Administration (listening port)
Written for developers
3. Software specification

A detailed software description which can serve as


a basis for a design or implementation. Written for
developers
Requirements and design
In principle, requirements should state what the
system should do and the design should describe
how it does.
In practice, requirements analysis and design are
inseparable
The system may inter-operate with other systems
that generate design requirements
The requirements document
The requirements document, also called Software
requirement specification (SRS) is the official
statement of what is required of the system
developers
Should include both a definition and a specification
of requirements
It is NOT a design document. It should be set of
WHAT the system should do and how it should do it
It includes user requirements for a system and
detailed specification of the system requirements.

User and system requirements are integrated into


a single description other times user requirements
are put in the introduction of SRS.
Guidelines for writing requirements
Use a standard format and use it for all
requirements
Use a language in a consistent way. Use shall for
mandatory requirements, should for desirable
requirements
Use text highlighting to identify key parts of the
requirement
common Requirements document
structure
 Introduction
Glossary
User requirements definition
System architecture
System requirements specification
System models
System evolution
Appendices
Index
Requirements document structure
Introduction
 Describe need for the system and how it fits with business
objectives
Glossary
 Define technical terms used
Functional requirements definition (user reqs.)
 Describe the services to be provided
Non-functional requirements definition (user reqs.)
 Define constraints on the system and the development
process
System Architecture
 helps structuring requirements around subsystems
System and software requirements specification
Detailed specification of functional requirements
System models
Define models showing system components and
relationships.
System evolution
Define fundamental assumptions on which the system is
based and anticipated changes
Appendices
System hardware platform description
Database requirements (as an ER model perhaps)
May include USER MANUAL and TEST PLAN
Index
Investigation Methods
All information reflecting the current situation
have to be collected, and it requires great effort so
as to decide what information to collect and how
to collect it.
1. Survey methods
2. Observation methods
3. Questionnaire method
END OF CHAPTER 3
STELLA Express management system
Stella Express is a transport company, where
different passengers from different area come to
book for places. The services or any activity is done
manual; recording in books. The manager of Stella
Express wants a computerized system that can
allow performing the following:
The manager registers the bus details (bus plate
number, chassis number, number of places, date of
manufacture, register also driver details (driver Id,
first name, last name, DoB, permit number, and
categories, sex and telephone number) and register
also lines (line name and tariff).
The receptionist of Stella Express is in charge of
scheduling drivers, buses and lines. In order to do
scheduling, the following information is needed
line (eg. from Kigali to Huye), the driver, bus plate
number and departure time.
When a passenger want to book for a place, he
provide his information (passenger ID, first name,
last name, DoB, email and telephone) online.
When he want to book for a place, he has to check
if there are available places at a specific line and
time. Once there is an available place, he can book
for a place by providing his ID, travel line,
departure time).
After booking, the passenger will receive a
confirmation message from the receptionist. If the
schedule has been cancelled or postponed the
receptionist informs passenger that a trip has been
cancelled or posponed by email or sms.
A passenger is requested to buy the ticket 30
minutes before departure time at the Stella Express
office. He can also cancel the booking before 30
minutes before departure time.
END OF CHAPTER 3
Thank you.
COURSEWORK FOR GROUP
1. Think about an information system project
2. State problems of existing system
3. Choose an appropriate Software (System)
development Process Model and specify the reason
of your choice.
4. Describe how the system will work
5. Provide FUNCTIONAL REQUIREMENTS, NO-
FUNCTIONAL REQUIREMENTS AND SYSTEM
REQUIREMENTS
6. Provide DFD Level 0 and Level 1
7. Provide an Entity Relationship Diagram (ERD)
8. Present the information system (DATABASE AND
INTERFACES)

You might also like