Previous section.

Application Instrumentation and Control (AIC) API, Version 1.0
Copyright © 1999 The Open Group


The purpose of AIC is to provide facilities for sophisticated management of business applications. With the increased complexity of technology in the distributed computing environment the management challenge has increased over time. AIC is aimed at helping to manage those applications at the complex end of the envelope. These are multi-threaded, multi-instance, cross platform, long running applications that the business expects to be up and running for 24 hours of every day, 7 days of a week, all 52 weeks of the year. Typically they incorporate many processes with some complex interaction between them to function for the application to keep running. Often they include multiple locations with multiple time-zones.

The challenge is to rise above single technology silo management into application management. For this a collection of both traditional agent technology and information from within the application program is necessary. The solution must be more than monitoring and must enable features to affect the run-time behavior of the application (ie monitoring plus control). With this set of information and a data visualization product a solution can be generated. It should be possible to get so business focused that you can model and manage the business process itself.


As part of their daily routine, IT support staff are constantly evaluating enterprise-level application problems to determine their priority and the sequence in which each will be addressed. This evaluation requires an understanding of the impact of each problem, which problem affects most users, and which problem affects most sites. The case that has the most impact on the overall business is generally considered a priority. Therefore, a fundamental requirement of IT management today is to prioritize the management of the technical resources with regard to the business objectives.

The Application Management approach focuses support on the priorities of the business. One example of this business-focused support is the concept of Business Process Management. This allows information technology managers to define the critical resources that create, affect or deliver a business process or service. Each service is then given a priority based on its impact on the business. As problems with the managed resources occur, the business services that are affected by the problems are highlighted, clearly indicating which problems require attention first.

The AIC approach to application management addresses this issue by attempting to manage that business process in conjunction with the set of underlying technologies making it function.

AIC can see inside the Application - rather than surveying and reviewing it externally from the outside. This allows real business information to be available. When a failure occurs, it should be possible to answer the business managers' first question what is the economic impact to my business? with a business - not technical - answer.

The AIC standard is the definition of a two-way interface to be attached to the side of an application process (program). With this interface, query and set type functions are possible against the application whilst it is running. The standard defines an API and requires developers to add code to their application programs.

Access to real business data allows a whole new audience for traditional systems and application management technology. This provides sufficient services that a business operational manager can be given tools to effectively manage the application process. The two way interface provides control facilities so that on/off switches, sliders, dials and other features can be added to the application to affect its run-time behavior. Control allows the operations manager to re-configure the application whilst running to maximize resources for the next business deadline. It also allows changes to be made to react to changing business conditions (potentially unexpected) during the day.

The result is that information can be extracted from the application programs during run time for several different audiences - technology support staff, development support staff, and business operations staff.

AIC is intended to complement the functions of agents in environments where management of internally developed applications is required. Implied in this purpose is the desire to keep the footprint of additional software on the application machine as low as possible, as well as make the incorporation of a management API into the code as simple as possible for a developer. This requires a small learning curve to see some results, with as little theory as possible needed to be learnt to get off the starting block.

Key Principles

AIC is aimed at providing a simple API definition for addressing the above problems with several key principles in mind. These principles are outlined below:

below displays the concepts. For a given part of an application process it is possible to extract data on both sides of that piece of the process - work queued up, and work successfully processed. If the component fails, the business economic impact is clear - the management information queued up is the answer (on the left in this graphic).

In addition, shows control features within a process. This component can be switched on and off. The API provides a facility like this on/off switch to the business operations manager.

Figure: AIC Concepts - AIC for Component Compute

Functionality Highlights

In summary, the AIC API provides the following features:

Why not acquire a nicely bound hard copy?
Click here to return to the publication details or order a copy of this publication.

Contents Next section Index