More and more businesses are developing their own applications to help support their business processes and to improve the customer experience. In fact, it’s not uncommon for even small to mid-sized companies to develop multiple apps of varying complexity. However, when your company deploys such apps, it must be able to provide continual support for them.
Maintenance and support of these applications can be challenging, especially as your user base grows and your apps become more complex to support user needs. Production support is incredibly important to the success of your applications. However, there are two main types of production support models that you can choose to implement.
Before exploring the two production support models that you’ll want to consider, you need to understand what production support entails and why it’s so important to your organization. The term “production support” encompasses the practice of providing support for IT systems that are currently in use.
Production support can be provided internally by a single individual or an entire team, which can consist of developers, system engineers, as well as database administrators. It can also be outsourced. Your production support team is ultimately responsible for monitoring your production servers, troubleshooting issues, scheduling jobs, and managing incident cases.
Developing software is one thing, but actually maintaining it is a whole different matter. Support is essential to helping users troubleshoot application issues and addressing bugs or user interface problems. A lack of support can significantly hamper the user experience, hurt the customer experience on customer-facing apps, and hinder employee productivity on internal-facing apps. Good production support will also help reduce the risk of downtime and identify areas in which applications require improvement.
The tiered support model is the traditional model for production support. It’s a linear model that involves organizing your IT support into three different tiers that consist of three different teams: the service desk, the technical management team (also referred to as the application management team), and the development team (or the vendor). While each team is responsible for different aspects of production support, they work together to help minimize downtime, minimize outages, and ensure that users are satisfied.
Let’s take a more in-depth look into the three main tiers of a tiered support model:
The first tier is the service desk. They receive all of the support requests from users. Think of the help desk as the first line of defense. They are responsible for solving the majority of the issues that come through. Many of these will be basic issues that can be solved with general technical knowledge. The service desk should be capable of solving around 70 percent of the tickets that are submitted to them. If they aren’t capable of solving a case, they will escalate it to the next tier.
The second tier consists of the technical management team. This team consists of individuals who have more specialized knowledge and skills. Issues that are escalated to this tier tend to require more technical know-how and may take longer to solve. If the technical management team cannot solve the problem, they will escalate it to the third and last tier.
If the problem can’t be solved by the technical management team, then it goes to whoever developed the application in the first place. If the app was built internally, it will go to your development team. Since they built the app, they should be able to address whatever the problem is and find a way to solve it. If the app wasn’t built internally, the problem should be escalated to the vendor. Only very complex issues are sent to the developer or vendor in a tiered system since they will be using valuable time and effort to address the problem.
The tiered production support model can be an effective one, but it depends on a variety of factors. If most of the issues your users tend to experience are simple, then a tiered support system should be able to handle your production support needs. You won’t need a great deal of support if you don’t deploy a lot of new apps or changes to existing apps, which means that a tiered support system will suffice as well. There are also a number of benefits when it comes to implementing a tiered structure. These include:
Although a tiered production support model might seem like a simple and effective way to implement a production support system, there are some drawbacks that you should be aware of. You might encounter some of these challenges when implementing a tiered support model:
A tiered support model has a definite structure for providing production support to users. In many cases, such a structure can work for an organization. However, there are also many potential drawbacks. If you build a lot of complex apps or routinely add features or make improvements, you may want to consider a different model. The alternative to a tiered support system is the swarm model. The swarm model contains no single definitive structure — instead, it’s a process based on collaboration.
The swarming model was first developed by Cisco in a white paper that they published in 2008. This model was adopted by the Consortium for Service Innovation. The principles of intelligent swarming are defined by the Consortium for Service Innovation, which further developed it:
To “triage” is to assign a degree of severity. In a swarming model, a case that cannot be solved immediately is quickly distributed to one of two types of swarms. Each swarm consists of a small team that works on cases coming in together in real time until they are solved. The following are the three types of swarms that a swarm model consists of:
Cases that are considered critical issues and that are designated a priority are sent to the severity 1 swarm. This team responds in the appropriate way, bringing in the right people to solve these cases as quickly as possible.
The dispatch swarm addresses cases that can be solved quickly by the right expert. They are essentially focused on cherry picking cases. In a tiered support model, cases that can be solved quickly are often buried in the queue. A case that could take five minutes to solve may end up taking days in a tiered support model. With a swarm model, this case would be identified by the dispatch swarm and solved immediately.
Cases that have not been cherry picked enter a more traditional queue for product-line focused support teams to solve. Cases that are particularly challenging will be tackled by the best support people available. Since the entire team works in collaboration with one another, communication is constant, which allows cases to be assigned to the right resolver. Typically, a dispatch swarm team will meet every 60 to 90 minutes to maintain this constant collaboration.
The third swarm team is the backlog swarm. This swarm team usually consists of experienced analysts and R&D (research and development) engineers that meet on a daily basis. Their primary focus is to solve the most challenging cases brought to them by the product-line support team in the dispatch swarm who can no longer engage individual subject matter experts on the case.
The question is, why use a swarm model instead of the more traditional tiered production support model? Not only are there several major advantages to using a swarm model, but they address some of the drawbacks of using a tiered structure. Consider these upsides:
If you’re constantly developing new apps or adding new functionality, you can expect to receive a lot of support tickets. A swarm model would make sense in this environment as it provides immediate attention to failures or degradation in performance. If the complexity of your apps require a lot of different skill sets to provide production support, then the swarm model makes more sense as well.
Finally, organizations with smaller teams or IT support may want to consider the swarm model. Smaller teams are more likely to be overwhelmed by cases that will linger in their backlog in a tiered model, whereas with a swarm model, they can work together to solve cases quickly.
Production support is necessary for any organization that develops and deploys apps for their customers or employees. However, the model you choose depends on your needs. A tiered production support model can work perfectly fine if a lot of your support tickets tend to be similar and you have a large IT team at your disposal. But companies with smaller teams that receive cases demanding different skill sets may be better off using a swarm model.
Need advice as to which model fits your business’ needs? Consult with our experts today.