Quite
often, we hear the buzz word ‘Software Factory’ in Scaling Agile conversations
and conference sessions. Those who
promote or sell the concept of ‘Scaling Agile’ attempt to indoctrinate their
audience with the belief that Scaling Agile is a definitive way to setup an
Agile Software Factory. Yes, when you add ‘Agile’ to ‘Software Factory’, it
becomes even more attractive. While
there are several case studies and white papers about how to go about setting
up an Agile Software Factory, the challenges involved in doing so are
numerous. Because of such challenges and
several other reasons, initiatives to setup such factories become
disastrous. Why do such disasters
happen? This post is to bring out a list of reasons. Here is the list.
- Vision and Leadership Commitment - Lack of vision and leadership commitment is a primary reason. Well, in many projects and programs there will be vision and leadership. However, when the vision is not set right and shared among all stakeholders including team members and when there is no inspiring leadership and leadership commitment to support and nurture the vision, results can be disastrous.
- Investment in Coaching - Not investing in Agile Coaching is a definite recipe for disasters. In large programs it is necessary to invest in coaching at different levels right from teams to middle and senior management. Obviously, this means that you need a coachable ecosystem. Learnability is important. When there is rigid mindset and inability to learn and collaborate, cultural issues fuel disasters.
- Focus on Cost Savings Only - Just because your ultimate goal is to set up a software factory, your focus cannot revolve around cost savings all the time. You cannot optimize your team members just as you optimize your machines in the production line. You cannot replace them just as you replace your machines. You cannot operate in shifts to save costs. You cannot forget about people and their emotions. Obviously, ‘that’ factory is different from ‘this’ factory.
- Physical Infrastructure – Lack of infrastructure including open workspace, video conferencing, phones, meeting rooms, computers with necessary configuration, network connectivity, tools, etc., is the next reason for such disasters.
- Intellectual and Emotional Infrastructure - Intellectual infrastructure is about skills, competencies, expertise, special groups, knowledge forums, technical excellence and so on. Emotional infrastructure is about team bonding, trusted leadership and the likes that enhance the feeling of belonging. When intellectual and emotional infrastructure are not adequate you will see symptoms such as loopholes in process implementation, poor or weak automation strategy, poor execution, lack of technical excellence, etc. leading to pool quality.
- Inclusion - In virtual teams or geographically distributed teams, lack of inclusion can create chaos. We know that there are several challenges in distributed agile. When there is lack of inclusion, you see one site dictating or directing the other sites, double standards, and so on.
- Governance - Though this comes as seventh, it is as significant as the first reason. Governance can make or break things. Collaborative, inclusive and supportive governance teams can do timely course correction and deliver value to customers. When the members of Governance team do not have a unified agenda, they may pull each other in different directions. That is disastrous.
Do you
see your team stretching or burning out? Is that becoming a trend? Are your
team members demotivated? Are you calling your project or program a Software
Factory? Probably you do not sit through with your team members and empathize
on what is going on. You are not identifying the root causes. Revisit the seven
reasons mentioned in this blog and see how you can make some course correction
to come out of a disastrous Software Factory and make it a success.
Related Posts:
No comments:
Post a Comment