6251
6251
https://ebookultra.com/download/requirements-engineering-for-software-
and-systems-2nd-edition-phillip-a-laplante/
https://ebookultra.com/download/real-time-systems-design-and-
analysis-3rd-edition-phillip-a-laplante/
https://ebookultra.com/download/encyclopedia-of-information-systems-
and-technology-two-volume-set-1st-edition-phillip-a-laplante-editor/
https://ebookultra.com/download/flexible-software-design-systems-
development-for-changing-requirements-1st-edition-bruce-johnson/
https://ebookultra.com/download/managing-software-requirements-a-use-
case-approach-2nd-edition-dean-leffingwell/
Engineering safe and secure software systems 1st Edition
C. Warren Axelrod
https://ebookultra.com/download/engineering-safe-and-secure-software-
systems-1st-edition-c-warren-axelrod/
https://ebookultra.com/download/software-reliability-engineering-more-
reliable-software-faster-and-cheaper-2nd-edition-john-d-musa/
https://ebookultra.com/download/requirements-engineering-for-computer-
integrated-environments-in-construction-1st-edition-ghassan-aouad/
This book contains information obtained from authentic and highly regarded sources. Reasonable efforts
have been made to publish reliable data and information, but the author and publisher cannot assume
responsibility for the validity of all materials or the consequences of their use. The authors and publishers
have attempted to trace the copyright holders of all material reproduced in this publication and apologize to
copyright holders if permission to publish in this form has not been obtained. If any copyright material has
not been acknowledged please write and let us know so we may rectify in any future reprint.
Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced, transmit-
ted, or utilized in any form by any electronic, mechanical, or other means, now known or hereafter invented,
including photocopying, microfilming, and recording, or in any information storage or retrieval system,
without written permission from the publishers.
For permission to photocopy or use material electronically from this work, please access www.copyright.
com (http://www.copyright.com/) or contact the Copyright Clearance Center, Inc. (CCC), 222 Rosewood
Drive, Danvers, MA 01923, 978-750-8400. CCC is a not-for-profit organization that provides licenses and
registration for a variety of users. For organizations that have been granted a photocopy license by the CCC,
a separate system of payment has been arranged.
Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and are used
only for identification and explanation without intent to infringe.
Visit the Taylor & Francis Web site at
http://www.taylorandfrancis.com
Acknowledgments.......................................................................................... xv
Introduction.................................................................................................xvii
About the Author..........................................................................................xxi
1. Introduction to Requirements Engineering............................................1
Motivation....................................................................................................1
What Is Requirements Engineering?.............................................................2
You Probably Don’t Do Enough Requirements Engineering.........................3
What Are Requirements?..............................................................................4
Requirements Versus Goals.................................................................4
Requirements Level Classification.......................................................4
Requirements Specifications Types......................................................6
Functional Requirements...........................................................6
Nonfunctional Requirements.....................................................7
Domain Requirements.............................................................10
Domain Vocabulary Understanding..................................................11
Requirements Engineering Activities..........................................................11
Requirements Elicitation/Discovery..................................................11
Requirements Analysis and Reconciliation........................................12
Requirements Representation and Modeling.....................................12
Requirements Validation...................................................................12
Requirements Management...............................................................13
The Requirements Engineer........................................................................13
Requirements Engineering Paradigms........................................................13
Requirements Engineer as Software Systems Engineer......................14
Requirements Engineer as Subject Matter Expert..............................14
Requirements Engineer as Architect..................................................14
Requirements Engineer as Business Process Expert...........................14
Ignorance as Virtue............................................................................15
Role of the Customer?.................................................................................15
vii
viii Contents
Repertory Grids.................................................................................56
Scenarios............................................................................................57
Task Analysis.....................................................................................57
User Stories........................................................................................58
Viewpoints.........................................................................................59
Workshops.........................................................................................60
Elicitation Summary...................................................................................60
Which Combination of Requirements Elicitation Techniques
Should Be Used?................................................................................60
Prevalence of Requirements Elicitation Techniques...........................63
Elicitation Support Technologies................................................................63
Using Wikis for Requirements Elicitation.........................................63
Mobile Technologies..........................................................................65
Content Analysis...............................................................................65
References.................................................................................................. 66
4. Writing the Requirements Document...................................................69
Requirements Representation Approaches..................................................69
IEEE Standard 830-1998............................................................................71
IEEE Standard 830 Recommendations on Representing
Non-Functional Requirements..........................................................72
IEEE Standard 830 Recommendations on Representing
Functional Requirements...................................................................73
Operating System.....................................................................74
Command Validation...............................................................75
ISO/IEC Standard 25030..................................................................76
Use Cases....................................................................................................78
Behavioral Specifications............................................................................79
The Requirements Document.....................................................................81
Users of a Requirements Document...................................................82
Requirements Document Requirements............................................82
Preferred Writing Style.............................................................83
Text Structure..........................................................................83
Best Practices and Recommendations........................................................ 84
References...................................................................................................86
5. Requirements Risk Management..........................................................87
What Is Requirements Risk Management?.................................................87
Requirements Validation and Verification...................................................89
Techniques for Requirements V&V.................................................. 90
Goal-Based Requirements Analysis......................................... 90
Requirements Understanding...................................................91
x Contents
Theorem Proving.............................................................................128
Program Correctness..............................................................128
Hoare Logic............................................................................129
Model Checking..............................................................................133
Objections, Myths, and Limitations.........................................................134
Objections and Myths.....................................................................134
Limitations of Formal Methods.......................................................135
Final Advice..............................................................................................136
References.................................................................................................137
7. Requirements Specification and Agile Methodologies........................139
Introduction to Agile Methodologies........................................................139
Principles Behind the Agile Manifesto.............................................140
Extreme Programming (XP).....................................................................142
Scrum.......................................................................................................143
Requirements Engineering for Agile Methodologies.................................144
General Practices in Agile Methodologies........................................ 145
Agile Requirements Best Practices................................................... 145
Requirements Engineering in XP....................................................147
Requirements Engineering in Scrum...............................................147
Writing User Stories..................................................................................148
Agile Requirements Engineering...............................................................150
Challenges for Requirements Engineering in Agile Methodologies........... 152
Bibliography............................................................................................. 153
8. Tool Support for Requirements Engineering......................................155
Introduction............................................................................................. 155
Traceability Support.................................................................................156
Commercial Requirements Engineering Tools.......................................... 159
DOORS..........................................................................................160
Rational RequisitePro......................................................................160
Requirements and Traceability Management...................................160
CaliberRM......................................................................................160
QFD/Capture.................................................................................. 161
Open Source Requirements Engineering Tools......................................... 161
FreeMind......................................................................................... 161
Open Source Requirements Management Tool (OSRMT).......................163
FitNesse...........................................................................................166
Requirements Engineering Tool Best Practices.........................................167
References.................................................................................................168
9. Requirements Management.................................................................171
Introduction.............................................................................................171
Managing Divergent Agendas..........................................................171
xii Contents
Glossary.......................................................................................................229
Index............................................................................................................233
Acknowledgments
Dr. George Hacken of the New York Metropolitan Transportation Authority con-
tributed many ideas and inspiration used in Chapter 6, on formal methods.
Professor Larry Bernstein of Stevens Institute of Technology reviewed the first
draft of the manuscript and provided many suggestions for improvement.
Dr. Colin Neill and Dr. Raghu Sangwan of Penn State read portions of the text
and provided valuable feedback in many discussions.
Over the years, many students read drafts of portions of the text and provided
ideas, exercises, critical feedback, and examples. The author would like to particu-
larly mention Brad Bonkowski for contributing the prototype software require-
ments specification found in the appendix, and Jim Kelly, George Kniaz, Michelle
Reichart, Ann Richards, Ryan Oboril, Sam Okyne, and Julie Palmer. The author
would also like to thank the staff at Taylor & Francis—in particular John Wyzalek,
Acquisitions Editor, and Amy Rodriguez, Project Editor. The author also wishes to
thank his long-suffering wife, Nancy, and children Chris and Charlotte, for their
patience and support.
Of course, any errors of commission or omission are due to the author alone.
xv
Introduction
Audience
This book is intended for professional software engineers, systems engineers, and
senior and graduate students of software or systems engineering. Much of the mate-
rial is derived from the graduate level “Requirements Engineering” course taught at
Penn State’s Great Valley School of Graduate and Professional Studies, where the
author works. The typical student in that course has five years of work experience as
a software professional and an undergraduate degree in engineering, science, or busi-
ness. Typical readers of this book will have one of the following or similar job titles:
◾◾ Software engineer
◾◾ Systems engineer
◾◾ Sales engineer
xvii
xviii Introduction
◾◾ Systems analyst
◾◾ [XYZ] engineer (where “XYZ” is an adjective for most engineering disci-
plines, such as “electrical” or “mechanical”)
◾◾ Project manager
◾◾ Business analyst
◾◾ Technical architect
◾◾ Lead architect
Exemplar Systems
Before proceeding, three systems are presented that will be used for running exam-
ples throughout the book. These systems were selected because they involve appli-
cation domains with which most readers are bound to be familiar, and because
they cover a wide range of applications from embedded to organic in both indus-
trial and consumer implementations. Consider a domain, however, with which you
(and this author) are likely unfamiliar, say, mining of anthracite coal. Imagining
the obvious difficulties in trying to communicate about such a system highlights
the importance of domain understanding in requirements engineering. This topic
will be discussed at length in Chapter 1.
The first system to be introduced is an airline baggage handling system, prob-
ably similar to the system found in the bowels of every major airport and known to
“eat” your baggage. Check-in clerks and baggage handlers tag your bags at check-
in with a barcode ID tag. Then the baggage is placed on a conveyor belt where it
moves to a central exchange point, and is redirected to the appropriate auxiliary
conveyor for loading on an airplane-bound cart or a baggage carousel. Along the
way, the system may conduct some kind of image scan and processing to detect the
presence of unauthorized or dangerous contents (such as weapons or explosives). A
baggage handling system is an embedded, real-time system; that is, the software is
closely tied to the hardware, and deadline satisfaction is a key goal of the system.
The Denver International Airport tried to build a very sophisticated version of
such a system several years ago. The system used PCs, thousands of remote-controlled
carts, and a 21-mile-long track. Carts moved along the track, carrying luggage from
check-in counters to sorting areas and then straight to the flights waiting at airport
gates. After spending $230 million over 10 years, the project was cancelled.* Much
of the failure can be attributed to requirements engineering mistakes.
The second exemplar system is a point of sale system for one location of a large
pet store chain. This type of system would provide such capabilities as cashier
functions and inventory tracking, tax reporting, and end-of-year closeout. It
might handle self-checkout, coupon scanning, product returns, and more. This is
* de Neufville, R. (1994) The Baggage System at Denver: Prospects and Lessons, Journal of Air
Transport Management, 1(4) Dec., 229–236.
Introduction xix
You can use your imagination, consult the many resources that are available on
the Web, and have fun as you learn to “scope out” one or another of these systems.
NOT PROVEN
The early history of flying, like that of most sciences, is replete with
tragedies; in addition to these it contains one mystery concerning
Clement Ader, who was well known among European pioneers in the
development of the telephone, and first turned his attention to the
problems of mechanical flight in 1872. At the outset he favoured the
ornithopter principle, constructing a machine in the form of a bird
with a wing-spread of twenty-six feet; this, according to Ader’s
conception, was to fly through the efforts of the operator. The result
of such an attempt was past question and naturally the machine
never left the ground.
A pause of nineteen years ensued, and then in 1886 Ader turned
his mind to the development of the aeroplane, constructing a
machine of bat-like form with a wing-spread of about forty-six feet, a
weight of eleven hundred pounds, and a steam-power plant of
between twenty and thirty horse-power driving a four-bladed tractor
screw. On October 9th, 1890, the first trials of this machine were
made, and it was alleged to have flown a distance of one hundred
and sixty-four feet. Whatever truth there may be in the allegation,
the machine was wrecked through deficient equilibrium at the end of
the trial. Ader repeated the construction, and on October 14th, 1897,
tried out his third machine at the military establishment at Satory in
the presence of the French military authorities, on a circular track
specially prepared for the experiment. Ader and his friends alleged
that a flight of nearly a thousand feet was made; again the machine
was wrecked at the end of the trial, and there Ader’s practical work
may be said to have ended, since no more funds were forthcoming
for the subsidy of experiments.
There is the bald narrative, but it is worthy of some
amplification. If Ader actually did what he claimed, then the position
which the Wright Brothers hold as first to navigate the air in a
power-driven plane is nullified. Although at this time of writing it is
not a quarter of a century since Ader’s experiment in the presence of
witnesses competent to judge on his accomplishment, there is no
proof either way, and whether he was or was not the first man to fly
remains a mystery in the story of the conquest of the air.
The full story of Ader’s work reveals a persistence and
determination to solve the problem that faced him which was equal
to that of Lilienthal. He began by penetrating into the interior of
Algeria after having disguised himself as an Arab, and there he spent
some months in studying flight as practised by the vultures of the
district. Returning to France in 1886 he began to construct the ‘Eole,’
modelling it, not on the vulture, but in the shape of a bat. Like the
Lilienthal and Pilcher gliders this machine was fitted with wings
which could be folded; the first flight made, as already noted, on
October 9th, 1890, took place in the grounds of the chateau
d’Amainvilliers, near Bretz; two fellow-enthusiasts named Espinosa
and Vallier stated that a flight was actually made; no statement in
the history of aeronautics has been subject of so much question,
and the claim remains unproved.
It was in September of 1891 that Ader, by permission of the
Minister of War, moved the ‘Eole’ to the military establishment at
Satory for the purpose of further trial. By this time, whether he had
flown or not, his nineteen years of work in connection with the
problems attendant on mechanical flight had attracted so much
attention that henceforth his work was subject to the approval of the
military authorities, for already it was recognised that an efficient
flying machine would confer an inestimable advantage on the power
that possessed it in the event of war. At Satory the ‘Eole’ was alleged
to have made a flight of 109 yards, or, according to another account,
164 feet, as stated above, in the trial in which the machine wrecked
itself through colliding with some carts which had been placed near
the track—the root cause of this accident, however, was given as
deficient equilibrium.
Whatever the sceptics may say, there is reason for belief in the
accomplishment of actual flight by Ader with his first machine in the
fact that, after the inevitable official delay of some months, the
French War Ministry granted funds for further experiment. Ader
named his second machine, which he began to build in May, 1892,
the ‘Avion,’ and—an honour which he well deserves—that name
remains in French aeronautics as descriptive of the power-driven
aeroplane up to this day.
This second machine, however, was not a success, and it was
not until 1897 that the second ‘Avion,’ which was the third power-
driven aeroplane of Ader’s construction, was ready for trial. This was
fitted with two steam motors of twenty horse-power each, driving
two four-bladed propellers; the wings warped automatically: that is
to say, if it were necessary to raise the trailing edge of one wing on
the turn, the trailing edge of the opposite wing was also lowered by
the same movement; an undercarriage was also fitted, the machine
running on three small wheels, and levers controlled by the feet of
the aviator actuated the movement of the tail planes.
On October the 12th, 1897, the first trials of this ‘Avion’ were
made in the presence of General Mensier, who admitted that the
machine made several hops above the ground, but did not consider
the performance as one of actual flight. The result was so
encouraging, in spite of the partial failure, that, two days later,
General Mensier, accompanied by General Grillon, a certain
Lieutenant Binet, and two civilians named respectively Sarrau and
Leaute, attended for the purpose of giving the machine an official
trial, over which the great controversy regarding Ader’s success or
otherwise may be said to have arisen.
Course of the Avion’s Flight, October 14, 1897.
Langley was an old man when he began the study of aeronautics, or,
as he himself might have expressed it, the study of aerodromics,
since he persisted in calling the series of machines he built
‘Aerodromes,’ a word now used only to denote areas devoted to use
as landing spaces for flying machines; the Wright Brothers, on the
other hand, had the great gift of youth to aid them in their work.
Even so it was a great race between Langley, aided by Charles
Manly, and Wilbur and Orville Wright, and only the persistent ill-luck
which dogged Langley from the start to the finish of his experiments
gave victory to his rivals. It has been proved conclusively in these
later years of accomplished flight that the machine which Langley
launched on the Potomac River in October of 1903 was fully capable
of sustained flight, and only the accidents incurred in launching
prevented its pilot from being the first man to navigate the air
successfully in a power-driven machine.
The best account of Langley’s work is that diffused throughout a
weighty tome issued by the Smithsonian Institution, entitled the
Langley Memoir on Mechanical Flight, of which about one-third was
written by Langley himself, the remainder being compiled by Charles
M. Manly, the engineer responsible for the construction of the first
radial aero engine, and chief assistant to Langley in his experiments.
To give a twentieth of the contents of this volume in the present
short account of the development of mechanical flight would far
exceed the amount of space that can be devoted even to so eminent
a man in aeronautics as S. P. Langley, who, apart from his
achievement in the construction of a power-driven aeroplane really
capable of flight, was a scientist of no mean order, and who brought
to the study of aeronautics the skill of the trained investigator allied
to the inventive resource of the genius.
That genius exemplified the antique saw regarding the infinite
capacity for taking pains, for the Langley Memoir shows that as early
as 1891 Langley had completed a set of experiments, lasting
through years, which proved it possible to construct machines giving
such a velocity to inclined surfaces that bodies indefinitely heavier
than air could be sustained upon it and propelled through it at high
speed. For full account (very full) of these experiments, and of a
later series leading up to the construction of a series of ‘model
aerodromes’ capable of flight under power, it is necessary to turn to
the bulky memoir of Smithsonian origin.
Quarter-size model, Langley Aerodrome, in flight, 8th August, 1903.
Langley Memoir on Mechanical Flight, Smithsonian Institution, Washington.
Report
Experiments with working models which were concluded
August 8 last having proved the principles and calculations on
which the design of the Langley aerodrome was based to be
correct, the next step was to apply these principles to the
construction of a machine of sufficient size and power to
permit the carrying of a man, who could control the motive
power and guide its flight, thus pointing the way to attaining
the final goal of producing a machine capable of such
extensive and precise aerial flight, under normal atmospheric
conditions, as to prove of military or commercial utility.
Mr C. M. Manly, working under Professor Langley, had, by
the summer of 1903, succeeded in completing an engine-
driven machine which under favourable atmospheric
conditions was expected to carry a man for any time up to
half an hour, and to be capable of having its flight directed
and controlled by him.
The supporting surface of the wings was ample, and
experiment showed the engine capable of supplying more
than the necessary motive power.
Owing to the necessity of lightness, the weight of the
various elements had to be kept at a minimum, and the factor
of safety in construction was therefore exceedingly small, so
that the machine as a whole was delicate and frail and
incapable of sustaining any unusual strain. This defect was to
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade
Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.
ebookultra.com