Tag Archives: Workshop

Talk: Short Guide to your Agile Transformation

About

This is a talk I delivered in Bucharest for the Agile Software Meetup Group. More and more companies want to transition to agile, because the benefits of faster delivery are essential in today’s software market.

Agile Transformation

Me and Mozaic Works’ approach to transforming an organization to agile has a lot to do with our core beliefs of small steps and fast feedback. For us an agile transformation is a tailored process for each organization, and the context is always essential.

Starting with the WHY is very important. I want to understand the internal values of the company and then decide together with the management, sponsors and the teams why they want to make this transformation. Without having the active involvement in any transformation, the whole process becomes very difficult or even impossible to put in place.

I don’t want to start from “what process to use” (Scrum, Kanban, DSDM, SAfE, etc), but rather discover the process while working with the people from that organization and understanding their needs. Together we create the process by applying things I know work well and by experimenting some things that might or might not work. As with any type of design, I prefer taking decisions as late as possible, because the more I learn the better the decision is.

Taking Baby Steps

I wrote a post on the history of Taking Baby Steps, you can read it here.

Now I would like to tell you more about the workshop and the technique itself. While coding, for me it is very important to be focused on one idea. Why? Because this is how programmer mistakes appear in the code; some people tell them bugs. The other thing I am interested in is to have an undo button for every change. This is why I want to commit every 1-2 minutes.

The rules are the following:

Steps

Setup source control repository.

Setup a timer for 2 minutes interval when you start.

Write exactly one test

If the timer rings and the test is red then revert and start over.

If the test is green before timer rings then commit.

Restart timer (no discussions in between timers)

Refactor

If the timer rings and the refactoring is not complete then revert and start over.