Skip to content

Posts from the ‘Project Team’ Category

Adapting your leadership style to the maturity level of your self-organizing team

Unless they are adopting Agile for the wrong reasons, people managers find themselves facing an interesting decision – “Am I willing to let go some control in order to take advantage of the benefits associated with Agile?”.

Being human, it is difficult not to resist change unless we know what to expect from the future and clearly understand the implications for us. Once the future becomes clearer, we can start to appreciate the need to change. That’s just the beginning… Change for what?

In his book, Jurgen Appelo presents various levels of decision making and manager involvement in the context of Agile adoption. I took the liberty to build a matrix (see below) to match Jurgen’s various leadership styles to the 7 stances of a self-organized team [a pdf version of this matrix is available for download].

(1) Taken from: Agile self-organized teams – is the team self-organized or not?

(2) Taken from: Management 3.0: Leading Agile Developers, Developing Agile Leaders

The matrix presents which leadership style the manager should be using based on the level of maturity of your team. Hope you will find it useful!

The PATH: a model to facilitate the diagnosis of the Agile maturity level

Pyxis created the PATH model to facilitate the diagnosis of the Agile maturity level within a team in order to recommend the appropriate intervention. PATH is:

  • An intervention approach within the organization;
  • A model allowing to lessen the impact of an Agile transition.

PATH is an acronym for Process-Added value-Technologies-Human, the 4 dimensions of software development.

Processes: Efficiently deliver value with a simple process adapted to the project’s needs (lowest cost within time).

Added value: Deliver functionalities and maximize their business value (prioritization and flexibility).

Technologies: Deliver quickly and consistently with appropriate engineering practices (sustainable pace and skills development).

Human: Deliver at a sustainable pace and in harmony while promoting team work (collaboration and communication).

In addition to the dimensions, the PATH model introduces 3 influence levels—vision, funnelling and emergence—that, when applied to all 4 dimensions, produces 12 intervention areas.

Vision

The ‘Vision’ level shows the orientation to meet established objectives. This level is generally linked to the strategic vision of the organization. The vision represents the objectives to achieve.

For instance:

Maximization of return on investment:

  • Connection between the IT group and business units, and globally between all stakeholders
  • Development of inter-project synergies in order to adopt best practices and pool them
  • Management of simple and adaptable projects in order to reduce administration fees
  • Capacity to innovate in order to be equipped with the tools required for the organization to evolve
  • Capacity to anticipate in order to gain a competitive edge
  • Greater respect for budget allowance

Maximization of a cooperation and collaboration culture:

  • Better team organization
  • Evolution of the strategy and change culture
  • Adaptation of the leadership model

Performance:

  • Quick project execution compared to traditional approaches
  • Quality improvement of software delivered
  • Establishment of parameters allowing to measure performance
  • Adaption of the competency model and expertise development
  • Process implementation to select initiatives

Funnelling

The main objective of the ‘Funnelling’ level is to implement mechanisms promoting collaboration (e.g. communities of practice, wikis, and blogs).

This level:

  • Allows to implement a communication approach in order to make the vision visible
  • Allows to make sure the field practices (emergence) are aligned with the objectives established at the ‘Vision’ level

Therefore, funnelling allows the emergence of the best practices arising from development teams as well as the dissemination of these practices to all groups that may benefit from them. Therefore, the ‘Funnelling’ level acts as an information catalyst and aggregate.

Globally, the objective of this level is to ensure reuse of:

  • Tools
  • Practices
  • Experience acquired by stakeholders

Emergence

The ‘Emergence’ level is the level for project teams developing software solutions. It is important to implement new development processes and train team members on how to apply Agile principles.

At this level, transformations imply:

  • New ways of doing
  • A behaviour oriented towards collaboration in order to achieve established objectives
  • The implementation of methods allowing to obtain best results

Agile teams – What people managers can learn from parents

