Agile has become today’s dominant software development paradigm, but agile methods remain difficult to measure and improve. Essential Skills for the Agile Developer fills this gap from the bottom up, teaching proven techniques for assessing and optimizing both individual and team agile practices. Written by four principals of Net Objectives—one of the world’s leading agile training and consulting firms—this book reflects their unsurpassed experience helping organizations transition to agile. It focuses on the specific actions and insights that can deliver the greatest design and programming improvements with economical investment. The authors reveal key factors associated with successful agile projects and offer practical ways to measure them. Through actual examples, they address principles, attitudes, habits, technical practices, and design considerations—and above all, show how to bring all these together to deliver higher-value software. Using the authors’ techniques, managers and teams can optimize the whole organization and the whole product across its entire lifecycle. Essential Skills for the Agile Developer shows how to Perform programming by intention Separate use from construction Consider testability before writing code Avoid over- and under-design Succeed with Acceptance Test Driven Development (ATDD) Minimize complexity and rework Use encapsulation more effectively and systematically Know when and how to use inheritance Prepare for change more successfully Perform continuous integration more successfully Master powerful best practices for design and refactoring
Test-Driven Development (TDD) offers immense promise to software teams who want to improve efficiency, quality, and maintainability. But many organizations that implement TDD find it difficult to maintain their momentum as their test suites grow in size and complexity. Now, lean-agile pioneers Scott Bain and Amir Kolsky show how to avoid or overcome this problem – and keep driving more value from TDD over time. The first guide focused on sustaining TDD, Sustainable Test-Driven Development reflects the proven approach Bain and Kolsky have developed and taught over the past five years. Through clear descriptions, relevant examples and case studies, and hands-on exercises, Bain and Kolsky combine theory and hands-on practice, guiding you through all this, and more: Understanding the anatomy of a good test Implementing sustainable TDD processes Testing behavior, singularities, boundaries, specifications, workflow, and creation Managing dependencies Leveraging the Test-Invariance Principle Testing legacy code, and refactoring to testability Applying TDD to databases, user interfaces, multi-threaded/multi-processing systems, and architecture Using TDD to improve performance and scalability And much more Using this book, you can successfully gain consensus and lead TDD initiatives that deliver the value they promise: not just in the short-term, but throughout your project lifecycle – and the lifecycles of projects you haven't even imagined yet.
Agile has become today’s dominant software development paradigm, but agile methods remain difficult to measure and improve. Essential Skills for the Agile Developer fills this gap from the bottom up, teaching proven techniques for assessing and optimizing both individual and team agile practices. Written by four principals of Net Objectives—one of the world’s leading agile training and consulting firms—this book reflects their unsurpassed experience helping organizations transition to agile. It focuses on the specific actions and insights that can deliver the greatest design and programming improvements with economical investment. The authors reveal key factors associated with successful agile projects and offer practical ways to measure them. Through actual examples, they address principles, attitudes, habits, technical practices, and design considerations—and above all, show how to bring all these together to deliver higher-value software. Using the authors’ techniques, managers and teams can optimize the whole organization and the whole product across its entire lifecycle. Essential Skills for the Agile Developer shows how to Perform programming by intention Separate use from construction Consider testability before writing code Avoid over- and under-design Succeed with Acceptance Test Driven Development (ATDD) Minimize complexity and rework Use encapsulation more effectively and systematically Know when and how to use inheritance Prepare for change more successfully Perform continuous integration more successfully Master powerful best practices for design and refactoring
Thank you for visiting our website. Would you like to provide feedback on how we could improve your experience?
This site does not use any third party cookies with one exception — it uses cookies from Google to deliver its services and to analyze traffic.Learn More.