This is a comprehensive guidebook for the programmer or manager writing requirements for the first time, as well as the experienced system analyst.
The author takes a unique approach to the subject: that a user requirements document derives from the techniques employed by programmers and interface designers. His in-depth treatment includes non-hierarchical ways to break down complex problems, elements of the problem domain, and different information needed for different problem types.
An extensive section on style covers the nuts and bolts of making the information understandable: how to group and sequence topics, how to word a definition, even how to avoid boring the reader. This unusual, example-filled book covers all aspects of a daunting but critical task: giving development staff all the information they need to do their jobs. * Elements of a software problem * User (and other) interface design documentation * How useful requirements derive from known programming techniques * Describing the problem domain * Non-hierarchical methods for breaking down problems * Applying Michael Jackson’s “problem frames” * Common mistakes and how to fix them * Example documents from real projects