Sunday, 18 June 2017

On driving change: Kotter's Model


I've not only been studying organisational change management for a while now but also been part of some of the process in my recent engagements with clients. The subject has started to fascinate me, which has created a deeper sense of appreciation for system dynamics in the workplace.

I've decided to capture some frameworks on my blog for note keeping, since it will become a likely go-to place for me to reference. I'll start with Kotter's model and build from there. 

The source of my information in this post, is cited & referenced from Leach's Critical Chain Project Management book, Chapter 11, Pages 283-286.

1. Create urgency

The first step is to get a sense of urgency building within the organisation that something must be done. Most people in most organisations feel overwhelmed by keeping up with the daily workload so suggesting doing something more to change the way the organisation works looks at best to be just more work and at worst to be something that is going to make things worse than they presently are. People need something to motivate them.  Kotter suggested some things that work:

  • Show others the need for change with a compelling object that they can actually see, touch, and feel.
  • Show people valid and dramatic evidence from outside the organisation that demonstrates that change is required.
  • Look constantly for cheap and easy ways to reduce complacency.
  • Do not underestimate how much complacency, fear, and anger exists in your organisation.

2. Build team

One person can only succeed to cause change in a very small organisation. Many people are not even able to cause changed behaviour in one person: themselves. Think of how many people succeed at losing wait or stopping smoking? Planning real change at an organisation level needs help, you can't do it alone. You need to enlist the leaders of the organisation who have bought into the sense of urgency. Kotter suggested the following that could work:
  • Show enthusiasm and commitment to help draw the right people into the group.
  • Model the trust and teamwork needed in the group.
  • Structure meetings for the guiding team to minimise the frustration and increase trust.
  • Put your energy into step 1 (raising energy / urgency) if you feel you cannot move on to step 2.

3. See vision

People need to be able to see the proposed change because that is what can begin to create an emotional feeling that will motivate them to change. A vision should be a picture of the end result. If you describe it in words, the words need to evoke an image. Kotter suggested:
  • Try to see - literally - possible futures.
  • Make the vision so clear that you can articulate in one minute or write, or better yet draw, it on one page.
  • Supply a moving (emotional) vision such as serving people.
  • Put forth bold strategies to make the vision real.
  • Focus on how to quickly make the change.

4. Communicate

So people can feel the change, you need to communicate:
  • The vision in terms of the benefits people will see when they change their behaviour.
  • What has to be done to make the vision a reality.
  • Reinforcements when people exhibit the right new behaviours.
  • "Wins" by people and groups who do the new behaviours.
  • Anything and everything else about the change that will keep at the top of people's agenda.
Kotter suggests some ideas on communicating:
  • Keep communication simple and heartfelt.
  • Do your homework before communicating, especially to understand what people are feeling.
  • Speak to anxieties, confusion, anger, and distrust.
  • Rid the communication channels of junk so that important messages get through above the noise.
  • Use current technologies to help people see the vision.

5. Empower action

You need to empower action: make sure people know that they are expected to take action now and that they are free to do it as the see fit. Empowering action is as much about removing obstacles to action (pulling) as it is about causing people to act. Kotter's suggestions:
  • Find individuals with change experience to bolster people's self-confidence with "we-won-you-can-too" stories.
  • Recognise and reward in ways that inspire, promote optimism, and build self-confidence.
  • Deal with disempowering managers through coaching or move them out of the way.

6. Create wins

Your team needs to coach people to create successes: wins. Then you need to reinforce the behaviour of those who created the wins and communicate their wins and reinforcements to the rest of the organisation. Pilots are a powerful tool to create short term wins but you need to ensure that people who live those wins with the pilots do not immediately go back to prior behaviours. Kotter's suggestions:
  • Early wins that come fast.
  • Wins that are as visible as possible to as many people as possible.
  • Wins that go through emotional defences.
  • Wins that are meaningful.
  • Early wins that speak to powerful players whom you need to engage.
  • Wins that are cheap and easy even if small.

7. Do not let up

