Page 304 -
P. 304

CHAPTER 11  ANALYSIS CONCEPTS AND PRINCIPLES                       275

                                •  Who is behind the request for this work?
                                •  Who will use the solution?
                                •  What will be the economic benefit of a successful solution?
                                •  Is there another source for the solution that you need?
                              These questions help to identify all stakeholders who will have interest in the soft-
                              ware to be built. In addition, the questions identify the measurable benefit of a suc-
                              cessful implementation and possible alternatives to custom software development.
                                The next set of questions enables the analyst to gain a better understanding of the
                              problem and the customer to voice his or her perceptions about a solution:

                                •  How would you characterize "good" output that would be generated by a
                                   successful solution?
                “Plain question and
                plain answer make  •  What problem(s) will this solution address?
                the shortest road out  •  Can you show me (or describe) the environment in which the solution will be
                of most            used?
                perplexities.”
                Mark Twain      •  Will special performance issues or constraints affect the way the solution is
                                   approached?
                                The final set of questions focuses on the effectiveness of the meeting. Gause and
                              Weinberg [GAU89] call these meta-questions and propose the following (abbreviated)
                              list:
                                •  Are you the right person to answer these questions? Are your answers "offi-
                                   cial"?
               If a system or product
               will serve many users,  •  Are my questions relevant to the problem that you have?
               be absolutely certain  •  Am I asking too many questions?
               that requirements are
               elicited from a  •  Can anyone else provide additional information?
               representative   •  Should I be asking you anything else?
               cross-section of users.
               If only one user  These questions (and others) will help to "break the ice" and initiate the communi-
               defines all     cation that is essential to successful analysis. But a question and answer meeting for-
               requirements,  mat is not an approach that has been overwhelmingly successful. In fact, the Q&A
               acceptance risk is high.
                              session should be used for the first encounter only and then replaced by a meeting
                              format that combines elements of problem solving, negotiation, and specification.
                              An approach to meetings of this type is presented in the next section.

                              11.2.2  Facilitated Application Specification Techniques
                              Too often, customers and software engineers have an unconscious "us and them"
                              mind-set. Rather than working as a team to identify and refine requirements, each
                              constituency defines its own "territory" and communicates through a series of memos,
   299   300   301   302   303   304   305   306   307   308   309