Four years ago, I was introduced to the concept of Agile in project management and how “failing faster” could actually boost productivity, heighten customer engagement, lower costs, and increase job satisfaction. But why would anyone want to fail?
The truth is, any endeavor where there is more than one way to reach success contains the inherent risk of failure. This can apply to anything from creating software to effectively managing a compliance team. Designs fall flat, project implementations fizzle out due to lack of engagement, and unforeseen circumstances can curtail the best of plans. So, if a design or idea must fail, it is best that is does so quickly so teams can cut the losses, learn lessons, and move forward toward success.
What is Agile?
Webster’s Dictionary defines agile as “marked by ready ability to move with quick and easy grace.” In business terms, it is the ability to respond quickly and effectively to changing circumstances. In today’s information age, agility can mean the difference between success and being left behind by the competition.
The Agile framework is most notably used in software development, but its concepts can be applied to just about any multi-functional team.
Agile includes four key principles that are known as the “Agile Manifesto”:
- Individuals and interactions over processes and tools.
- Working software (functionality and deliverables) over comprehensive documentation.
- Customer collaboration over contract negotiation.
- Responding to change over following a plan.
Agile prioritizes finding creative and adaptive solutions in order to meet customer expectations quickly and effectively.
A couple Agile terms that might be helpful to know as we move through our lessons learned:
Scrum—A framework teams can use in meetings to manage projects and product development. This includes organizing the backlog, Sprint Planning (see below), and reviewing.
Sprint Planning—A set time during a Scrum when a team can set priorities for what needs to be worked on.
Why Implement Agile?
There are many reasons why implementing Agile for your team can be beneficial. These include a more efficient work process, better team communication, and improved customer satisfaction. Overall, Agile should make your team more successful in the long run.
As you can see from the following lessons our team learned, adapting Agile to best work for your team may take a bit of trial and error.
Lessons Learned from Agile Implementation
Our team implemented Agile project management four years ago, and since then we have seen increased efficiencies and more effective products. By moving toward failing faster, we have accomplished more with better results.
However, it did take us some time to figure out the ways that Agile could work best for our team, and we learned some lessons about what did and didn’t increase our efficiencies.
It Takes a Whole Team
Agile is about empowering every team member. In order to implement a strong Agile process, it’s important to really listen to everyone before making changes.
It was easy for our team to continue listening to the voices that spoke up most frequently. We learned we had to be intentional about going after the quieter voices as well. By soliciting open and honest input from everyone, the best ideas surfaced.
Don’t Force It
Go ahead and give pure Agile a try. Try daily stand-ups (short daily meeting). Try writing all your User Stories in the recommended format. Try covering the wall in your conference room with sticky notes.
Then do your Retrospectives (an Agile review process) and figure out which aspects actually work for your team and which just feel forced. Then modify or remove the portions that don’t fit.
Our team discovered that setting Sprint Goals during Sprint Planning did not work for us. It was time-consuming, and when we were unable to complete some of the goals due to clients’ changing priorities, it felt a bit deflating.
Once we got a rhythm going in our Sprints, we stopped documenting Sprint Goals and just allowed the process to flow. We began to get more work done, and we stopped kicking ourselves for not accomplishing every item on the list when clients’ priorities shifted.
Prioritize, Then Re-Prioritize
Priorities can shift whether your clients are internal or external to your organization.
If you’ve ever put in extra time working on a “high-priority” item only to discover later that it could have waited while another project has a looming deadline, you are not alone. Since implementing Agile with our team, we stay much closer to each internal and external client and hear about changes sooner. This enables us to prioritize more effectively.
We also have honest conversations with clients about which items really are time-sensitive, and we walk them through exercises to get them to identify their priorities. Tracking our work on a Scrum board (a visual way to track our work) has helped us turn on a dime when we need to, and cross-training our talent (see next item) allows us to backfill resources when a key team member needs to pivot.
Use the Agile Process to Cross-Train Talent
Our team found that the process of planning our Sprint together every two weeks brought to light areas where we had knowledge silos. When the same people are constantly overloaded while others are underutilized, Sprint Planning can shine a spotlight on those areas and allow the team to identify members who can fill the gaps.
In our team, this led to an increase in expertise across the team and increased job satisfaction. It also decreased client wait time, as clients no longer had to wait for the expert.
Focus Your Documentation on Functionality, Not Form
Our team used to have a prescribed form for documenting the software we create. However, the form was cumbersome, redundant, and contained several spots for information that was irrelevant to many of the projects we worked on.
Agile’s focus on results over documentation was freeing for us. We began documenting only what we knew we’d need to reference later, and it made a big difference in our work processes. Four years into Agile, our experience has enabled us zero in on the information we need without wading through mounds of meaningless data, and we spend less time doing documentation overall.
Focus on Continuous Improvement
As part of our Agile implementation, our team learned to work in iterations. We set a timebox (a Sprint) in which work is completed. We found a two-week Sprint works best for us; other teams may prefer shorter or longer Sprints.
Once the Sprint is complete, we engage the team and the client for feedback. We then continue in these short bursts, punctuated by feedback, to make sure we’re on the right track and deliver an outcome even better than the original vision.
Track Your Progress
There are many Agile project management tools available. We discovered that an online Scrum tool works best for our team. By documenting upcoming work in a Backlog and prioritizing (and re-prioritizing) it, we can quickly and easily shift work and keep our team productive and engaged. The Scrum tool also makes reporting progress to our clients and internal leadership easy and efficient.
Implementing Agile with Your Team
If you are interested in implementing Agile with your team, there are a wide variety of resources online that can guide you and answer your common questions.
You can easily learn the basics of Agile and how Agile can be used for project management in non-software projects. To take it to the next step, find an Agile training for your team. While failing toward success may sound counterintuitive, implementing Agile may be just what your team needs to manage projects more productively and effectively.
Custom Software Solutions from Tetra Tech
Using Agile has helped our team work more efficiently and with better results. We move through problems, solving them quickly because we aren’t afraid to fail in order to find the right solution.
If your team is looking for custom software solutions for your compliance needs, contact us at [email protected]. Let us solve use our creative problem-solving skills to help your compliance program run successfully.