image by candrewsBefore I explain what people managers can learn from parents, I feel the need to defuse what some readers may have in mind. I am not suggesting that employees and team members are children or act like babies [although, sometimes ... - sorry, I'm digressing].

The Art of Parenting

If you have children, you should quickly relate to the fact that nothing really prepares us to be good parents. Sure, while growing up we assimilate patterns, behaviours, and skills from our environment – including and often to a large extent from our own parents. At a later stage in our children-free life, some of our friends start to have kids and we observe them – sometimes with curiosity, sometimes out of sheer voyeurism, and sometimes with envy – and that’s when we contemplate the idea of having kids of our own.

Then, one day out of the blue, the kind doctor tells your spouse that she is pregnant – in our case with twins! But that’s an entirely different story ;)

Then comes the next stage of learning to become a parent, we spent countless hours on amazon.com previewing and ordering books, lot’s of books. Except for a few best sellers, the others titles vary based on our perceived areas of weakness and the bad pattern we noticed from our parents when they raised us.

And one day, a beautiful baby boy is born and/or a pretty baby girl – once again, in our case we got one of each.

Once the sleepless nights are over and the baby is capable of learning, parents slowly transfer increasingly complex tasks to their child: holding the milk-bottle, feeding themselves, walking without holding mommy’s hand, abandoning the diaper, selecting how much ketchup to put on their food, picking their own clothes, walking to school by themselves, deciding what time to go to bed, going to a movie without supervision, and so on up to the point when the child moves out of the house to start their own independent life.

What people managers can learn from parents

It is obvious that parenting is very different from managing people, no doubt about that. On the other hand, their are some similarities.

Nothing prepares people to become good managers. Sure, while growing up in our professional career we assimilate patterns, behaviours, and skills from our environment – including and often to a large extent from our own managers. Granted, some people had the opportunity to learn about management during their school years and that could be an added bonus.

As with parenting, once we decide to get into management we spend countless hours on amazon.com previewing and ordering books, lot’s of books. Except for a few best sellers, the others titles vary based on our perceived areas of weakness and the bad pattern we noticed from our previous managers.

How that applies to Agile teams

Agile management is somewhat similar to the art of parenting with the manager transferring to its team increasingly complex tasks and responsibilities. Helping the team self-organize doesn’t mean to abandon the team to itself without help or some supervision. Along the same lines as parenting, there comes a time when the manager must determine how much responsibility to transfer and what level of support to provide.

Similar to the role of the parent, the agile manager is there to support the team’s development and make it successful and autonomous until one day – maybe – the team is highly performing and can become independent.

The myths of self-organized teams

Image by Lauren_MillerMany Agile practitioners will push forward the concept of self-organized teams as a first step towards an Agile transition. Unfortunately, self-organization is often mis-understood and many become frustrated with the concept. Below are myths taken from real life situations – including the inner workings of our organization.

  • Self-organized teams can only work with experienced people. Although more experienced individuals may make it easier to self-organize, they can also make it much more difficult due to their old work habits. Overall, the age of the team members or their actual experience doesn’t impact their ability to self-organize. Self-organization has more to do with the people’s willingness to self-organize and the support they get from their manager than it has with age or experience.
  • Self-organized teams don’t need a leader. Wrong, self-organized teams still need a leader to move them through the various stages and toward their end goal. This being said, it doesn’t mean that the leader has to be a manager or a person in authority. Quite the contrary. Emerging leadership is a much better way to achieve self-organization but management needs to be patient because self-organization takes time.
  • Self-organized teams don’t need managers. Why not? Managers are a key success factor to support self-organization. Once again, this doesn’t mean that the manager is included in the self-organized team or that the manager will be leading the team. As Jurgen puts it – “Agile managers work the system around the team, not the people in the team”.
  • Self-organized teams are for everyone. Not necessarily, some people may not be ready for self organization or they may not be willing. Everybody has the capacity to be part of a self-organized team, it is simply a matter of wanting to be part of such a team because it is demanding and requires people to become responsible and accountable.
  • Self-organized teams are easy to implement. Really? If it was easy, why wouldn’t everyone adopt self-organization? The fact is that starting at a young age, we keep being told what to do (brush your teeth, go to bed, pick up your clothes, do your homework, show up at the office at 9am, finish the report for your boss, go on vacation in July, retire at 65, etc.) Wanting to be self-organized and taking control of your life is counter-intuitive and difficult. People in self-organized teams often act as victims of circumstances during the early stages (I can’t do this because the system won’t allow me) and then start to notice the opportunity the freedom of choice brings.
  • Self-organized teams quickly increase the team’s performance. No, it won’t. The team’s performance will indeed increase and for the long run but self-organization requires time, energy and much efforts to deliver results. If you are interested in quick-wins with minimal investments (time and/or money), I would suggest the Agile magic pill.

