Throughout my career in IT there is one constant that I have seen demanded over the years is the need for speed in everything on the computer.
This is a complex issue. The part that no-one wants to hear when a person complains about application performance is the comparison between what they have now and how it used to be before computerisation. During the course of many BI projects I have moved departments from 95% gathering or organising data to 95% analytical or leveraging data, with the computer doing all the grunt work while the staff are warmly tucked up in their beds.
However we do have to understand the background to every complaint about application performance. Typically whenever we look at a complaint about performance we seek to monitor and improve performance in the areas of:
◊ Load Balancing
◊ Prioritization
◊ Network Optimization
◊ Database Tuning
◊ Compression
Planning Services and Growth
In terms of planning our application, database, hardware, and network architecture we do need to reconsider the requirements for each system as time moves on. When we implement a new system we do look at growth requirements in la large amount of detail, but we rarely track how usage proceeds against the original plan. This is probably the origins of virtualization as someone looked at the number of oversized servers and sought to use the resources better.
Today we are virtualizing in order to make better use of resources, but in the future we will need to check whether we have the right strategy in-place. Software as a Service (SaaS) also offers up its challenges in relation to speed, especially given that services are remotely managed and are no longer maintained my the corporation.
According to Paul Mah “Application performance [is] set to be next virtualization headache” we may have reduced excess capacity in a pure physical environment the factors were easier to measure. Managing the virtual environment is generally more complex than its pure physical counterpart, this is also true when it comes to managing performance.
Understanding the Business Community
The workplace is changing with an increased need to provide services outside the walls of the office complex. We have been imaginative with corporate applications being used in even the remotest parts of the globe. In the current economic climate we know that more of the business community is changing its work patterns. Can we predict every scenario? Unlikely, and at some time we will receive data from a trucker driving across an ice-road in the deepest Alaskan winter.
When users are connecting to a corporate system whether by a VPN or other remote protocols then security becomes another performance impact.
Can we move the applications closer to the user? Certainly mobile applications are better able to work on Blackberrys or iPhones, but they do still have to communicate with corporate servers. For a sales person dependent on data about stock availability and delivery dates performance is critical before he can take a product order from a customer.
Performance Goals and Measurement
In making any commitment for improvement it is important to be able to measure where we are right now, the baseline. We have to set realistic goals for improvement based on the corporate infrastructure, budget, and other factors. Measuring the environment is important, and so is retaining a history.
One of the issues of performance is of-course human perception. We can be perceived as spending money for zero improvement, therefore we have to prove the improvements over time, and always be able to identify changes to the environment over time. Yes we do have to be speed cops.
Improvement goals need to be measurable and attainable. Part of the problem here is that performance requirements are rarely documented well when defining systems. Poor performance can often be perception, but I always think that when there is a perceived problem then we must understand and resolve it.
____________
Related articles:
Application performance set to be next virtualization headache


