Brian Berenbach, Daniel Paulish, Juergen Kazmeier, Arnold Rudorfer
McGraw-Hill, March 2009
ISBN 0071605479 (boards)
Buy it from Amazon.com (commission paid)
Buy it from Amazon.co.uk (commission paid)
This book by an experienced team from Siemens explains how to deal with requirements for the largest-scale systems. The context is embedded-software product development for either the mass-market or for industrial equipment. Such products are tightly constrained by many factors, such as existing interfaces, reliability, safety, performance, the need to adapt. The authors define the processes and practices needed to make such large and complex projects succeed.
The book covers everything from requirements elicitation to requirements management. It gives considerable detail on how these processes dovetail with system architectural design, including how the various teams should be organized. The chapter organisation is interesting, too, adapted to the large-scale projects that Siemens undertakes. There are chapters on requirements modelling (with 'model-driven RE'), requirements-driven system testing, 'rapid development' (iterative, agile) techniques for requirements evolution, distributed RE, and hazard analysis and threat modeling. An appendix looks at configuring and managing a requirements database; it discusses such interesting and difficult topics as the unique needs of a product-line requirements database.
There is a great deal of systems engineering knowledge and experience in this book. Such things are not often published, pace INCOSE, because the know-how is often considered proprietary, and because engineers are busy people. There are of course other books on requirements, or model-driven development, or testing, or project management, or making projects more agile. But I don't know of any that cover the territory of big RE for products and product lines. If you're working in this area, Berenbach and his colleagues have produced a handbook of essential reading for you.
(c) Ian Alexander 2009
You may also like: