I have often heard it said the more things change the more they stay the same. While I am sure it is not completely true all of the time, it is interesting how many times our industry regenerates certain concepts, only better and better with each incarnation. There are many examples of this. When I started my career, I was responsible for several large mainframe applications for a large oil company. These were the days before the client server revolution. At that time, application developers had the luxury of having their application hosted in a single instance. Their individual users did not deploy any software. Any time an enhancement or bug fix was deployed, the entire user community could instantly take advantage.
Today, there is a big trend toward SAAS based applications. This allows applications to have the luxury of having their applications hosted on a single instance where all of their users get the benefit of any deployed bug fixes immediately. Only this time, the platforms are cloud based, elastic, and can be deployed on virtual systems that allow for low cost scaling to user demands. It is a very exciting time to be in the field of software development.
As the world was moving to client server in the 1990s and early 2000s, there became a need to transform the way we build software to be much more agile. At that time, there was a tremendous push toward transforming R&D organizations to be able to deliver software in a more predictable manner with high quality. As an R&D leader at the time, I was a part of a major Agile transformation. Today, I am involved in building a SAAS platform for our company. What is enlightening to me is the demands and pressures for agile delivery have surfaced again. Only this time, with more rigor and even more focus on continuos delivery.
On a flight from Boston to Houston, after a meeting with several colleagues regarding our SAAS direction, the similarities between what we need to do now and what we needed to do a few years ago gave me cause to take a look back at our first agile transformation and contrast that to the demands of today’s SAAS based development projects. They are quite similar, only this time around we must be faster, stronger, more disciplined and more agile.
Here is a paper I wrote back then. The similarities between then and now are intriguing. So much so that I have actually decided to start blogging about Agile software development again. I hope you enjoy. Here is the link to the paper…
Managing a Large “Agile” Software Engineering Organization