The leadership team has to keep the desired change at the top of agenda through and well beyond the planned-for successes. There will be obstacles and there will be some failures along the way but the winning teams take failure as a learning and motivating experience to add vigour to the change process. Kotter's ideas:
  • Rid yourself of work that wears you down - tasks that mattered in past but may not matter now or tasks that you can delegate.
  • Constantly look for ways to keep up the urgency.
  • Use new situations opportunistically to launch the next waves of change.
  • Show 'em, Show 'em, Show 'em...

8. Make it stick

Once you have completed the first round of getting the organisation to exhibit the desired new behaviours, you need to continue right on to improve what you have accomplished. If you do not continue to improve, the organisation will revert to the previous behaviours in a surprising short period of time. Kotter's ideas that work:
  • Never, never, never give up on step 7.
  • Use new employee orientation to demonstrate what matters most in the organisation.
  • Use the promotion process to place people who exhibit the new behaviours into influential positions.
  • Tell vivid stories over and over about how things now work.
  • Ensure continuity of behaviour and results that help sustain and grow the new culture.

Saturday, 20 May 2017

The Golden Circle

In this post I share a snippet of information referenced from the book Start with Why by Simon Sinek. The ideas and concepts provided in the book talk mostly about how some companies are more successful than others (using Apple as a major theme). It advocates that most companies often don't take time to appreciate the WHY they in business in the first place, and more often focus on WHAT they do. By focusing on the WHAT they tend to lose a captive customer audience, failing to address to the core beliefs of customers, which is one of the main reasons customers choose to go a brand, or become an ardent follower of the company.

I found this pretty interesting, with a wider relevance outside of just corporate strategic management. The golden circle can be applied to both personal and professional topics, and links nicely to my RAGE model. It can also be applied to team structures as well. In fact, in the organisational sense, the golden circle flows from top-to-bottom: starting with the company vision and flowing down to each person in the company.

What follows is the core explanation from the book, chapter 3, The Golden Circle. Simon Sinek's TED talk is also one of the highest ranking talks on TED, video is embedded at the end of this post. Although Sinek makes reference to many stories and cases that appear as old news in today's time, they are still nevertheless relevant, at the very least a useful reminder...

The Golden Circle


According to Sinek, the golden circle can be used as a guide to vastly improving leadership, corporate culture, hiring, product development, sales and marketing. It even explains loyalty and how to create enough momentum to turn an idea into a social movement. And it all starts from the inside out. It all starts with Why.

Starting from the outside in, Sinek describes the terns:

WHAT: Every single company and organisation on the planet knows WHAT they do. This is true no matter or big or small, not matter what the industry. Everyone is able to describe the products or services a company sells or the job function they have within that system. WHATs are easy to identify.

HOW: Some companies and people know HOW they do WHAT they do. Whether you call them a "differentiating value proposition", "proprietary process" or "unique selling proposition," HOWs are often given to explain how something is different or better. Not as obvious as WHATs, many think these are the differentiating or motivating factors in a decision. It would be false to assume that's all that is required. There is one missing detail:

WHY: Very few people or companies can clearly articulate WHY they do WHAT they do. When I say WHY, I don't mean to make money - that's a result. By WHY I mean what is your purpose, cause or belief? WHY does your company exist? WHY do you get out of bed every morning? And WHY should anyone care?

When most organisations or people think, act or communicate they do so from the outside in, from WHAT to WHY. And for good reason - they go from the clearest thing to the fuzziest thing. We say WHAT we do, we sometimes say HOW we do it, but we rarely say WHY we do WHAT we do.

But not the inspired companies. No the inspired leaders. Every single one of them, regardless of their size or their industry, thinks, acts and communicates from the inside out. They start with WHY...

Get the book, watch the video!


Monday, 17 April 2017

On E2E architect role in projects

