Lecture11-IS466

advertisement
IS 466
ADVANCED TOPICS IN
INFORMATION SYSTEMS
LECTURER : NOUF ALMUJALLY
12 – 11 – 2011
College Of Computer Science and Information, Information Systems Department
Objectives
2
•
Functional requirements
•
Non-Functional requirements
Requirement Engineering
3
•
What is requirement engineering ?
•
The process to obtain customers or end-users
requirements of software
•
includes a set of
tasks
that lead to an
understanding of software requirements
4
Functional Requirements
Functional Requirements
5
•
•
A functional requirement defines a function of
a software system or its component.
FRs describe what a system does, but not what is
done to the system.
Functional Requirements
6
•
•
We can describe a FR as a sentence that takes the
following form:
"The product does something"
where the does something part is a verb clause
describing the action or reaction of the product
within its operating environment.
Functional Requirements
7
•
Functional Requirements have the following
characteristics:
•
•
•
•
•
•
uses simple language
not ambiguous
contains only one point
specific to one type of user
describes what and not how
grammatically correct
Functional Requirements
8
•
A requirement must state who shall (do, perform, provide,
weigh, or other verb) followed by a description of what
must be performed.
Example:
“System ABC shall do XYZ”
The system shall produce reports.
•
FRs should never describe the form, shape, material, or
any other physical characteristic of a product.
9
Non-Functional Requirements
Non-functional requirements
10
•
•
Non-functional requirements define the overall
qualities or attributes of the resulting system
Non-functional requirements place restrictions on the
product being developed, the development process,
and specify external constraints that the product
must meet.
Non-functional requirements
11
•
Example:
“The System ABC shall/should be done with constraint”
The system shall ensure that data is protected from
unauthorized access
•
A non-functional requirement (security) because it
does not specify specific system functionality
Examples of NFR
12
To make it easier to capture non-functional requirements,
we organize them into five categories:
•
•
•
•
•
Usability
Reliability
Performance
Supportability
Security
Usability
13
•
•
Usability describes the ease with which the system
can be learned or used.
A typical usability requirement might state:
•
•
•
The system should allow beginner users to install and
operate it with little or no training.
The end user shall be able to place an order within
thirty seconds.
The end user shall be able to access any page within
four seconds
Reliability
14
•
•
Reliability describes the degree to which the system
must work for users.
Specifications for reliability typically refer to
•
•
•
•
•
Availability
mean time between failures
mean time to repair
Accuracy
For example:
•
•
The system shall meet the terms of a Service Level
Agreement.
The mean time to failure shall be at least four months.
Performance
15
•
Performance specifications typically refer to
•
•
•
•
response time
transaction throughput
and capacity.
For example:
•
•
•
All Web pages must download within three seconds during
an average load
All Web pages must download within five seconds during a
peak load.
While executing a search, the system must be able to
display 500 search results per page.
Supportability
16
•
•
Supportability refers to the software's ability to be
easily modified or maintained to accommodate typical
usage or change scenarios.
For examples:
•
•
The system shall allow users to create new workflows
without the need for additional programming.
The system shall allow the system administrator to create
and populate tax tables for the upcoming tax year.
Security
17
•
•
Security refers to the ability to prevent and/or
forbid access to the system by unauthorized parties.
For examples:
•
•
User authentication shall be via the corporate Single
Signon system.
Only authorized payroll administrators shall be
permitted to access employee pay information.
Writing Requirements - Example
18
DOCTORHEALTH is a private clinic specializing in heart disease. The clinic employs
one receptionist, one doctor, and one accountant. The general patient records are
maintained by the receptionist. When a patient arrives at the clinic, the
receptionist is responsible for updating the patient records. If the patient is new
to the clinic, the receptionist enters the new patient details in the system. If the
patient has been to the clinic before, the receptionist checks that old patient
details are correct. If they are not, they are updated. The doctor maintains
detailed information (records) of the patient consultations that have taken place
each day. The receptionist also records details of payments due for each patient
consultation and sends them to the accountant. The accountant receives payment
details and sends a bill to the patient. An overdue balance report is prepared
by the accountant and sent to the doctor. Patients are supposed to send payments
by cheque via post to the accountant. Once a week the accountant tracks the
payments and sends a report to the receptionist about the patients that have
paid their consultation and the ones that are still pending payments. Based on
the report the receptionist updates the patient records with respect to payment.
Questions
19
Dr Marc Davidson, the owner of DOCTORHEALTH, wishes to
automate all these activities as much as possible. So, based on
the information provided:
1)
2)
Identify requirements for an IT system for DOCTORHEALTH
Write them all using the same form e.g.
the X shall/should (not) do Y (FR)
the X shall/should be done with constraint Y (NFR)
Questions ??
20
Download