Discovering requirements

Overview of ‘Discovering requirements’

This course, based on the acclaimed book of the same name, gives practical, hands-on experience in requirement discovery techniques for system, product and service development. Participants learn how to apply the elements of requirements, such as goals and scenarios, in discovery contexts such as interviews and workshops. The ‘Discovering requirements’ course is highly interactive with group exercises and discussion.

It is structured around the following ten elements of a requirement:
  • Vision
  • Stakeholders
  • Goals
  • Context
  • Scenarios
  • Qualities and constraints
  • Rationale
  • Definitions
  • Measurements
  • Priorities
And the following four ‘discovery contexts’:
  • From individuals
  • From groups
  • From things
  • From trade-offs


  • Anyone involved in creating or changing systems, processes, products, or services, including business analysts, requirements analysts, product managers, project managers, systems and software engineers, software developers.
  • Anyone who needs to find out what people need from systems, products or services under development.


The ‘Discovering requirements’ course is highly interactive, consisting of
  • A minimum of theory (the rest being covered by the textbook), introducing the key techniques and concepts of requirements discovery
  • Team exercises, in which groups of participants work together, applying the techniques just taught; present their findings; and are debriefed to draw out the learning points
  • A short quiz on each topic
  • Demonstrations, examples, and illustrations from the tutor’s experience
  • Discussions and feedback to make full use of the knowledge and experience of participants.

Supported by the acclaimed textbook Discovering Requirements, course time is devoted to practical exploration of the chosen techniques. Participants get the maximum of direct experience and understanding of each technique from the team exercises and discussion. Meanwhile, detailed explanations and guidance on all the techniques for discovering requirements are to hand in the textbook, for each participant to keep after the course.

The expert trainer

Ian is a very experienced Chartered Engineer who specialises in requirements, providing consultancy and training on discovering requirements and requirements management. He has worked in the aerospace, telecommunications, transport, automotive, software and public service sectors. His books include Writing Better Requirements (2002), Scenarios, Stories, Use Cases (2004), and Discovering Requirements (2009). He recently chaired the BCS Requirements Engineering Specialist Group. He is an Honorary Visiting Research Fellow of City University and regularly presents seminars and workshops at universities and colleges including Imperial College, the Open University, City University, the University of Westminster and Lancaster University.

Ian’s clients include Eurocontrol (Belgium), Banestyrelse (Denmark), Nokia, Teknomen (Finland), Alcatel, Thomson (France), Adtranz, DaimlerChrysler, DASA, Dornier, EuMetSat, Mannesman, NATO, Nortel, Opel (Germany), E-Group (Hungary), Ingenium, Tellabs (Ireland), Bergson, ATOS Origin, PTT Telekom (Netherlands), Kongsberg (Norway), SIVECO (Romania), Denel Optronics, Reutech Radar Systems (South Africa), SAAB Ericsson Space, Telia, Ericsson Radio Systems, Ericsson Microwave Systems, Ericsson Mobile Communications, Gambro, Helax (Sweden), Aselsan (Turkey), Emirates Airlines (UAE), Aerosystems, ARM, AT&T, BAES, BBC, British Rail, DERA, DSTL, EBRD, JISC, London Underground, Metronet Rail, MoD, NRSC, Post Office, Racal-Thorn, Railtrack, Raytheon, Rockwell Collins, Rolls-Royce, Siemens Plessey, Sky, Smiths, Stonewood Electronics, Swan Hunter, Talis, Telelogic, Thameslink, TRW, Unisys (UK), Ascent Technologies, Hughes, Motorola, a pharmaceutical company (USA) and others.

His enthusiastic and flexible style generates excellent feedback, as the following comments from participants show:

‘Excellent course, will be helpful for me in the future.’

‘The whole course was extremely valuable and relevant to my job. The instruction was excellent. I would recommend the course to anyone that works in software/systems engineering.’

‘Very interesting course, taught by an obvious expert in the field, happy to modify course to suit participants.’

‘Great course leader, highly enthusiastic.’

‘Thought the use by Ian of his experiences in other fields very interesting. [I liked] to hear views from outside our area. We had time for the exercises and for discussion throughout.’

‘Ian was a very good teacher and made the course interesting.’

‘More than met my expectations, gave a great insight to the subject area. Presentation was excellent, kept interest with examples.’

‘An excellent trainer/lecturer who knows subject well and who provides real examples to illustrate points to enhance training. Inspiring, professional, and well presented.’

‘The trainer has had a great deal of experience which he was able to draw on to pass on to us to take back and consider.’

Course outline – Discovering requirements

  • Context
  • An inquiry cycle
  • Course structure: Requirements Elements (1-10) x Discovery Contexts (A-D)
1   Vision
  • A clear mission
2   Stakeholders
  • Typical roles
  • The onion model
3   Goals
  • Modelling goals and obstacles
  • Goal conflicts
A   From Individuals (interviewing)

4   Context
  • Rich pictures
  • System v product scope
A   From Individuals (observation)

5   Scenarios
  • Role/action list
  • Scenario patterns
  • Use cases
B   From Groups (workshops)

6   Qualities and constraints
  • Different types
  • Effect on project
C   From Things (analogy)

7   Rationale
  • Underlying reasons
  • Assumptions
  • Ways to document
8   Definitions
  • Ambiguity
  • Roles
  • Data
  • Designations
9   Measurements
  • Verification method
  • Acceptance criteria
D   From Trade-Offs

10   Priorities
  • Input (stakeholder) priority
  • Output (project) priority
Putting it all together
  • Process tailoring

Web site design by Method & Class Ltd