How I learned to stop worrying and love Agile
Posted in Agile on October 30th, 2009 by JimHere at BPM Logic we really like Agile principles and methodologies, proselytise about them and use them on our projects (not for absolutely everything but a lot). I plan to write a lot more about Agile in future, how we apply it here and some of the experiences we’ve had and learned from. First off though I thought I would say a little about how I came to Agile in the first place.
So I’ll skip all the David Copperfield stuff, but my first IT job was at Cap Gemini where I started out as a developer and consultant, before gravitating towards leading technical teams. This means I probably came to my later jobs in Project Management with a more pro-developer mindset than many PMs. My belief has always been that motivated professional people want to do a good job, you just need to remove the barriers that are stopping them from doing this, and let them do their job. A command and control approach doesn’t sit well with me and generally this doesn’t seem to foster an effective and motivated workforce. CG was a very big and varied company with a lot of great and talented people doing great things, but clearly back in those days I could see there was something wrong when I encountered monolithic projects that moved slowly for months producing work which then got canned as not fit for purpose.
I became quite interested in the question of what made software projects work or not work. I was lucky enough to get involved in some of the very early work on Sharepoint with people from Microsoft and had great fun visiting Seattle.

There I came across MSF which whilst not strictly Agile in itself has principle that got me thinking along Agile lines.
1. Foster open communication
2. Work towards a shared vision
3. Empower team members
4. Establish clear accountability and shared responsibility
5. Focus on delivering business value
6. Stay agile, expect change
7. Invest in quality
8. Learn from all experiences
As well as engineering practices like regular build and testing cycles.
I tried to then take some of these principles to my later jobs as I thought about, and experimented with, what made effective software projects.
It wasn’t until a later job at uswitch.com I came across Agile, Scrum and XP properly. At the time they were still using a very waterfall model of development with heavy up front design. This could be made to work for them where they were doing projects that involved building new product calculator products which followed similar schedules to previous products. However without going into too much detail, I ended up being responsible for a very technically complex project different from those that they had done before.
Meanwhile there was a debate going on in the company about the adoption of Agile. Obviously this involved a massive cultural shift and what this means for companies, and how you might approach this with customers, is something I’ll come back to in a later post.
Whilst my project was only in the end a semi-Agile project, it was clear to me that without applying Agile and XP principles backed up by a technical lead with good experience and a strong belief in XP it would never have succeeded in anything close to the desired schedule. For me the proof was in the pudding and it convinced me of the power and benefits of Agile. I should also point out that getting to the start of development on this project had taken at least twice as long as the project itself took to deliver so a more Agile approach to requirements would clearly have been beneficial. Later the company then moved on to a Scrum methodology and I believe they are still using a version of this that they are all very happy with.
It’s taken us a long time at BPM Logic to get Agile working in a way that runs smoothly for us and we’re definitely still learning but we like to think we’re doing okay. I’ll write more about some of the things we do and what we’ve learned in the future.


