In democratic model if there are n people in a team the formula to calculate the number of communication channels is n*(n-1)/2

But there is also another model called Chief-Programmer model and the formula to calculate the number of communication channels is a little different, I searched in Google and all I found was this: http://marlenejordan.tripod.com/Teams_Tools2.html but it doesn't have the formula either. My guess is if there are n people we take out the one person as chief programmer and then apply the same formula ? But I am not sure. Does anyone know this?

2 Answers 2


Pankaj Jalote in the book "An Integrated Approach to Software Engineering" describes three types of team structures:

  • Ego-less team (aka democratic team).
  • Chief-programmer team.
  • Controlled decentralized team.

Ego-less team have no leader. All decisions in it are making through discussion and with consensus.

Every member of democratic team have communication interfaces with all other team members, i.e. every team member have n-1 communication interface, where n is team size.

So, there are n(n-1)/2 total amount of communication path in the team.

enter image description here

Chief-programmer team, obviously, have a leader (named chief programmer). He make all decisions.

All communication go through him. There is no direct communication between other team members. In this case chief programmer have n-1 communication interface and other team-members have only 1 communication interface (with chief programmer).

So, there are n-1 total amount of communication path in this structure.

enter image description here

The last Controlled decentralized team is combination of Ego-less team and Chief-programmer team.

This is description of this structure form "An Integrated Approach to Software Engineering" (1st edition):

It [Controlled decentralized team] consists of a project leader who has a group of senior programmers under him, while under each senior programmer is a group of junior programmers. The group of a senior programmer and his junior programmers behave like a ego-less team, but communication among different groups occurs only through the senior programmers of the groups. The senior programmers also communicate with the project leader. Such a team has fewer communication paths than a democratic team, but has more paths than a chief programmer team.

For symmetrical structure like on the picture below (all sub teams have equal number of junior programmers) number of communication interfaces are:

  • For Project Leader: x
  • For each of Senior Progremmers: x + y
  • For each of Junior Programmers: y

So, there are x*(1+(x+y)+y*y)/2 total amount of communication path in this structure.


  • x - number of Senior Progremmers
  • y - number of Junior Programmers in one team

enter image description here


The number of communication channels in the Chief-Programmer model is theoretically n-1 because it assumes that everyone communicates with the central chief-programmer role and he delegates work out and that no communication needs to happen between the other roles.

That model does not address real-life complexities and assumes that the chief programmer is a go-between for every conversation which may not be practical. If the chief programmer cannot directly control all communication effectively, it will revert right back to the democratic model and have n*(n-1)/2 communication channels again.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.