Do you need to know how to create good requirements?
Discovering Requirements offers a set of simple, robust, and effective cognitive tools for building requirements. Using worked examples throughout the text, it shows you how to develop an understanding of any problem, leading to questions such as:
What are you trying to achieve?
Who is involved, and how?
What do those people want? Do they agree?
How do you envisage this working?
What could go wrong?
Why are you making these decisions? What are you assuming?
The established author team of Ian Alexander and Ljerka Beus–Dukic answer these and related questions, using a set of complementary techniques, including stakeholder analysis, goal modelling, context modelling, storytelling and scenario modelling, identifying risks and threats, describing rationales, defining terms in a project dictionary, and prioritizing.
This easy to read guide is full of carefully–checked tips and tricks. Illustrated with worked examples, checklists, summaries, keywords and exercises, this book will encourage you to move closer to the real problems you re trying to solve. Guest boxes from other experts give you additional hints for your projects.
Invaluable for anyone specifying requirements including IT practitioners, engineers, developers, business analysts, test engineers, configuration managers, quality engineers and project managers. A practical sourcebook for lecturers as well as students studying software engineering who want to learn about requirements work in industry.
Once you ve read this book you will be ready to create good requirements!
PART I: DISCOVERING REQUIREMENT ELEMENTS.
1.2 Why You Should Read This Book.
1.3 Simple but Not Easy.
1.4 Discovered, not Found.
1.5 A Softer Process, at First.
1.6 More than a List of The System Shalls .
1.7 A Minimum of Process: the Discovery Cycle.
1.8 Structure of this Book.
1.9 Further Reading.
2.2 Discovering Stakeholders.
2.3 Identifying Stakeholders.
2.4 Managing Your Stakeholders.
2.5 Validating Your List of Stakeholders.
2.6 The Bare Minimum of Stakeholder Analysis.
2.7 Next Steps: Requirements from Stakeholders.
2.9 Further Reading.
3.2 Discovering Goals.
3.3 Documenting Goals.
3.4 Validating Goals.
3.5 The Bare Minimum of Goals.
3.6 Next Steps.
3.8 Further Reading.
4. Context, Interfaces, Scope.
4.3 A Soft Systems Approach for Ill–Defined Boundaries.
4.4 Switching to a Hard Systems Approach for Known Events.
4.5 The Bare Minimum of Context.
4.6 Next Steps.
4.8 Further Reading.
5.2 Discovering Scenarios.
5.3 Documenting Scenarios.
5.4 Validating Scenarios.
5.5 The Bare Minimum of Scenarios.
5.6 Next Steps.
5.8 Further Reading.
6. Qualities & Constraints.
6.2 What are Qualities and Constraints?
6.3 Discovering Qualities and Constraints.
6.4 Documenting Qualities and Constraints.
6.5 Validating Qualities and Constraints.
6.6 The Bare Minimum of Qualities and Constraints.
6.7 Next Steps.
6.9 Further Reading.
7. Rationale and Assumptions.
7.2 The Value of Rationale.
7.3 Discovering Rationale and Assumptions.
7.4 Documenting Rationale.
7.5 Validating Rationale and Assumptions.
7.6 The Bare Minimum of Rationale and Assumptions.
7.7 Next Steps.
7.9 Further Reading.
8.2 Discovering Definitions.
8.3 The Bare Minimum of Definitions.
8.4 Next Steps.
8.6 Further Reading.
9.2 Discovering and Documenting Acceptance Criteria.
9.3 Validating Acceptance Criteria.
9.4 Measuring Quality of Service (Qos).
9.5 Validating Qos Measures.
9.6 The Bare Minimum of Measurement.
9.7 Next Steps.
9.9 Further Reading.
10.2 Two Kinds of Priority.
10.3 Input Priority.
10.4 Output Priority.
10.5 The Bare Minimum of Priorities.
10.6 Next Steps.
10.8 Further Reading.
PART II: DISCOVERY CONTEXTS.
11. Requirements from Individuals.
11.4 Observation and Apprenticeship .
11.5 The Bare Minimum from Individuals.
11.7 Further Reading.
12. Requirements from Groups.
12.2 The Goal of Group Work.
12.4 Group Media.
12.5 The Bare Minimum from Groups.
12.6 Next Steps.
12.8 Further Reading.
13. Requirements from Things.
13.2 Requirements Prototyping.
13.3 Reverse Engineering.
13.4 Requirements Reuse.
13.5 Validating Requirements from Things.
13.6 The Bare Minimum from Things.
13.8 Further Reading.
14.2 Optioneering: The Engineering of Trade–Offs.
14.3 Validating your Trade–offs.
14.4 The Bare Minimum of Trade–offs.
14.5 Next Steps.
14.7 Further Reading.
15. Putting it all Together.
15.2 After Discovery.
15.3 The Right Process for your Project.
15.4 Organising the Requirements Specification.
15.5 The Bare Minimum of Putting it all Together.
15.6 Further Reading.
Ian Alexander consults and trains on requirements. He has co–authored 3 books including Writing Better Requirements (2002, Wiley), HTML 4 (1997, Addison–Wesley) and Scenarios, Stories, Use Cases (2004, Wiley), and has published many technical papers and popular articles, including regular contributions to the IEEE Software. He runs various requirements training courses for IET, JBA, DERA, QSS and UNICOM amongst others.
Ljerka Beus–Dukic is a lecturer in software engineering and has taught Requirements Engineering for a number of years. Prior to joining academia, she worked in industry as a software engineer developing software for real–time applications. Ljerka is the author of many technical papers and was a contributor for the book (Powell D. (Ed.), A Generic Fault–Tolerant Architecture for Real–Time Dependable Systems, Kluwer Academic Publishers, 2001). She is on the programme committee for a number of conferences including ICCBSS and Euromicro and also worked on the EU funded GUARDS project. She has co–authored around 30 publications.