Improving Application Quality by Controlling Application Infrastructure


will change within these environments. So rather than hope for a slowdown, IT teams need tools and approaches that help them improve quality in the face of explosive growth. 

In the area of the application infrastructure, there are a few prescriptions for enterprise IT teams to consider:

  • Employ a "Design for Production" approach based on configuration standards
  • Insure application stability by enabling rollback of any infrastructure changes
  • Automate the provisioning of infrastructure configuration properties

Each of these will contribute to improving the quality of those 1000+ enterprise applications.

First, the Design for Production approach, as it applies to application infrastructure, enables quality to be embedded before your developers write their first line of code .  By agreeing on configuration standards for the application infrastructure, and insuring that these standards are used in all environments, enterprises experience substantial improvements in application quality. 

Often it is the case that QA processes come to a halt because of stability or performance problems yet the developers respond "It works on our systems ..." When IT promulgates and enforces configuration standards, it eliminates one critical variable in the various stages of the application life-cycle.  The applications achieve higher quality because the same foundation is used from Development to QA to Staging through to Production and Disaster Recovery. 

A proper mechanism for enforcing this consistency across the application life-cycle is to collect and store all of your configuration properties in a centralized repository. Then, develop templates that reflect the desired configurations for each element in the application infrastructure. When these two steps are combined with a systematic method for distributing these templates or profiles, you can insure a consistent foundation for your applications which inherently produces higher quality applications.

Second, IT teams can improve quality through better control of the change process for application infrastructure.  Change causes instability in IT environments yet it is unrealistic to eliminate change.  Instead you need to plan sensibly for change and allow for rapid response when changes produce outages.

The single most important tool for controlling the undesired impact of change in the application infrastructure is the ability to "snapshot" the configuration properties. By recording snapshots of the configuration items in the infrastructure, IT has the basis for backing out of changes that produce problems for application quality or availability. There is no quicker remedy for an application outage then to roll back to a previous version which worked. With the application back on line, IT can then orchestrate an orderly diagnosis to ascertain the source of the outage.

Higher quality is the result as downtime is minimized and IT can allocate more time to inspecting changes before they are deployed.

Third, IT teams need a way to test changes to the configuration properties for the application infrastructure and then release these "change packages" so that they are distributed correctly to all systems and environments. While the IT change process may have provided ample review and testing of changes being introduced to insure their quality, without the tools to insure that these are distributed everywhere, the change process is incomplete.

Many IT teams use manual methods to introduce changes to application infrastructure configurations. Invariably, when there are 20 to 30 systems that need to be updated, some number are performed incorrectly, incompletely-or not at all. Quality once again takes a step back.

With an automated approach to releasing configuration changes, IT teams can insure that changes are validated and deployed completely.

Conclusion.  Configuration errors are at the heart of application quality issues and are the leading source of application downtime. With rising complexity and increasing volumes, IT teams can look to configuration management techniques to drive quality

About the author

AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.