Software Requirements 3by Karl Wiegers, Joy Beatty
Now in its third edition, this classic guide to software requirements engineering has been fully updated with new topics, examples, and guidance. Two leaders in the requirements community have teamed up to deliver a contemporary set of practices covering the full range of requirements development and management activities on software projects.
Most Helpful Customer Reviews
See all customer reviews
What I love about this book is that it is so easy to pick this up, get several great ideas on how to fix whatever kind of problem you are facing in software development, and then use those ideas to implement something today that is really going to make a difference in what you can deliver to your customers. Wiegers and Beatty give pragmatic examples and “oops” stories on everything from Agile and analytics through real-time embedded systems that demonstrate the key points you need to know to make your project successful. The book also includes templates, tips, and project-specific details to help you use what you learn. I have used the second edition of this book to help me work with software teams on problems ranging from reducing defects and increasing consulting revenue through implementing industry-standard requirements such as PCI. The third edition of the book builds on the second by increasing its coverage on topics such as dashboard reporting, data requirements, and data modeling. The book is meant to be read cover-to-cover but you can still get a lot out of it by reading what you need, as you need it. My favorite section in this third edition is the expanded discussion on quality attributes. This is an area that is so often overlooked in software development because we tend to assume the best and forget to plan for the worst. This section explains the different types of quality controls and how to know which ones to use based on the type of project you are working on. The authors do a great job throughout the book in explaining how to gracefully handle software errors to keep your data, users, and possibly your customers safe from harm.
I highly recommend buying, reading and adopting the many requirements engineering best practices found in this 3rd edition of Software Requirements. Karl Wiegers and Joy Beatty have written an excellent guide for all stakeholders of software application development. This includes business analysts, QA/testers, software developers, infrastructure developers, program/project managers, project sponsors and very importantly the business stakeholders who possess the requirements that will be elicited and then managed. Everyone will read this book from their role’s point of view and will learn how to work synergistically in the pursuit of eliciting and leveraging excellent requirements. I am pleased that the structure and content of the book remains similar to that of the second edition. The emphasis is on readability and practicality, giving readers the tools and techniques needed to deal successfully with requirements on a wide variety of projects. Karl and Joy have incorporated their collective knowledge gained and lessons learned from years of delivering many training courses, conference presentations, and webinars on requirements to thousands of students. Many of us that read the 1st edition of Software Requirements have collaborated with Karl through the years and offered our thoughts on contemporary requirements engineering best practices. Many of those thoughts are also present in this 3rd edition. Those associated with the International Institute for Business Analysis (IIBA) will be pleased that this edition aligns with terminology from the BABOK where appropriate and sensible. Agile, incremental and iterative development methods are addressed effectively and more guidance is given to how to handle requirements on agile projects. There is an entire chapter on this now and the other relevant chapters have guidance on how to adopt the practices described in the chapter to agile projects. Use cases and user stories are addressed as well. Another improvement from the 2nd edition is more emphasis on defining data and reporting requirements. I have been associated with software development for over 40 years now. I have been preaching and teaching requirements engineering for many of those years. The book Software Requirements remains central to my thoughts on requirements engineering processes, deliverables and techniques. The reason I am aligned to this book lies in what I believe is the core focus of its content: To promise and deliver to the business, on time and within budget, innovative software that meets end user needs and expectations requiring minimal rework and maintenance.