My Agile journey started in 2001, when I was managing a development team for a scientific research group. There was one primary, overwhelming problem – we were always missing our deadlines.
Development would go on for several weeks, and then we would start an uncertain cycle of testing, debugging, regression testing, more debugging, etc. We never knew how long it would take to have a bug-free, fully-tested release.
A co-worker had heard about Extreme Programming. On paper, I didn’t think it would help, but I agreed to give it a try. We purposely went “extreme”, to make sure that we could fully understand the impact. This meant full pairing, full TDD, and fully automated Acceptance Testing.
Before starting implementation, we had a planning session directly with our main customer – the research lead. This resulted in a prioritized, sequential list of small stories.
At first, our IT management and the scientific lead were very disappointed, because it seemed that we were moving very slowly. The rigorous technical activities meant that we were only implementing a small amount of functionality in each 2-week iteration.
Their perception was that we had previously been much faster with development. But of course, the testing and debugging activities were now being included in each iteration, avoiding the long post-development activities we had been doing before. Our investment in automation meant that we soon started going faster.
After our first release, the light bulbs went on for all of us. Since we were proceeding in priority order, and were completely tested at the end of each release, there was no problem hitting a deadline. The only question was how many of the low-priority stories would be included.
The science lead became our biggest fan, and quickly realized the value for his research activities. He started working very closely with us, wanting more frequent releases and asking us to help him innovate in some new areas. He was amazed that we allowed him to change direction after every sprint, and he soon saw us as an important partner in his research activities.
For the first time in my development career, I had complete confidence that we could always hit a deadline, even with changing priorities.
Connect with the author