Engineering and Managing Software Requirements

Front Cover
Springer Science & Business Media, Jul 6, 2005 - Business & Economics - 478 pages

Requirements engineering is the process by which the requirements for software systems are gathered, analyzed, documented, and managed throughout their complete lifecycle. Traditionally it has been concerned with technical goals for, functions of, and constraints on software systems. Aurum and Wohlin, however, argue that it is no longer appropriate for software systems professionals to focus only on functional and non-functional aspects of the intended system and to somehow assume that organizational context and needs are outside their remit. Instead, they call for a broader perspective in order to gain a better understanding of the interdependencies between enterprise stakeholders, processes, and software systems, which would in turn give rise to more appropriate techniques and higher-quality systems.

Following an introductory chapter that provides an exploration of key issues in requirements engineering, the book is organized in three parts. Part 1 presents surveys of state-of-the art requirements engineering process research along with critical assessments of existing models, frameworks and techniques. Part 2 addresses key areas in requirements engineering, such as market-driven requirements engineering, goal modeling, requirements ambiguity, and others. Part 3 concludes the book with articles that present empirical evidence and experiences from practices in industrial projects.

Its broader perspective gives this book its distinct appeal and makes it of interest to both researchers and practitioners, not only in software engineering but also in other disciplines such as business process engineering and management science.

 

What people are saying - Write a review

We haven't found any reviews in the usual places.

Contents

Setting the Context
1
12 Background
3
13 The Role of Stakeholders in Requirements Engineering
6
14 Different Levels of Requirements
7
15 Requirements Management
9
16 New Trends and the Next Practice
11
17 Empirical Evidence
12
StateoftheArt Surveys of Requirements Engineering Process Research
17
Managing Redundant Customer Requests
236
108 Conclusions
240
11 Understanding Ambiguity in Requirements Engineering
245
112 Related Work
247
113 A New Definition of Requirements Ambiguity
248
114 Ambiguity in RE Processes
250
115 Detection of Ambiguity in Requirements Inspection
257
116 How to Live with Ambiguity
263

