Specification by Example: How Successful Teams Deliver the Right Software (英語) ペーパーバック – 2011/6/6
Kindle 端末は必要ありません。無料 Kindle アプリのいずれかをダウンロードすると、スマートフォン、タブレットPCで Kindle 本をお読みいただけます。
Specification by Example is an emerging practice for creating software based on realistic examples, bridging the communication gap between business stakeholders and the dev teams building the software. In this book, author Gojko Adzic distills interviews with successful teams worldwide, sharing how they specify, develop, and deliver software, without defects, in short iterative delivery cycles.About the Technology
Specification by Example is a collaborative method for specifying requirements and tests. Seven patterns, fully explored in this book, are key to making the method effective. The method has four main benefits: it produces living, reliable documentation; it defines expectations clearly and makes validation efficient; it reduces rework; and, above all, it assures delivery teams and business stakeholders that the software that's built is right for its purpose.About the Book
This book distills from the experience of leading teams worldwide effective ways to specify, test, and deliver software in short, iterative delivery cycles. Case studies in this book range from small web startups to large financial institutions, working in many processes including XP, Scrum, and Kanban.
This book is written for developers, testers, analysts, and business people working together to build great software.
Purchase of the print book comes with an offer of a free PDF, ePub, and Kindle eBook from Manning. Also available is all code from the book.What's Inside
- Common process patterns
- How to avoid bad practices
- Fitting SBE in your process
- 50+ case studies
===============================================Table of Contents
- Key benefits
- Key process patterns
- Living documentation
- Initiating the changes
- Deriving scope from goals
- Specifying collaboratively
- Illustrating using examples
- Refining the specification
- Automating validation without changing specifications
- Validating frequently
- Evolving a documentation system
- Iowa Student Loan
- Sabre Airline Solutions
- ePlan Services
- Concluding thoughts
Part 1 Getting started
Part 2 Key process patterns
Part 3 Case studies
A UK based consultant, Gojko Adzic helps teams worldwide implement specification by example and agile testing practices. He has written two previous books on the subject and contributed to several open source projects supporting specification by example. Gojko is a frequent speaker at leading software development and testing conferences and runs the UK Agile Testing User Group.
A must read for everyone building non-trivial systems with long life spans! Some downsides (I’d given 5 stars without these):
- Although the case studies were very interesting, their reporting in the book was a bit shallow. I would liked to have seen more details and in-depth analysis of each case.
- As it says in the book, one of the best ways to learn to write good specifications is to study good examples, I expected to see more examples of specifications and wanted to see what the specs the teams in the case studies were creating look like.
- Although this book isn’t about tools, I would liked to have seen some kind of sketches or diagrams of the development / test / build / documentation environments the teams build in the case studies. I also think that the hierarchy or structure of the specs (e.g. epic-feature-story) would be one important topic to discuss about.
It’s not 5 stars because the examples could be better.
The book Specification by Example is the result of drawing experiences from how a number of actual project teams work with the practice Specification by Example. This makes the book particularly valuable, since its advice in not solely based on theories or opinions on how develop software, but it distills experiences of what has actually worked in different situations and in different domains.
The ideas of the practice Specification by Example have been in use for some time now, under different names like Acceptance Test-Driven Development, Agile Acceptance Testing and Behavior-Driven Development. The author chooses in my mind a sensible terminology for the practice itself and its different parts, or process patterns to use the authors term.
The book has two main parts, the description of the process patterns of Specification by Example, and a set of case studies of project that uses Specification by Example. In addition the book contains an introduction to the practice of Specification by Example and guidelines on how to introduce the practice in organizations.
These process patterns of Specification by Examples are described together with tips about "does" and "don'ts". The case studies part of the book contains six case studies covering a diverse set of domains.
As a software developer that was "test infected" 10 years ago, a think that the practice Specification by Example, essential for successful and efficient software development. I think this book is the best book on the market today, for learning and adopting the practice Specification by Example.