Cette série explore en profondeur les principes de l'ingénierie logicielle agile et de la conception. Elle se concentre sur des concepts et des modèles pratiques qui permettent aux développeurs de créer des logiciels robustes et maintenables. Les lecteurs apprécieront son accent sur les pratiques efficaces et une approche évolutive du développement.
Follows two TDD projects from start to finish, illustrating techniques programmers can use to increase the quality of their work. The examples are followed by references to the featured TDD patterns and refactorings. This book emphasises on agile methods and fast development strategies.
Kent excels at crafting code that is not only functional but also clear and enjoyable to read. Each chapter offers valuable insights into the critical decisions developers face when aiming for quality code. Many teams have a standout developer who consistently makes sound decisions, resulting in code that is easy to comprehend and modify. This book aims to help you become that developer, appealing to both seasoned programmers looking to refine their skills and novices eager to learn. The importance of readable code is often underestimated, but Kent’s teachings provide an opportunity for all to enhance their understanding. Code should be readable by humans, and Kent Beck distills his expertise into a collection of implementation patterns that make code worth reading. He emphasizes that clear and readable code stems from applying simple principles, enabling developers to write intention-revealing code that is easy to understand and adaptable for future changes. This resource bridges the gap between design and coding, introducing a new perspective based on values and principles. Beck presents 77 patterns for everyday programming tasks, covering various aspects such as class design, state management, and method organization. With diagrams and examples, this book serves as an essential guide for developers at all levels, particularly those familiar with software patterns or agile methods, and is invaluable for teams aiming to enhan
"Offers a requirements process that saves time, eliminates rework, and leads directly to better software. A great way to build software that meets users' needs is to begin with 'user stories': simple, clear, brief descriptions of functionality that will be valuable to real users. ... [the author] provides you with a front-to-back blueprint for writing these user stories and weaving them into your development lifecycle. You'll learn what makes a great user story, and what makes a bad one. You'll discover practical ways to gather user stories, even when you can't speak with your users. Then, once you've compiled your user stories, [the author] shows how to organize them, prioritize them, and use them for planning, management, and testing"--Back cover.
Acceptance Test-Driven Development (ATDD) is an agile method that effectively supports collaboration among software developers, testers, and stakeholders from the start of a project. With ATDD, participants can jointly formulate requirements that are testable and automatable, leading to faster projects and better software. Pioneer Markus Gärtner describes step by step how to correctly implement and apply ATDD. He explains how to identify and document requirements and how to translate them into automated tests. Through two illustrative practical projects, readers will learn about ATDD using various languages and frameworks (Cucumber, Selenium, FitNesse). Each project is detailed with all relevant artifacts, including test automation classes, step definitions, and complete implementation examples. This hands-on approach provides a clear understanding of ATDD and offers valuable insights into establishing corresponding processes. Following the example projects, the fundamental principles are systematically summarized and explained in detail, demonstrating how ATDD integrates into the broader development context.
This remarkable book combines practical advice, ready-to-use techniques, and a deep understanding of effective software development. It has transformed software teams, showcasing the potential of its ideas. Lean practitioners have found immense value in the authors' previous work, and this sequel surpasses it, offering a comprehensive exploration of lean principles in software development. The authors blend history, theory, and practical applications seamlessly. Readers will appreciate the depth of knowledge, particularly regarding lean techniques in product development and manufacturing, which are rarely translated effectively to software.
The book provides a thorough introduction to lean principles and practices tailored for software managers and engineers, supported by success stories that illustrate the application of these concepts. Each chapter includes exercises to reinforce key points, making it an invaluable resource for those looking to understand how lean ideas can enhance software development.
In their sequel, the authors delve deeper into themes introduced in their first book, focusing on value, waste, and people within the context of software. Drawing on their extensive experience, they guide readers through the optimization of the software value stream, presenting proven techniques and case studies from leading organizations. This hands-on approach equips readers with the right questions to ask and the key is