Search:

PmWiki

pmwiki.org

edit SideBar

Main / Myth

Back to books

15th Edition, May 2001

Grid (men, months)

Chapter 2

The man-month as a unit for measuring the size of a job is a dangerous and deceptive myth. [In a unpartitioned task,] if each part of the task must be separately coordinated with each other part, the effort increases as
n(n-1)/2

Because of optimism, we usually expect the number of bugs to be smaller than it turns out to be. Therefore testing is usually the most mis-scheduled part of programming.
Scheduling Rule of Thumb:
1/3 planning
1/6 coding
1/4 component test
1/4 system test

Brooks' Law:

  Adding manpower to a late software project makes it later.

Chapter 8

Portman's Data:
He found his programming teams missing schedules by about one-half... estimating error could be entirely accounted for by the fact that his teams were only realizing 50% of the working week... Machine downtime, higher-priority short unrelated jobs, meetings, paperwork, company business, sickness, personal time, etc. accounted for the rest.

Aron's Data:
[Study of programmer productivity on 25+ man and 30K+ instruction projects]. He divided such systems according to interactions among programmers and system parts. The man-years do not include support and system test:

InteractionsInstructions per man-year
very few10K
some5K
many1.5K

Chapter 11

Plan the Organization for Change:
Reluctance to document design is due to exposition and the resulting necessity of defense. Make the organizational structure un-threatening by broadening the team so that it is technically flexible. Make the technical and managerial ladders equivalent (reassign instead of promote). Give refresher courses. Keep senior people ready to write code and manage groups.

Chapter 16

It is impossible for clients to precisely and correctly give the requirements for a software product until they have tried out some version of the product they seek. Grow, not build, software. First make the system run, even in its most basic form.

Chapter 19

Peopleware, DeMarco and Lister: The top performers' space is quieter, more private, better protected against interruption, and there is more of it... Does it really matter to you... whether quiet, space, and privacy help your current people to do better work, or help you to attract and keep better people?

Other

I will contend that conceptual integrity is the most important consideration in system design. It is better to have a system omit certain anomalous features and improvements, but to reflect one set of design ideas, than to have one that contains many good but independent and uncoordinated ideas. Conceptual integrity in turn dictates that the design must proceed from one mind, or from a very small number of agreeing resonant minds.


Page last modified on July 14, 2023, at 03:29 PM