Agile Development Infrastructure—on Premises or in the Cloud?

own infrastructure, rent space and own servers, or rent infrastructure in the clouds? It is important to better understand each option and assess your circumstances and needs before formally deciding on an approach.

Owning Server and Renting space (aka, Co-location as a service)

Co-location as a service refers to renting space in the clouds by a service provider in order to physically host your server or servers. This is slightly different from cloud infrastructure where you rent a service that provides you access to infrastructure without necessarily knowing the details behind it.

You would utilize this option because you want to have the ownership and control of the box and content therein but do not have the budget to establish a physical datacenter on premises therefore minimizing expenses. This includes not having to hire and manage datacenter staff for to support this facility.

This approach can be particularly advantageous when you are a small company or start-up organization that has a website that you rely on for revenue but you are not in a position to establish a data center on-premises. Other advantages of a co-location service are that they typically provide scalability bandwidth based on your need, generator backup, and remote console access.

A distinct advantage for those who are agile proponents in a startup or small company, is that you do not have to spend time establishing a datacenter, but instead focus on the development of the project. It allows you to minimize datacenter infrastructure debt and scale to the space needs over time.

The biggest disadvantage is that there may be security and control concerns. Any servers you own are in someone else's datacenter. It is important to ensure there is rigorous security access into this facility. However, because it is the primary business of this service provider, there will most likely be fairly extensive security access control. You also want to ensure the datacenter staff are experienced troubleshooters and quick to resolve connectivity and network performance problems. Finally, it is important to gauge the profitability of the co-location service provider you select. If this service provider goes out of business, it may be difficult to get your server out of the service provider datacenter. Understand how portable the data on the server is and ensure backups are readily available from another site, especially if this server is hosting production data.

Some companies that provide co-location services include ColoSpace, I/O Data Centers , Colocation.com and Peer1 amongst others. They all provide either strictly collocation services or co-location as part of their set of services. Since co-location is most advantageous when the service is within your location, it is best to perform a search on "co-location" and possibly your city or state.

Renting Infrastructure in the Clouds

Renting or leasing from a cloud infrastructure is a more recent concept and option that some organizations are utilizing where the infrastructure (servers, software, etc.) is effectively in the internet cloud. This service is sometimes known as cloud computing but have a variety of other names each with slightly different focuses and approaches including software as a service (SaaS) sometimes known as the application service provider (ASP) model, platform as a service (PaaS), application infrastructure provider (AIP). In this article we will call it cloud infrastructure where you have a hosting service provider that may provides hardware, tools, software, network, etc. that is available to subscribers. It follows a pay per use approach that may be seen as utility computing, since you are charged for the portion you are using.

The advantage of renting the cloud infrastructure is that it helps you

About the author

Mario  Moreira's picture
Mario Moreira

Mario Moreira is a Columnist for the CM Journal, a writer for the Agile Journal, an Author, an Agile and CM expert for CA, and has worked in the CM field since 1986 and in the Agile field since 1998. He has experience with numerous CM technologies and processes and has implemented CM on over 150 applications/products, which include establishing global SCM infrastructures. He is a certified ScrumMaster in the Agile arena having implemented Scrum and XP practices. He holds an MA in Mass Communication with an emphasis on communication technologies. Mario also brings years of Project Management, Software Quality Assurance, Requirement Management, facilitation, and team building skills and experience. Mario is the author of a new book entitled “Adapting Configuration Management for Agile Teams” (via Wiley Publishing). It provides an Agile Primer and a CM Primer, and how to adapt CM practices for Agile Teams. Mario is also the author of the CM book entitled, “Software Configuration Management Implementation Roadmap.” It includes step-by-step guidance for implementing SCM at the organization, application, and project level with numerous examples. Also consider visiting Mario’s blog on CM for Agile and Agile adoption at http://cmforagile.blogspot.com/ . You may reach Mario by email at Mario.Moreira@cmcrossroads.com.