"Software Requirements" by Karl Wiegers is a book on how to keep all the turnaround of analysis process under control. For this intelligent and useful book, Wiegers goes over the last ten years of technical literature on the multiple aspects of analyzing and designing software, managing project risks and requirements changes. From all this literature Wiegers takes only working methods, practical tips, useful tools and stimulating solutions, reabsorbing all in a complex but smooth methodology that assigns to the analyst a role of collaborator and guide for business and project managers, users, developers and testers all along the process of software production - that is, a process of shaping and implementing requirements. The customer/analyst partnership transforms at first business needs in high level requirements through the formulation of a vision and scope document; then analysts and user representatives descend from the context diagram to the product details with the help of use cases and prototyping; finally a software requirements specification is drafted and handled through version control, requirements estimation, prioritization, inspection and tracing, and the adoption of a requirements change control process. This book can effectively help analysts to rethink and reshape the way to face all the difficulties of their work, from the very first contact with customers and their needs. They will recognise many frustrating situations - and find hints and instruments to govern them. Surely a book worth the money.