Why are organizations moving towards Agile? “Simple, To make more money!”
As your company evolves with a mindset of ‘Doing the Right Things, Right @ Speed’, you will deliver awesome products to your customers which they really need & care for thereby driving your topline, bringing operational efficiencies and help increase shareholder’s wealth.
Agile Transformation is a long journey where an organization goes through three stages of metamorphosis – from ‘Knowing Agile to Doing Agile to Being Agile’.
Are there any levers which when pulled effectively will make your agile transformation a success? Yes, there are 5 enablers which a CTO can use to an organization’s advantage.
Agile transformation programs at $69bn Target & $9 bn eBay are respectively led by Mike McNamara & Steve Fischer (CTOs). “It has to be driven from the top”, period. Senior stakeholders need to provide vision, leadership & support for transformation success. An Agile COE with internal champions/stakeholders should be formed to help drive transformation effort across the organization. Agile is very simple to understand yet equally difficult to implement. It helps to engage with an external company which has specialization to help steer & guide the initiative with experienced agile & devops coaches embedded within your organization for training, coaching, assessment & consulting. An equally important aspect is to come with KPI/Metrics to measure success & do inspect-adapt at regular intervals with key stakeholders.
Organization in its entirety need to adapt to an agile mindset driven by Modern Agile values, “Make People Awesome, Deliver Value Continuously, Experiment & Learn Rapidly & Make Safety a Prerequisite”. Command & Control culture is pas se’ and need to be replaced by a more Collaborative, Competence & Cultivate forms. Managers & Leaders need to be transformed to Servant Leaders helping their teams succeed – providing them vision & goals and letting them decide on how and when aspects of their deliverables. As Starbucks CEO, Howard Schultz puts it,” I along with my management team work to ensure Barista has everything they need to make customers happy”. Team members need to be T-skilled with (specialist-generalists) full stack developer roles. Boundary between DEV-QA-OPS needs to be blurred. Agile Workspaces promoting collaboration and removing silos with a more open, activity based seating is required.
Conway’s Law puts it succinctly, “Organization which design systems are constrained to produce designs which are copies of their communication structure”. In essence it means that if the parts of an organization do not closely reflect the essential parts of the product, or if the relationship between organizations do not reflect the relationships between product parts, then the product architecture will be in trouble. Well aligned domain feature based teams which are stable, persistent and can deliver end to end work is the order of the day. Typically, team size should be < 10, collocated as much as possible and have a persistent product owner and an agile leader.
Understanding and evaluation of the right process framework & accompanying set of practices is pertinent to value stream of work which your organization and or team performs. You need to choose combination of Scrum, Kanban, Extreme Programming or Scrumban rather than one size fits all approach for the entire organization. Adoption of agile project management tools such as JIRA/Version One/Pivotal Tracker are pertinent with geographically distributed teams. Adaptive 5 step agile planning welcoming changing business priorities should be adopted instead of big upfront yearly fixed scope, fixed time plans. W. Edward Demings said, “If you cannot measure it, you cannot improve it”. In the same spirit, you need to measure outcomes of your process – predictability, code quality, cycle time, availability and business outcomes – value delivered, speed to market, NPS of customers/employees and continuously reflect to improve every cadence.
Software engineering should pave way for Software craftsmanship and is one of the most critical success factor in your transformation journey. Test driven development mindset – writing tests before writing implementation with continuous refactoring is a corner stone towards writing beautiful code. Automation testing effort should be focused based on testing quadrants and testing pyramids. Set-up of continuous integration, continuous delivery & continuous deployment pipeline enable you to develop on cadence and deliver on demand. Cloud strategy, IaaS, PaaS, along with containerization leads to app agility, removes vendor lock-in and reduces op-ex and cap-ex costs. Infrastructure as a code (IaaC) automates creation and maintenance of servers along with their configuration thereby reduces production and non-production incidents and improves reliability of environments.