There is an old saying – An Agile Transformation is easy, you only have to change two things: Everything you say, and everything you do.
But actually, as obvious as that joke was, it is also wrong. You only need to change one thing, you need to change the way you think.
Project or Product
It is my premise that when we talk about Agile Transformation what we mean is transforming our thinking from considering our deliveries in terms of ‘Projects‘ to thinking in terms of ‘Products‘. And transforming from measuring people in terms of their effort, to measuring them in terms of their collective contribution to a shared goal (the value they add).
Project : an individual or collaborative enterprise that is carefully planned and designed to achieve a particular aim.
Product: an article that is created or refined to satisfy a need.
As we have all discovered, software product development is complex, both in the development itself where we face a host of unpredictable variables, complications and unknowns. But, more significantly, it is very difficult to know what you want until you see it and consequently there are an abundance of quality software products that do not effectively fulfil the need that triggered their commission.
We have learned that reviewing progress regularly with stakeholders and modifying based on that feedback is far more likely to result in a successful product.
In most cases is is a fallacy to believe that for a complex and bespoke software solution you can know your end state before you begin, regardless of how well you analyse. And no matter how good at planning you are if you don’t know the end state your plan is flawed, and as you cannot predict the unknown even the best plans are unreliable.
We have come to realise that bespoke software delivery is far more akin to product design and development than it is to project delivery.
Management is doing things right; leadership is doing the right things.
Agile Transformation is about moving from Management to Leadership
Peter Drucker is an inspiration here, traditionally we put so much effort into getting things right, to be more efficient, or to do this, by that deadline. That we forgot to ask if what we were doing was bringing value. We put all our emphasis on measuring and monitoring effort, or efficiency, rather than assessing if we are achieving our goal.
If you are considering an Agile Transformation it is likely that you have discovered that efforts to ‘manage‘ projects is leading to the wrong results and the focus needs to move from a focus on effort to a focus on value. To set a direction and ‘lead‘ the way in product development. Try to stop measuring output and to start measuring outcomes.
Impact on Project Managers and Business Analysts
But this is a major cultural change for many companies and not an easy one. It is a complete shift in perspective, moving from planning the delivery of a project to collaborating on the creation of a product.
It is particularly difficult for Project Managers.
For project management to be effective the end state needs to be [largely] known, and for the steps to get there to be familiar and [largely] predictable. With a known end state and predictable building steps, a Project Manager can effectively work towards that aim.
But bespoke software is far more complex and is generally dealing with many unpredictable variables, the biggest variable being the end state. In the majority of cases the end state is not known at the outset and emerges in the course of the product being developed. The true end state needed to fulfil a need or want can very often be significantly larger or smaller than initially anticipated. The ability and flexibility to pivot based on emerging information is crucial for delivering value and the product being a success.
Business Analysts similarly must adapt, project planning generally relies on a knowing as much as possible at the time of planning, and so there is heavy reliance on the Business Analyst. Product Development is again a mindshift for a Business Analyst, there is no longer a need for detail up front, in fact in most cases it is a waste due to the likely and frequent change of direction and priority as we learn so much as the product emerges.
Business analysis in an agile software product development means an early assessment generally at a high level is all that is needed, with detailed analysis happening much closer to when the work is done, at this point much more is know about what is actually needed and so we are not wasting time analysing something that will not be done.
An Agile Mindset
Agile is a mindset far more than anything else, and when you start to look into it, there is nothing new, nothing original, and you will be surprised to find that whilst the word Agile has been used a lot by the software industry in the last 20 years or so, the practices and behaviours are just the good practices and behaviours of general management going back a century and possibly even a millennium or two.
‘Agile’ as we have come to know it whether we mean Scrum, Kanban, Lean, Lean Start-up, or any of the many other Agile frameworks is, in most cases a collection of historic good practices and guidelines identified by successful leaders and businesses in the past, they have been collected under one umbrella polished up a bit and marketed – very successfully – which is likely why you are reading this. I say this to discourage the notion that ‘Agile’ is new and untested, there are certainly some misinterpretations and misapplications but the underlying principles are sound and based on a lot of experience.
Just as an observation, if you looked back at the early days of the Ford motor company as an example from over 100 years ago, and you assessed them against modern standards of agile my guess is that they would hold up very well.
Agile Transformation should not be your objective
Agile Transformation is often presented as the objective, when in reality it should be a strategy to reach a goal. Taking some time understanding what your goal really is, will make any transformation far more likely to succeed.
- Are your customers dissatisfied?
- Are your products missing the mark?
- Do you(or your clients) feel you are not getting value for money?
- Are you slow to market?
- If you are creating software products for internal teams are they not having the impact you expected?
- Are people circumventing your tools?
- Is your ROI on software development too low?
- Are you losing key development staff?
- Is there a lack of transparency in the software development process.
These are just a few of the many reasons a company may want to undergo an Agile Transformation, they are all global business issues, and that is a key point: Agile Transformation is not an initiative just of the software department, it is a change for the entire business. It is a major cultural change that will impact your business from top to bottom. From the way you sell your products, to the way you hire staff, and particularly to the way you measure success.