Sunday, December 4, 2016

Agile Program Management: Awareness Building and Knowledge Management

What is the role of Agile Program Management function in these two areas – ‘Awareness Building and Knowledge Management’?   These two areas go beyond generic training on new joiner induction or on-boarding. I am writing this post to explain how these two areas go beyond the normal on-boarding or induction process and why those two are important drivers in Agile Program Management.

Typically we get trained or certified team members to form cross-functional teams or we induct skilled team members and put them through appropriate additional training and/or certification programs. Once this happens, team members get into main stream iterative/incremental delivery. Teams that are self-enabled and high-performing experience perpetual learning that happens all the time. In small projects that involve one or two such teams, awareness building and knowledge management are intrinsic. Those who have been through this or those who imagine standalone or small teams may even wonder why someone would even worry about these two areas!  This is because Agile is about team learning and continuous improvement.

Well. That happens. That happens in small projects – projects that involve one or two or three cross-functional teams.  How about large projects or programs? – for example, programs that involve multiple hundreds of team members – 400 to 1000 team members with 40 to 100 cross-functional teams that are geographically distributed?

I am sure you got the context.  In most cases Agile Program Management involves complexity in terms of team size, variety of projects, geographical distribution and so on. This is when Agile Program Managers cannot afford to ignore ‘Awareness Building and Knowledge Management’.

Awareness Building and Knowledge Management are continuous activities. There have to be multiple mechanisms to promote or implement these two areas. There can be mechanism such as visual posters, lightening talks, regular or periodic sessions that involve topics related to technologies, domain concepts, and so on.  Gamification is worth considering in large teams to ensure continuous awareness building and knowledge management.

Unlike small projects that involve one or two cross-functional teams that last for about nine to twelve months, large programs involve tens or hundreds of cross-functional teams and last for multiple years.  Continuous focus on awareness building and knowledge management becomes a necessity to sustainable rigor in execution.  Remember, a 10 percent attrition in program of 500 team members is nothing but 50 people moving out and moving in year on year.  When there is a churn of this magnitude or higher, on-boarding or induction may become individual based but not team based because you don’t get to induct a team or train a group of individuals all the time. With consistent pressure on sustaining velocity trends or meeting release timelines, the focus on delivering would supersede everything else. This is where a continuous focus on awareness building and knowledge management can strengthen the ecosystem.

How can we going about this? Form a team of motivated individuals who want to contribute to this area. Focus on a) creating an infrastructure that radiates knowledge and improves awareness – these can be posters, email flyers, knowledge management portal, etc. b) budgeting time for periodic knowledge sharing sessions facilitated by team members for team members, c) involving geographically distributed teams by sharing content or inviting them to participate.  Also, include these in your program management radar or dashboard.  Do you have any additional ideas? Please share.

Have you seen a new project team in your program repeating the same mistakes that one of the mature teams came across couple of years ago?  Have you seen the same types of issues and conflicts happening in new teams year after year? Have you seen a newly inducted developer doing a wrong bug-fix most probably the same way someone did years ago and learned a better way through experience? If yes, I am sure you will understand how these incidents can be better understood and handled, and minimized - if applicable, through consistent focus on awareness building and knowledge sharing sessions. Also, I am sure you don’t assume that the initial induction program or training or certification can do the magic to stop these!

Tell me now. Don’t Agile Program Managers need to keep track of these two areas or have them represented in some form (probably through a measure or metric) on their program management dashboard?