Three or four decades ago, complex business processes were understood by only a handful of people who had been with the company a long time. Today, all of the complex business processes are supported on computer software and hardware. However, just as people are susceptible to making mistakes, software and hardware make errors, too. Therefore, every company must have an application support organization to ensure that these business applications run successfully and are error free
From the outside, it might seem as if the application support group fixes errors and not much more. I have heard a manager state that the support people basically put their fingers in a hole in the dam when a leak springs up. This perception is not correct. Actually the support staff provides a number of services, and has a number of responsibilities to ensure that applications remain in good working order. Here's a detailed look at those services.
Responding to production emergencies
Emergency response is typically the most obvious category of support. This includes:
- Application down. This happens when the online or batch process has abended (crashed), causing the application to stop. There may be many users who rely on the application that now do not have anything to do. These problems are typically classified at the highest severity level and must be addressed immediately.
- Substantial logic error. Sometimes problems occur in an application that can produce disastrous results, even though the application is not down. In some respects, these errors are worse than having the application down. When an application is down, you know what you are facing. When a substantial logic problem occurs, but the application is still up, the outcomes produced may be erroneous, and bad decisions can occur. Once these errors are found, it can also be difficult to clean up the errors already produced and get the application reliable again.
Fixing errors is similar to the "responding to production emergencies", however the severity level is not as great. This category includes the "normal" bugs and errors that pop up from time to time. For instance, a nightly batch job that goes down may just need to be resubmitted. Another example is an error that occurs on an online screen that may not occur the next time it runs. Or a report may print asterisks in a field that is not large enough to hold the entire value. All of these are examples of fixing errors that do not rise to the level of a production emergency.
Assisting users and answering questions
The broad category of assisting users/answering questions can take up a lot of time in your organization. Business processes run on application software. When the application users have certain questions, in many cases they have no choice but to ask the support team for help. After all, in many cases, the code is the ultimate source for understanding how certain processes work. When new users come into jobs that they are not familiar with, they may need assistance from the support staff to understand how the application works. Examples for this category include researching why certain financial transactions are kicking out of the application, performing research to understand the extract criteria for a report, and determining why a certain sequence of screen input results in a certain outcome.
Responding to environment changes
Sometimes events take place that require changes to an application, or testing, that do not originate in the support group. As an example, you may have a client-server application that runs on Windows NT. Your company may decide to migrate operating systems to Windows XP. This may require you to run tests on your applications to make sure that they still process correctly using the new operating system. Another example is the implementation of software that automatically compresses e-mail attachments. These are examples of changes that take place in the general processing environment in which your applications run. Neither you nor your client initiated a change. Nevertheless, action is required from the support team to ensure that the applications remain stable and accurate.
Trivial software/hardware upgrades and changes
The category of service dealing with trivial software/hardware upgrades and changes is similar to the prior category of responding to environment changes. The difference is that the prior category assumes that you need to react to changes in the environment that are initiated by others. This category covers services involved when your team initiates the changes. Notice that the category title specifies "trivial". The point of including this word is that the changes or upgrades must be small. For instance, a trivial change may be as simple as upgrading from Microsoft Office 98 to Office 2000, or adding more memory to your client's workstation. If the work is nontrivial, then it should be classified as an enhancement. If it is a large enough effort, you may even organize the work into a project.
Assisting with business processes
In many organizations there are business processes that take place on a regularly scheduled basis. A good example is the financial closeout process that occurs in companies on a monthly basis. Most companies close the books on a monthly basis, and may have additional special processing that takes place on a quarter-end and at year-end. These processes rely on computer applications, which in turn rely on the support staff. Normal and ongoing assistance with these business processes is part of the service provided by the support staff.
Compiling documentation updates includes the time associated with updating system, user, or support documentation. Like other categories, this represents the time associated with minor updates. Since documentation updates are normally not time sensitive, anything over five hours of work would be a discretionary request, instead of support.
There are other types of work that the support teams do that are not directly related to the applications. For instance, support teams need to communicate effectively and may be creating a status report on a monthly basis. Support team members also need to spend time cross training with other members so that each application has at least two people who understand it.
The application support function is critical to every company. It's debatable whether companies give these people the respect they deserve (most support people would say they do not). However, there is no question that they play a critical role in ensuring that the company business processes function reliably and correctly.