Appendix A. Case Study Conclusion

image

The case study examples provided throughout the chapters in this book have demonstrated the application of patterns in a diverse variety of scenarios, while also providing insight into the technologies commonly used for a given pattern. The following sections briefly summarize the effects of key patterns applied to the three organizations that were studied. Each section also discusses how these patterns helped attain the business goals of the organization, as originally established in Chapter 2.

Cutit Saws Ltd.

The justification for Cutit to invest in an SOA initiative was based on a very clear goal of wanting to take advantage of the recent increase in their product demand and to parlay this into prolonged revenue growth so as to position their company as a prime acquisition target.

The application of the foundational service patterns Functional Decomposition (300), Service Encapsulation (305), Agnostic Context (312), Non-Agnostic Context (319), and Agnostic Capability (324) helped Cutit define a set of services to automate their previously archaic supply-chain process. The resulting Inventory, Chain, Order, and Run Chain Inventory Transfer services were combined into a service-oriented solution that addressed the key goal of improving the automation of their inventory transfer process, while establishing individual services that were ready-made to adapt to future business change.

These and other services were further refined via Canonical Expression (275), and optimized through the application of patterns such as Messaging Metadata (538), Service Callback (566), Service Instance Routing (574), and Compensating Service Transaction (631). The overall Cutit service inventory was also well structured and standardized with the help of Schema Centralization (200) and Policy Centralization (207).

Alleywood Lumber Company

The Alleywood IT enterprise found itself in a more complicated situation, having been acquired by McPherson and forced to find ways to cooperate and interoperate with the IT department of the also-acquired Tri-Fold company. Alleywood’s strategic goals were primarily focused on ensuring that the merging and integration of its IT assets within the overall McPherson enterprise was successful.

Throughout the examples, Alleywood faced numerous situations that were solved by the application of design patterns. Perhaps the most significant was the decision by McPherson architects to proceed with Domain Inventory (123), which allowed the Alleywood enterprise to build and govern its own service inventory independently from the one established by Tri-Fold.

While this empowered Alleywood architects to build services and proceed with their SOA adoption on their own terms, overarching standards were still applied by McPherson architects via Canonical Protocol (150) and Canonical Schema (158) across both Alleywood and Tri-Fold inventory domains.

This innovative strategy of defining domain service inventories while still achieving an extent of cross-domain standardization enabled McPherson to attain a high level of baseline interoperability across all services. This, coupled with the cross-domain reuse achieved by Cross-Domain Utility Layer (267) and the master service registry established by Metadata Centralization (280), laid a solid foundation for the attainment of the long-term strategic goal of creating a global IT environment that is diverse, yet still harmonized and streamlined.

While designing and delivering various services, the Alleywood team faced many design problems that were addressed with the help of design patterns. The most memorable scenario perhaps was the security breach that they had to contend with when their Retail Lumber service was attacked and eventually decommissioned. The resulting cooperative effort between Alleywood and McPherson architects and security specialists resulted in a project during which Exception Shielding (376), Trusted Subsystem (387), and Message Screening (381) were applied to produce a vastly improved service design that was protected well beyond the attacks it had previously been subjected to.

Another significant stage in the evolution of Alleywood’s service inventory was the application of service governance patterns, such as Service Decomposition (489), Proxy Capability (497), and Distributed Capability (510), which helped augment the Employee service to such an extent that a new Employee Records service was spawned with little disruption to the remaining inventory services.

Forestry Regulatory Commission (FRC)

The FRC’s SOA effort was championed by their newly hired CTO who, along with a new set of directors, assumed control over a vast, legacy-ridden IT enterprise. The adoption of SOA was viewed as the wholesale solution to overcoming the skyrocketing operational costs that had been consuming more and more of the FRC’s budget over the past years.

Subsequent to defining the planned service inventory, various FRC project teams went about modeling, designing, and building services. Because so much legacy logic needed encapsulation, the Legacy Wrapper (441) example typified a common service implementation, whereby outdated or proprietary APIs and interfaces needed to be wrapped by standardized service contracts. Other legacy encapsulation patterns, such as Multi-Channel Endpoint (451), helped further bring legacy assets into the service inventory so that they could be made available to a wider variety of consumers without imposing negative coupling requirements.

A key part of the overall SOA initiative was also establishing governance controls so that the planned inventory of services could be more effectively and efficiently maintained and evolved. This is where patterns such as Version Identification (472), Compatible Change (465), and Termination Notification (478) played important roles.

During its initial adoption stages, the FRC invested heavily in infrastructure upgrades which resulted in highly sophisticated messaging frameworks supported by the application of patterns such as Asynchronous Queuing (582), Intermediate Routing (549), Event-Driven Messaging (599), and Reliable Messaging (592). This allowed for the development of mission-critical solutions (e.g., the Flight Plan Validation service) that could leverage the quality-of-service features provided by the messaging framework, as well as the loosely coupled nature of message-based communication itself.

Combined with the architectural enhancements brought about by patterns such as Stateful Services (248) and Service Data Replication (350), the FRC has built an inventory of services that are scalable, reliable, and repeatedly composable into a variety of sophisticated solutions.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.227.161.132