Requirements Engineering: Fundamentals, Principles, and Techniques Book Review
|It is not common to see a book like this come out in today’s technical book market, or for that matter in any era of the technical book market. Today most books are rushed to market, and publishers seem desperate for authors, because there is some real junk being published. But I am not comparing this book to the junk. I am comparing it to the classics like Design Patterns: Elements of Reusable Object-Oriented Software, Patterns of Enterprise Application Architecture, and Code Complete: A Practical Handbook of Software Construction, Refactoring: Improving the Design of Existing Code .|
This book is going to be a classic. It is the best book I have seen on Requirements Engineering, by far!!!! It is organized very well. The logical flow and organization of the book helps to make it a great read from front to back, as well as a great reference.
Some, I repeat "some", of what it covers includes System and Context Boundaries, Fundamentals of Goal Orientation, Documenting Goals, Fundamentals of Scenarios, Scenario Types, Documenting Scenarios, Solution-Oriented Requirements, Documenting Requirements in the Data Perspective, Documenting Requirements in the Functional Perspective, Documenting Requirements in the Behavioural Perspective, Documenting Quality Requirements in the Three Perspectives, Using UML2 and SysML, Natural Language Documentation, Structuring Natural Language Requirements, Fundamentals of Conceptual Modelling, Elicitation Techniques, Requirements Negotiation, Conflict Management, Requirements Validation, Requirements Management, Requirements Traceability, Prioritising Requirements, Change Management for Requirements, Co-development of Requirements and Architectural Artefacts, Requirements Engineering for Software Product Lines.
The topics are in depth and concise. No filler chatter to make the book bigger. The way it covers the topics is through the use of a visual framework which breaks the topics down into different topics and activities. The framework allows you to see how all the topics and activities are related.
The book contains a nice glossary, index and a well organized section on the references and other reading material.
The book is big, which is a welcome change from some of the small books being printed today. Some of the diagrams in the smaller books can hardly be read. That is not the case with this book.
This book does a wonderful job of making a very intense and difficult job understandable. If you have anything to do with software development this book is a must read.
If you buy just one book on software development in this decade, make this the book. You won't regret it.