Introduction to requirements

Overview of ‘Introduction to requirements’

This popular course aims to give participants an understanding of why requirements are important in system development, and the basic practical skills needed to create good, effective, requirements.


  • System and software engineers, analysts, programmers, and others who create and use requirements
  • People whose work is influenced by requirements, including testers, quality assurance and project management


This ‘Introduction to requirements’ course is highly interactive, consisting of:
  • The essential theory and context, introducing the key techniques and concepts of requirements work
  • Team exercises, in which participants work together in pairs and groups, applying the techniques just taught
  • Demonstrations, examples, and illustrations from the tutor’s experience
  • A short quiz on each topic
  • Discussions and feedback to make full use of the knowledge and experience of participants. ‘Introduction to requirements’ courses often work best when there is a mix of people from different disciplines and backgrounds.

The expert trainer

Ian is a very experienced Chartered Engineer who specialises in requirements, providing consultancy and training on requirements discovery 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.’

‘I am new to requirements writing. I found this interesting and [it] has provided lots of ideas. [The trainer was] very knowledgeable and was willing to explain further when required.’

‘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 – Introduction to requirements

1   Purpose of requirements
  • System development life cycles
  • The need to control risk
  • Iteration and agility
2   The requirements process

3   Launching the project
  • Objectives
  • Goals
  • Context
4   Discovering requirements
  • Identifying stakeholders
  • Discovering requirements from operational roles
  • Scenarios, use cases, exceptions
  • Interviews, workshops, observation, other sources
  • Discovering requirements from non-operational roles
  • Standards, legislation
5   Prototyping with state models (including demonstration)

6   Prioritising requirements
  • Triage
  • Benefit / cost
  • Ranking
  • Other approaches
7   Formalising requirements
  • Modelling context, events
  • Project dictionary; entity relationships; object models
  • Writing functional requirements; requirements as tables
  • Types of non-functional requirements
  • Styles for writing non-functional requirements
  • Requirement relationships, traceability
  • Project information modelling
  • Requirement attributes: rationale, acceptance criteria
8   Validating requirements
  • Completeness checks
  • The review process
9   Managing requirements
  • Change management process
  • Tracking configuration
  • Requirements reuse
  • Product line approaches

Web site design by Method & Class Ltd