Software Design

Core Software Design Principles
Software architects and developers leverage a core set of design principles that have been established by professionals over the course of many years. Many of these principles are foundational to the most well-known software design patterns. While a software system may have its own set of unique principles to guide its design, we believe that all systems can benefit from the use of this core set.

Software Design Patterns
A reference list of common software design patterns.

Template - Vision and Scope Document
A Vision Document is a software process document that describes the overall 'vision', or plan, for a particular piece of software. It is designed to be a high-level document that should get all the stakeholders in the project on the same page. It is much shorter and more general than a product requirements document or a marketing requirements document, which outline the specific product plan and marketing plan respectively.

Solution Requirements Specification Template
Template (outline) for a Software Requirements Specification derived from the book "Managing Software Requirements" (Leffingwell, Wildrig)