Requirements from Stakeholders 46 2.8 Exercise 49 2.9 Further Reading 49
Total Page:16
File Type:pdf, Size:1020Kb
Discovering Requirements How to Specify Products and Services Ian Alexander and Ljerka Beus-Dukic A John Wiley and Sons, Ltd., Publication Discovering Requirements Discovering Requirements How to Specify Products and Services Ian Alexander and Ljerka Beus-Dukic A John Wiley and Sons, Ltd., Publication Copyright 2009 John Wiley & Sons Ltd, The Atrium, Southern Gate, Chichester, West Sussex PO19 8SQ, England Telephone (+44) 1243 779777 Email (for orders and customer service enquiries): [email protected] Visit our Home Page on www.wileyeurope.com or www.wiley.com All Rights Reserved. No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except under the terms of the Copyright, Designs and Patents Act 1988 or under the terms of a licence issued by the Copyright Licensing Agency Ltd, 90 Tottenham Court Road, London W1T 4LP, UK, without the permission in writing of the Publisher. Requests to the Publisher should be addressed to the Permissions Department, John Wiley & Sons Ltd, The Atrium, Southern Gate, Chichester, West Sussex PO19 8SQ, England, or emailed to [email protected], or faxed to (+44) 1243 770620. Designations used by companies to distinguish their products are often claimed as trademarks. All brand names and product names used in this book are trade names, service marks, trademarks or registered trademarks of their respective owners. The Publisher is not associated with any product or vendor mentioned in this book. This publication is designed to provide accurate and authoritative information in regard to the subject matter covered. It is sold on the understanding that the Publisher is not engaged in rendering professional services. If professional advice or other expert assistance is required, the services of a competent professional should be sought. Other Wiley Editorial Offices John Wiley & Sons Inc., 111 River Street, Hoboken, NJ 07030, USA Jossey-Bass, 989 Market Street, San Francisco, CA 94103-1741, USA Wiley-VCH Verlag GmbH, Boschstr. 12, D-69469 Weinheim, Germany John Wiley & Sons Australia Ltd, 42 McDougall Street, Milton, Queensland 4064, Australia John Wiley & Sons (Asia) Pte Ltd, 2 Clementi Loop #02-01, Jin Xing Distripark, Singapore 129809 John Wiley & Sons Canada Ltd, 6045 Freemont Blvd, Mississauga, ONT, L5R 4J3, Canada Wiley also publishes its books in a variety of electronic formats. Some content that appears in print may not be available in electronic books. Library of Congress Cataloging-in-Publication Data: Alexander, Ian (Ian F.), 1954- Discovering requirements : how to specify products and services / Ian Alexander & Ljerka Beus-Dukic. p. cm. Includes bibliographical references and index. ISBN 978-0-470-71240-5 (pbk. : alk. paper) 1. Requirements engineering. 2. Specification writing. I. Beus-Dukic, Ljerka. II. Title. TA180.A435 2009 658.5’038–dc22 2008049828 British Library Cataloguing in Publication Data A catalogue record for this book is available from the British Library ISBN 978-0-470-71240-5 Typeset in 10.5/13 Palatino by Laserwords Private Limited, Chennai, India Printed and bound in Great Britain by Bell & Bain, Glasgow This book is printed on acid-free paper responsibly manufactured from sustainable forestry in which at least two trees are planted for each one used for paper production. I dedicate this book to my father, Richard Alexander. He was at once methodical and creative, positive and inspirational. IFA To my family and friends who encouraged and supported me. LB-D Contents Acknowledgements xv Foreword xvii Part I: DISCOVERING REQUIREMENT ELEMENTS 1 1 Introduction 3 1.1 Summary 4 1.2 Why You Should Read This Book 4 1.3 Simple but Not Easy 6 1.4 Discovered, Not Found 7 1.4.1 Many Different Situations 9 1.5 A Softer Process, at First 12 1.6 More than a List of ‘The System Shalls’ 16 1.6.1 A Network of Requirement Elements 16 1.6.2 Discovery as Search 18 1.7 A Minimum of Process: The Discovery Cycle 18 1.8 The Structure of this Book 20 1.8.1 Part I: Discovering Requirement Elements 21 1.8.2 Part II: Contexts for Discovery 22 1.9 Further Reading 22 1.9.1 Books on ‘Softer’ Approaches 22 1.9.2 Books on the Philosophical Background 23 1.9.3 Books on ‘Harder’ Approaches 24 2 Stakeholders 27 2.1 Summary 28 2.2 Discovering Stakeholders 28 2.2.1 Operational Stakeholders within ‘The System’ 30 2.2.2 Stakeholders in the Containing System and Wider Environment 30 vii viii Contents 2.3 Identifying Stakeholders 37 2.3.1 From your Sponsor or Client 37 2.3.2 With a Template such as the Onion Model 37 2.3.3 By Comparison with Similar Projects 40 2.3.4 By Analysing Context 40 2.4 Managing Your Stakeholders 41 2.4.1 Engaging with Stakeholders 41 2.4.2 Keeping Track of Stakeholders 42 2.4.3 Analysing Influences 42 2.4.4 Prioritising Stakeholders 43 2.4.5 Involving Stakeholders 45 2.4.6 The Integrated Project Team 45 2.5 Validating Your List of Stakeholders 45 2.5.1 Things To Check the Stakeholder Analysis Against 46 2.6 The Bare Minimum of Stakeholder Analysis 46 2.7 Next Steps: Requirements from Stakeholders 46 2.8 Exercise 49 2.9 Further Reading 49 3Goals 51 3.1 Summary 52 3.2 Discovering Goals 52 3.2.1 Worked Example: Goals for a Spacecraft 54 3.2.2 Worked Example: Goals for a Restaurant 57 3.2.3 Worked Example: Tram Goals and Trade-offs 59 3.2.4 Finding Solutions to Goal Conflicts 62 3.2.5 Contexts for Discovering Goals 63 3.2.6 The Negative Side 65 3.3 Documenting Goals 68 3.3.1 Drawing Goal Diagrams 69 3.3.2 Other Ways of Documenting Goals 69 3.4 Validating Goals 71 3.4.1 Things To Check Goals Against 73 3.5 The Bare Minimum of Goals 73 3.6 Next Steps 73 3.7 Exercises 73 3.8 Further Reading 74 3.8.1 Goals 74 3.8.2 The Negative Side 74 ∗ 3.8.3 The i Goal Modelling Notation 74 4 Context, Interfaces, Scope 75 4.1 Summary 76 4.2 Introduction 76 4.3 A ‘Soft Systems’ Approach for Ill-Defined Boundaries 77 4.3.1 You are Part of the Soft System you are Observing 78 4.3.2 From Stakeholders to Boundaries 79 4.3.3 Identifying Interfaces 83 4.3.4 Documenting Interfaces 84 Contents ix 4.3.5 Validating your Choice of Boundary 86 4.4 Switching to a ‘Hard Systems’ Approach for Known Events 87 4.4.1 The Traditional Context Diagram 87 4.4.2 Scope as a List of Events 87 4.4.3 Expressing Event-handling Functions 89 4.4.4 Strengths and Weaknesses of Context Diagrams 92 4.4.5 Validating Interfaces and Events 93 4.4.6 Things To Check Context and Interfaces Against 95 4.5 The Bare Minimum of Context 95 4.6 Next Steps 95 4.7 Exercise 95 4.8 Further Reading 96 4.8.1 Soft Approaches 96 4.8.2 Event-Driven Approaches 96 4.8.3 Writing Requirements 96 5 Scenarios 97 5.1 Summary 98 5.2 Discovering Scenarios 98 5.2.1 Interviews, storytelling 99 5.2.2 Scenario Workshops 101 5.2.3 Discovering Negative Scenarios 107 5.3 Documenting Scenarios 114 5.3.1 Index Cards, User Stories 115 5.3.2 Storyboards 116 5.3.3 Operational Scenarios 118 5.3.4 Use Cases 119 5.4 Summary 124 5.5 Validating Scenarios 124 5.5.1 Scenario Walkthroughs 124 5.5.2 Animation, Simulation, Prototyping 126 5.5.3 Things To Check Scenarios Against 127 5.6 The Bare Minimum of Scenarios 127 5.7 Next Steps 127 5.8 Exercises 128 5.9 Further Reading 128 5.9.1 Storytelling 128 5.9.2 Alternative Scenario Approaches 128 5.9.3 Running Scenario Workshops 129 5.9.4 The Principle of Commensurate Care 129 6 Qualities and Constraints 131 6.1 Summary 132 6.2 What are Qualities and Constraints? 132 6.2.1 A Rich Mixture 132 6.2.2 Qualities that Govern Choices 132 6.2.3 Constraints that Matter to People 133 6.3 Discovering Qualities and Constraints 133 6.3.1 Using Goals to Discover Qualities and Constraints 134 x Contents 6.3.2 Stakeholder Analysis to Discover Qualities and Constraints 136 6.3.3 Using a Checklist to Discover Qualities and Constraints 136 6.4 Documenting Qualities and Constraints 141 6.4.1 Constraints 142 6.4.2 Development (Process) Qualities 146 6.4.3 Usage (Product) Qualities 147 6.5 Validating Qualities and Constraints 157 6.5.1 Things To Check Qualities and Constraints Against 158 6.6 The Bare Minimum of Qualities and Constraints 159 6.7 Next Steps 159 6.8 Exercises 159 6.9 Further Reading 160 7 Rationale and Assumptions 161 7.1 Summary 162 7.2 The Value of Rationale 162 7.3 Discovering Rationale and Assumptions 163 7.3.1 Asking Why 164 7.3.2 Looking for the word ‘will’ in vision statements, plans, etc 165 7.3.3 Rationalising a Set of Requirements 166 7.3.4 Inverting Risks 168 7.4 Documenting Rationale 169 7.4.1 Justification Text Field 171 7.4.2 Lists of Assumptions, Risks, Issues and Decisions 172 7.4.3 Traceability to Goals, Assumptions, etc 173 7.4.4 Rationale Models 178 7.4.5 The Goal Structuring Notation (GSN) 182 7.5 Validating Rationale and Assumptions 183 7.5.1 Rationale Walkthrough 184 7.5.2 Analysis of Traceability 184 7.5.3 Things To Check Rationale and Assumptions Against 186 7.6 The Bare Minimum of Rationale and Assumptions 187 7.7 Next Steps 187 7.8 Exercise 187 7.9 Further Reading 187 7.9.1 Discovering Assumptions 187 7.9.2 Reasoning 188 7.9.3 Modelling Rationale 188 7.9.4 Tracing to Goals 188 7.9.5 Goal Structuring Notation (GSN) 188 7.9.6 Satisfaction Arguments 188 8 Definitions 189 8.1 Summary 190 8.2 Discovering Definitions 190 8.2.1 Synonyms 191 8.2.2 Homonyms 193 8.3 Constructing the Project Dictionary 194 8.3.1 Acronyms 195 Contents xi 8.3.2 Definitions and Designations 195 8.3.3 Roles (Operational Stakeholders) 199 8.3.4 Data Definitions 201 8.3.5 Constraints as Data 202 8.4 Validating the Project Dictionary