The Army spends, under 85 programs, approximately $6.7B annually on Information Technology (I.T.) without a method to converge these systems into a centralized infrastructure designed to improve robustness and dynamically deliver web services to hundreds of thousands of users while reducing risk.
IT Systems are often built in a stovepiped fashion without consideration if anyone else can leverage the capability much less scaling the capability to an enterprise service.
Hardware virtualization, Web 2.0 and Software as a Service (SaaS) are rapidly reshaping the industry. For the first time, software applications can be delivered directly to any user, globally, as online enterprise services become accessible via the web browser.
Getting the cost and complexity of scalable web operations under control requires an entirely new approach to infrastructure buildout. Hardware provisioning and equipment failures must to be dealt with automatically. The infrastructure has to scale dynamically without requiring application downtime. The deployment of new capability and modifying existing ones must be made much simpler and yet more robust.
Cloud Computing is the basis for this new infrastructure. Despite the industry interest about grid computing, grids have so far been limited to running stovepiped high-performance computing applications such as business intelligence or simulations. Web applications traditionally are not computational in nature – instead, they process large numbers of small concurrent transactions and/or deliver content which means they are I/O intensive but not necessarily computative.
Cloud Computing recognizes that conventional Operating Systems such as Linux and Windows are very good at managing software on a single server but what's missing is the ability to manage and operate distributed applications. Rather than trying to replace existing operating systems, or to add a yet another middleware layer, Cloud Computing is able to treat Linux and Windows as an integral part of the infrastructure.
Traditionally, a common infrastructure comes from firewalls, load balancers, web servers, application servers, database servers, etc. and then multiple applications are deployed on it. Cloud Computing enables a disposable infrastructure to reverse this process by including the required infrastructure within the application.
Whenever the application is started, the system can manufacture and assemble the infrastructure required to run it. Once the application is stopped, Cloud Computing can tear down the infrastructure built for it.
This dramatically simplifies both the construction and the operation of N-tier applications: building infrastructure for each individual application is much simpler than building and managing shared infrastructure. More importantly, including the infrastructure within each application makes applications self-contained and portable, enabling Cloud Computing to instantiate them on demand and migrate them from one grid to another.