1. On the criteria to be used in decomposing systems into modules –
David Parnas
2. A Note On Distributed Computing – Jim Waldo, Geoff Wyant, Ann
Wollrath, Sam Kendall
3. The Next 700 Programming Languages – P. J. Landin
4. Can Programming Be Liberated from the von Neumann Style? – John
Backus
5. Reflections on Trusting Trust – Ken Thompson
6. Lisp: Good News, Bad News, How to Win Big – Richard Gabriel
7. An experimental evaluation of the assumption of independence in
multiversion programming – John Knight and Nancy Leveson
8. Arguments and Results – James Noble
9. A Laboratory For Teaching Object-Oriented Thinking – Kent Beck,
Ward Cunningham
10. Programming as an Experience: the inspiration for Self – David
Ungar, Randall B. Smith
文中還有“所有架構師都應該至少讀上兩遍的十篇論文”列表。
1. The Byzantine Generals Problem (1982) by Leslie Lamport, Robert
Shostak and Marshall Pease
2. Go To statements considered harmfull (1968) - by Edsger W. Dijkstra
3. A Note on Distributed Computing (1994) - by Samuel C. Kendall, Jim
Waldo, Ann Wollrath and Geoff Wyant
4. Big Ball of Mud (1999) - Brian Foote and Joseph Yoder
5. No Silver Bullet Essence and Accidents of Software Engineering
(1987) - Frederick P. Brooks
6. The Open Closed Principle (1996) - Robert C. Martin (Uncle Bob)
7. IEEE1471-2000 A recommended practice for architectural description
of software intensive systems (2000)
8. Harvest, Yield, and Scalable Tolerant Systems (1999) Armando Fox,
Eric A. Brewer
9. An Introduction to Software Architecture (1993) - David Garlan and
Mary Shaw
10. Who Needs an Architect? (2003) Martin Fowler