- Extending the scenario method beyond interface design, this important book shows developers how to design more effective systems by soliciting, analyzing, and elaborating stories from end-users
- Contributions from leading industry consultants and opinion-makers present a range of scenario techniques, from the light, sketchy, and agile to the careful and systematic
- Includes real-world case studies from Philips, Daimler Chrysler, and Nokia, and covers systems ranging from custom software to embedded hardware-software systems
Table of Content
Preface xiii
Biographies and Photographs xvii
Part I Overview
Chapter 1 Introduction: Scenarios in System Development
Context 3
Through the Life Cycle 17
Types of System 18
Scenarios for Systems—Not Necessarily Software 19
The Way Ahead 21
Keywords 21
References 21
Recommended Reading 22
Chapter 2 Scenario-based Approaches
Overview: The Crews Scenario Framework 25
The Framework 26
The Scenario Approaches Described in this Book 28
Conclusion 32
Keywords 32
References 32
Part II Scenarios Through the System Life-cycle: Techniques
Chapter 3 Scenarios in Requirements Discovery
Applicability 39
Position in the Life Cycle 40
Key Features 40
Strengths 40
Weaknesses 41
What Is a Requirements Scenario? 41
From Scenarios to Atomic Requirements 51
Keeping Track of the Investigation 54
Who Produces the Scenarios? 54
Techniques for Building Scenarios 55
When to Use Scenarios 58
Keywords 59
References 59
Chapter 4 Scenarios for Innovation: Developing Scenario-based User Needs Analysis (Suna)
Applicability 61
Position in the Life Cycle 62
Key Features 62
Strengths and Weaknesses 63
Technique 64
Worked Example 73
Comparisons 77
Keywords 79
References 79
Recommended Readings 79
Chapter 5 Running a Use Case/scenario Workshop
Applicability 81
Position in the Life Cycle 82
Key Features 82
Strengths 83
Weaknesses 84
Technique 85
Worked Example 93
Comparisons 99
Keywords 100
References 100
Recommended Reading 101
Chapter 6 Alternative World Scenarios to Assess Requirement Stability
Applicability 103
Position in the Life Cycle 104
Key Features 104
Strengths 104
Weaknesses 104
Technique 105
Worked Example 110
Comparisons 115
Keywords 116
References 116
Recommended Reading 117
Chapter 7 Cases Negative Scenarios and Misuse
Applicability 119
Roles in the Life Cycle 119
Key Features 120
Strengths 120
Weaknesses 120
Technique 120
Worked Example 128
Comparisons 131
Keywords 138
References 138
Recommended Reading 139
Chapter 8 Authoring Use Cases
Applicability 141
Position in the Life Cycle 141
Key Features 142
Strengths 143
Weaknesses 143
Technique 143
Comparisons 158
Keywords 159
References 159
Recommended Reading 160
Chapter 9 Systematic Scenario Walkthroughs with Art-scene
Position in the Life Cycle 161
Applicability 161
Key Features 162
Strengths 162
Weaknesses 162
The Art-Scene Process and Environment 162
Art-Scene’s Research Provenance 163
The Art-Scene Approach 164
The Structure and Representation of an Art-Scene Scenario 164
The Art-Scene Software Environment 166
Facilitating Scenario Walkthroughs 171
The Scenario Workshop Environment 173
Worked Example 173
Comparisons 176
Keywords 177
References 177
Recommended Reading 178
Chapter 10 The role of scenarios In Contextual Design: From User Observations to Work Redesign To Use Cases
Applicability 180
Position in the Life Cycle 180
Key Features 181
Strengths 181
Weaknesses 185
Technique 185
Techniques and Worked Example 186
Lessons Learnt 205
Comparisons 206
Keywords 207
References 207
Recommended Readings 208
Chapter 11 A Scenario-based Design Method for Human-centred Interaction Design
Overview 211
Applicability 211
Position in the Life Cycle 212
Key Features 212
Strengths 213
Weaknesses 213
The Method 213
Other Artifacts in the Method 218
Processes of the Method 220
Summary 223
Worked Example 224
User Story 225
Comparisons 232
Acknowledgements 233
Keywords 234
References 234
Recommended Reading 234
Chapter 12 Use Case-based Software Development
Applicability 237
Position in the Life Cycle 238
Key Features 238
Strengths 238
Weaknesses 238
Technique and Worked Example 239
Summary and Comparisons 262
Keywords 263
References 263
Recommended Reading 264
Chapter 13 User Stories in Agile Software Development
Applicability 265
Applicability II—Why User Stories? 266
Position in Life Cycle 267
Key Features 267
Strengths 268
Weaknesses 268
Technique 269
Worked Example 275
Comparisons 278
Keywords 279
References 279
Recommended Reading 279
Chapter 14 Use Cases, Test Cases
Applicability 281
Position in the Life Cycle 281
Key Features 282
Strengths 282
Weaknesses 282
Background: The V-Model 283
Technique 284
Worked Example 290
Comparisons 296
Keywords 297
References 297
Recommended Reading 298
Chapter 15 Project Stories: Combining Life-cycle Process Models
Applicability 299
Position in the Life Cycle 299
Key Features 300
Strengths 300
Weaknesses 300
Technique 300
Conclusion 323
Keywords 324
References 324
Recommended Reading 324
Part III Scenarios in Action: Case Studies
Chapter 16 Story Use and Reuse in Automotive Systems Engineering
Type of Project 329
Applicability 329
Position in the Life Cycle 330
Roles Played by Scenarios 330
Strengths 330
Weaknesses 330
Introduction 330
Automotive Software Development 331
Stories in Automotive Software Development 334
Lessons Learnt 342
Keywords 345
References 346
Chapter 17 Systems Use and Misuse Cases in Railway
A: Use Cases for Train Control Requirements Discovery 347
Type of Project 347
Applicability 348
Position in the Life Cycle 348
Roles Played by Scenarios 348
Strengths 348
Weaknesses 348
Case Study 349
Methods and Tools 350
Approach 350
Lessons Learnt 352
Keywords 353
B: Misuse Cases for a Seats Trade-Off 354
Type of Project 354
Applicability 354
Position in the Life Cycle 354
Roles Played by Scenarios 354
Strengths 355
Weaknesses 355
Case Study 355
Lessons Learnt 360
Summary 361
Keywords 362
References 362
Chapter 18 Scenarios in Air Traffic Control (ATC)
Applicability 363
Roles in the Life Cycle 364
Key Features 364
Strengths 364
Weaknesses 365
Background 366
Results 372
Keywords 376
References 376
Chapter 19 Scenarios and Quality Requirements in Telecommunications
Type of Project 379
Applicability 379
Position in the Life Cycle 380
Roles Played by Scenarios 380
Strengths 380
Weaknesses 380
Case Study 381
Lessons Learnt 389
Acknowledgements 391
Keywords 391
References 391
Chapter 20 Scenarios in Rail Rolling Stock with Reveal
Applicability 393
Position in the Life Cycle 394
Key Features 394
Strengths 394
Weaknesses 395
Case Study 396
Lessons Learnt 408
Keywords 409
References 409
Chapter 21 Evaluating Scenarios by Simulation
Type of Project 411
Applicability 412
Position in the Life Cycle 412
Roles Played by Scenarios 412
Strengths 412
Weaknesses 412
Case Study 413
Lessons Learnt 425
Keywords 426
References 426
Part IV The Way Ahead
Chapter 22 Putting Scenarios Into Practice
Which Kind of Scenario, When? 431
Which Scenario Technique, When? Conclusions from Part 2 432
Who, and Why? 435
Scenarios Everywhere? 436
How Does Project Scale Affect Scenario Usage? 437
Into Practice: Conclusions from the Part 3 Case Studies 439
Do Scenarios Replace Requirements? 440
Getting Started 443
Keywords 444
References 444
Chapter 23 Teaching Computer Scientists To Make Use
Challenges in Teaching Students to Make Use 445
Comparisons—Scenarios for Making Use 446
Using Cases to Teach Scenario-Based Usability Engineering 449
Strengths and Weaknesses 458
Discussion and Future Directions 459
Acknowledgements 461
Keywords 461
References 462
Recommended Readings 463
Chapter 24 What Scenarios (Still) Aren’t Good for
Continuous Behaviour 465
Very Large Systems 466
Fragmentary Models 466
Episodic, Allusory 467
Domain-Specific? 467
Which Representation? 467
Open-Ended 468
Tacit Knowledge 468
Non-Functional Requirements (NFRs) 468
Summary 468
References 469
Chapter 25 The Future of Scenarios
Introduction: Horses for Courses 471
Towards a Framework 471
Representation 471
Process 472
Domain Knowledge 473
COTS 473
Dissemination 473
Summary 474
References 474
Appendix 1 Scenario-based System Development Templates 475
Appendix 2 Exercises 499
Appendix 3 Answers to Exercises 501
Glossary 507
Index 513
About the author
Ian F Alexander is an independent consultant researches with Daimler Chrysler (in Ulm, Germany) he also writes, teaches, and consults on requirements, especially scenarios.. He is on the committee of the BCS Requirements Engineering Specialist Group and runs the Requirements chapter of the IEE Professional Network for Systems Engineers. He has written extensively on Requirements
Neil Maiden is a Reader and Head of the Centre for Human-Computer Interface Design, in City University’s School of Informatics, London UK. He is co-founder and treasurer of the British Computer Society Requirements Engineering Specialist Group.