SRS 2 requiremenr engineering in computer.ppt

ubaidullah75790 10 views 31 slides Apr 14, 2024
Slide 1
Slide 1 of 31
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31

About This Presentation

soft


Slide Content

1
Quality Attributes of
Requirements Documents
Lecture # 25

2
Specifying Requirements
•Requirements are specified in a
document called software requirements
specifications (SRS)
•SRS is used for communication among
customers, analysts, and designers
•Supports system-testing activities
•Controls the evolution of the system

3
Validation Objectives
•Certifies that the requirements document is
an acceptable description of the system to
be implemented
•Checks a requirements document for
–Completeness and consistency
–Conformance to standards
–Requirements conflicts
–Technical errors
–Ambiguous requirements

4
What Should Be Included in
SRS?
•Functional requirements
–They define what the system does. These
describe all the inputs and outputs to and
from the system as well as information
concerning how the inputs and outputs
interrelate.

5
What Should Be Included in
SRS?
•Non-functional requirements
–They define the attributes of a system as
it performs its job. They include system’s
required levels of efficiency, reliability,
security, maintainability, portability,
visibility, capacity, and standards
compliance
–Some of these are quality attributes of a
software product

6
What Should Not Be Included in
SRS?
•Project requirements (for example, staffing,
schedules, costs, milestones, activities,
phases, reporting procedures)
•Designs
•Product assurance plans (for example,
configuration management plans,
verification and validation plans, test plans,
quality assurance plans)

7
SRS Quality Attributes -1
•Correct
•Unambiguous
•Complete
•Verifiable
•Consistent

8
SRS Quality Attributes -2
•Understandable by customer
•Modifiable
•Traced
•Traceable
•Design independent

9
SRS Quality Attributes -3
•Annotated
•Concise
•Organized

10
Correct
•An SRS is correct if and only if every
requirement stated therein represents
something required of the system to be
built

11
Unambiguous
•An SRS is unambiguous if and only if
every requirement stated therein has
only one interpretation
•At a minimum all terms with multiple
meanings must appear in a glossary
•All natural languages invite ambiguity

12
Example of Ambiguity
•“Aircraft that are nonfriendly and have
an unknown mission or the potential to
enter restricted airspace within 5
minutes shall raise an alert”
•Combination of “and” and “or” make
this an ambiguous requirement

13
Complete -1
•An SRS is complete if it possesses the
following four qualities
–Everything that the software is supposed
to do is included in the SRS
–Definitions of the responses of the
software to all realizable classes of input
data in all realizable classes of situations
is included

14
Complete -2
–All pages are numbered; all figures and
tables are numbered, named, and
referenced; all terms and units of measure
are provided; and all referenced material
and sections are present
–No sections are marked
“To Be Determined” (TBD)

15
Verifiable
•An SRS is verifiable if and only if
every requirement stated therein is
verifiable. A requirement is verifiable
if and only if there exists some finite
cost effective process with which a
person or machine can check that the
actual as-built software product meets
the requirement

16
Consistent -1
•An SRS is consistent if and only if:
–No requirement stated therein is in
conflict with other preceding documents,
such as specification or a statement of
work
–No subset of individual requirements
stated therein conflict

17
Consistent -2
•Conflicts can be any of the following
–Conflicting behavior
–Conflicting terms
–Conflicting characteristics
–Temporal inconsistency

18
Understandable by Customers
•Primary readers of SRS in many cases
are customers or users, who tend to be
experts in an application area but are
not necessarily trained in computer
science

19
Modifiable
•An SRS is modifiable if its structure and
style are such that any necessary changes to
the requirements can be made easily,
completely, and consistently
•Existence of index, table of contents, cross-
referencing, and appropriate page-
numbering
•This attribute deals with format and style of
SRS

20
Traced
•An SRS is traced if the origin of its
requirements is clear. That means that
the SRS includes references to earlier
supportive documents

21
Traceable
•An SRS is traceable if it is written in a
manner that facilitates the referencing
of each individual requirement stated
therein

22
Techniques for Traceability
•Number every paragraph hierarchically and
never include more than one requirement in
any paragraph
•Assign every requirement a unique number
as we have discussed this earlier
•Use a convention for indicating a
requirement, e.g., use shallstatement

23
Traced and Traceability -1
•Backward-from-requirements
traceability implies that we know why
every requirement in the SRS exists
•Forward-from-requirements
traceability implies that we understand
which components of the software
satisfy each requirement

24
Traced and Traceability -2
•Backward-to-requirements traceability
implies that every software component
explicitly references those requirements that
it helps to satisfy
•Forward-to-requirements traceability
implies that all documents that preceded the
SRS can reference the SRS

25
Design Independent
•An SRS is design independent if it
does not imply a specific software
architecture or algorithm
•Sometimes, it is not possible to have
no design information due to
constraints imposed by the customers
or external factors

26
Annotated
•The purpose of annotating
requirements contained in an SRS is to
provide guidance to the development
organization
•Relative necessity
•Relative stability

27
Concise
•The SRS that is shorter is better, given
that it meets all characteristics

28
Organized
•An SRS is organized if requirements
contained therein are easy to locate.
This implies that requirements are
arranged so that requirements that are
related are co-related
•We had discussed organization of SRS
in the last lecture

29
Phrases to Look for in an SRS -1
•Always, Every, All, None, Never
•Certainly, Therefore, Clearly,
Obviously, Evidently
•Some, Sometimes, Often, Usually,
Ordinarily, Customarily, Most, Mostly
•Etc., And So Forth, And So On, Such
As

30
Phrases to Look for in an SRS -2
•Good, Fast, Cheap, Efficient, Small,
Stable
•Handled, Processed, Rejected,
Skipped, Eliminated
•If…Then…(but missing Else)

31
References
•‘Requirements Engineering: Processes and
Techniques’ by G. Kotonya and I.
Sommerville, John Wiley & Sons, 1998
•‘Software Requirements: Objects,
Functions, and States’ by A. Davis, PH,
1993
•‘Software Testing’ by R. Patton, Techmedia,
2000