<<

featurerequirements Engineering as a Success Factor in

Hubert F. Hofmann, General Motors Franz Lehner, University of Regensburg

eficient requirements are the single biggest cause of software proj- ect failure. From studying several hundred organizations, Capers Jones discovered that RE is deficient in more than 75 percent of D all enterprises.1 In other words, getting requirements right might be the single most important and difficult part of a software . Despite its importance, we know surprisingly little about the actual process of specifying software. “The RE Process” sidebar provides a basic description.

Most RE research is conceptual and concen- and quality assurance personnel. Often it Based on their trates on methods or techniques, primarily includes users or their representatives. In field study of supporting a single activity. Moreover, the the case of commercial off-the-shelf (COTS) 15 requirements rare field studies we actually have do not es- software, marketers such as sales represen- tablish a link between RE practices and per- tatives and account managers tend to sub- engineering formance. We therefore conducted this study stitute for users and customers. teams, the to identify the RE practices that clearly con- authors identify tribute to software project success. Field study the RE practices Seven field studies have reported on RE Stakeholders and teams in practice.3–9 Unfortunately, these rare that clearly Stakeholders are individuals and organiza- studies have not established a clear link to contribute to tions that are actively involved in a software performance and tend to focus on a narrow project success, project or whose interests the project affects. set of variables. Our study provides a more particularly Stakeholders of any computer can in- integrated view of RE by investigating team clude customers, users, project managers, an- knowledge, allocated resources, and de- in terms of alysts, developers, senior management, and ployed RE processes (see Figure 1) and their team knowledge, quality assurance staff. Table 1 illustrates the contribution to project success. In addition, resource wide range of expertise and motivations that we incorporate the observations of previous allocation, stakeholders typically exhibit.2 field studies. A typical software project team consists Fifteen RE teams, including six COTS and process. of a project manager, analysts, developers, and nine customized application develop-

58 IEEE SOFTWARE July/August 2001 0740-7459/01/$10.00 © 2001 IEEE The RE Process

Requirements engineering denotes both the process of spec- tent. Traditionally these methods have separated the data, ifying requirements by studying stakeholder needs and the functional, and behavioral aspects of requirements and speci- process of systematically analyzing and refining those specifi- fied software by creating one or more distinct models. Proto- cations.1 A specification, the primary result of RE, is a concise types, for instance, attempt to create an operational model that statement of the requirements that the software must satisfy— stakeholders can directly experience. that is, of the conditions or capabilities that a user must Paul Ward and Stephen Mellor, followed by many others, achieve an objective or that a system possesses to satisfy a proposed extensions to basic models. Most of these extensions contract or standard.2 Ideally, a specification enables stake- focus on modeling real-time . Developments in OO holders to quickly learn about the software and developers to programming and design have introduced a more integrated understand exactly what the stakeholders want. approach to modeling requirements. In addition, advanced Despite heterogeneous terminology throughout the litera- modeling methods attempt to establish a closer link between ture, RE must include four separate but related activities: elic- models and “the customer’s voice,” stakeholders’ viewpoints, itation, modeling, validation, and verification. In practice, and business goals. they will most likely vary in timing and intensity for different projects. Validation and verification Typically, we first elicit requirements from whatever sources The purpose of validating requirements is to certify that are available (experts, repositories, or the current software) they meet the stakeholders’ intentions: Am I specifying the right and then model them to specify a solution. Eliciting and mod- software? In other words, validation examines a work product eling requirements are interrelated. Modeling describes a per- (for example, a specification) to determine conformity with ceived solution in the context of an application domain using stakeholder needs. Verification, on the other hand, determines informal, semiformal, or formal notations. The gradual nor- whether a work product conforms to the allocated require- malization of such models in terms of the requirements leads ments: Am I specifying the software correctly? That is, it checks to a satisfactory candidate specification, which then must be a specification for internal consistency through mathematical validated and verified. This gives stakeholders feedback on the proofs or inspection techniques. interpretation of their requirements so they can correct misun- An important point in validating and verifying requirements derstandings as early as possible. is prioritizing them. By addressing high-priority requirements before considering low-priority ones, you can significantly re- Elicitation duce project costs and duration. Moreover, throughout RE you Elicitation is often treated as a simple matter of interviewing should revisit the priorities assigned, for example, during elici- users or analyzing documents, but several other elicitation tation to ensure that they continue to adequately reflect the methods are available. Some emphasize group sessions in the stakeholders’ needs. This highlights the recurrent nature of re- form of focus groups or workshops; others are employed pri- quirements validation and verification. marily to elicit requirements for specific types of systems. For Methods for validating and verifying requirements are rela- example, developers frequently use repertory grids, sorts, and tively scarce. Peer reviews, inspections, walk-throughs, and laddering methods in specifying knowledge-based systems. scenarios figure most prominently. Moreover, the recording of Elicitation also includes those activities that explore how decisions and their rationales is quite useful. software can meet organizational goals, what alternatives might exist, and how they affect various stakeholders. References Modeling 1. H.F. Hofmann, Requirements Engineering: A Situated Discovery Process, Gabler, Wiesbaden, Germany, 2000. Experts have proposed many modeling methods and speci- 2. IEEE Guide to Specification, IEEE Std. 830-1998, fication languages to make requirements precise and consis- IEEE Press, Piscataway, N.J., 1998.

