Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

If you have some non-technical people managing your software development team, is there a book you'd want them to read to understand the process better?

For example, in most work, you can pretty well estimate how long a task will take. But in development, the whole point is that you have to figure out the problem, which takes unknown time. This is hard to communicate.

Anything you know of that explains this well?


locked by World Engineer Oct 8 '13 at 19:27

This question exists because it has historical significance, but it is not considered a good, on-topic question for this site, so please do not use it as evidence that you can ask similar questions here. This question and its answers are frozen and cannot be changed. More info: help center.

closed as not constructive by gnat, Martijn Pieters, Thomas Owens Apr 14 '13 at 10:59

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

Related:… – Maglob Feb 4 '11 at 18:29
Careful presenting that to management, they could easily perceive it as you saying "You should read this so you suck less." Which they probably won't take kindly to. – Ben L Feb 4 '11 at 19:45
@Ben - The truth hurts! – Shawn D. Oct 2 '11 at 20:07
So for something simple and fast to read there is Head First Software Development. – NadtheVlad Oct 3 '11 at 3:11
up vote 14 down vote accepted

"Peopleware" and "Mythical Man Month" would be a couple of classics though I'm not sure how well management would take to reading either book as they may be seen as old.

If management does not understand that a manager's job is not technical but sociological in nature... well, one more reason why they should read these :-) Human nature doesn't change in a mere couple of decades. – Péter Török Feb 4 '11 at 22:04
Agree that they're both a bit too old and also, probably too technical for "non-technical managers" – mcottle Oct 3 '11 at 6:32
Peopleware is a timeless book, read it a month ago and still very recognizable. Besides that, it was updated with a second edition a decade ago. – Carra Oct 3 '11 at 9:17
Though I'll concede that it might be too technical, I'd argue that MMM isn't too old at all - when I read it, I was astounded that a book written 30 years ago by a guy who got his experience 40 years ago could still be so spot on and have so much to teach. The fact that I've never gone near any of the technologies he references, but that the book still speaks to people, is a testament to it's timelessness. – SqlRyan Nov 6 '12 at 18:05

For software process and project management, I have to recommend Steve McConnell's Rapid Development: Taming Wild Software Schedules and Software Project Survival Guide. These books discuss topics ranging from classic mistakes in managing software projects to managing risks to explanations of best practices and when how to appropriately apply them.

Jim McCarthy's Dynamics of Software Development also provides some interesting insights into how software teams work and provides tips and tricks for optimizing software projects, based on real-world cases.

You may want to adjust the link for "Software Project Survival Guide" to point to:… – NoChance Oct 2 '11 at 22:35
@Emmad Thanks for that. – Thomas Owens Oct 2 '11 at 23:00
+1 The Software Project Survival Guide is designed for this. – mcottle Oct 3 '11 at 6:30

Not a book, but I've had good success directing (reasonably bright) non-technical managers to Joel on Software.

+1 here. This blog (along with Eric Sink's "Business of Software" ( - though much more technical recently than it used to be) put IT in very clear business terms that non-technical people can digest. In the end, IT has to provide value and is only different in how it accomplishes the goal, not the goal it accomplishes. – SqlRyan Nov 6 '12 at 18:08
would you mind explaining more on what it does and what it's good for? "Link-only answers" are not quite welcome at Stack Exchange – gnat Apr 14 '13 at 7:35

Get Facts and Fallacies of Software Engineering.


This book is easy to read, and easy to snipe paragraphs from for management. It focuses on the issues of software development from the distance of knowing nothing about it. At the time, I had similar issues to OP, and working with my manager and this book, I manage to convince him that I need more time and resources to complete my tasks.

However, I've recently seen a lot of stuff in that book contradicted. As ever, I wouldn't recommend anyone reading anything in the social studies anyway. It's all too wishy washy and changes from day to day.

would you mind explaining more on what it does and what it's good for? "Link-only answers" are not quite welcome at Stack Exchange – gnat Apr 14 '13 at 7:36
@gnat, yeah just like the accepted answer. ;) – Gleno Apr 14 '13 at 20:47

Perfect Software: and other illusions about testing should be another book you get them.

From the preface, here are some of the questions it discusses:

"Why do we have to bother testing when it just seems to slow us down?

Why can't people just build software right, so it doesn't need testing?

Do we have to test everything?

Why not just test everything?

What is it that makes testing so hard?

Why does testing take so long?

Is perfect software even possible?

Why can't we just accept a few bugs?"


Possibly "The Art of Agile Development". This may convince them to look at managing software projects in a more realistic way. Of course, if you don't want them to try agile, that may be a bad thing. But I'm finding it a compelling read myself.


In terms of Software development process, I'd have to go with "The Pragmatic Programmer: From Journeyman to Master" by Andy Hunt and Dave Thomas. Its full of gems of useful knowledge that would typically take a lot of actual real-world programming experience to learn otherwise. It is also programming language-agnostic and is mostly easy to understand.

In terms of estimation, the pragmatic programmer has a brief section about it, but the classic "The Mythical Man Month" by Fred P. Brooks would have to be worth reading. Some of the project examples seem a little dated but much of the ideas still ring true today.


Not the answer you're looking for? Browse other questions tagged or ask your own question.