A Survey of Techniques Approaches and Tools
19
22 What is Requirements Elicitation?
21
23 Techniques and Approaches for Requirements Elicitation
25
24 Methodology Based Requirements Elicitation
34
25 Tool Support for Requirements Elicitation
35
26 Issues and Pitfalls of Requirements Elicitation
36
27 Trends and Challenges in Requirements Elicitation
38
28 Future Directions in Requirements Elicitation Research
41
3 Specification of Requirements Models
47
32 Modeling vs Specification
48
33 MetaModels Categories
50
34 Specification Methodology
56
35 Requirements Transformation
59
36 Conclusion
64
4 Requirements Prioritization
69
42 What is Requirements Prioritization?
70
43 Aspects of Prioritization
72
44 Prioritization Techniques
75
45 Involved Stakeholders in the Prioritization Process
79
46 Using Requirements Prioritization
82
47 An Example of a Requirements Prioritization
86
48 Future Research in the Area of Requirements Prioritization
89
49 Summary
91
State of the Art and Future Challenges
95
A Basis for Understanding Requirements Interdependencies
96
53 An Overview of Interdependency Types
100
54 How can Knowledge about Requirements Interdependencies Facilitate Software Engineering?
105
55 Research Issues
109
56 Summary
113
6 Impact Analysis
117
62 Strategies for Impact Analysis
124
63 NonFunctional Requirements
130
64 Impact Analysis Metrics
131
65 Tool Support
137
66 Future of Impact Analysis
138
67 Summary
139
7 Requirements Negotiation
143
72 The Negotiation Process
145
73 Dimensions of Requirements Negotiation
148
74 Examples of Negotiation Systems
154
75 Conclusions
158
8 Quality Assurance in Requirements Engineering
163
82 Requirements and Quality Assurance
165
83 Constructive Approaches
172
84 Analytical Approaches
175
85 Open Research Questions
180
86 Conclusion
182
The Next Practice in Requirements Engineering
187
9 Modeling Goals and Reasoning with Them
189
92 StateoftheArt Review
190
93 GoalStrategy Maps
199
94 Conclusion
211
10 Managing Large Repositories of Natural Language Requirements
219
102 The Role of Natural Language Requirements
220
103 State of the Research Addressing NL Requirements
222
104 Requirements Similarity
225
Keeping the Repository in Shape
228
Linking Customer Wishes to Product Requirements
232
117 Summary and Conclusion
264
12 Decision Support in Requirements Engineering
267
122 Basic Concepts
268
123 Decision Support versus Decision Making 1231 The Two Schools of Thinking
273
124 Analysis of Research
275
125 Conclusion and Future Research
281
13 MarketDriven Requirements Engineering for Software Products
287
132 Concepts and Context
289
133 The MORE Process
293
134 MDRE Data Management
296
135 Market Analysis and Requirements Elicitation
300
136 Roadmapping and Release Planning
301
137 Conclusion
304
14 Requirements Engineering for Agile Methods
309
142 Agile Methods
310
143 Traditional and Agile Requirement Engineering
315
144 Agile Approaches to Requirements Engineering
316
145 Role and Responsibility of Customers Developers and Managers
321
146 Tools for Requirements Management in AMs
322
147 Conclusions
323
15 Requirements Engineering for WebBased Information Systems
327
152 Approaches to RE for Development of WBIS
329
153 Significance of Concerns in Requirements Engineering
334
154 A Model of ConcernDriven Requirements Evolution
339
155 Summary and Conclusion
343
Studies and Industrial Experience
351
A Case of Developing and Managing Quality Software Systems in the Public Sector
353
162 The ABS Case Study Setting
354
163 Governance of ABS Software Development
356
164 The ABS Software Development Process
358
165 The ABS Software Requirements Phase
360
166 Some Examples of ABS Software
365
167 What can We Learn From the ABS?
367
17 Good Quality Requirements in Unified Process
373
172 Background
374
173 Practice
375
174 Evaluation
377
175 Conclusions
401
Studies of Six Companies
405
182 Studied Companies
406
183 Methodology
407
184 Assessment Findings
413
185 Comparison with State of Practice Surveys
418
186 Discussion
421
187 Conclusions
424
19 An Analysis of Empirical Requirements Engineering Survey Data
427
192 Empirical Research
428
193 Classification of Existing Broad RE Studies
429
194 Broad Studies Outcomes
436
A New Study
442
196 Remarks on Empirical RE Research
445
197 Conclusion
446
Solutions and Trends
453
Available Solutions
454
203 Trends in Requirements Engineering
460
Where is Requirements Engineering Heading?
473
Index
477
Copyright

Other editions - View all

Common terms and phrases

About the author (2005)

Dr. Aybüke Aurum is a senior lecturer at the School of Information Systems, Technology and Management, University of New South Wales. She received her BSc and MSc in geological engineering, and MEngSc and PhD in computer science. She is the founder and group leader of the Requirements Engineering Research Group (ReqEng) at the University of New South Wales. She also works as a visiting researcher in National ICT, Australia (NICTA). She is chief editor of "Managing Software Engineering Knowledge" published by Springer in 2003. Her research interests include Management of Software Development Process, Software Inspection, Requirements Engineering, Decision Making and Knowledge Management.

Prof. Claes Wohlin is a professor in Software Engineering at the School of Engineering at Blekinge Institute of Technology in Sweden. Prior to this, he has held professor chairs in software engineering at Lund University and Linköping University. He has a M.Sc. in Electrical Engineering and a Ph.D. in Communication Systems both from Lund University, and he has five years of industrial experience. Dr. Wohlin is co-editor-in-chief of the journal of Information and Software Technology published by Elsevier. He is on the editorial boards of Empirical Software Engineering: An International Journal, and Software Quality Journal.

Bibliographic information