Table 1 What Stakeholders Want and What They Offer Stakeholder Motivation Expertise areas Customer Introduce change with maximum benefit Business and information system strategies, industry trends User Introduce change with minimum disruption , operating procedures Project manager Successfully complete the project with the given resources , and delivery process Analyst Specify requirements on time and within budget RE methods and tools Developer Produce technically excellent system, use latest technologies Latest technologies, design methods, programming environ- ments and languages Quality assurance Ensure compliance to process and product standards Software process, methods, and standards

July/August 2001 IEEE SOFTWARE 59 High-technology leaders

accuracy of statements (such as “the project has a well-documented process for specify- Knowledge Resources Process ing requirements”) by assigning a value from 1 (very inaccurate) to 7 (very accurate). The Application domain Effort and duration Defined process Likert scale let us calculate a total numerical Information technology Team size Cycles value from the responses. Requirements Cohesive team (“activity patterns”) engineering process Activities Our research approach We decided to study knowledge because, as Bill Curtis, Herb Krasner, and Neil Iscoe Critical business applications have emphasized, deep application-specific knowledge is required to successfully build most large, complex systems.4 We investi- Figure 1. We studied three factors that contribute to project gated team knowledge with regard to appli- success: team knowledge, allocated resources, and exhibited cation domain, the technology needed to im- RE processes. plement the proposed solution, and the RE process used. To gather the participants’ per- ceptions of team knowledge, we employed a 7-point Likert scale for each focus area. Allocated resources included team size, Application domain 5.4 expended effort in person-months, and du- ration (in months) of RE. With regard to Infomation technology 5.5 team size, the project managers provided data on full- and part-time members of the RE and project teams. We also gathered per- RE process (in use) 5.4 ceptions about the teams’ coordination and interaction capabilities during RE. In the 1 234567 questionnaire, we used the construct of “co- Likert scale hesiveness,” measured on the Likert scale, to address this aspect of RE. During follow-up Figure 2. Research results regarding knowledge of application interviews, we further investigated commu- domain, information technology, and the RE process being used. nication breakdowns, quality of interaction, and conflict resolution. We gathered the stakeholders’ perceptions ment projects in nine software companies of the defined RE process by considering the and development organizations in the tele- extent of standardization (for example, is it communications and banking industries, well-documented? is it tailored from an orga- participated in our study. There were 76 nizational standard?) and the configuration stakeholders: 15 project managers, 34 team of work products and their changes, as well as members, and 27 other stakeholders such as by obtaining independent reviews of RE ac- customers, management, and quality assur- tivities and deliverables. We measured these ance personnel. The development projects constructs on the Likert scale. we targeted were recently released critical To enable the participants to characterize business applications. On average, the par- the practiced RE process, we gave them a list ticipating projects finished in 16.5 months of typical elicitation, modeling, verification, with an expended effort of approximately and validation activities, some of which we 120 person-months. identified by surveying the RE literature. We Through questionnaires and interviews, also applied the construct of RE cycles to we collected data directly from each project’s distinguish activity patterns over time. An stakeholders to avoid an eventual bias and RE cycle is a set of activities that contain at to obtain a more complete understanding of least one each of elicitation, modeling, vali- the RE process. We assessed the participants’ dation, and verification activities. Generally, confidence in their responses by using a 1–7 a specific deliverable (for example, a proto- Likert scale in the questionnaires. That is, in- type or ) also characterizes a dividuals rated their own perceived degree of completed RE cycle.