Autonomy or self-organization is a strong contributing factor for motivation and motivated individuals lead to improved performance and better results. Attempting to implement self-organized teams without understanding the risks and the energy required isn’t a good idea.

Don’t tell me you really want to increase your team’s performance – I won’t believe you

Image by Trucker TomI bet you $50 that even if I told you the way to boost your team’s performance without increasing your costs – you wouldn’t do it. The situation is actually worst than that! I’ll add another $50 that I even know what you will tell me once I tell you. You will say “We can’t do that in our organization“.

Ready to find out?

Stop assigning people to projects and let them pick the project they wish to work on – that’s it!

I can hear you – “We can’t do that in our organization” – there, I just saved $100.

Seriously, it is that simple. Think back to a project you worked on – were you assigned or did you select it yourself? Now do this exercise. Think back to something you enjoy, I mean you truly enjoy – were you assigned or did you pick it yourself?

Have you ever heard of Tom Sawyer withewashing the fence? As Mark Twain once said, “Work is something you are forced to do while leisure is something you choose to do”.

I don’t mean to pretend that work is a hobby but many organizations ignore people’s intrinsic motivation and personal drive when they (i.e. the managers) assign people to projects. No matter what the project is about, there will always be people interested in working on such a project. Ever heard of Crowdsourcing?

In most organizations, it may not be easy to let people select their own project, but it is feasible. Some organizational constraints may need to be modified, project assignment may need to be done differently, some resource planning may be required but all of this is feasible.

As one of the participant highlighted “I used to be bored to death in my normal job until one day, I asked (begged) to be part of a specific project. I’m so glad they granted my wish. I now work 55 hours a week! I am super motivated and nothing is going to make me want to leave that project”. Still think letting people select their project is a bad idea? – Analytical-Mind.

Go ahead, give it a try and see the results for yourself. I have tried this approach on many occasions and the results always impress me.

The strength of a real team is under-estimated

Image by Dawn (Willis) ManserProject kick-offs have been used for years as a way to launch a new project. It is assumed that bringing people together in a room where the project sponsor presents the project’s objectives and time-lines is a good way to get things going. To be sure that the newly formed team will perform well, some organizations even order sandwiches or sushi and add diet software drinks or beer, and so the project begins.

I really don’t have a strong opinion about project kick-offs but I do see a great opportunity to start building a real-high-performing-team from day one is often missed.

Having been part of great (and not so great) teams over the years, I’m obsessed about creating real teams – the ones we remember forever because we delivered outstanding results while being highly energized, and had a great time doing it. It is similar to the concept of Flow proposed by Mihály Csíkszentmihályi.

Flow is the mental state of operation in which a person in an activity is fully immersed in a feeling of energized focus, full involvement, and success in the process of the activity. [...]

According to Csíkszentmihályi, flow is completely focused motivation. It is a single-minded immersion and represents perhaps the ultimate in harnessing the emotions in the service of performing and learning. In flow, the emotions are not just contained and channeled, but positive, energized, and aligned with the task at hand. To be caught in the ennui of depression or the agitation of anxiety is to be barred from flow. The hallmark of flow is a feeling of spontaneous joy, even rapture, while performing a task[2] although flow is also described (below) as a deep focus on nothing but the activity – not even oneself or one’s emotions.

Colloquial terms for this or similar mental states include: to be on the ball, in the moment, present, in the zone, wired in, in the groove, or keeping your head in the game. Wikipedia.

So back to creating a real strong project team (The Wisdom of Teams: Creating the High-Performance Organization). Why not start with something simple, real simple? Establishing rules and protocols of operation for the team.

