Even with more open and standards-based platforms, applications and services tend to be permanently locked into specific hardware silos. For example, a new application project begins with the purchase of a number of servers that become the property of that application. This tight coupling remains, regardless of how much or little of the hardware is utilized by the application at any particular time.
Typically, server and desktop platforms can be viewed as a logical vertical stack of layers---starting with hardware, then operating system, then applications, and then user settings such as profiles.
An ADI Architecture starts with a view that the layers of application delivery can be separated and re-coupled how and when they are required by the business. By using the entire server infrastructure as one platform on which to layer operating systems, applications and user personalization settings are applied in response to the current business and user requirements. Hardware can be dynamically re-purposed to support productivity applications during the day and backend processing at night.
When this approach is applied to desktops, it is clear that the flexible computing components that form the basis of flexible desktops and the user's operating environment can be dynamically delivered to any end-user device, maintaining a consistent delivery experience regardless of endpoint scenario. Conversely, a purpose-built desktop can be delivered only with the applications, settings, and services currently required by the user. With purpose-built desktops, if all a user needs for a session is access to an e-mail application, they do not need to wait for the desktop indexing service to initialize. When combined with a centralized application and data infrastructure, resources are conserved by delivering only the applications that are required. Further, a defined set of standard builds can be secured and delivered, allowing for consistency in the implementation of security measures.
Application Delivery can also spread or mitigate the risks inherent in complex environments where applications coexist. Overall availability can be increased by spreading services across the entire logical datacenter, or in response to an individual outage.
More efficient utilization of hardware and other resources can be achieved when resources are not dedicated to a specific service. Over-utilized services can be distributed to be shared by under-utilized platforms.
This process of decoupling is so fundamental to best practice application delivery that there are very few exception cases. Exceptions may exist when a load is fixed and predictable, or when privacy or other legal issues arise; or if the layering created by decoupling creates an overhead that reduces the benefits significantly.
The guiding principles for creating ADI building blocks are:
Change the IT design mindset from tightly coupled platforms to a dynamically coupled approach that views the hardware infrastructure as one massive platform on which to layer operating systems, applications, and user settings.
Dynamically couple applications, data, hardware, and locations, to enable the delivery of only the applications that are currently required, while keeping the data secure and using the hardware as efficiently as possible.
- Start with a base platform, or a set of base platforms, that is sufficiently standard to accommodate all other layers.
- Include standard interfaces for each layer, where possible, to facilitate interoperability.
- Allow business processes and workflows to determine how the application delivery platform is coupled.
- Allow the user access scenario to determine what functionality (for example, printing and file access permissions) is included when coupling the platform.