Agile principles/practices have proven their ability to increase the success ratios of projects. We have learnt from the Agile Manifesto that there are better ways of developing software; and the goal is to help others uncover such through their 12 principles. We can also apply those practices and principles to developing products and services within any domain for example HRM, Finance, Networking etc. With this mindset of getting work done, Agile can be seen as pretty straightforward, universal and not to mention versatile. Agile offers techniques and guidance on how to make your product/ services more reliable by encouraging the adaptation to changes quickly, knowing and understanding your maximum capacity, being transparent about what you’re doing and what may be a roadblock on the way.
The question now becomes, can I apply this mindset to non-software development products/services?
The answer is yes! Let’s see how we can apply agile concepts and principles to any team delivering services or products successfully. We will learn how to increase our company’s competitive advantage through an incremental and iterative approach for rapid response to changes. An iterative process is the practice of building, refining, and improving a project, product, or initiative. It is beneficial as it allows one to sharpen up a product through repeated adjustment cycles (continuous improvement). This approach is widespread across many industries where a prototype is produced, it’s then tested, tweaked and the cycle is repeated with the goal of getting closer to the solution. Anyone can use this principle, as it allows you to plan for changes as you create your product. It also helps to produce deliverables that are tailored to end users. Here are some benefits that can be derived from this approach:
- Increased efficiency – Products can be built step-by-step, allowing continuous feedback from end users; preventing large rework at the end.
- It’s timely – You can see the results early and often because each iteration should produce planned deliverables.
- It’s cost-effective –It is common to have changes to a product/service scope, however it is less costly to make changes incrementally than at the end.
- It’s collaborative. You can present the results of each iteration to stakeholders and clients. They can see the evolution of the product/ services and ensure that you are meeting their requirements.
- It improves usability. Testing is easier with smaller iterations, as you can identify issues early in the process and users and customers are involved with each iteration.
- It eliminates confusion. You can detect inconsistencies or flaws in requirements, designs, prototypes and other implementations with each iteration, so you can avoid misunderstandings.
- It offers continual improvement. Each iteration allows the team to easily incorporate any lessons learned from previous runs and continually improve the development process.
Agile principles/ practices can be applied to the development of other areas such as, Finance, Procurement, Physical Security, HRM etc. Here are some ways to implement such practices:
- Break Things Down:
- Decomposition – break things down into small more manageable items
- Prioritize tasks, work on the most important ones first
- Deliver the smallest, most valuable items as soon as possible
- Get feedback and adjust your plans as needed
- Focus on Outcomes Instead of Outputs:
- What matters is the impact or outcome of our work. The goal should be to deliver quality over quantity; We may ask ourselves,
- What constructive impact did we have on our internal or external customers?
- What can be implemented to add value to our customers?
- What matters is the impact or outcome of our work. The goal should be to deliver quality over quantity; We may ask ourselves,
- Make Your Work Visible and Transparent:
- You need a Kanban board to track tasks, making your team’s work more visible. Whether it is a physical board or digital board like Trello or more advanced Jira.
- The Kanban board has columns for your process work flows. A simple Kanban can illustrate tasks not yet started, work in progress and completed tasks.
These practices/ principles can help you improve collaboration and communication among your team members. While they are used in a very precise framework within software teams, non-software development teams can implement specific practices from different agile methodologies and adapt them in accordance with your current processes. Here are some practices that can be implemented:
- Schedule Standups (daily/ bi-weekly/weekly) with your team. Talk about what you did yesterday, what you are going to do today and highlight any impediments that may be affecting your progress.
- Schedule planning meetings, get your team to come together and plan their work. Write tasks together and add them to the Kanban board, make sure everyone understand the full scope of every task.
- Schedule a retrospective meeting (weekly, monthly, quarterly) after a milestone, gather your team to look back, see what was done well, what was done poorly, learn from your mistakes and implement improvements. This is the only way to grow.
- Schedule demos (weekly, monthly, quarterly) where applicable. It is important that everyone sees what everyone else was working on by showcasing your work, and providing feedback.
- Implement knowledge sharing by documenting the process itself, that is, how the team operates and functions to achieve its goal. Also, make a rule so when every new decisions is made, it is documented into a common place e.g. Alfresco. By documenting something once this saves time in the future!
Regardless of the industry we pride ourselves on progress, oftentimes this is measured by a working product/service. We have seen how agile principle/ practices can be applied to non- software teams as it allows us to harness change, giving customers the advantage. Likewise team work is an essential tool that should not be ignored or minimized as it’s the anchor needed to get the job done. Remember, there’s no blueprint for implementing Agile! It’s a playbook that you should use according to your team and business needs.