Service-oriented architecture design best practices

This excerpt from "SOA: Principles of Service Design" defines the term "best practice" and how it applies to service design. It also provides an overview for all the terms discussed in the chapter.

A best practice is generally considered a technique or approach to solving or preventing certain problems (Figure 3.7). It is usually a practice that has industry recognition and has emerged from past industry experience.


Figure 3.7

Service-oriented architecture design best practices provide guidance in the form of general "lessons learned." In the example, it is suggested that the on-going maintenance of reusable solution logic units from all applications fall under a single custodian.

How then is a best practice differentiated from a design principle? In this book we make a clear distinction in that a design principle is limited to design only. A best practice can relate to anything from project delivery to organizational issues, governance, or process. A design principle could be considered a best practice associated only with solution design.

Note that several service-oriented architecture design best practices are provided throughout this book in support of applying design principles. An additional set of more detailed practices is located in Chapter 15.

A Fundamental Design Framework

Each of the previous sections described a piece of intelligence that can act as input into an overall design process. When designing service-oriented solutions it is practically inevitable that some or all of these pieces be used together. It is therefore important to understand how they relate to each other so that we can gain a foreknowledge of how and where they are best utilized.

Figure 3.8 shows how some of the more common parts of a design framework typically inter-relate and highlights how central the use of design principles can be. Figure 3.9 expands on this perspective by illustrating how the use of design patterns can further support and extend a basic design framework. Finally, Figure 3.10 shows how the parts of a design framework can ultimately help realize the application of the overarching design paradigm.

Figure 3.8

design framework

Fundamental design terms establish a basic taxonomy used throughout the upcoming chapters. This diagram hints at how some parts of a basic design framework can relate to each other.

Figure 3.9

design patterns

Design patterns provide additional intelligence that can enrich a design framework with a collection of proven solutions to common problems.

Figure 3.10

design framework

The purpose of applying a design paradigm is the achievement of certain goals. It is important to emphasize how design standards, design patterns, and best practices can all support the successful application of a design paradigm and, as a result, the attainment of its goals.


  • A design principle is an accepted design guideline or practice that, when applied, results in the realization of specific design characteristics.
  • A design paradigm represents a set of complementary design principles that are collectively applied in support of common goals.
  • A design pattern identifies a common problem and provides a recommended solution.
  • A design standard is a convention internal and specific to an enterprise that may or may not be derived from a design principle or pattern.

Use the following table of contents to navigate to chapter excerpts.

SOA: Principles of Service Design
  Home: Service-oriented computing and SOA: Introduction
  1: Design fundamentals: Design characteristics
  2: Design fundamentals: Design principles
  3: Design fundamentals: Design pattern and design pattern language
  4: Design fundamentals: Design standard
  5: Design fundamentals: Best practices
  6: Introduction to service-oriented computing
  7: Service oriented architecture
  8: Service compositions
  9: Understanding service oriented computing elements
  10: Entity services
  11: Web services and service oriented computing
  12: Service inventory blueprints
  13: Service-oriented analysis and service modeling
  14: Service-oriented design
  15: Goals and benefits of service-oriented computing
  16: Increased intrinsic interoperability
  17: Increased federation
  18: Increased vendor diversification options
  19: Increased business and technology domain alignment
  20: Increased ROI
  21: Increased organizational agility
  22: Reduced IT burden

SOA: Principles of Service Design is dedicated to service engineering and establishing service-orientation as a design paradigm. This hands-on manual for service design establishes concrete links between specific service-orientation design principles and the strategic goals and benefits associated with SOA. Purchase the book from
Thomas Erl is the world's top-selling SOA author, Series Editor of the "Prentice Hall Service-Oriented Computing Series and editor of The SOA Magazine. His books have become international bestsellers and have been formally endorsed by senior members of major software organizations such as IBM, Microsoft and Oracle. He is the founder of SOA Systems Inc., a company specializing in SOA training, certification and strategic consulting services with a vendor-agnostic focus.


Dig Deeper on IT systems integrators