I find it useful to draw a contrast between two different organizational development styles: "process-oriented" and "commitment-oriented" development. Process-oriented development achieves its effectiveness through skillful planning, use of carefully defined processes, efficient use of available time, and skillful application of software engineering best practices. This style of development succeeds because the organization that uses it is constantly improving. Even if its early attempts are ineffective, steady attention to process means each successive attempt will work better than the previous attempt. Commitment-oriented development goes by several names including "hero-oriented development" and "individual empowerment." Commitment-oriented organizations are characterized by hiring the best possible people, asking them for total commitment to their projects, empowering them with nearly complete autonomy, motivating them to an extreme degree, and then seeing that they work 60, 80, or 100 hours a week until the project is finished. Commitment-oriented development derives its potency from its tremendous motivational ability study after study has found that individual motivation is by far the largest single contributor to productivity.[2] Developers make voluntary, personal commitments to the projects they work on, and they often go to extraordinary lengths to make their projects succeed. |