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

t
                                                   s
                                                 n
                                               m
                                                e
                                                        g
                                                         i
                                                       n

                                                     E
                                             e
                                  6
                                    :

                               e
                                 r
                                            i
                                             r
                                           u
                                        e
                                         q
                                                                        a
                                                                         t
                                                                       l

                                                                      P
                                                                             m
                                                                               s
                                                                            r
                                                                          f
                                                                           o
                                                                    r
                                                             r
                                                              i
                                                            e
                                                          n
                                                           e
                                                                  f
                                                                   o

                                                               n
                                                                g
                              t
                            a
                           h
                          C
                             p
                          C h a p t e r   6 :      R R e q u i r e m e n t s   E n g i n e e r i n g   f o r   P l a t f o r m s      191 191
                          •  Add  constraints  to  ensure  that  the  NFRs  are  feasible  to
                             implement.
                          •  Describe  NFRs  with  sufficient  information  so  that  the  test
                             procedures  (including  the  testing  environment)  can  be
                             specified to test the NFRs.
                          •  Define  NFRs  for  only  the  attribute  combinations  that  are
                             likely to be deployed for the product line.
                          •  Use  structured  templates  to  ensure  that  constraints  are
                             complete.
                          •  After the NFRs are reasonably stable, create draft marketing
                             literature for the platform (as though it is a standalone salable
                             product) and use as an aid when conducting requirements
                             reviews with stakeholders.
                 6.6  Summary
                      This chapter introduces an approach for
                          •  Developing NFRs for large software systems that might be
                             deployed  in  a  variety  of  computing  infrastructures  and
                             operate under a variety of application situations. We call the
                             lower-level  common  software  (e.g.,  operating  system,
                             middleware) a platform. We have described a detailed process
                             (called PND) and related artifacts that can be used to help
                             reconcile the stakeholders’ inputs.
                          •  The PND process complements the existing NFR approaches
                             by  integrating  the  NFR  development  with  other  software
                             engineering processes. It describes how testing and release
                             management could be integrated with the PND process.
                 6.7  Discussion Questions
                           1.  What are some of the differences between a software product
                             line and platforms?
                           2.  How can one determine which functions should be implemented
                             in application software and which in the platform?
                           3.  When  should  the  ISO  standards  be  used  within  the  PND
                             process to define a list of NFRs?
                 References
                      Bachmann, F., Bass, L., Klein, M., and Shelton, C., “Designing Software Architectures
                         to Achieve Quality Attribute Requirements,” IEEE Software Proceedings, Vol. 152,
                         No. 4, August 5, 2005, pp. 153–165.
   220   221   222   223   224   225   226   227   228   229   230