speculates in TheFifthVariable
that there is an extra dimension to software beyond XP's FourVariables
. Falk thinks that variable is Risk. But plainly then there is a sixth variable: Disinformation.
What do MS do when their schedule slips? Do they add resource or time? Nope. Do they lower quality? Well, if the schedule is slipping they don't have time to do that across their app. Do they reduce functionality? Not really - functionality has already been reduced, and that's the problem. No, what they do is ramp up the SixthVariable?
- spend more on marketing, add "release candidates", flummox the beta testers with weirdo OS/DNA/IE/IIS interactions, and talk fast and often. Two or three service-packs later, they deliver the original functionality with a couple of extra bells and whistles and a great fanfare and hoopla. A year later their product is ubiquitous and the schedule is unchanged.
Time, Functionality, Resource, Quality, Risk & Disinformation - the 6
variables of software development.
Though I agree with what you are saying about MicroSoft
, I don't agree on your categorization of DisInformation?
as a variable. I think it's just an AntiPattern
commonly used by SoftwareDeveloper
-s (esp. large SoftwareHouse?
-s) when one of the 4
variables ran out of control. (See again: TheFifthVariable
In the example above, MS reduced scope for the first release, and increased time for the original scope. Disinformation does not change the reality of the technical aspects of a project.
OTOH, disinformation can have a major effect on the marketing
aspects of a project. But the Four Variables were never meant to handle marketing; they were there for development.
Could not this sixth variable also be called Visibility
? Having to do with the software's code being Open or Proprietary, also due to the stage in the process when it is not ready- for review, for testing, for release, and therefore not yet "visible" to the eventual users? Disinformation fits within this broader classification.