Image by @kellysikkema
What is Agile?
Agile is being flexible in delivering Value to the customer. It is The Team sport. You must read Principles behind the Agile to deepen your understanding.
What is Value?
Solving customer problem is Value. Discussion on Value is always a great sign of a good team. But sometimes, Value is relative, depending upon the context.
Best Practices in Agile
The most important practice is experimenting with your approach to efficiently deliver the Most Value to the customer.
Every team is different with its own set of constraints & skills. Experiment to figure out what works for you. Below is the list of practices that worked for us over the years.
Standup
- Timebox standups to the max of 15 minutes regardless of your team size. In the case of smaller team size, decrease the time.
- If you are blocked, say it, and someone will say, I will help.
- If you have questions that will require more time, then take them offline.
- If you require help from a team member, say it and set up a time later.
- Create a culture where everyone feels safe to say it is taking longer than expected.
Story Review and Refinement
- Understand the Value of the feature. If you have a dedicated product team, create a culture to ask for supporting data to establish the Value.
- Conduct UI research with real customers. And attach UI mockups with the stories.
- Use time-box Spike to increase understanding.
- Try to follow INVEST principle. A story should be:
- I - Independent
- N - Negotiable
- V - Valuable
- E - Estimable
- S - Small
- T - Testable
- Prioritize customer ESCALS/Tickets over all things possible.
- Suppose it is taking longer to refine a story. Park it and allow everyone to think about it.
- If you can not engage with the customers directly and have the luxury of the customer support team, always invite a CSR to your team.
- If you have a new team member or work asynchronously, include the click path in the story.
- Acceptance Criteria (AC) of the story is not final; change as you implement it.
- When in doubt if that’s what customers would love, deliver the smallest possible piece of the feature.
- Use feature flags to conduct experiments.
- Use monitoring tools to deepen your understanding of how customers use the features.
Story Estimates
- Story estimates should be quick activity. If it takes longer than a minute to estimate a story, take it back to the review session.
- Always vote secretly, unless it is evident to everyone.
- Do not argue over a minor difference in estimates. Take the bigger one, unless a team member strongly feels about it. But time-box the discussion.
- If estimates are consistently big, take stories back to the review session. Apply INVEST principle on stories.
Retro
- Feature demos are for customers. But if the customer is not present, their sole purpose is to praise the team. Appreciate your team member.
- Be willing to experiment with your approach.
- Invite CSR to demo customer frustrations and happy stories.
What to Track?
- Do not track velocity etc. at an individual level at all costs.
- Try to gather metrics that prove the Value is delivered. But if your organization uses the velocity metric in ways that you can not change, then use the Value delivered metrics as a counterargument.
- Gather enough data to verify value delivery.
Conclusion
- Be kind, and have fun along the way. No feature is ever complete unless you are Twitter.