Think about the team you’re currently working in. Are you working Agile? When I ask that question, in most cases, I either get an (over)confident “YES!” or an unsure look and a question back: “Uhm… What do you mean exactly?”.
The people that responded confidently to the question above often start enumerating all the Agile Practices that they apply, be it Scrum, Kanban, retrospectives, stand-ups, demos or Test Driven Development. The hesitance of the other people mostly comes from the uncertainty of what Agile really is. When are you doing Agile? What is enough?
Instead of seeing Agility as a rigid thing, it helps to see it as a maturity scale. Everyone and every team is working in an Agile manner, but not every team has reached the same level of maturity. Although the differences between teams or even individuals can be big, just like in Kaizen (Continuous Improvement) or Karate Belts, no one will ever reach the maximum. There’s always room for further improvement.
Speaking of improvement in working Agile: applying Agile Practices will generally improve your Agility. However, to keep that level of Agility from stagnating and to really grow, you’ll need more than copying and applying Agile Practices. The key is to build-in the Continuous Improvement mindset of consistently validating your way of working by the 12 Agile Principles.
Working Agile means that you continuously shape and improve your way of working by challenging it against the Agile Principles. Review your process frequently, using the Agile Principles as guidelines and the Agile Practices as inspiration!
Working Agile means that you continuously shape and improve your way of working by challenging it against the Agile Principles. Review your process frequently, using the Agile Principles as guidelines and the Agile Practices as inspiration!
The same is true for working Lean. It means that you continuously evaluate your workings by the 7 Principles from Lean Software Development.
These 19 principles can be a bit overwhelming, so inspired by these principles, I’ve created 7 steps to increase the Agility of your IT teams.
Think of the whole product development lifecycle for the product that you’re currently working on. It starts from the value you want to create for the customer or the assumption that you want to verify. It ends when the smallest solution for that outcome is delivered to the end customer. With that process in mind, let’s walk through 7 steps that will help you increase the Agility of your IT teams.
Physically visualize what your teams are working on. Visualizing creates more transparency and lowers the barrier for others to join in on discussions. A visible workflow provides a structure for your collaboration and allows for more in-depth discussions. Here’s a small subset of ways to visualize whatever your team is working on:
TIP: Next time you have a visitor, especially business stakeholders or sponsors, walk them through the visualizations in your team room. It will give them ‘Boots on the Ground’ and valuable insights about the project. It will be a boost in trust and confidence.
Building complex products requires multiple skills and multiple people. Instead of creating a document and handing it over to the next person the process, focus on collaboration and knowledge transfer in person. A document can be outdated quickly and require a lot of time to be kept up-to-date, while you’d rather spend resources on getting actual work done.
By sharing information face-to-face or participating in the brainstorm, everyone involved in the development process gains a lot more insight and will be able to do a better, more qualitative job. Here are some ideas:
Building a product is a team effort and requires a lot of work. We want to make sure that we are always doing the right thing with the right quality. The only way to know that you’re delivering valuable work is by providing – and getting – fast feedback. This feedback from the users on the features you’ve built, but also from the next person in your workflow. The faster the feedback, the smaller the chance the next person in line will be dissatisfied with the quality of work you’ve delivered before you improve. Here are a couple of ways you can build fast feedback loops:
To get your team to work like a well-oiled machine, you must ensure a smooth flow of work. A good flow means that planned work is delivered in a short amount of time. The investment made by the organization will be a lot lower before they see the resulting revenue.
To get to that point, start by making your epic and story workflow explicit and visible with a Kanban board. Next, improve it further. Here are some tips:
Splitting work in small parts allows your team to perform the least amount of work before actually starting to deliver functionality. Not only does this ensure a faster feedback loop, it also gives your team a feeling of accomplishment each time they finish a chunk of work.
Splitting work in small parts may seem like a daunting task at first. Here’s how to break up your work:
After breaking the work down into Epics and Stories, set the priorities for the most important pieces for an MVP. This way, you always do the least amount of work to actually start delivering without missing the bigger picture.
Continuously fine-tuning your way of working ensures a smooth workflow and high output. However, it’s more important to deliver the right outcome than a high output. Otherwise, you’re just spending money that the organization could’ve spent differently. So:
Delivering quality needs to be everyone’s focus within the development process. Without that focus, you’re sure to deliver sub-optimal results to the next (or final) step in the process. Think of bugs, impediments, and confusion that end up costing more time and resources. To keep your focus optimal and avoid mishaps, always work on the simplest solution that meets the goals. A simpler solution is easier to understand, implement, explain and support.
Continuously improving the way of working using the Agile en Lean principles as the guiding stars, is still not common in every (IT) organization. This blog post gives some actionable steps you can take to increase the Agility of your IT teams. You don’t have to start implementing all these steps right away, though. Start with a few that are manageable for your and your team, evaluate, improve and repeat. That’s how you’ll increase the Agility of your IT teams in an Agile way!
If you want more information, tips, guidelines or more, reach out to our Agile coaches and they’ll help you out!