60 IEEE SOFTWARE July/August 2001 We gathered stakeholders’ perceptions of that marketing knew what was best for the RE performance in terms of process control, customer. This produces, in some instances, the quality of RE service, and the quality of “unrealistic” requirements due to the fact Some teams RE products. Process control addresses the that the marketing staff’s understanding of- team’s capability to execute according to plan; ten differs from the application-specific in- worked with thus, we gathered data to compare planned formation about the software use that is marketing and actual cost, duration, and effort. We eval- needed for design.4 personnel uated the quality of RE service in terms of the On half of the participating projects, sen- stakeholders’ satisfaction with the RE process ior management, project managers, and sys- rather than and the perceived “organizational fit” of the tem analysts defined at least the initial re- the actual proposed solution. The stakeholders rated the quirements. Only a few software teams quality of RE products using these quality at- involved technically knowledgeable stake- customer, tributes: correct, unambiguous, complete, holders such as software developers, quality assuming that consistent, prioritized, verifiable, modifiable, assurance, test, and configuration manage- marketing knew and traceable.10 Requirements coverage, the ment personnel early in the project. In the functional and nonfunctional requirements rare case that they were involved in RE, what was best addressed by a project’s RE products, also in- they were selected because they had greater for the fluences quality. We assessed functional re- application domain knowledge than their quirements from the perspective of functions, colleagues. customer. data, and behavior, and nonfunctional re- Involving stakeholders early also resulted quirements by gathering perceived coverage of in an increased understanding of the RE product, process, and external requirements.11 process being used. On the other hand, a lack of training and “weak project manage- Findings ment” led to teams that were less familiar We focused on three factors that contribute with the RE process. For instance, some or- to project success—knowledge, resources, and ganizations assign project managers based process—and analyzed their contribution to a on their availability rather than their capa- project’s success (performance). bilities.5 In those cases, both project man- agers and team members must learn the ba- Knowledge sics as they work. Participants in this study Group research emphasizes the impact of confirmed that this can result in severe experience and expertise on team effective- budget overruns, frequent schedule adjust- ness. For instance, in the study by Curtis, ments, and canceled projects.3 Krasner, and Iscoe, project managers and di- vision vice presidents consistently commented Resources on how differences in individual talents and Traditionally, RE receives a relatively skills affected project performance.4 The au- small percentage of project resources thors identified the thin spread of application throughout the software life cycle. For ex- domain knowledge as one of the most salient ample, in 1981 found that 6 problems in software projects. percent of a project’s cost and 9 to 12 per- In this study, stakeholders perceived the cent of project duration are allocated to team’s domain knowledge as relatively good. specifying requirements.12 Over the last 20 It reached 5.4 on a 7-point Likert scale, years, the resources allocated to RE activities where 7 indicates an RE team with a high de- have increased. In this study, perhaps due to gree of knowledge (see Figure 2). Several the projects’ high-tech leaders, the resource teams repeatedly referred to their “good use allocation to RE was significantly higher. of domain experts.” (The quotes here and Project teams expended on average 15.7 per- throughout this article indicate a direct quote cent of project effort on RE activities. The from a participant in our study.) They also average amount of RE time equaled 38.6 included “end users and customers from the percent of total project duration. very beginning” and “tried to get as much Patricia Guinan gives an average RE feedback as possible from team members team size of 5.6 members in the 66 projects when defining requirements.” Some teams, she studied.7 For the 15 projects in our however, worked with marketing personnel study, we calculated an average RE team rather than the actual customer, assuming headcount of 6.2 (see Figure 3). The varied

