So you are thinking about your current Application Lifecycle Management process and want to make a change. Maybe your organization has entrenched processes that use very specific methods in completing your daily work. This provides the team with a process but can suppress creativity and productivity. On the other hand maybe you are part of an environment that has very little process and you are dependent on key individuals in getting work done. This makes your team susceptible to individual burn-out, manual mistakes, and can be chaotic at times. Eventually you realize there has to be an easier way. You want to implement Agile, but how and where do you start? The ALM Rangers have devised as series of blog posts to help guide you in your transformation to Agile. Each blog post will cover a specific milestone of the transformation process. In this post today we are going to cover the first topic, Recognition. Before Getting Started //
Before you start diving into the details you need to find yourself the right advocate(s) to see this process through. Many times leadership will put forth a directive of "going Agile" but the right people are not put into place to make it happen. You need to find individuals who are passionate about software development, recognizes the need for change, energetic, and have the bandwidth. Changing any process can be difficult and the internal culture can grind things down from time to time. Your advocates need to understand this with the patience to keep moving forward. Recognition //
In today's ALM world it takes a village to successfully develop an application. Development teams are no longer a separate entity or silo in the business. They must work together with many other stakeholders inside the organization in order to deliver a high quality application that provides value to your users. Stakeholders can range from CEO all the way through the organization. Typically many of the problems you encounter are a result of communication issues between the different teams within your organization. The reason I bring this up is to stress the importance on the roles and contributions that everyone plays in delivering software.
The first step in the process is recognizing the challenges the organization currently faces when delivering software. I have found that one of the best ways to accomplish this is a white board session with all of the stakeholders and have a discussion on what tasks and events are effecting their particular roles. Ultimately you would have folks representing each role all in the same room together. However, sometimes team dynamics and culture make it more productive to interview the groups separately. The goal is to find out what each role does and the pain they experience during the process. Stay away from pointing fingers and focus on the process. One exercise that is very helpful is to have each role draw out the ALM process on a white board. Map the tasks and handoffs and label the responsible parties accordingly. You may be amazed on how different each group understands your current process
Below is some examples of questions to help move the conversation:
Another approach is to ask the roles to identify what they would like to see improved. Create an ALM wish list of sorts.
What do the stakeholders want?
What does the development team want?
What does the testing team want?
As the dialog opens up you will more than likely have a comprehensive list of things that each role in the process would like to see improved. It is important to get concerns, challenges, and suggestions out in the open. Your "Agile Advocates" will need to address these items when researching and proposing new processes. It also adds a level of transparency and involvement with all your stakeholders and team members. If folks are not involved in the process from the beginning , you will probably get more resistance when trying to implement change.
In our next entry we will focus on learning about agile practices and educating your teams and stakeholders. We can then map out the new processes and how the pain points will get addressed using agile practices.
Try taking an ALM assessment to help identify points of change in your teams process.