
Software fundamentals
by David Lorge Parnas, Daniel M. Hoffman, David M. Weiss · first published 2001
10mentions
4recommended by
5HN commenters
2019–2025first – last mentioned
80% recommend20% neutral
Affiliate links. As an Amazon Associate I earn from qualifying purchases.







…Peopleware 2007. Software engineering: Barry Boehm's lifetime contributions to software development, management and research. Ed. by Richard Selby. Hoffman, Daniel M.; Weiss David M. (Eds.): Software Fundamentals – Collected Papers by David L. Parnas, 2001, Addison-Wesley, ISBN 0-201-70369-6. You might also like my later book on technical design in general: The Design of Design. Start with Part…
on “Fred Brooks has died” ↗…https://en.wikipedia.org/wiki/Systems_thinking and https://thesystemsthinker.com/systems-thinking-what-why-when... ] For Software specific issues i highly recommend David Parnas' collected papers in the book Software Fundamentals. He and his colleagues defined much of what is mainstream in today's Software Architecture/Organization practice. Finally, the case studies given here are a great source of insights: https://aosabook.org/en/index.html
on “Ask HN: Best books on managing software complexity?” ↗Mentioned before, but I'll +1 these: - The Impostor’s Handbook: Rob Conery - Foundations of CS: http://blough.ece.gatech.edu/3020/focs.pdf Also be sure to check out - Software Fundamentals, essays by David Parnas Here's one of the essays from the book: https://www.win.tue.nl/~wstomv/edu/2ip30/references/criteria... Parnas promoted the idea of encapsulation before the word had even been…
on “Ask HN: What book to read to get a footing in CS theory?” ↗…Lister Peopleware - 2007. Software engineering: Barry Boehm's lifetime contributions to software development, management and research. Ed. by Richard Selby. - Hoffman, Daniel M.; Weiss David M. (Eds.): Software Fundamentals – Collected Papers by David L. Parnas, 2001, Addison-Wesley, ISBN 0-201-70369-6. - And his: The Design of Design. Start with Part II.
on “No Silver Bullet (1986) [pdf]” ↗'Elements of Programming' by Stepanov and McJones 'Software Fundamentals' by Hoffman and Weiss, 'Writing Solid Code' by Maguire, 'Code Complete' by McConnell
on “Ask HN: Top 10 Timeless Software Books That ChangedLife as Software Engineer?” ↗A good and concise (albeit old) SE book is "Fundamentals of Software Engineering by Ghezzi, Jazayeri and Mandrioli". For more background; "Software Fundamentals: Collected papers by David L. Parnas" is a great resource. For a tour of the CS aspects; see "Specifying Software: A Hands-On Introduction by R.D.Tennent"
on “Ask HN: Best book to gift someone for getting into software engineering?” ↗Thank you. Every Software Engineer should read Software Fundamentals: Collected Papers by David L.Parnas. People are nitpicking things and just parroting what is written in other books without really understanding the idea behind it all. For example what is a Interface/Class/Library/Framework/Module(logical…
on “Pretending OOP Never Happened” ↗A Classic. Folks interested in studying more of Parnas' foundational papers should checkout the book Software Fundamentals: Collected Papers by David L.Parnas. A good antidote to "cargo culting".
on “On the Criteria to Be Used in Decomposing Systems into Modules (1971) [pdf]” ↗Software Fundamentals: Collected Papers by David L. Parnas is an excellent compendium of Parnas' papers. You will find more wisdom here than most books on "Software Engineering" being published today.
on “On the criteria to be used in decomposing systems into modules (1972)” ↗>object oriented concepts like information hiding Having read "Software Fundamentals" [1], I think David Parnas [2] would beg to differ on that bit. Not the least because he actually invented the concept. Parnas wrote extensively on information hiding as the basis for modular program…
on “Pretending OOP Never Happened” ↗