A couple of years ago, “agile” was among the top buzzwords in IT. It was so popular, in fact, that it became a synonym for the words ”operational efficiency” and even ”success”. However, not every process can be ”agiled”. In this article, we will define the basics of the agile approach but, more importantly, we will define the areas in which you can actually benefit from being an agile MSP.
Agile Basics
Agile is not a rulebook with directions, but rather a gathering of principles, a philosophy really. It states the importance of teamwork, cross-functional teams, and open communication, while delivering valuable products to clients. Originally, agile was developed to streamline software development projects.Over time, it became the basis behind the most popular project and product management approaches.
As we've already said, agile is not a strict rulebook, not a framework by itself. However, there are a number of frameworks, tactics, processes, and terms that were developed to serve that approach. Here are the most popular ones:
- Scrum is one of the most popular agile frameworks in the world. It defines a number of core principles, such as teamwork and accountability, and implies a specific procedure while working on a project. When implementing this framework, you should focus on open and constant communication, trust, and visibility of all processes across all team members.
- Product. The end goal of any scrum project is a product with a set number of characteristics
A scrum master is a person who oversees and manages all the scrum-related specific processes and approaches. - A sprint is a set time frame in which a single project is developed by a given team. Big projects can be divided into several sprints.
- Stand-up meeting. Stand-up is a short (typically around 15 minutes) meeting in which every team member talks about finished, in-progress, or overdue goals and tasks. Stand-ups are meant to inform the scrum master and other team members on the current progress of the tasks and highlight any stuck processes.
- Kanban is a method of task prioritization and scheduling. The simplest representation of kanban is a blackboard with stickers. Each sticker represents a single process and the blackboard is divided into several sections for not-started, in-progress, or finished processes (there might be more sections, depending on the project). This blackboard is called a kanban board. It provides transparency to all processes and workflows.
In a nutshell, to enable agile within your project, you should first find the right framework. If you've chosen scrum, then you should visualize the product you are going to develop, find a scrum master, who'll manage the processes, then acquire a cross-functional team, define the number of sprints to finish the project, enable daily stand-ups, create a kanban board for better process visibility and constantly communicate with your team. (Strictly speaking, the kanban board is not a scrum technique, but they are often used together.)
But how, you may be wondering, does this all apply to your managed IT business? Let's find out.
Further reading How to Build a Successful MSP Business
MSP Agile Scenarios
As you can see, agile frameworks imply that you will rebuild your processes and approaches and work on your communications to get things done. But which things exactly? Below are the three possible scenarios to enable agile in your MSP processes and projects.
#1. Application Development
Agile was originally created to support and streamline software and application development. Thus, the perfect scenario for its implementation within your MSP is if you also develop apps and software for your clients. Then, all agile components will come together in perfect harmony, allowing you to boost your processes and finish projects on time.
#2. Agile Project Management
However, application development is not the most common activity for an MSP and is certainly not the main business driver. Nevertheless, agile is nowadays widely used in the broader sphere of IT project management. You can implement this approach in the projects you develop for your clients.
Bear in mind, though, that due to the complex nature of agile-style processes it’s best applied to big projects. For example, if your client wants you to set up their new multi-story office or develop a complicated SAN for their company, you might want to create a number of sprints with set time frames and apply the scrum framework to these projects. If, on the other hand, your client wants you to buy and set up a new file server, there’s no need to gather a ”cross-functional team” for the job.
Further reading Project Management for MSPs: What to Keep in Mind
#3. Agile Embedded into Processes
In a way, agile MSPs can apply these frameworks to any processes within the company. However, these frameworks should be modified to fit into your standard processes.
For example, you may create sprints for your support team. Depending on the size of your team, you will then apply stand-ups either for the whole team or on the basis of the different tiers of the team. These stand-ups will help you to better understand the typical issues your clients are facing and the patterns behind overdue tickets. To communicate within a team, you should then implement a constant messaging tool and stress the importance of teamwork and openness.
On the other hand, a kanban board might not be a good fit for this example, as your ticket system acts as such a board at a granular level. Also, you won't be able to define the exact product you will be able to deliver to your customer at the end of each sprint. Lastly, there's typically no room for a cross-functional team, since your ”project”, the delivery of support services, is homogeneous in its nature.
When Not to Apply Agile to Your MSP
There are two cases when you should not apply agile to your MSP:
- Small projects or teams. As we've already said, agile-style frameworks are complex, they demand the development of new processes which must be adhered to, and the use of certain types of tools. If you are working in a compact team or on a relatively small project, you are better off not implementing complex procedures.
- Applying the ”agile philosophy”. This philosophy, the gathering of the principles behind agile, is pretty useless without strict rules and the specific tools you should use within the set frameworks. Don't get me wrong, though; you should understand the core principles of agile but, without the support of the proper framework and workflows, these principles would become mere words that will annoy your team by their emptiness.
I Need Agile For My MSP. Now What?
What are your next steps if you have decided that you need to integrate agile principles into your MSP business? There are basically two courses of action:
- Learn about agile yourself. There are a number of books, free and paid training sessions, and YouTube channels dedicated to the matter that will allow you to gather all the necessary information about agile and define which frameworks, solutions and principles you should implement. This approach is great if you are going to apply agile to smaller projects.
- Get certified. As with any popular approach nowadays, you can become a certified specialist. You won't get an agile certification, since this is a vision, rather than a distinct framework, but there are tons of certifications on scrum and other popular frameworks. You might need to get certified if your projects are big and complex or if your client demands someone on your team to be certified.
The Way to MSP 2.0
Behind the urge to apply agile principles to the MSP, there is always an urge to enhance and upgrade processes. However, think twice before you start to rebuild your team and your approach to doing things. Agile is not a good fit for all businesses and all situations. As an MSP, you might be better off adhering to the ITIL and ITSM frameworks, which were designed to fit IT services delivery.