Concept: Implementation Mechanism
A representation of an Architecture Mechanism that uses a specific programming language or product.
Main Description

An Implementation Mechanism is a refinement of a corresponding Design Mechanism that uses, for example, a particular programming language and other implementation technology (such as a particular vendor's middleware product). An Implementation Mechanism may instantiate one or more idioms or implementation patterns.

Review these points when you are considering Implementation Mechanisms:

  • Determine the ranges of characteristics. Take the characteristics that you identified for the Design Mechanisms into consideration to determine reasonable, economical, or feasible ranges of values to use in the Implementation Mechanism candidate.

  • Consider the cost of purchased components. For Implementation Mechanism candidates, consider the cost of licensing, the maturity of the product, your history or relationship with the vendor, support, and so forth in addition to purely technical criteria.

  • Conduct a search for the right components, or build the components. You will often find that there is no apparently suitable Implementation Mechanism for a particular Design Mechanism. This will either trigger a search for the right product or make the need for in-house development apparent. You may also find that some Implementation Mechanisms are not used at all.

    The choice of Implementation Mechanisms is based not only on a good match for the technical characteristics, but also on the non-technical characteristics, such as cost. Some of the choices may be provisional. Almost all have some risks attached to them. Performance, robustness, and scalability are nearly always concerns and must be validated by evaluation, exploratory prototyping, or inclusion in the architectural prototype.