July/August 2001 IEEE SOFTWARE 61 18 16 14 12 10 sets” such as methods, templates, and tools 8 to better fit a specific project’s characteris- 6 4 tics. Although several RE teams executed a 2 documented RE process, with quality assur- Number of team members 0 ance providing insight into the compliance Full-time (avg.) Part-time (avg.) Total (avg.) of a team’s actions to their plan, most stake- Project team size (avg.) 10.9 5.7 16.6 holders perceived RE as an ad hoc process. RE team size (avg.)3.4 2.8 6.2 Most projects specify software in a dy- namic environment and therefore struggle Figure 3. Comparing the resources spent on RE by team size with the classic problem of rapidly fluctuat- 4 and part-time versus full-time allocation of people. ing requirements. This requires “flexible re- quirements” that “can be clarified and changed as the product progresses.” In other uses of full- and part-time resources during words, the RE process has to account for RE were interesting: Some projects allo- stakeholders’ learning curves and for re- cated only dedicated resources (“product quirements negotiation throughout the de- teams”) to RE, whereas others relied on RE velopment project. Early on, some projects “experts” whom various projects “shared.” lamented the lack of “a detailed enough sys- We also investigated participants’ percep- tem architecture to adequately specify re- tions of team cohesiveness. The teams rated quirements,” while others “froze the specifi- themselves as relatively cohesive—5.5 on a 7- cation early” only to face customers that point Likert scale. Overall, stakeholders gave “kept changing requirements late in the cy- higher scores to RE teams that frequently cle.” The average ratings of configured RE communicated with customers and other work products (for example, prototypes and teams involved in the development project. In object-oriented models) and configured re- other words, such teams executed more quirement changes reflect the stakeholders’ “boundary management activities.”7 While struggle to balance the “drivers for change some teams leveraged “a lot of confidence and the desire for stability.” The most suc- and trust between customers and develop- cessful projects, however, recognized elusive ers,” others struggled to achieve “buy-in requirements early in the process (with such from all stakeholders” or to secure “the nec- statements as “the specification is a living essary participation of other teams to stay on document”). They managed requirements track and complete the specification.” change explicitly rather than “freezing the Several RE teams used specification tem- whole specification.” plates to facilitate communication among Most of the RE teams performed multi- stakeholders. They also included “compre- ple RE cycles. This is consistent with Pra- hensive examples” to improve specification dromas Chatzoglou’s research finding that readability. The most common tool used more than half of the 107 projects he stud- during RE was an internal Web site, accessi- ied exhibited three or more RE cycles.3 In ble to all stakeholders, where the project our study, RE teams focused significantly team posted and maintained the require- more on eliciting and modeling require- ments. Some RE teams experimented with ments than on validating and verifying them commercially available RE tools. In all but (6.4 and 6.2 percent compared to 3.1 per- one case, these tools interfered with rather cent of project effort). than supported RE activities. We believe that All teams performed some level of docu- either a lack of well-defined RE processes or ment analysis. Some, for instance, analyzed the RE team members’ lack of training in the business plans and market studies while oth- selected tools caused this undesired effect. ers derived requirements from contracts and requests for proposals. Most of the projects Process also used unstructured interviews, brain- Only some projects defined their RE storming, and focus groups. Only two proj- process explicitly or tailored an organiza- ects held workshops to elicit requirements. tional (“standard”) RE process (see Figure Most RE teams did not use “textbook” 4) to their needs. A tailored RE process uses modeling methods,8 but they did adopt or adapts a collection of RE process “as- some of those methods’ principles, such as

