Keeping with the tradition of discuss agile meet-ups, Sanjay, the host, welcomed the participants and it began with the introduction of all the participants.
The overall agenda was to understand how XP (eXtreme Programming) practices help in becoming and being Agile by identifying the benefits of XP practices.
So, we were first asked to list down some reasons why organizations adopt Agile as a development methodology. Some of the thoughts were:
- Faster time to market
- Fail fast
- Faster feedback loops
- Better quality
- Incremental delivery
Later, we discussed the list of XP practices that are available:
- Pair Programming
- Test Driven Development(TDD)
- Refactoring/Emergent Design
- Continuous Integration
- Collective code ownership
- Sustainable pace
- Eliminate waste
We then formed teams of four and each team was assigned one of the top four XP practices listed above. In a time-boxed manner (20 minutes), we were asked to identify:
- How does the XP practice (assigned to a team) help the organization?
- What are the challenges in applying that XP practice?
The four teams then presented their thoughts. Some of the thoughts that sparked detailed discussions are:
- How to identify pairs during initial days of the project?
- How code reviews are integrated into pair programming?
- What are the difficulties in implementing TDD in legacy code?
- How to estimate refactoring effort? Do we use historical velocity?
- How to manage build failure issues when implementing CI (Continuous integration)?
Those who attended the event would fully agree that these three weekend hours were really spent well, considering the tremendous knowledge gain!