Page 29 - Software and Systems Requirements Engineering in Practice
P. 29

2   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

                           tudies such as the CHAOS report [Johnson 2000] indicate that
                           about  half  of  the  factors  associated  with  project  or  product
                      Ssuccess  are  requirements  related.  Recently,  researchers  have
                      reported on studies showing that project success is directly tied to
                      requirements quality [Kamata et al. 2007]. With such overwhelming
                      evidence that requirements engineering is a cornerstone of software
                      systems engineering, one could ask, why is it still a relatively neglected
                      topic in university training? It is quite rare, for example, that a new
                      Computer  Science  (CS)  university  graduate  might  be  asked  to
                      participate in the development of a compiler or operating system, yet
                      nearly every graduate working in the industry will, sooner or later,
                      be asked to participate in creating the requirements specifications for
                      a product or service.


                 1.1   Why Has Requirements Engineering
                       Become So Important?
                      For  years,  many  products  were  successfully  created  without  the
                      participation  of  professionals  who  specialized  in  requirements
                      creation or management. So, why is requirements engineering (RE)
                      so  important  today?  The  answer  lies  in  the  changing  nature  of
                      industry and society in general. First, the pace of product development
                      has picked up drastically. Whereas just a few decades ago, product
                      improvements  would  be  a  slow  process,  today  customers  often
                      demand new versions of a product in less than one year. For example,
                      Siemens  estimates  that  approximately  20  years  ago,  55  percent
                      of sales were from products that were less than 5 years old. Today,
                      75 percent of sales are from products that were developed less than
                      5  years  ago  (Figure  1.1).  Second,  turnover  and  technology  change
                      have impacted the experience levels of professionals engaged in the
                      development of products. Just a few short years ago, engineers might
                      expect to spend their entire careers with a single company, whereas
                      today job change is more common. Finally, outsourcing and offshoring
                      have dramatically changed the product life cycle. Specifications must
                      now be created for implementation or manufacturing by organizations
                      with potentially limited or no domain expertise. Imagine, for example,
                      having  to  create  a  product  specification  for  a  washing  machine,
                      dishwasher, or luxury automobile to be built by staff who may have
                      never even seen one! Under such circumstances specifications must
                      be exact and detailed.
                         Software development is highly coupled to the domain; e.g., cell
                      phone software and avionics software tend to be designed, built,
                      and  managed  with  processes  that  are  heavily  domain  specific.
                      Furthermore,  industries  have  begun  to  use  software  as  product
                      differentiators. Product innovations can be more easily implemented
                      in  software  than  hardware  because  of  the  lower  engineering
   24   25   26   27   28   29   30   31   32   33   34