Specification by Example - How Successful Teams Deliver the Righ...
Specification by Example: How Successful Teams Deliver the Right Software Gojko Adzic (Author) <<Product Details>> - Paperback: 296 pages - Publisher: Manning Publications; 1 edition (June 3, 2011) - Language: English - ISBN-10: 1617290084 - ISBN-13: 978-1617290084 <<Summary>> 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. <<Who Should Read this Book>> This book is written for developers, testers, analysts, and business people working together to build great software. <<What's Inside - Common process patterns - How to avoid bad practices - Fitting SBE in your process - 50+ case studies ### Specification by Example: Key Insights and Practices #### Introduction "Specification by Example" is a comprehensive guide authored by Gojko Adzic, focusing on the collaborative method of specifying requirements and tests through realistic examples. This approach aims to bridge the communication gap between business stakeholders and development teams, ensuring that the software developed meets the intended business needs and objectives. The book covers various aspects of implementing this method effectively, supported by over 50 case studies from different industries and organizational sizes. #### Key Benefits of Specification by Example The method of Specification by Example offers several significant advantages: 1. **Efficient Change Implementation**: With clear and concise examples, teams can implement changes more efficiently, reducing the time spent on understanding requirements and minimizing misunderstandings. 2. **Higher Product Quality**: By using examples, developers and testers can create more accurate and reliable code, leading to fewer bugs and higher overall quality of the software product. 3. **Less Rework**: Clear and detailed specifications reduce the need for rework, saving both time and resources. 4. **Better Work Alignment**: All team members, including developers, testers, and business stakeholders, have a shared understanding of what is being built and why, which enhances collaboration and alignment. #### Key Process Patterns The book outlines seven key process patterns that are crucial for making Specification by Example effective. These patterns include: 1. **Deriving Scope from Goals**: This involves starting with business goals and then deriving the scope of the project based on those goals. It ensures that the project aligns with strategic objectives. 2. **Specifying Collaboratively**: All relevant stakeholders, including business analysts, developers, and testers, work together to define requirements and examples. This collaborative approach helps ensure that everyone understands the intent behind the requirements. 3. **Illustrating Using Examples**: Instead of abstract descriptions, specific examples are used to illustrate requirements. These examples serve as a basis for discussions and help clarify any ambiguities. 4. **Refining the Specification**: The specification evolves over time as new information is gathered and feedback is received. This iterative refinement ensures that the final product meets the evolving needs of the business. 5. **Automating Validation Without Changing Specifications**: Automated tests are created based on the examples, ensuring that the software behaves as expected. This automation allows for frequent testing and validation without altering the original specifications. 6. **Validating Frequently**: Regular validation checks are performed throughout the development cycle, ensuring that the software remains aligned with the specified requirements. 7. **Evolving a Documentation System**: The documentation system evolves alongside the software development process, maintaining living documentation that reflects the current state of the software. #### Practical Example A practical example provided in the book illustrates how Specification by Example works in a real-world scenario. Consider a loyalty system for a retail store. The business goal is to increase customer retention by offering incentives for repeat purchases. From this goal, the scope is derived, focusing on the basic features of the loyalty system such as point accumulation and redemption. **User Stories for a Basic Loyalty System:** - As a customer, I want to earn points for each purchase so that I can redeem them for discounts or free products. - As a store manager, I want to track customer points so that I can monitor the effectiveness of the loyalty program. **Key Examples:** - A customer makes a $50 purchase and earns 50 points. - A customer redeems 100 points for a discount of $10 on their next purchase. These examples help clarify the functionality and behavior expected from the loyalty system, serving as a basis for discussion and testing. #### Who Should Read this Book? This book is highly recommended for anyone involved in the software development process, including: - **Developers**: Learn how to implement Specification by Example in their projects. - **Testers**: Understand how to create effective automated tests based on examples. - **Analysts**: Discover techniques for specifying requirements collaboratively. - **Business People**: Gain insights into how to communicate their needs effectively to development teams. In conclusion, "Specification by Example" provides a valuable resource for teams looking to improve their software development practices by ensuring that the software delivered meets the intended business needs and objectives. Through the use of realistic examples and collaborative methods, teams can achieve higher quality, efficiency, and alignment in their projects.
剩余294页未读,继续阅读
- 粉丝: 4
- 资源: 21
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- nuget 库官方下载包,可使用解压文件打开解压使用
- 非wine、原生Linux迅雷安装包deb文件,支持Ubuntu、UOS统信、深度Deepin、LinuxMint、Debain系通用
- KUKA机器人安装包,与PROFINET软件包
- 船舶燃料消耗和二氧化碳排放分析数据集,燃料消耗和碳排放关联分析数据
- req-sign、bd-ticket-ree-public加密算法(JS)
- 全自动批量建站快速养权重站系统【纯静态html站群版】:(GPT4.0自动根据关键词写文章+自动发布+自定义友链+自动文章内链+20%页面加提权词)
- 串联式、并联式、混联式混合动力系统simulink控制策略模型(串联式、并联式、混联式每个都是独立的需要单独说拿哪个,默认是混联式RB) 有基于逻辑门限值、状态机的规则控制策略(RB)、基于等效燃油
- 法码滋.exe法码滋2.exe法码滋3.exe
- python-geohash-0.8.5-cp38-cp38-win-amd64
- Matlab根据flac、pfc或其他软件导出的坐标及应力、位移数据再现云图 案例包括导出在flac6.0中导出位移的fish代码(也可以自己先准备软件导出的坐标数据及对应点的位移或应力数据,可根据需
- 1
- 2
- 3
- 4
前往页