Software Architecture Links
- Gaudi Project Architecture Site
- Resources for Software Architects (we are told this belongs on the list)
- SEI's Software Architecture site
- The Association for Open Group Enterprise Architects AOGEA (and GEAO)
- IEEE 1471 Recommended Practice for Architectural Description
- InfoQ Architecture area
- International Enterprise Architecture Center Knowledge Library
- International Association of Software Architects (IASA)
- Microsoft Solution Architecture Center
- Microsoft's Application Architecture Guide
- Ruth Malan's Architects Architecting Architecture Journal access by topic
- SEI's Product Line Practice Site
- Unified Modeling Language (UML) Documentation
- How do you define Software Architecture?
- Architecture Definitions on Bredemeyer site
- What is Software Architecture Anyway?
- Wikipedia definition of Software Architecture
Classes and Seminars for Software Architects
- Architecture, Architecting, Architect Training from Bredemeyer Consulting
- USC Course on CSCI 578 Software Architecture and research program
- University of Waterloo Software Architecture Course (CS746D ) Slides
- Architectures for Software Systems course offered in CMU's Masters in Software Engineering Program
Architecture Essays, Discussion Boards, Blogs and Blog Entries
- Ruth Malan's trace in the sand, architecture journal (with access by topic) and Trace in the Sand blog
- Grady Booch's On Architecture series available in audio on IEEE Software
- Thanigai's "Viewpoint of an Architect: Managing Quality of Service" blog, and "Architecture has to stand the test of time" blog post on May 10, 2006.
- IBM developerWorks Architect blog:
- Grady Booch Software architecture, software engineering, and Renaissance jazz
- Sanjay Bose SOA, ESB, and beyond
- Chris Ferris Web services, distributed computing, and interoperability
- Kerrie Holley SOA
- Carol Jones Social Networking
- Simon Johnston Service-Oriented Architecture and business-level tooling
- Rich Schwerdtfeger Accessibility strategy and architecture
- Microsoft MSDN Architecture Blogs
- Christopher Koch's (CIO Magazine) IT Strategy blog frequently deals with architecture-relevant topics
- Scott Dunn's post titled "Technical Architect"
- Brian Sondergaard's Software Architecture blog
- Simon Brown's Coding the Architecture blog
Relevant Journals and Issues on Software Architecture
- The Architecture Journal http://www.architecturejournal.net
- IBM Systems Journal special issue on Enterprise Solutions Structure (with architecture as a focus) http://www.research.ibm.com/journal/sj38-1.html
- Essays on Software Architecture http://www.sei.cmu.edu/architecture/essays.html
Architecture Patterns and Styles
- Grady Booch's Patterns Repository points to a number of architectural patterns. It is maintained on Booch's Software Architecture Handbook site, http://www.handbookofsoftwarearchitecture.com/index.jsp?page=Main. Note: you have to register and sign-in before you can access the Handbook pages including the patterns catalog.
- Data and Object Factory, Design patterns: http://www.dofactory.com/Patterns/Patterns.aspx
- Process Pipelines in Object-Oriented Architectures Style: http://www.ppooa.com.es/
- Microsoft's Enterprise Architecture, Patterns and Practices: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpag/html/entarch.asp
- Books on Architecture Patterns and Styles
- Martin Fowler's GUI Architecture patterns: http://martinfowler.com/eaaDev/uiArchs.html
Software Architecture Decision Frameworks
- Bredemeyer Consulting's Architecture Decision Model and Visual Architecting Process.
- "Architectural Blueprints: The 4+1" View Model of Software Architecture", IEEE Software 12, November 1995, http://www.win.tue.nl/~mchaudro/sa2004/Kruchten4+1.pdf
IT Architecture Sites
- Enterprise Architecture Links http://www.bredemeyer.com/EnterpriseArchitecture/EAlinks.htm
- Department of Commerce IT Enterprise Architecture Home Page http://www.hpcc.noaa.gov/docita/
- Department of Veteran's Affairs IT Architecture Program site http://www.va.gov/oirm/architecture/default.asp
- Enterprise-wide IT Architecture site http://www.ewita.com
- North Carolina’s Technical Architecture http://irm.state.nc.us/techarch/archfrm.htm
- Ohio’s EA web site: http://www.state.oh.us/das/dcs/opp/ea/
- Kentucky’s EA site: http://www.state.ky.us/kirm/arcstand.htm
- Architecture Case Studies and Artifacts http://www.bredemeyer.com/ArchitectZone/PublicDomainArchitectures/PublicArchitectureIndex.htm
- Anderson Consulting's Eagle Architecture http://www.ac.com/services/eagle/eagl_thought3.html (outdated)
- Common Clinical Context Architecture (No longer available at http://www.mcis.duke.edu/standards/CCOW/Documentation.htm.) You can purchase the document from the HL7 Bookstore at http://www.hl7.org/ -- look for the CCOW specification.
- IBM's San Fransisco Framework Architecture http://www.software.ibm.com/ad/sanfrancisco/library.html
- North Carolina State Technical Architecture http://www.state.nc.us/IRM/techarch/archfrm.htm
- Model Problems in Software Architecture http://www.cs.cmu.edu/People/ModProb/
Software Architecture Tools
- NDepend shows dependencies and more (for .NET code)
- Lattix LDM (Lattix Dependency Model) lets you see dependencies in your code, and shows modules that break dependency design rules (like can/cannot use rules related to layers)
- Structure101 from HeadwaySoftware, complexity/structure analysis tool
- Sparx Enterprise Architect UML design tool
- Poseidon modeling-to-code-generation tool
- Select Architect, BPM, UML and Data Modeling Tool, from Select Business Solutions
- MagicDraw and Umodel from Altova
- Visio stencils for UML 2.0: http://www.softwarestencils.com/uml/index.html (by Pavel Hruby)
- See also Software Architecture Visualization and Code Visualization Resources
Software Architecture--Insightful Humor
- "Big Ball of Mud" by Brian Foote and Joseph Yoder http://www.laputan.org/mud/. Written with humor, but astringently insightful.
- "Lesson Learned (unstructured and eclectic)" by Clayton Sprung http://www3.telus.net/clayton_sprung/archlessons.htm
"If Architects Had to Work Like Web Designers" by Scott Manning http://www.scottmanning.com/archives/00000015.php
just a few things software architects do (with Archman as guide) by Ruth Malan, 2009.
General Software--Insight and Humor
- Software Engineering Proverbs, collected by Tom Van Vleck
- "Why I hate Frameworks," by Benji Smith on the "Joel on Software" discussion group, http://discuss.joelonsoftware.com/default.asp?joel.3.219431.12. Thanks to Philippe Kruchten via Grady Booch's Blog for pointing this out!
- And not to be missed: Waterfall 2006! Thanks to Grady Booch's Blog for pointing this out! http://www.waterfall2006.com/
- ADAPT http://www.cs.wpi.edu/~heineman/ADAPT
- CU Boulder SERL http://www.cs.colorado.edu/serl/
- DSSA ADAGE http://www.owego.com
- GT-SARG http://www.cc.gatech.edu/computing/classes/cs8112m/
- Software Systems Generator Research Group http://www.cs.utexas.edu/users/schwartz/#tr-95-06
- STARS Software Architecture Papers http://source.asset.com/stars/darpa/Papers/ArchPapers.html
- USC Center for Software Engineering (CSE) Software Architecture Research Group http://sunset.usc.edu/research/software_architecture/index.html
Research Sites Relevant to Software Architecture
- IBM's Subject-Oriented Programming http://www.research.ibm.com/sop/
- Xerox Parc Aspect-Oriented Programming http://aosd.net
- Grady Booch http://www.booch.com/architecture/index.jsp
- Gert Florijn http://www.serc.nl/people/florijn/interests/arch.html
- David Garlan http://www.cs.cmu.edu/~garlan/
- Rick Kazman http://www.sei.cmu.edu/staff/rkazman/
- Rick Kazman's papers on the Waterloo site http://www.cgl.uwaterloo.ca/~rnkazman/SE-papers.html
- Ruth Malan http://www.ruthmalan.com
- Dewayne E. Perry http://www.ece.utexas.edu/~perry
- Mary Shaw http://spoke.compose.cs.cmu.edu/shaweb/
Discourse on the Role of the Architect and Architect Skills
- Ruth Malan's essays on the Architect Role
- Links to blogs, essays, and websites dealing with architect skills and related topics
- Allan Hoffman, Career Spotlight: Software Architect, published at www.monster.com, July 2006.
- Scott Dunn's post titled "Technical Architect" on his Software Development and Human Capital blog, September 24, 2004.
- Luke Hohman's post titled "The Role of the Software Architect" on his blog dated March 27, 2006.
- Michael Platt's blog post titled Architecture and Architects dated September 29, 2005.
- WWISA discussion of the History of Architecture in the Building and Software fields.
- Laura and Marc Sewell's "The Profession of Software Architecture" published in Software Tech News.
- Robert Bogue, "Anatomy of a Software Development Role: Solution Architect," published on developer.com. See also "Anatomy of a Software Development Role: Development Lead," by Robert Bogue.
- Bill Venner's "Becoming An Architect," artima Developer, April 5, 2004.
- Rich Newcomb's "Architecture of the Enterprise," Intelligent Enterprise, March 8, 2002.
- Discussion of the duties of the (chief) software architect on the SEI architecture site.
- Bredemeyer Architect Competency Framework and Competency Elaborations: Leadership, Strategy, Organizational Politics and Technology
- TOGAF Architecture Skills Framework.
- Jeff Lash, "Soft Skills for Information Architecture," Digital Magazine, September 24, 2003.
System Qualities and Architecture
- Ruth Malan and Dana Bredemeyer, "Defining Non-Functional Requirements," August 2001.
- Ruth Malan and Dana Bredemeyer, "Architectural Requirements," February 2002.
- Arnon Rotem-Gal-Oz, What is Software Architecture (2):Quality Attributes, posted on his IF YOU BUILD IT ... Will they Come? blog on Dr.Dobbs Portal on July 31, 2006
- Allen Stoker, An Architect's Perspective on Application Quality, Part I, July 2006, and
Allen Stoker and Joe Ottinger, An Architect's Perspective on Application Quality, Part II, August 2006
posted on TheServerSide.com
Availability and Scalability
- Werner Vogels (Amazon CTO) on InfoQ
- eBay's Architecture Strategies, Patterns and Forces, Randy Shoup on InfoQ; here are the slides
- Scalability Best Practices: Lessons from eBay. eBay Distinguished Architect, Randy Shoup, explains eBay's key scalability practices of partitioning, horizontal scale, avoiding XA, asynchronicity, and virtualization.
- Randy Shoup discusses eBay architecture at QCon San Fancisco, 2007 (video on InfoQ)
- Scalability Principles: "At the simplest level, scalability is about doing more of something. This could be responding to more user requests, executing more work or handling more data." Simon Brown's InfoQ post presents some principles and guidelines for building scalable software systems.
- Spectacular Scalability with Smart Service Contracts, by Udi Dahan
- Dan Pritchett on Architecture at eBay, on InfoQ
- The Challenges of Latency, by Dan Pritchett and Architecture Quality: Operational Manageability, by Dan Pritchett Sep 13, 2007 (video on InfoQ)
- Scalable Internet Architectures, by Theo Schlossnagle, 2006
Restrictions on Use: All material that is copyrighted by Bredemeyer Consulting and published on any pages of our site, may be downloaded and printed for personal use. If you wish to quote or paraphrase fragments of our work in another publication or web site, please properly acknowledge us as the source, with appropriate reference to the article or web page used. If you wish to republish any of our work, in any medium, you must get written permission from the lead author (in this case, Ruth Malan). Also, any commercial use must be authorized in writing by Bredemeyer Consulting.