Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
The Agile Developer's Handbook

You're reading from   The Agile Developer's Handbook Get more value from your software development: get the best out of the Agile methodology

Arrow left icon
Product type Paperback
Published in Feb 2018
Publisher Packt
ISBN-13 9781787280205
Length 398 pages
Edition 1st Edition
Concepts
Arrow right icon
Author (1):
Arrow left icon
Paul Flewelling Paul Flewelling
Author Profile Icon Paul Flewelling
Paul Flewelling
Arrow right icon
View More author details
Toc

Table of Contents (16) Chapters Close

Preface 1. The Software Industry and the Agile Manifesto 2. Agile Software Delivery Methods and How They Fit the Manifesto FREE CHAPTER 3. Introducing Scrum to your Software Team 4. Gathering Agile User Requirements 5. Bootstrap Teams with Liftoffs 6. Metrics that will Help your Software Team Deliver 7. Software Technical Practices are the Foundation of Incremental Software Delivery 8. Tightening Feedback Loops in the Software Development Life Cycle 9. Seeking Value – How to Deliver Better Software Sooner 10. Using Product Roadmaps to Guide Software Delivery 11. Improving Our Team Dynamics to Increase Our Agility 12. Baking Quality into Our Software Delivery 13. The Ultimate Software Team Member 14. Moving Beyond Isolated Agile Teams 15. Other Books You May Enjoy

What this book covers

Chapter 1, The Software Industry and the Agile Manifesto, states that a crisis in the software industry led to a major turning point and the formation of the Agile Alliance. We'll examine the Alliance's origins and discuss how it revolutionized the way we think about building software. We'll also look at the Agile Manifesto, its values and principles, and the impact they have on how software professionals work.

Chapter 2, Agile Software Delivery Methods and How They Fit the Manifesto, provides an overview of the mechanics and the rationale behind the three most popular Agile methods: Scrum, XP, and Kanban. We'll look at their similarities and differences, as well as how they look to achieve the Agile Manifesto's guiding values and principles.

Chapter 3, Introducing Scrum to your Software Team, provides a step-by-step guide to your first Scrum Sprint. We'll walk you through all of the key activities, including setting up your Agile board, planning to Sprint, a day-in-the-life of a Scrum team, and the differences between the Sprint Review and the Sprint Retrospective. The aim is to give you everything you need to take the first step on your Agile journey.

Chapter 4, Gathering Agile User Requirements, explains that working iteratively to incrementally deliver software needs a different approach to requirements gathering. We look at the approach most commonly used by Agile methods, the User Story. We'll look at how to write a well-defined story. We'll introduce Agile estimation using a technique called relative sizing, and we'll play our first game of planning poker.

Chapter 5, Bootstrap Teams with Liftoffs, explains that the aim of a liftoff is to set teams up for the best possible chance of success. We'll walk you through the activities of a liftoff, which include communicating the vision, defining mission outcomes, and deciding how you're going to work together.

Chapter 6, Metrics that will Help your Software Team Deliver, states that once your team is on a mission, it's important that you know you're moving in the right direction. Taking the right measurements will help us do that. We'll look at various real-world examples that will help your team determine the metrics they should and shouldn't be using. We'll look at negative metrics, positive metrics, metrics that give you quantitative feedback and metrics that give you qualitative feedback. We'll then discuss how to make the information visible and measure the trends over time so that you can see you're improving and moving along the right trajectory.

Chapter 7, Software Technical Practices are the Foundation of Incremental Software Delivery, explains that the right technical practices will increase your team's agility. Practices such as Refactoring, Test-Driven Development, Pair Programming, and Continuous Integration give us confidence that what we're delivering is well designed, tested, and meets expectations. We'll look at these practices, as well as others, and offer ideas on how to introduce them to your team's toolkit.

Chapter 8, Tightening Feedback Loops in the Software Development Life Cycle, shows how to implement an incremental approach to software delivery. We discuss the important role that user experience plays in helping us tease out what our customer needs. We introduce Lean thinking and show how it seeks to optimize our process so that we can deliver sooner. We also show how to shortcut our learning by conducting a Lean Startup experiment with a real-world example.

Chapter 9, Seeking Value – How to Deliver Better Software Sooner, looks at real-world examples to shift the delivery team's perspective from one of just delivering on time, on scope, or on budget, to ways that will actually seek value. We also look at the practical ways teams can use this approach to create feedback loops so that they can measure their value-seeking success as they go.

Chapter 10, Using Product Roadmaps to Guide Software Delivery, explains that one of the roles of the Product Owner is to hold the product vision for the team. We show how to discover our key product features using two different techniques: User Story Mapping and Impact Mapping. We show how to prioritize features/User Stories against release milestones to create the initial Product Roadmap. We also introduce Rolling Wave Planning, a technique for adaptive planning.

Chapter 11, Improving Our Team Dynamics to Increase Our Agility, states that Agile teams are self-organized, autonomous, and prefer high-bandwidth face-to-face communication. This may seem like a recipe for a high performing, collaborative team, but it doesn't always work that way. This chapter aims to demystify some of the art of fostering good team dynamics by looking at what makes a great team. We also describe the five stages of team formation and give techniques for helping a team become the best it can be.

Chapter 12, Baking Quality into Our Software Delivery, looks at several popular approaches that teams take to increase their performance further. We discuss the cross-pollination of skills in cross-functional teams, a total team approach called mob programming, how to live the dream of having no more bugs, and we question the need for estimates in software development.

Chapter 13, The Ultimate Software Team Member, speaks about the power of motivation and how to tap into our inner drive to become the best at what we do. We define some of the characteristics of a great Agile team member. We also consider the fact that, as knowledge workers, we're in a constant state of learning, and give some pragmatic suggestions for putting time aside to learn.

Chapter 14, Moving Beyond Isolated Agile Teams, explains that in order to become an Agile organization, a change in management style is needed. We look at how the leadership model begins to switch to a supportive role and introduce the concept of the Servant Leader. We look at how modern leadership and different organizational structures create an adaptive, more responsive network of teams. This chapter will help you recognize the signs that an organizational transformation is taking place so that you can take advantage of this transformative approach to work.

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime