All businesses require some system of incident management to maintain operations and ensure their products are maximally available to customers. To stay competitive, businesses are increasingly adopting agile methodologies, which can directly conflict with their established processes. This doesn’t mean that you have to sacrifice either, however. With some dedication and flexibility, it is possible to combine the two strategies and get the best of both worlds.
An Intro to Agile Methodology
The agile methodology is a style of project management focused on the quick and collaborative production of software through a series of time-limited sprints. In each sprint, team members focus on completing a discrete set of tasks, such as a small collection of software features, with the goal of having a functional product at the end of each sprint.
Agile methodologies are increasingly popular for software development teams due to their ability to significantly speed production and more easily address customer needs. Often, when an agile methodology is being used DevOps or DevSecOps teams are also implemented as their format is based on agile methodologies.
Four Essential Elements of Agile Management
There are four essential elements repeated in every agile methodology that drive work processes.
- Individuals and interactions over processes and tools—team collaboration is what gets the work done. Tools and processes are there as an aid to make work more uniform and efficient but without someone to operate them, they are useless.
- Functioning product over comprehensive documentation—good documentation is useless if a product doesn’t work. A customer’s primary interest is a functioning product so that should take priority; documentation can be refined after the product is released.
- Customer collaboration over contract negotiation—customers are what drive business so their needs and input should be prioritized. When customers are involved in a process, their feedback is more actionable and their sense of investment leads to higher satisfaction.
- Flexibility over planning—while planning is important it should not block progress. If an issue arises, teams should be able to refocus attention to address the problem rather than burying it.
Incident Management in an Agile Setup
Incidents do not magically disappear just because an agile methodology is adopted. This can be problematic, past the issue of the incident itself, if steps aren’t taken to integrate traditional processes of incident management with strategies employed in agile methodologies. However, successful incident response consists of three main elements, comprising a well-prepared plan, a capable team and the right set of tools, and this is also true in an agile setup.
What Is Incident Management?
Incident management is a process of IT Service Management (ITSM) focused on restoring service to normal operations as quickly as possible with minimal impact on business operations and customers.
Depending on the specific framework used, incident management can consist of a differing number of steps but at its core, it is always a cycle including the following concepts:
- Identification—operations must be monitored, events logged, and the proper people alerted when an incident occurs. There should be a focus on service-oriented goals and metrics and information should be centrally available.
- Response—once an incident is identified action must be taken to halt further damage or loss of services and eliminate the source of the issue. Roles and protocols should be defined in advance, specifying team responsibilities and actions to be taken.
- Remediation—after an incident is stopped or otherwise contained, the resulting damage needs to be repaired. This might include restoring lost application access, replacing damaged hardware, reporting data breaches, or simply apologizing and asking for customer feedback.
- Analysis—a post-incident review should be done to uncover why exactly the incident occurred and what steps can be taken in the future to prevent it from happening again. The results of the analysis should be turned into actionable steps and applied to modify systems, tools, roles, or procedures as needed.
Applying Agile Values to Incident Management
There are a few areas where traditional incident management approaches can conflict with agile methodologies but with careful planning, the goals of both can be accomplished.
ITSM procedures typically require detailed change requests and oversight approval to ensure that systems and workflows are not inadvertently affected but this process is often much slower than that demanded by an agile team. To compromise, consider pre-approving low-risk changes and creating runbooks that can be used in response to incidents; this can ensure that agile workflows are supported while maintaining consistency of response.
Automating documentation by integrating tools like those used by your ticketing or help desk will ensure that your service teams stay aware of issue status without slowing down team agility. Replacing change approval, and similar meetings, with Slack channels or other flexible communication tools and integrating them with status pages, dashboards and other service tools can help maintain the communication loop while saving everyone time.
Agile’s focus on fast and flexible action means quick turnover of versions, patch requirements, or workarounds, which can easily translate into a lack of communication. To combat this, deployment tools should send update information to service desk tools to ensure that service techs have the most up to date information to share with customers.
This can also help you speed troubleshooting as techs already know what sort of issues might present and have a better understanding of what they can currently fix. Alerting and incident management tools should send updates to status pages and stakeholder communications. This allows you to create transparency without taking up valuable response time.
Agile methodologies already make use of retrospectives, which match nicely with the analysis step of incident management. Using the agile method will help you evaluate how effective and efficient your response protocols are, which of the tools you’re using are providing value, and whether future similar issues can be prevented. These retrospectives include all parties so you can be sure that you receive comprehensive feedback that can more easily be translated into actionable change.
Having a well-structured incident management plan is often key to fast and effective response but if not carefully designed, this plan can directly conflict with the agile workflows you’ve already established. By embracing automation tools, focusing on response documentation before an incident occurs and trusting your team to be able to act effectively, you can improve the efficiency of your incident response. This will also allow you to gain meaningful insights, which can teach you how to continue improving your systems.