As a first step in launching a new team, I usually start with an initial meeting (the duration varies based on the size of the team and the project being undertaken) during which I ask the team members to establish their working protocol – how they wish to work together.

Here are some of the questions the team members need to answer prior to doing anything else – including actually starting the project:

  • What do we wish to accomplish together?
  • What ground rules will we play by?
  • How do we make decisions?
  • How long can discussions and debates go on for? Do we use time-boxes in meetings? For decision making?
  • How do we resolve disagreements?
  • How often do we need to meet? For how long?
  • How will we communicate with each other?
  • How do we keep track of our action items?
  • How do we deal with team members who do not live up to the team’s expectations?
  • What rules do we have to include new team members? To expel existing team members?
  • How will we know if we are successful as a team?

Some of these questions may appear to be trivial. While establishing a team protocol doesn’t need to take a lot of time (and can easily be combined with a team building activity), not establishing such a protocol will quickly lead to inefficiencies, waste of time, and increased frustration for the team members. Want a few examples?

  • Did you ever find out that some project team members’ personal objectives had nothing to do with the project? Trying to motivate those people will drain your energy and your focus.
  • Has a detailed technical decision ever been taken by a senior manager with weird consequences? Guidelines may have prevented the decision from being escalated in the first place.
  • Have you participated in meetings where key people didn’t show up or showed up late with the consequence of having some decisions over-ruled? Determining up front the rules around meeting attendance and decision making will greatly alleviate such frustrations.

These are only a handful of examples but time and again, I have had the privilege to launch teams on the right foot. The consequences are positive and the cost is minimal. It may not be as cheap as buying sandwiches for the team during the project kick-off but the investment will last much longer.

From team self-organization to enterprise self-organization

I had the opportunity to facilitate a discussion table at the “Déjeuner-Causerie” in Montreal (last week) and in Quebec City (this week) where over 50 people gathered in each city to share their experience with Agile adoption.

From team self-organization to enterprise self-organization

Before I get into the main topic covered during the 3 hour breakfast, the participants shared with the group their topics of interest. Though the participants were at various stages of their Agile transformation and had different experiences with Agile, they shared common interests and as such asked interesting questions:

  • What is self-organization and what does it really mean?
  • Can self-organization really work?
  • How far can you push self-organization?
  • How do you get management on board?
  • Can this work in any culture?
  • How can people be motivated to work together?
  • We are only starting with Agile, what do you recommend I read?
  • and many more!

This post is a quick summary of the various conversations. Since most of these topics require further explanation, I will expand on some of them in upcoming posts (and conferences). For now, I wanted to share some of the discussions.

What is self-organization and what does it really mean?

Self-organization is one of the basic pillars of Scrum and is often misunderstood. People (and in particular managers) assume that letting a team self-organize is the equivalent of complete chaos. To avoid getting into such a situation, self-organization requires some constraints.

Self-organization is the process where a structure or pattern appears in a system without a central authority or external element imposing it through planning. This globally coherent pattern appears from the local interaction of the elements that make up the system, thus the organization is achieved in a way that is parallel (all the elements act at the same time) and distributed (no element is a coordinator). – Wikipedia

In his book, Jurgen Appelo wrote,

No self-organizing system exists without context. And the context constrains and directs the organization of the system. – Management 3.0: Leading Agile Developers, Developing Agile Leaders

As I already mentioned, Pyxis is an experimental laboratory and as such we have attempted to let people self-organize without (or with very minimal) constraints. In an upcoming post I can share some of the conclusions of that experiment but for the sake of this post, I’ll leave it as a “failed experiment”.

So back to constraints. In our context, the constraints are as follows:

Though we apply it at an organizational level, the concept of constraints can be applied at an Agile project team level where the Vision is the equivalent of the Agile project charter, the Finance is the equivalent of the project budget, the Strategies can be replaced with the project’s objectives or outcomes, while the Culture remains.

Can self-organization really work?

Yes, it can but it isn’t easy. Self-organized teams tend to go through various stages and success isn’t immediately achieved. Unless an organization is willing to invest into building a successful team, self-organization won’t really work.

How far can you push self-organization?