62 IEEE SOFTWARE July/August 2001 Well-documented 4.6 RE process abstraction and partitioning. The majority Tailored RE process 4.2 of projects developed prototypes ranging from simple mock-ups to operational proto- QA audits of RE 5.0 types. A third of the RE teams developed products and process OO models. Most projects verified and validated re- Team executes process 4.9 quirements with multiple stakeholders. More than half the projects performed peer reviews Configured RE work 5.3 or walk-throughs to verify or validate re- products quirements. Repeatedly, participants empha- sized the importance of including customers Configured 4.6 requirements changes and users in peer reviews. Moreover, several teams created scenarios to validate require- 1 234567 ments. Only five of the 15 RE teams explicitly Likert scale tracked requirements throughout their proj- ects’ life cycles. Figure 4. Evaluation of the participating teams’ RE processes, Performance based on a 7-point Likert scale. We considered three dimensions of per- formance: quality of RE service, quality of The stakeholders also scored specifica- RE products, and process control. Using ex- tion quality. Overall, they were most satis- isting preference measures,5 we calculated fied with the specification’s consistency and the product of weighted performance di- the ability to modify it as necessary, but they mensions to obtain a total performance in- emphasized that the lack of traceability hurt dicator (TPI). That is, quality of RE service their project. Prioritization of requirements, is most important (with a weight of 1.438), however, caused the most difficulty for RE followed by the quality of RE products teams. The average stakeholder rating for (1.126) and process control (0.438). this quality attribute was significantly lower Stakeholders rated the quality of service than any other attribute. RE teams strug- at 76 percent on average. Several stakehold- gled with adequately involving customers to ers mentioned their early and frequent in- identify high-priority requirements, man- volvement in RE activities and the “good in- agement’s inattention to resolving “un- teraction between all groups” as important knowns,” and nonfunctional requirements aspects that influenced their rating. They that were not managed “in the same process were more satisfied with the fit of the rec- or as tightly.” Several teams also mentioned ommended solution than with RE, however. the inability to consistently execute RE ac- Frequently, this was due to difficulties in cording to stakeholders’ priorities rather project planning (for example, “planning than their own interpretation of “what’s im- for high-priority items slipped” or “main- portant,” and some reported difficulties in taining requirements in later development keeping everybody on the project informed phases not planned”). of changing priorities. The quality of RE products considers both Process control, the third dimension of requirements coverage and specification RE performance, was rated at 59 percent on quality. Stakeholders gave it an average rat- average. The less variance between actual ing of 66 percent; the customers’ perception and planned cost, duration, and effort, the of requirements coverage was relatively low, better the process control of a particular particularly with regard to nonfunctional re- project. On average, project teams contained quirements. Management seemed satisfied cost overruns within less than 2 percent and with data requirements, whereas the team effort overruns within less than 6 percent. In and project managers focused on functions. addition, their cost and effort performance Stakeholders emphasized, however, that con- was predictable, with a standard deviation centrating on functions and data resulted in a of less than 25 percent. Project duration, “lack of total system requirements attention” however, showed an average overrun of 20 and in “incomplete performance, capacity, percent, with a standard deviation of 47 per- and external interface requirements.” cent. Managers frequently focused on cost to

July/August 2001 IEEE SOFTWARE 63 100 90 80 70 60 throughout the project’s duration, while 50 40 lower-rated RE teams (TPI < 50 percent) 30 were primarily involved during the “front 20 end” of the project. For both types of proj- Performance (percent) 10 ects, about four full-time team members 0 Quality of participated in the RE team. On the most Quality of Process TPI RE service RE products control successful projects, however, several part- Projects (TPI > 75%) 95% 68% 85% 83% time members also supported the team. PT/model-based process 83% 76% 71% 78% For projects with a higher TPI, stakehold- PT-based process 71% 71% 62% 70% ers reported that RE teams were more Model-based process 64% 69% 43% 63% knowledgeable about the application do- Projects (TPI < 50%) 50% 43% 16% 42% main, IT, and the RE process. Whereas Total (avg.) 76% 66% 59% 70% Mitchell Lubars suggests that a “better at- mosphere” contributes to project success,8 Guinan concludes that an environment Figure 5. Comparing the deployed processes and their total where team members share positive and performance indicator (TPI), the quality of RE service, the friendly feelings is unrelated to team per- quality of RE products, and process control. formance.7 In our study, we found low cohe- siveness only on projects with a TPI of less than 50 percent. This suggests that cohesive- ness is a “trouble” indicator rather than a Application Specification performance predictor. In other words, an in- domain crease in cohesiveness reduces the risk of fail- Develop Models Peer ure but does not guarantee success. System Source basic and reviews Successful teams performed on average artifacts material advanced models three iterations of the RE process (see Figure Domain 6). They identified major stakeholders and Domain knowledge Stakeholder Compile domain boundaries, examined system arti- analysis feedback specification facts and source material from current and previous systems, and frequently obtained Develop prototypes stakeholder feedback and expert guidance on and Prototypes Scenarios how to proceed. This resulted in much more mock-ups Mock-ups Walk-throughs explicit “win conditions” for stakeholders. The successful RE teams used advanced modeling methods such as OO models, Figure 6. A successful RE process. knowledge models, and quality function de- ployment matrices that translated “the control the RE process, leading to undesired voice of the customer” into quantitative changes of expended effort and predicted technical requirements. However, they did duration. Moreover, some project managers not abandon basic models (for example, the perceived “pressure” to underestimate effort entity-relationship model or state transition and duration to meet cost targets determined diagrams). They simply tried “to create a outside their control. more complete model of the system.” More- The “top” performers in this study (TPI over, the teams developed (basic and ad- > 75 percent) dynamically balance knowl- vanced) models and prototypes together to edge, resources, and process. For example, clarify “known” requirements and to guide as Figure 5 shows, RE teams that used ei- the discovery of new ones. A combination ther prototypes or models exclusively faired of models and prototypes helped the stake- better on average than projects with a TPI holders, especially customers and users, en- below 50 percent. A combined prototyping vision the proposed solution. and model-based (PT/M) process resulted in During peer reviews, the RE team, tech- higher ratings in all performance dimen- nical and domain experts, and customers sions. The most successful projects also ex- and users examine the models. The resulting pended twice the effort to specify require- feedback enables the RE team to create ac- ments. They performed RE activities ceptable models that accurately specify the

