Requirements Engineering: A Good Practice Guide
Defining what the customer wants is often a difficult aspect  of creating successful software. However, Ian Sommerville and Pete  Sawyer handle the topic with intelligence and depth inRequirements  Engineering: A Good Practice Guide. The authors provide practical  advice on how to make sure you deliver quality software that the  customer wants and needs, all within budget.The text first  outlines what requirements engineering is and how it fits into the  software engineering process. The authors then use a  question-and-answer approach, short chapters, and highlighted tips to  show how to define and develop a process for creating reliable  software in your organization. Sommerville and Sawyer consider some ad  hoc ways to improve your customer requirements documents and some more  rigorous approaches, such as ISO 9000 standards for software  engineering and formal specifications (where the correctness of  software can be proved mathematically).Requirements  Engineeringcan be a little dry, but it covers a vital area of  software design that can benefit almost all developers.