The retail world is changing more rapidly than ever, and organizations need to deliver solutions to market faster than at any point in history. This need has driven a push to adopt Agile delivery methodologies such as Scrum, Lean and Kanban.
What are the benefits and drawbacks of migrating toward Agile?
The appeal of Agile delivery is that a work product is defined, developed and delivered to stakeholders in a seemingly real time manner, whereas a traditional waterfall approach project is fully defined, developed and tested before any stakeholder has an opportunity to review the output. However, not every organization and not every project is the right fit for utilizing Agile methodologies. While Agile can be applied on a project by project basis, the fundamental differences to Waterfall make it a challenge to balance both within a single delivery organization. Before pursuing an organizational change towards using an Agile methodology, there are important questions that should be asked to understand the project types, resource structures, and leadership approach to decision making.
What type of projects am I running?
Agile methodologies are primarily geared to deliver products in an iterative fashion that can be reviewed, tested and quickly deployed. For consumer facing programs or products that will evolve over time, this process allows rapid iteration of interfaces and integrations. However, enhancements to back end systems that process data streams are not the best fit to an iterative deployment. In these instances, the process development needs to be fully completed and tested end-to-end before it can be deployed to avoid production interruptions. Understanding where agile fits and the scenarios where it may not be the most effective process is crucial to determining if it should be used.
Do I have to stop working?
Moving from waterfall to agile methodologies is a full paradigm shift in project delivery, so it warrants a question of whether projects already in-flight need to be paused. If transitioning to agile is a desired organization-wide activity, it is important to assess the time and resource sensitivity of impacted projects before undergoing the change. If there is time sensitivity or if significant resource changes will be required, it may be a useful exercise to put projects on hold. This allows the organization to fully train and embrace agile methodologies before starting back down the path to delivery. Spending this time at the onset will help to minimize confusion around process and therefore reduce rework delays that would create added sprints.
Are my resources structured to support agile methodologies?
The structure of sprint teams requires a spread of resources across project management and product development activities that significantly differs from a more traditional approach. Instead of a single project owner and project manager, there are product managers and projects managers responsible for each team. Developers must be able to commit to single teams and their particular backlogs to ensure delivery is ongoing. This is different than just splitting up requirements or functions across a single group of developers. Before making a transition into agile, ensure that the right resources are available or in place to effectively fill the roles required of sprint teams.
Is the decision-making process conducive to approving on the fly?
One of the hallmarks of many agile methodologies is the testing, demonstration and approval of work completed through each sprint. Therefore, an organization has to be able to accept quickly what has been completed and approve the go-forward into the next set of user stories in the backlog. The product owner of each agile team needs to have the authority to approve or reject the product and move into the next sprint appropriately. Additionally, at the wider stakeholder product reviews, decisions must be made quickly about how to proceed. Agile exists to create and utilize structure that minimizes bureaucracy. The decision-making process has to align with that concept.
Agile project delivery is not for every organization nor every project and must be approached with a purposeful lens. To be successful the process structure and resources have to be clearly defined and followed by all parties. If the right type of product is being delivered, the right resources are available and the organizational leadership is capable of making decisions to move forward, Agile could be the right path forward. The benefit of a properly run Agile project delivery program is the rapid definition, development and deployment of product that far outpaces what can be performed through waterfall.
For questions about Agile methodologies and related implications, please contact Boyd Farrish at [email protected].