Monday, May 10, 2010

9 Papers Software Architect Must Read

PROBLEM:
You are going to be a software architect, what should you read?

SOLUTION:
I could come up with quite a few more articles not to mention books that aren't in this list. However these are definitely some of the most influential papers I read
  1. Who Needs an Architect? - Do we or don't we? By Martin Fowler (2003) 
  2. The Byzantine Generals Problem - The problem with distributed consensus. By Leslie Lamport, Robert Shostak and Marshall Pease (1982) 
  3. A Note on Distributed Computing - It is one of the foundation papers on distributed computing. By Samuel C. Kendall, Jim Waldo, Ann Wollrath and Geoff Wyant (1994) 
  4. Big Ball of Mud- Brian Foote and Joseph Yoder (1999) -patterns or anti-patterns?
  5. No Silver Bullet Essence and Accidents of Software Engineering - On the limitations of Technology and Technological innovations. By Frederick P. Brooks (1987) 
  6. The Open Closed Principle - The first in a series of articles on Object Oriented Principles. By Robert C. Martin (1996) 
  7. IEEE1471-2000 A recommended practice for architectural description of software intensive systems - It is a standard and not a paper but it is the best foundation for describing a software architecture I know. By various (2000) 
  8. Harvest, Yield, and Scalable Tolerant Systems - That's where the CAP theorem was first defined. By Armando Fox, Eric A. Brewer (1999) 
  9. An Introduction to Software Architecture - one of the foundation articles of software architecture field. By David Garlan and Mary Shaw (1993)
If you find this solution useful, you are welcome to press one of the ads in this page.. Thanks!