That’s really up to each organization. For instance, we have successfully pushed the concept as far as letting employees determine their own salary. Sounds crazy? Sure does, but that’s only because you haven’t factored in the organizational constraints.

You have probably imagined people getting together and giving each other huge raises. That’s what would happen if there were no organizational constraints. Once the constraints are well determined and understood, the team members can determine who deserves what as long as they fit within their team’s budget.

How do you get management on board?

That’s a difficult one to answer. The first question managers typically ask is “What will my job be?”. People managers are used to controlling what their team does, when they do it and even how they will be delivering the work. As Dan Pink mentioned:

  • People are more motivated when they are self-organized;
  • People take their own commitments more seriously than the commitments made by others on their behalf;
  • Teams and individuals are more productive when they are not interrupted;
  • Teams improve when they can settle their own issues;
  • Changes in the composition of the team affect the productivity of the team members;
  • Face-to-face communication is the most productive way to share information. – Drive: The Surprising Truth About What Motivates Us

That’s the reason why Agile managers need to alter their leadership style in order to success in an Agile context.

Can this work in any culture?

Probably not. Well, not without some organizational commitment. During last year’s Agile Conference, Michael K. Spayd explained that some cultures are more likely to adopt Agile than others. As such, true self-organization is more likely to succeed in a Collaboration culture or in a Cultivation culture. William E. Schneider’s book (The Reengineering Alternative: A Plan for Making Your Current Culture Work) is very useful to help determine the 4 different types of cultures. Fortunately for us, Pyxis is a cultivation / collaboration culture.

How can people be motivated to work together?

Unfortunately, they can’t! Contrary to popular beliefs, people can’t be motivated – only they can motivate themselves.

To improve the team’s performance and the project’s results, we suggest that Agile project teams be staffed by asking people to volunteer for a project. Projects are typically staffed when project managers or people managers select the people who will take part of a specific project. Although that might seem like a good idea, it is much more powerful to seek volunteers. As one of the participant highlighted “I used to be bored to death in my normal job until one day, I asked (begged) to be part of a specific project. I’m so glad they granted my wish. I now work 55 hours a week! I am super motivated and nothing is going to make me want to leave that project”. Still think letting people select their project is a bad idea?

We are only starting with Agile, what do you recommend I read?

There are so many great books and blogs to help you get started with Agile. A while back, I published a getting started guide. I also read the following blogs:

I referred to the following books during my presentation

Upcoming events

If you wish to be notified of upcoming events, send an email to metrempe@pyxis-tech.com.

Self-organization and independence aren’t the same thing

Picture by Frédéric EsplandiuAgile relies and promotes the concept of self-organized teams but the concept is still misunderstood – except maybe for Jurgen who explains it very well in his book.

Even within Pyxis where we push the concept of self-organization to the entire organization, people often mistake independence and self-organization.

Here’s an attempt at distinguishing the two perspectives.

Independence is a condition of a nation, country, or state in which its residents and population, or some portion thereof, exercise self-government, and usually sovereignty, over its territory. – wikipedia

Independence is strongly tied to self-governance which is defined as:

(…) an abstract concept that refers to several scales of organization. (…) It can be used to describe a people or group being able to exercise all of the necessary functions of power without intervention from any authority which they cannot themselves alter. – wikipedia

On the other hand, self-organization is defined as:

the process where a structure or pattern appears in a system without a central authority or external element imposing it through planning. This globally coherent pattern appears from the local interaction of the elements that make up the system, thus the organization is achieved in a way that is parallel (all the elements act at the same time) and distributed (no element is a coordinator). – wikipedia

Although in both cases, no authority interferes with the organization of the people, self-organization emerges when there is no planning of how people will work together. In addition, the notion of imposed constraints appears when discussing self-organization.

As such, while independence could mean “We can do what we want, how and when we want”, self-organization means “We are free to operate how we wish within the defined constraints in order to achieve the established objectives”.

As I recently described, immature self-organized teams are often selfish and irresponsible:

