During one of my recent conversations with few teams who were going through agile transition, I asked them what they understood by ‘agile is about mindset change’ which is a highly spoken tag line in the agile world. To my surprise, their faces looked blank. Just a few days ago, they were addressed by their senior leadership on the importance of agile transition to the organization and how important their involvement is. Mindset change was one of the things which was spoken again and again. Surprisingly, no one asked what mindset change involves, what it means to them? We discussed and debated a lot on this. What behavioral and procedural changes will get them to a different mindset change? Don’t they have a right mindset today? There could be many changes that needs to be brought in at the team level, management level and overall organization level.
- ‘Test First’ attitude: Test Driven Development is one of those difficult practices for developers to pick up. Adoption of TDD is easier said than done. Traditionally developers have written unit test cases that will comply with the code. How many times have they written unit test cases after the code was shipped? If you go by their words, there was never enough time for writing unit test cases. Asking them to think about different test scenarios (something that they can find very difficult to do), write test cases, then write code, keep refactoring( not just the code but the test cases as well) simply doesn’t go well with them. ‘Am now also supposed to do QA?’ is the question they have on their minds. Who is going to give me that additional time to write those many test cases? Change is never easy.
- Being multi-skilled: What should be the motivation for an individual to acquire additional skills? Isn’t a developer/QA already over occupied to think about something else? How do you convey them the need and importance of being a multi skilled engineer? The industry is moving towards a T-shaped model. Developing T-shaped skilled engineers does not only mean technical skills but also soft skills and domain skills. Bringing the attitude to broaden an individual’s capability takes some effort.
- Collective ownership: Collective ownership not only in terms of code but for the overall quality is to be owned by the entire team. A developer should be ready to look beyond his code, and, when required, be able to contribute to other parts of the code base. He should be fearless in making changes in any part of the code. Similarly, QA should not be looked as only tester’s responsibility but as a team responsibility. QA is not to be left for later part of the release but needs to be integrated in the lifecycle right from the beginning. Such mindset sets the team to a perfect software delivery.
- Individual heroism vs team collaboration: Agile is a team game and there is no place for individual heroism. Team collaborates on all aspects of software development. Pair programming, cross functional teams, frequent communication between stakeholders encourages team collaboration. It is the team that succeeds or fails and not an individual. Know it all and letting the secrets go away kind of mindset is expected to be exhibited by an agile team.
- Manager to Servant leadership transition: This is one of the toughest change to achieve. I believe the culture of a region plays vital role in how smoothly this transition can be achieved. Traditionally, in many parts of the world, there is some sort of social status attached while identifying oneself as a Project Manager as against Scrum Master. People feel more comfortable and less risky (my 2 cents :-))while they try to manage situations than letting it done by team members. Putting trust on team is a major deterrence towards achieving servant leadership role, not to forget that there are many team members who feel more comfortable in taking orders than exhibiting courage to take decisions.
The above ones are few of the changes which teams will have to adopt but the list can go long depending on the overall culture and structure of a particular organization. New generation organizations are quick to adopt these changes but it’s a herculean task for big enterprises that have deep entrenched certain way of working.
Attitude to accept change is the foremost change that needs to be brought in for any change to survive.
Image Credits: Viva Glam Magazine