Page 47 - Software and Systems Requirements Engineering in Practice
P. 47
20 S o f t w a r e & S y s t e m s R e q u i r e m e n t s E n g i n e e r i n g : I n P r a c t i c e
“Without goals, and plans to reach them, you are like a ship that
has set sail with no destination.”
—Fitzhugh Dodson
2.1 Introduction
In order to successfully reach a destination, travelers needs to know
where they are going. For most of the software and system
development life cycle, the work products are well understood, and
professionals generally have a reasonable understanding of how to
create them. Requirements engineering is somewhat different, since
it is a relatively new field in which fewer have worked; sometimes
the objectives can be a bit obscure or hard to define. A lack of well-
defined work products may result in ill-defined RE artifacts and
processes, with repercussions felt in the downstream phases of the
life cycle. This chapter discusses an important aspect of requirements
engineering work; that is, fully and accurately defining RE work
products and their relationships. While the examples shown here are
specific to RE, many of the techniques could (and in some cases
should) be extended to the entire project life cycle.
The purpose of requirements engineering artifact modeling is to
• Define a reference model for RE that provides the core set of
RE artifacts (work products) and their interdependencies.
• Guide the establishment and maintenance of product- and
project-specific RE processes [Geisberger 2006].
Thus, early requirements engineering activities include
• Analyzing marketing information, stakeholder, and user
needs to derive the functional and nonfunctional requirements
to be met by the system’s design
• Understanding the effect of these requirements on the
business that creates the product
• Consolidating these requirements into consistent and
complete requirements and systems specifications as defined
in the Requirements Engineering Artifact Model (REAM).
RE artifacts are used to support product design and project
management decisions throughout the entire product life cycle. The
quality and appropriateness of these artifacts is a key factor for
successful system development. Developing consistent and
comprehensive specifications of the “desired” system is an important
objective of RE.