I often see the word “Agile” associated with cloud computing. That’s a word I know well. I wrote a class on Agile Programming, and I teach XP and SCRUM. I believe I’m Agile in my projects. But what does it really mean?
For some, “agile” is just a tactful way of saying “get it done cheaper”! But it’s more than that.
When we write “Agile” with a capital “A” it means it abides by the 12 principles of Agile programming. We could summarize those principles by saying; give customers high quality, quickly and for a good value. And when the customer changes their mind, adapt. That all sounds very obvious doesn’t it?
If we write “agile” with a lower case “a”, then it means “quick and well-coordinated in movement” (see http://dictionary.reference.com/browse/agile).
So, what does “cloud computing” mean?
Does cloud computing make IT more Agile (agile)? To determine this, we can analyze the cost, but cost can’t be the only driving factor. To be Agile, cloud services must satisfy users and must provide even greater benefit than traditional software.
I moved all my servers to EC2, not because it is cheaper, but because it is better for my company. The fact that it’s also cheaper is a pleasant by-product.
Using Windows Azure is not the cheapest way to deploy an ASP.NET application. It can however be the best (most Agile) way. At least if you care about things like scalability, fault-tolerance, security and simplicity.
There are many ways to streamline IT using cloud computing services. These services include Office 365, Google Apps, Windows Live, Amazon Web Services, Windows Azure, Salesforce.com, SharePoint Online and many more.
If you want a better understanding of cloud computing and how it can make your organization more Agile, take one of the courses in Learning Tree’s Cloud Computing curriculum. You can even take the course from the cloud using Learning Tree AnyWare
You may also like to read these articles that explain more about the different cloud services.
Please visit Learning Tree’s new .NET Programming blog.