(^68) 97 Things Every Project Manager Should Know
The 60/60 Rule
The 60/60 Rule
David Wood
Fredericksburg, Virginia, U.S.
WE oFTEn PRETEnD that software development is the most important part
of the software life cycle. Methodologies abound for development. Books,
magazine articles, and blogs focus on development. Development, however, is
just not where the money is.
Fully 60% of the life cycle costs of software systems come from maintenance,
with a relatively measly 40% coming from development. That is an average, of
course. The actual cost of maintenance may vary from 40% to 80%, depending
on the system type and the environment it is deployed into. During main-
tenance, 60% of the costs on average relate to user-generated enhancements
(changing requirements), 23% to migration activities, and 17% to bug fixes.
The 60% of life cycle costs related to maintenance, coupled with the fact that
60% of maintenance activities relate to enhancements, gives us the so-called
60/60 Rule, one of the few proposed “laws” of software maintenance.
Migration activities include moving systems to new hardware or software envi-
ronments. Migration is, of course, a type of changing requirement. Factoring
that into our estimates points out an interesting fact: over 80% of maintenance
activities relate in some way to changing requirements.
Naturally, the ability to change code suggests that one should understand it
first. Understanding changes to be made is a major activity during mainte-
nance. Roughly 30% of total maintenance time is spent on understanding an
existing software product. The development of understanding applies to all
forms of maintenance: changing requirements, migration, and bug fixes.