Here’s some links that I often refer to (or just want for reference):
OO (+ Architectural) Principles and Patterns
- Solid(object-oriented design)
- Common Closure Principle
- Common Reuse Principle
- Loose Coupling
- Facade
- Stable Dependencies Principle
- Stable Abstractions Principle
And the bonus links:
- The architects omnibus of links: http://www.bredemeyer.com/links.htm
- Wikipedia Definition of Software Architecture
Architecture Methods and Frameworks
- The Architecture Journal (MSDN): Evaluating Application Architecture, Quantitatively
- Software Engineering Institute (Carnegie Mellon University)
- ATAM
- ARID (I particularly like the use of pseudo-code to test the architecture)
- Architecture Documentation, Views and Beyond Approach
- Enterprise Architecture Frameworks: TOGAF and Zachman
- 4+1
- 5-Layer Architecture
Data Architecture
- Data Warehouse
- Data Mart
- OLTP and OLAP
- Fact and Dimension (and Slowly Changing Dimension)
- Star Schema and Snowflake Schema
- Normalization and Denormalization
The “Illities” (Non-Functional Stuff)
- Non-Functional Requirement
- List of System Quality Attributes
- The Short Dictionary of Non-Functional Requirements (PDF)
- My Architecural Cheat-Sheet
Architecture & Programming Books
- Martin Fowler: Patterns of Enterprise Application Architecture (and here)
- Robert C Martin & Micah Martin: Agile Principles, Patterns, and Practices in C#
- Luke Hohman: Beyond Software Architecture: Creating and Sustaining Winning Solutions
- Frederick Brooks: The Mythical Man-Month
- Steve McConnell: Code Complete, (Official Site)
UX / Usability
Security
- OWASP (Open Web Application Security Project)
- CWE (Common Weakness Enumeration project)
- SABSA (Sherwood Applied Business Security Architecture framework)
.Net Reference
Blogs
- Wired: Danger Room
- Seth Godin
- WebMonkey
Laws
- Hanlon’s Razor: Never attribute to malice that which can be adequately explained by stupidity.
- Niven’s Laws, specifically law 1 from Known Space.
- Clarke’s three laws, specifically law 3: Any sufficiently advanced technology is indistinguishable from magic.
Misc
- List of .NET Dependency Injection Containers (IOC)
- Enterprise Libraries: Patterns & Practices, CodePlex
- List and Definitions of UML Connectors
- My Public SkyDrive
- Facts and Fallacies of Software Engineering
- Roger Sessions / SIP / Complex Architectures: White Papers
- http://morphfolia.codeplex.com/
- http://robomojo.codeplex.com/