I have shared my thoughts in the past on the subject of architects in the domain of digital TV software systems which can be found here. In this post I will share further thoughts about the specific role of an E2E (End-to-End) architect from a program/project management perspective, including my expectations of the role as well as the associated challenges I've faced with this concept, especially where the role either does not exist, or is not clearly defined in cases where companies don't have a clear enough understanding or have not yet set up a formal architecture competency.

My Background & My possible Anchor Bias

In my first decade of working experience with software and systems engineering projects, I was fortunate to work with world class technology service providers (S3 in Ireland & NDS/Cisco in UK). This experience helped shaped the way I would view future technology projects, including product & project management, software engineering, integration and delivery functions. It's the kind of experience that never leaves you, especially when you've witnessed first hand, one successful delivery after another both as an engineer and manager. So I'd come to see the world in a particular light, taking with me the style of project execution where ever I went, and assumed that all companies naturally followed similar concepts. And the cool thing about this experience was a well grounded appreciation for software & systems engineering design principles - principles which should not be confused with implementation methods, as what is a hot topic of debate these days, that of Agile V Waterfall, that has been the bulk of my recent challenges in projects in the last six years.

On returning back home to South Africa* still working in Digital Media TV domain, I soon realised that things are a little different to say the least (absence of architect roles, working with business analysts where I'd been used to analysis being a function of architecture, no defined role of systems integration, no method of continuous delivery & lack of solid post-launch monitoring & operations support systems). My first major program, involved a large-scale overhaul of the end-to-end broadcast system, including a video-on-demand component and a new set top box software stack. In order for the program to have a decent chance of success, I not only had to restructure & reshape the program, but also had to introduce functional roles that for me, were always obvious: an architecture team with a specific role of E2E architect, E2E systems integration, test and delivery teams. With a lot of hard work of convincing senior management these roles were necessary for project delivery, we managed to implement the structures I proposed that ultimately helped in the successful delivery of the project.

Strangely enough, as I took on other engagements in large programs in the same group of companies, I found myself repeating the same. It could be because I have a bias that is so strong and deep that does not allow me to see any other way, even though I always try to adapt my style to the culture and teams currently at my disposal, yet I still find myself coming back to these principles because its been proven and tested, that I can't really find any real fault in - possibly it is because these are indeed engineering principles that have stood the test of time, especially this concept of an End-to-End Solution Architect role. As the saying goes, never leave home without it, if I'm running a large program of work, that involves many systems & component suppliers, I never run a program without having an E2E architect attached to my programs, as step one. Once that is established (often as a result of canvassing support which takes up some time and energy), I move on to structuring the role of E2E systems integration, which in turn drives the processes and behaviours expected from component engineering and test teams. The program timeline then shows a simple picture of the high-level milestones involved, where the bulk of the program management and execution is a function of coordinating delivery plans with respective project delivery teams (who maintain the detailed project plans) as well as managing stakeholder engagement (which is a vital component of running large programs). This hasn't been smooth sailing all the time, as I'll try to share some of the challenges that frequently come up, later on in this post.

*Disclaimer: Although my writing is about an experience with primarily one industry domain in South Africa (Digital PayTV), I'm mindful about not passing a broad value judgement against all large corporates with a software competency. At first I thought these challenges of projects and roles like BAs for example was limited to just this environment, but the more I researched by skimming through job specs, attending networking events, technical conferences, meetups, training courses and meeting people from other corporates, I later realised the patterns run across all the major corporates like financial services, banking and the big telcos, that more often than not, the structures in place mirror more traditional-IT governance than hardcore technical software development structures that I was used to, in working in a pure technology services environment. So I'm reasonably confident there is no broad value judgement being applied here, that these experiences are likely to resonate with large companies operating outside PayTV.

Typical Landscape

The picture below aims to illustrate a typical landscape of this ecosystem. This could be separate entities run independently, or even group under a technology division, with different functional expertise, that in reality are still perceived as separate silos of responsibility:


This picture speaks to a typical reality of technology service providers in a digital TV value chain. Each silo represents a set of core technology expertise that exist in separate functional lines either under a technology division, or could exist as separate lines of business altogether. 

Each silo may have its own set of speciality with architects and development teams. Each unit may also likely to have a very unique culture: people, skill-set and ways of working. Each silo may also have its own operating model: how work gets prioritised and injected, build, test and release procedures. These units might also have their own terminology, a lexicon / vocabulary for their specific domains. They may also not be entirely self-sufficient, relying on external third-party component suppliers that form part of their system. These third-party suppliers are just like another silo, each with their own operating model, from architects to development teams, to ways of working as stipulated by their underlying contractual agreements.

These systems & teams usually come together in delivering a product or service that directly impacts a customer (end user). Typically launching a major new product (or platform, say for example a new internet product like a streaming app for video on demand) will impact at least all these systems. To do so, a project is set up as a program delivery initiative that will call for the co-ordination of all systems coming together in delivering the new product or feature to market. So a program team would usually be setup to manage this execution and delivery. Typically a program manager would be appointed to manage the full end-to-end delivery, which is not only the technology arm, but also the wider business streams for delivering product to market (marketing, customer care, sales, training, retention, communications, legal & regulatory). Sometimes, the overall program manager is supported by an end-to-end technical program manager, but this is not always the case. More often than not, the overall program manager assumes co-ordination of the technology ecosystem as well. For now though, I use program manager to either mean end-to-end technical program manager or overall program manager interchangeably.

The need for an End-to-End Solutions Architect

The picture below illustrates the positioning for a dedicated role of E2E Solution Architect to a project or program of work:


Just as you would appoint an end-to-end project / program manager to the role of maintaining the coherency of the overall delivery project, so too should you assign an end-to-end solution architect role, to maintain the integrity and coherency of the overall technical solution design. This is the crux of my proposition. Related to architecture is a close relative called end-to-end systems integrator role, I've touched on systems integration topic on a previous post called Worlds of System Integration, so will not discuss integration in this post. Related to end-to-end integration is testing, in my past experience, integration implied testing or QA, but as I later learnt on coming to back to South Africa, most companies still see QA as a separate activity, so I have another post that talks to the Worlds of QA testing.

Why?

Because it makes running a project so much simpler! 

When I work with an E2E architect, I use it as a vital supporting pillar of the project. The E2E architect will take care to understand the business or product requirements from the business owner, works with all the respective technology domain experts (usually the assigned system architects) on mapping out a solution architecture, defining the new technology dictionary and model (if needed), highlights the system building blocks and supporting components that would be impacted, agrees on high level technical requirements from such systems, as well as important integration points, technology risk assessment, along with unearthing required non-functional requirements (performance, stability, redundancy, etc.) that would be needed for a complete solution. All of this is kept high-level, with just enough information to allow the project team to shape and scope the project, as well as prepare the technical teams of design constraints to think about. All of this is done in the early stages of shaping and scoping a project, has proven in my experience to be absolutely vital in a successful project outcome.

To be assigned an E2E Solution Architect to a project is no small feat. The expectations are quite high indeed. The role not only requires a sound grasp of technical concepts, but also mandates a personality that is comfortable with extreme forms of collaboration, managing and dealing with diverse stakeholders, personalities and egos (don't forget egos - tech guys can be a difficult bunch of people with huge egos), a strong suite of leadership skills, self-discipline, self motivation and the ability to work with ambiguity, a responsible attitude to self-management of tasks (without depending on a project manager to co-ordinate every meeting for example). Added to that, the E2E Architect must have excellent communication skills, demonstrating both in written and verbal form, the ability not only to handle technical communications, but also be the person to translate to business stakeholders in a simple, non-technical manner.

I rely on this architect to also grasp technical and architectural issues that might come up in delivery, and be able to provide solutions and advise on ideas and proposals to manage any impediments on the overall solution provisioning.

Why can't you just feed the business requirements to each division?

The short answer is the risk of lack of coherency of an overarching, end-to-end solution design. The absence of an E2E architect acting as the gatekeeper for maintaining overall integrity and coherency of the business requirements and related solution design, runs the risk of each division designing and implementing fairly independent solutions, leading to fragmentation, increased integration and last-minute rework to get a coherent solution delivered. This also leads to a system implemented without foresight, lacking the vision or with the end in mind. An E2E architect would fill this void, save a lot of time and energy in putting all the pieces of the puzzle together. 

Though not impossible to complete a project without the E2E architect, it is often through a lot of last minute co-ordination efforts of a project management team, or some efforts of a few technical heroes coming together, taking collective ownership of the problem. Generally these units have other work and projects going on concurrently, where focus on a single project is difficult to achieve. If the environment of very open collaboration and team work, where there aren't really any silo-mentality, then yeah, it's possible. But the reality is that in most organisations, silos exist, collaboration is not the norm, and the overhead of a project management team coordinating these activities is too high, let alone the implied technical knowledge of these project managers to make this a worthwhile activity.

This reminds me of the story about Christopher Wren, the architect responsible for rebuilding St. Paul's Cathedral after the Great Fire of London. Wren was walking the length of the partially rebuilt cathedral when he asked three bricklayers what they were doing. The first bricklayer responded, "I'm working." The second said, "I'm building a wall.". The third paused, looked up, and then said, "I'm building a cathedral to the Almighty."**

How many teams fully appreciate the work they do in the context of the end-to-end ecosystem? It is not expected every team have this kind of vision, it would be great if they could all see the big picture and be visionary, but in reality they're not - and there's nothing wrong with that. The instructive part of Wren's story is that he didn't come up with a sense of purpose himself and pound the vision into everyone's head. Each bricklayer cared about something different, even though all three were working on the same thing. Wren's role was to listen, to recognise the significance of what he heard, and to create working conditions that allowed everyone to find meaning in their own way.

In the same way that Wren appreciated the vision, the E2E architect plays the same, working with, collaborating, listening and negotiating with individual teams. Feeding a business requirements spec to each technical division independently, without a golden thread joining everything together, is not the most effective way of maintaining coherency.

[Next section: Why a solution architect and not a technical project manager instead?...]

Sunday, 12 March 2017

The Project Team as a Relay Team


The analogy of a relay race team has been used a few times in project management. It is a great analogy for project teams because it reflects the passing of the baton, from one player to the next, after each player completing a set distance, just as with projects consisting of multiple teams dependent on each other for the ultimate success of completing the project. The passing of the baton, the execution and seamless delivery from handover-to-pickup-and-sprint more often than not (assuming the runners are the same) will account for a win or a lose the race moment.

What triggered me to write this post is not the relay race applied to a project team responsible for execution (typical critical chain analogy of passing information to teams waiting, managing the interfaces so that it's clear, etc.), but rather I wanted to focus more on the actual PMO (project management office) or project management team itself (typically the group of project managers assigned to the project). Where there is a large endeavour, a project of more than 12 months up to say 36 months, those long running projects that have a team of project managers responsible for overall delivery, then with this context too, I believe the relay race analogy is quite apt and relevant. It becomes a relay race for project managers: the baton is passed on to a new project manager, with each passing of the baton, the project receives a burst of new energy, enthusiasm, keeping the project alive. For long-term projects, I believe it is vital to renew the energy by bringing in new people often replenishes the project, breathes new life and momentum...as long as you choose wisely and get the timing just right.

If you're leading a PMO (Project Management Office), you will have at your disposal program managers, project managers & project administrators - all of varying degrees of skills, experiences, competencies, strengths and weaknesses.  Similarly a program manager of a large project, will have have access to a similar compliment of people, making up the project team. Whether you're leading a PMO or a running a program, as the senior project professional, you assume the role of project leader. As a project leader, you create your project management team and are responsible for the life of the team.

Project management teams are no different to other teams. They also go through the stages of development: Forming, Storming, Norming and Performing. They too have their own challenges, just like any other team would. I believe that as a project leader, it is important to keep abreast of your project management team's competencies, you need to be able to gauge the energy of the team and tell when it's time to pass on the baton. Even as a project leader yourself, you might have to pass on the baton to another project leader to see the project through to completion. And I don't see this passing of the baton as a reflection of failure on the part of the manager, it is just a fact of reality. A true leader will know when to move on instead of causing harm to his followers. A project manager should know when its time to pass the baton on to another project manager for the best interest of the project.

On long-term projects, keeping the team in tact can be challenging. Depending how far along the project is in execution, you run the risk of the work becoming routine, rote and uninteresting. Once things become mechanical, which is not a bad thing for the project, but for the human being serving the role as project manager, it might start to get tedious. Of course, I'm not passing a value judgement on all project managers, everyone is different - some people love staying the course, from start-to-finish, must-see-it-deliver mindset, whilst others might want to leave just as the corner is being turned with the project close-to-completion, and all downhill from there.

Examples of Relay Race for Project Management Teams
Looking at the classic PMBOK stages for project life-cycle: Initiation, Planning, Execution, Monitoring & Control and Closure, or, looking at a more broader stages of project leadership: Shaping & Scoping, Start-up, Delivery & Closure - what if your project managers mastered a particular stage of the life-cycle? 

With a specialist PM per stage of life-cycle, you play to people's strengths. As much as people might want you to believe that a project manager should be versatile and be proficient with all stages of the project life cycle (heck, that's why there's certification right?) - it has been my experience that this is not the case.

There are some people that are really good at starting projects but not finishing. Some are great at big picture strategy, scoping, shaping and starting-up, but lose interest when it comes to execution and delivery. Whilst some people are great at execution, monitoring and control, but lack the depth, breadth and wisdom of big picture envisioning to dream up a decent project charter, engage in meaningful dialogue with stakeholders and visualising the strategy. Some people are great at detailed mapping of project plans in Microsoft Project, detailed status reporting and tracking but fail to see the big picture. Some people have so much energy to close out the last phase of delivery, but find themselves at a loss when starting a project on a blank piece of paper. Some people experience fatigue mid-way through the project, others are sprinters who love the stress of the last mile.

Yet, when all these people form part of a bigger project team (the project relay team), magic happens. Each PM plays to his/her strength during the project life-cycle, handing over as needed, just-in-time before the project becomes a burden to complete...the project heartbeat is maintained and can live to completion.

So what am I saying then, really?

In the past I have handed over my projects as if I was handing over the baton in a relay race. I saw my passing the baton to another project manager as a vital component to the success of the project. A runner can not run the relay race alone, so in the same vain, for large projects that demand a level of endurance of project management execution, you must set yourself up with a project management team that would be capable of passing on the baton...I have in the past, introduced new project managers into my team specifically to introduce "new blood" and new energy as way to prevent project fatigue (it works)...

Past Experience
I once worked on a very large project that lasted about five years, with me joining the project in the second year. The project was one of the best projects I've worked on, it shaped me and thought me the hidden gems of project management that no PMBOK book or certification course will teach you. We were a team of five project managers based in UK, with peer PMs placed in France, India & Israel. Overall the full project team was between 350-500 people. We had a customer that was ruthless and very demanding, the customer also had a complement of 5 PMs in the UK.  

Tuesday, 28 February 2017

Ship of State Metaphor


I recently completed Jim Benson's book "Why Limit WIP: We are Drowning in Work". It's a simple, straightforward read, in the form of a story around typical life pressures in a corporate running multiple projects, all with the same sense of urgency, but teams not actually shipping any product (that is, completing any work product and releasing to market).

Jim introduces a metaphor called the Ship of State, as a way to help the team's product and project managers navigate through the uncertainty, thus allowing the team freedom to decide (empowered) what is safe and within their control to make decisions and others where the team still need to act, but still keep the stakeholders informed of their thinking. The scene is around product features for roadmap, which I thought quite powerful and useful - with a much wider application than just roadmapping features.

So I created this little poster that captures the essence of the metaphor. Does it makes sense?
Think about what your ship of state would look like (personal or professional)....
Ship of State