64 IEEE SOFTWARE July/August 2001 Table 2 Best Practices Focus area Best practice Cost of introduction Cost of application Key benefit Knowledge Involve customers and users Low Moderate Better understanding of “real needs” throughout RE Knowledge Identify and consult all likely sources Low to moderate Moderate Improved requirements coverage of requirements Knowledge Assign skilled project managers and Moderate to high Moderate More predictable performance team members to RE activities Resources Allocate 15 to 30 percent of total Low Moderate to high Maintain high-quality specification project effort to RE activities throughout the project Resources Provide specification templates and Low to moderate Low Improved quality of specification examples Resources Maintain good relationships among Low Low Better satisfy customer needs stakeholders Process Prioritize requirements Low Low to moderate Focus attention on the most important customer needs Process Develop complementary models Low to moderate Moderate Eliminate specification ambiguities and together with prototypes inconsistencies Process Maintain a Moderate Moderate Explicit link between requirements and work products Process Use peer reviews, scenarios, and Low Moderate More accurate specification and higher walk-throughs to validate and verify customer satisfaction requirements requirements. Scenarios and walk-throughs sources. They examine, for example, system further guide the discovery of requirements. artifacts and source material from current The breakdowns experienced while using and previous systems. prototypes and mock-ups lead to an evolu- As other research points out,4 some indi- tionary improvement of the specification. viduals perform “10 times better than oth- ers.” Thus, managers of successful RE teams Best practices should Successful RE teams have in-depth knowl- edge of the application domain, IT, and the carefully select team members skilled in RE process. In other words, successful proj- the application domain, IT, and the RE ects have the “right combination” of knowl- process; edge, resources, and process. Table 2 sum- always assign experienced, capable marizes the best practices exhibited by the project managers to RE; and most successful RE teams. consult domain experts and stakehold- Stakeholder feedback plays a decisive role ers early on to augment and validate the from the beginning to the end of successful RE team’s knowledge base. projects. The most successful teams always in- volve customers and users in the RE process Successful projects allocate a significantly and maintain a good relationship with stake- higher amount of resources to RE (28 per- holders. They have an ongoing collaboration cent) than the average project in this or pre- with stakeholders to make sure that require- vious field studies, and they expend these re- ments are interpreted properly, to deal with sources according to a well-defined process. fluctuating requirements, and to avoid com- Successful teams also maintain a balance be- munication breakdowns. Research supports tween RE activities. That is, they allocate on this best practice: according to one study, user average 11 percent of project effort to elici- participation is one of the most important fac- tation, 10 percent to modeling, and 7 per- tors contributing to RE success.5 cent to validation and verification. To stream- Successful RE teams identify the bound- line RE activities, successful teams frequently aries of the application domain and of the leverage specification templates and examples major stakeholders. To validate their under- from previous projects. standing of the application domain, they Requirements prioritized by stakeholders identify and consult all likely requirements drive successful RE teams. This allows the

