For an organization to successfully apply a design paradigm, it will require more than an adherence to the associated design principles and a knowledge of supporting design patterns. Every organization will have unique strategic goals and unique enterprise environments. These form a distinct set of requirements and constraints that need to be accommodated within solution designs.
Design standards are (usually mandatory) design conventions customized to consistently pre-determine solution design characteristics in support of organizational goals and optimized for specific enterprise environments. It is through the use of internal design standards that organizations can consistently deliver solutions tailored to their environments, resources, goals, and priorities.
As with design principles, the application of design standards results in the creation of specific design characteristics. As with design patterns, design standards foster and refine these characteristics to avoid potential problems and strengthen the overall solution design. In fact, it is recommended for design standards to be based upon or even derived from industry design principles and patterns.
Figure 1 – In this case, a design standard requires that C’s original design be altered to remove access to a shared, external state database.
Can you have design standards without design principles? Yes, it is actually common to have many design standards. Only some may need to relate back to principles in order to see through the application of the overall design paradigm. Different design standards may also be created to simply support other goals or compensate for constraints imposed by specific environmental, cultural, or technology-related factors. Although some standards may have no direct association with accepted design principles, there should always be an effort to keep all standards in relative alignment.
Can you have design principles without design standards? It usually depends on how committed an organization is to the governing design paradigm. If it sees potential in only using a subset of the paradigm’s principles, then some principles may not be supported by corresponding design standards. However, this approach is not common. Essentially, as with design principles, through standardization we want to build consistency into specific design characteristics – consistency in the quality of the characteristics and in how frequently they are implemented.
Note that one point of clarification worth making when discussing standards is the difference between design standards and industry standards. The former, as we just described, refers to internal or custom standards that apply to the design of solution logic and systems for a particular enterprise. The latter generally represents open technology standards, such as those that comprise the XML and Web services platforms.
Sometimes organizations assume that if they use industry standards they will end up with a standardized IT enterprise. While those XML and Web services specifications that have become ratified and accepted industry standards do establish a level of technology standardization, it is still up to an organization to consistently position and apply these technologies. Without design standards, industry standards can easily fail in achieving their potential.