A software project involves many stakeholders with competing interests, including bosses, developers, end-users and maintainers. Theory-W provides a project-management framework for reconciling competing interests.
It is based on making an explicit effort to understand what the different stakeholders need in order to “win” negotiating conflicts among the stakeholders win conditions and then structuring the project so that everyone realizes their win conditions.
Theory-W produces its schedule savings through improved efficiency of working relationships, improved progress visibility and reduced risk.
Potential reduction from nominal schedule: None
Improvement in progress visibility: Very Good
Effect on schedule risk: Decreased Risk
Chance of first-time success: Excellent
Chance of long-term success: Excellent
Major Interaction and Trade-Offs
- Designed to be combined with the Spiral Lifecycle Model
- Particularly effective during schedule negotiations
- Relies on the use of the Principled Negotiations practice
One practical management approach that supports rapid development is called “Theory-W Management” (Boehm and Ross). Theory-W takes its name from its most important principle: Make everyone a Winner.
Most software projects begin with a group of project stakeholders who have competing objectives. The table below shows the stakeholders and their typical objectives.
|Quick schedule||No overuns||Interesting design work||Lots of features||No defects|
|Low budget||No surprises||Exploring new tech areas||User friendly software||Food documentation|
|Successful project||No grunt work||Fast software||Easy modifiability|
|Home life||Robust software|
Source: Adapted from “Theory-W Software Project Management: Principles and Examples”
(Boehm and Ross 1989)
Specifically, Theory-W Management supports rapid development in the following ways:
Clearer project objectives
Because a Theory-W project begins by identifying each of the stakeholders, the project’s objectives are clear from the start. The negotiating that takes place at the beginning of the project reinforces and documents the project’s objectives. Setting clear objectives is probably the most important key to motivating developers and motivating developers is probably the most important key to rapid development.
Better user relations
Many projects are set up to provide a win for the user and a loss for the developers or vice-versa. It’s hard to maintain good relations when one of the parties is losing. Theory-W projects by their very nature improve relations between developers and users because everyone stands to gain.
Several development-speed savings arise from improved user relations:
- Efficiency improves as a result of better communications and better user understanding of the user role in the project.
- The amount of rework drops because we do a better job of analysing requirements. Negotiations over feature details take less time because everyone is aligned on the main goals they want to achieve.
- Early goal-setting produces realistic schedule expectations, which improves the perceived development speed and eliminates problems associated with overly optimistic schedules.
Reduced user-related risk
Many risks arise from the user side of a development relationship, including feature creep, slow communications and micro-management. Establishing a Theory-W relationship with out users helps to minimize or eliminate such risks. It helps us to manage the remaining risks because we can keep a close eye on user-related risks and get early warnings about them.
Using Theory-W Management
When we use the Theory-W Management Practice, we have everyone sit down at the beginning of the project and identify their win conditions. Then everyone negotiates to create a project-wide set of win conditions that we can reasonably achieve.
Project management for the rest of the project consists of monitoring the projects to ensure that each stakeholder continues to win. If one of the stakeholders starts to slide into a lose condition, we adjust the project accordingly.
Make Everyone a Winner
The best work in developing win-win situations has been done in the field of negotiating. Here is an outline of a general process we can use to set up a win-win situation from “getting to yes” (Fisher and Ury 1981):
- Separate people from the problem
- Focus on interests rather than positions
- Invent options for mutual gain
- Insist on using objectives criteria
The table below provides a summary of how these win-win steps apply to Theory-W Management.
Steps in Theory-W Management
|1.||Establish a set of win-win preconditions before we start the project|
|2.||Structure a win-win software process|
|3.||Structure a win-win software product|
Source: Adapted from “Theory-W Project Management: Principles and Examples”
(Boehm and Ross 1989).