4 ms·
The mythical man month ( required reading for most CS programs ) goes into a historical and production aspect of why software projects take longer than what you
by basetop 7y ago
The mythical man month ( required reading for most CS programs ) goes into a historical and production aspect of why software projects take longer than what you think and what you expected.
Also, there is a law named after author called the Brooks's law : "adding human resources to a late software project makes it later"
https://en.wikipedia.org/wiki/Brooks's_law https://en.wikipedia.org/wiki/Brooks's_law
In most industries, if you are running behind schedule, you throw more workers at the problem to catch up. For example, laying railroad tracks, digging ditches, deliverying packages, harvesting crops, etc. By adding more workers, you shorten the time it takes to complete the project. But which software engineering, the reverse tends to happen. If you are falling behind, just throwing more developers at the problem worsens the problem. Most likely because you need the new developers to get "caught up" with the code/project/tools but if you rush that process, then they won't have a full understanding of the project/code/tools and introduce bugs/problems themselves which exacerbates the problem.
It's a fun read if you have the time.
- v3gas 7y ago> required reading for most CS programs Really?
- rainhacker 7y agoGiven most software project estimations are off, wonder if a corollary of Brook's law can be - don't add resources in later stages of 'any' software project.
- bostonvaulter2 7y agoAh, but how do you know what stage of the software project you're in? Are you 3 months into a 4 month project or are you 3 months into a 5 year project?
- rainhacker 7y agoMaybe, instead of asking - if I'm x months into a y months project (assuming y months is the initial estimate) - ask if the project is x% feature complete. Based on the remaining features identify how far the project has progressed. Though, this approach has the problem of scope creep. As the requirements are fluid, especially in a long-running project.