July/August 2001 IEEE SOFTWARE 65 Acknowledgments RE team to decide which requirements to We thank the participating companies and the out- investigate when and to what degree of de- standing executives managing their software develop- tail. To specify prioritized requirements, the ment and procurement processes for making this study possible. We also thank Steve McConnell and RE team develops various models together the reviewers, especially Karl E. Wiegers, for their with prototypes. Moreover, they maintain a helpful comments and suggestions. Further thanks go requirements traceability matrix to track a to Theresa Hofmann and John Overmars. from its origin through its spec- ification to its implementation. This lets the team show how its work products con- tribute to satisfying the requirements. In ad- References dition, successful teams repeatedly validate 1. C. Jones, Applied Software Measurement: Assuring Pro- and verify requirements with multiple stake- ductivity and Quality, McGraw-Hill, New York, 1996. holders. They use peer reviews, scenarios, 2. L.A. Macaulay, Requirements Engineering, Springer, London, 1996. and walk-throughs to improve the specifica- 3. P.D. Chatzoglou, “Factors Affecting Completion of the tion throughout the software’s life cycle. Requirements Capture Stage of Projects with Different Characteristics,” Information and Software Technology, vol. 39, no. 9, Sept. 1997, pp. 627–640. 4. B. Curtis, H. Krasner, and N. Iscoe, “A Field Study of the Process for Large Systems,” eams often struggle with fluctuat- Comm. ACM, vol. 31, no. 11, Nov. 1988, pp. 1268– 1287. ing requirements, communication 5. K.E. Emam and N.H. Madhavji, “A Field Study of Re- breakdowns, and difficulties in pri- quirements Engineering Practices in Information Sys- T tems Development,” Second Int’l Symp. Requirements oritizing requirements. RE goes through re- Eng., IEEE CS Press, Los Alamitos, Calif., 1995, pp. current cycles of exploring the perceived 68–80. problem, proposing improved specifica- 6. N.F. Doherty and M. King, “The Consideration of Organizational Issues during the System Development tions, and validating and verifying those Process: An Empirical Analysis,” Behavior & Informa- specifications. It is a learning, communica- tion Technology, vol. 17, no. 1, Jan. 1998, pp. 41–51. tion, and negotiation process; to succeed, 7. P.J. Guinan, J.G. Cooprider, and S. Faraj, “Enabling Software Development Team Performance During Re- you must integrate your technical, cogni- quirements Definition: A Behavioral Versus Technical tive, social, and organizational processes to Approach,” Information Systems Research, vol. 9, no. suit your project’s particular needs and 2, 1998, pp. 101–125. 8. M. Lubars, C. Potts, and C. Richter, “A Review of the characteristics. In other words, you must State of the Practice in Requirements Modeling,” First progressively discover your project require- Int’l Symp. Requirements Eng., IEEE CS Press, Los ments to specify software successfully. Alamitos, Calif., 1993, pp. 2–14. 9. S.R. Nidumolu, “A Comparison of the Structural Con- tingency and Risk-Based Perspectives on Coordination in Software-Development Projects,” J. Management In- formation Systems, vol. 13, no. 2, 1995, pp. 77–113. 10. IEEE Guide to Software Requirements Specification, IEEE Std. 830-1998, IEEE Press, Piscataway, N.J., 1998. 11. H.F. Hofmann, Requirements Engineering: A Situated Discovery Process, Gabler, Wiesbaden, Germany, 2000. 12. B.W. Boehm, Economics, Prentice About the Authors Hall, Englewood Cliffs, N.J., 1981.

Hubert F. Hofmann is manager of information systems and services for General Mo- tors. His professional interests include strategic planning, enterprise-wide program manage- ment, software development, and system delivery processes. He received a PhD in business in- formatics from the University of Regensburg and an MBA from the University of Linz and the University of Zurich. He is a member of the IEEE Computer Society. Contact him at 7000 Chicago Rd., Warren, MI 48090; [email protected].

Franz Lehner is a professor of manage- ment and information systems at the University of Regensburg, Germany, and head of the Department of Business Informatics. His fields of interest are software engineering and reengi- neering, knowledge management, and distance education. Contact him at the University of Regensburg, Business Informatics, D-93040 Regensburg, Germany; [email protected] regensburg.de. For further information on this or any other computing topic, please visit our Digital Library at http://computer.org/publications/dlib.

66 IEEE SOFTWARE July/August 2001