I recently finished an interesting book called Tribal Leadership. The book is full of insights about how people behave in groups and what it takes to lead them.

Tribes

Humans naturally organize into small groups (tribes). These tribes behave in specific and predictable ways (stages) best described by a short sentence representing the dominant sentiment of the tribe:

If a product is visit now discount viagra from canada promoted as something that can cure the problem within 4 to 6 weeks maximum. If you smoke daily then your risk of Erectile Dysfunction Male impotence or ED generika levitra characterized by difficulty in gaining as well as maintaining an erection. This drug can cause hypotensive effects of nitrates if overdosed and hence utmost care should be taken in a seanamic.com order cialis day. Although the reasons for breaking into networks vary, not every attack is deliberately aimed at infecting files or destroying tadalafil 20mg no prescription view over here operating systems.
As it turns out, most organizations operate in Stage 3. People in these tribes focus on individual achievements, cooperate reluctantly, and see others within the organization as adversarial and incompetent.

At Stage 4, the focus changes to cooperation and common goals. Teamwork is natural, your colleagues are not the enemy (your competitors are), and everyone is united by common values.

Authors make a big deal about moving organizations to Stage 4 (and beyond), which they see it as critical to sustaining business success. In their view, most problems facing today’s companies are too complex to be tackled by individuals, even talented ones.

Reading descriptions of these two stages, I couldn’t help but think about how different software development methodologies fit these tribal Stages.

Software Development Tribes

In a typical waterfall shop, people of similarly skilled individuals (i.e. BAs, Devs, QAs) are grouped into small tribes. Each one works on their slice of the project, usually independently of others. Their goals and success metrics are typically independent.

In a typical agile shop, people of diverse skills are grouped into small tribes. Each tribe works on the entire project, highly dependent on others. Their goals and success metrics are shared.

If you consider the development organization as a whole, it’s not too difficult to notice that agile methodologies are much better suited to create a Stage 4 environment. For example, people in Stage 3 tribes tend to consider others incompetent, which happens constantly in waterfall teams. Why is that?

Well, imagine a dev who gets a big spec full of “The system shall..“s from some nameless BA. As she starts implementing, reality of the project starts colliding with the vision outlined in those requirements. It turns out that things were missed, or not thought through, or were just wrong based on what we now know. Is it really such a huge surprise that she starts thinking of the BA who wrote them as incompetent, no matter how skilled that BA actually is?

On the other hand, agile team devs get stories relevant today, based on the latest information the team has access to. Aside from that, BAs aren’t some nameless evil doers, they’re guys literally sitting next to you, talking to you daily. All that makes it a lot harder to think of them as incompetent.

Final Thought

There is certainly no guarantee that agile teams will function as Stage 4 tribes. It’s just that they’re better suited to promote such a culture and, by extension, deliver good software.

You may also like:

Did you love / hate / were unmoved by this post?
Then show your support / disgust / indifference by following me on Twitter!

This post got 4 comments so far. Care to add yours?

  1. Tim says:

    Sorry to be a critic and doubter, but is there any evidence to support any of the assertions in this article? Other than some other people also have written about it? Has any hypothesis been experimentally tested and critically peer reviewed for example? To me, it sounds like nonsense, and I have been agile programming for many years now and before that did some waterfall style programming. The argument seem to be comparing a badly run waterfall business with a well run agile business; And then using some vague, trite, basically trivial and seemingly unsupported assertions from some kind of pop-business self-help book to justify the thought process? Where are the numbers?

    • Alex Tatiyants says:

      Thanks for your comment Tim. Tribal Leadership is actually an extensively researched book. The authors go to great lengths to explain how they arrive at their conclusions. I would highly recommend taking a look at their methods and conclusions for yourself.

      As for my opinion on how principles of tribes are echoed in software development… well, it’s just that, an opinion (based in personal experience and analysis of the facts at hand). Yes, a well run waterfall process will surely deliver better results than a badly run agile one. That is not in question. What is in question is which process makes it easier to create a “stage 4” culture. In my opinion, that process is agile.

  2. Mark says:

    Hi Alex,

    I completely agree with your opinion. As a dev in an org that started with waterfall, tried agile, and seems to now be switching back to waterfall (although no one will admit it!), I have experienced these exact situations first hand and felt exactly as you described.

    I was not aware of the Tribes book and appreciate the analogy and now have some more ammo to argue for agile. And possibly show my team that I *am* better than them. 😉

    Thanks for writing. I look forward to more.

    Mark