Program Stages

From FreekiWiki
Revision as of 17:48, 2 December 2005 by Rfs (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Each program goes through stages of maturity that can be defined by a role played by the primary people working on that program. People may cross over roles while working on a given program, and people might be better at one role for a specific program than they are for the same role in a different program.

Pioneer

Definition
Someone who breaks new ground and starts the program. This role could also be called an inventor.
Motivation
Pioneers like to try out new things and are satisfied by getting something done. They often consider their work fun and would likely want to do it even if they weren't getting paid.
Organizational Benefits
Pioneers are essential to developing a program in its initial stage. They prove or disprove the merits of the program.
Problems
Once a program gets going, pioneers usually want to move on to their next project. This can be mitgated by having their tenure overlap with a settler.

Settler

Definition
Someone who develops procedures and systems for making the program work. This role could also be called an organizer.
Motivation
Settlers want to reduce chaos and create structure.
Organizational Benefits
Settlers take what the pioneers have done and ensure that the knowledge is not lost when they move on. They develop procedures that can be taught to other people, often (but not always) creation documentation.
Problems
If someone plays the settler role for too long he can develop too many procedures, trying to fix what isn't broken. This can lead to people being overwhelmed and jaded and to less efficiency than even the settler wants.

A good settler might recruit a pioneer to preceed him. He also knows the optimal time to transition to the next role or move on to a new project.

Mature Stage Roles

Once a program reaches maturity the needs of the organization may remain constant or they can change due to forces outside the program. This results in multiple roles that may need to be played when managing a mature program.

Shepherd

Definition
Someone who inherits a working program and maintains status quo. This role could also be called an conservative.
Motivation
Organizational Benefits
Problems

Reformer

Definition
Someone who inherits a working program and can look ahead to help take it to the next level. This role could just be called an orthodox innovator.
Motivation
Organizational Benefits
Problems

Agitator

Definition
Someone who challenges the status quo at a more fundamental level when a program is fundamentally broken. This role could also be called a revolutionary.
Motivation
Organizational Benefits
Problems

The Flow

<graphvizr> digraph G {

Pioneer -> Settler Settler -> Shepherd Settler -> Reformer Shepherd -> Reformer Shepherd -> Agitator Agitator -> Settler Reformer -> Shepherd

} </graphvizr> People managing a given program generally relate to it using one of these roles. Moving from one role to the next can be difficult for most people. Moving from one role to the next and then one beyond is even rarer.