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.
   42   43   44   45   46   47   48   49   50   51   52