Team members are happy to take advantage of being self-organized but only as long as it benefits them and that there are no increased responsibilities. Once a situation negatively impacts them (while benefiting the team), they aren’t willing to cooperate and when they are asked to take accountability for something, they shy away from the responsibility. In a nutshell, these individuals want the best of both worlds. To successfully transition to self-organization, it is critical to explain that they will need to make a decision and pick self-organization with responsibility or freedom outside the self-organized team.

Consequently, true self-organization means that people take full accountability for their actions and do what ever it takes to get organized as a group in order to operate within the imposed constraints.

Once presented with self-organization, people and teams quickly assume that they now fully control their destiny – which is incorrect. The additional detail that needs to be added is “within the imposed constraints” which means resources are limited and an objective has been established. So unless you are in control of the resources or have officially been delegated authority for the resources, you have the option of self-organizing, not becoming independent.

Software developers as commodities

Demand for software developers is unlikely to drop over coming years. I suspect the contrary is more likely to happen as demand for technology workers will continue to increase while North American universities produce less graduate developers.

That’s good news if you are a software developer as the demand is likely to continue exceeding the supply for many years. If you are on the market for a new job, your chances of finding another job are pretty good.

That’s also good news if you are an organization who offers software development services to customers. The trend showing that organizations are not staffing up to their full need and prefer to hire external temporary help (consultants) to complete their projects.

So all is well in this perfect world, right?

Well, it depends. If your goal is simply to get “a job” things are OK for you – send your resume to an organization that is recruiting and if you successfully go through the various steps of the recruiting process, you’re in. Congratulations! If at first you don’t succeed, try again a few more times and chances are you will get into one of the hiring organization.

If you are looking for interesting projects or projects inline with your personal goals and aspirations things might be more complicated. How do you ensure you are the one selected for that special project?

If you haven’t realized it yet, software developers are commodities. There simply isn’t much differentiation between software developers. I don’t mean to be disrespectful and as such, I won’t attempt to compare software developers to other commodities but the fact remains that there are very few ways to distinguish software developers.

In marketing, product differentiation is the process of distinguishing a product or offering from others, to make it more attractive to a particular target market. This involves differentiating it from competitors’ products as well as a firm’s own product offerings – Wikipedia.

The question that comes to mind is “What are you doing to stand out of the crowd?” and “What are your differentiating factors?”.

One differentiating factor that is slowly appearing in job descriptions is the requirement for “Agile software developers”. Although a step in the right direction, this is likely to mean very little in the near future as the definition of an agile software developer still needs to be agreed upon.

If you are part of an organization that offers software development services, what are your differentiating factors? Ours is simple, we offer immersion and highly performing software development teams that are ready to make a substantial impact from day 1.

What are your differentiating factors?

Great news the project is over! Now let’s dismantle the team

Image by pgcCongratulations, you have finally delivered the project! The team you have carefully assembled over many months can now be dismantled and people can go back to their normal job. That’s the natural sequence in the project management world – project is kicked-off, team is assembled, team develops solution, team encounters delays, team tests solution, team moves solution into production, team hands-off solution to maintenance team, project team is dismantled, and life goes back to normal.

I wonder if the Green Bay Packers will do the same now that they have won SuperBowl XLV or maybe the San Fransisco Giants may want to start their 2011 season with new players after winning the 2010 World Series. At least the F.C. Internazionale Milano should want to give it a fresh start after winning the Serie A championship, wouldn’t you think?

Nobody would consider breaking up a highly performing sport team but when it comes to software development, it is common for organizations and departments to split up team members and start new with their next project.

From a purely practical perspective, breaking up a performing team makes no sense considering the time invested in:

  • carefully selecting and recruiting the right people with the right skill sets and the right attitude,
  • hiring external consultants with specific skills to complement the existing team,
  • getting the team to work together despite the team members’ personalities, work methods and obvious looming conflicts,
  • training people on the organizational culture and business activities,
  • establishing a leadership style that will work well with the team’s expectations,
  • eliminating the bad hires,
  • building relationships with the team members and between the project team members themselves,
  • etc.

Team members need time to become highly performing. Why not keep those team members together after the completion of their project and assign them together to the next project – even if the skill sets doesn’t seem to be perfect at first glance?

Follow

Get every new post delivered to your Inbox.