SOA with TOGAF

Java web services and SOA

SOA with TOGAF

By Gaurav Tripathi

TheServerSide.com

Many organizations are now facing challenges around keeping pace with current business trends and managing complex systems. So organization are looking for better business agility, better business automation, and better IT alignment to speed their business growth.

In most of the cases, SOA helps in simplifying the business and eases communication with different departments. It separates functions into distinct business services - units which can easily be accessible and reusable. SOA focuses on agility and flexibility. The point is to create services that are easily accessible across enterprise and can be consumed in different environments.

Service-oriented architecture

As per Wikipedia, "Service-oriented architecture (SOA) is a flexible set of design principles used during the phases of systems development and integration in computing. A system based on a SOA will package functionality as a suite of interoperable services that can be used within multiple, separate systems from several business domains."

SOA generally provides a way for consumers of services, such as web-based applications, to be aware of available SOA-based services.

Below are guiding principles SOA during development, governance and usage:

  • Reusability, granularity, modularity, and interoperability
  • Industry standard compliance
  • Provisioning and Monitoring/Tracking

One common reason for the failure of an SOA initiative in any given organization is poor governance. SOA governance plays a major role in managing and tracking services. It helps in maintaining version and life-cycle, provisioning, quality-of-service, and other aspects of a service. Enterprise architecture helps organizations with the development and maintenance of their SOAs by providing the framework, tools, and techniques. It also helps the business side to align with IT.

TOGAF

According to The Open Group, "The Open Group Architecture Framework (TOGAF) is a framework - a detailed method and a set of supporting tools - for developing an enterprise architecture. It may be used freely by any organization wishing to develop an enterprise architecture for use within that organization."

TOGAF ADM (Application Development Method) is a step-by-step process to develop an enterprise architecture which will meet the business and information technology needs of an organization. It may be tailored to the organization's needs and then employed to manage the execution of architecture planning activities. The following figure, courtesy of The Open Group, illustrates the ADM Cycle:

SOA with TOGAF

While TOGAF is defined as a detailed method of developing enterprise architecture, it also entails guidelines and techniques that help an architect decide where and how to use SOA.

During the process of ADM, following things needs be to taken care of:

Preliminary Phase:
This phase focuses on the preparation and initiation activities required to meet the business directive for new enterprise architecture. In this phase, the enterprise architect should adopt the principle of service-orientation. This will help tailor two additional outputs of the phase: a governance and support strategy and the content of the initial architecture repository.

Architects should:

  • Add the service-orientation principles under architecture principles
  • Do the SOA maturity assessment using The Open Group Service Integration Maturity Model (OSIMM)
  • Define the SOA Governance and support strategy – SOA governance should extend  IT & EA governance
  • Populate a SOA-related architecture repository like SOA Reference Architecture, SOA Building Blocks, SOA SBB, or SOA technical components
  • Form the SOA Center of Excellence (CoE) while establishing the architecture team.

Architecture Vision:
This phase focuses on the vision, scope, business drivers and readiness assessment.

Vision: Take care when defining your vision. SOA has its own terminology (jargon like contracts, services, etc.), models, policy and matrices. The Open Group has published the SOA Ontology, which formally defines the terminology, semantics, and fundamental concepts of SOA.

Scoping:  Architecture scope is dependent on the type & size of an enterprise. As a general practice, It is not recommended to make a single architecture (if it is very complex or large). First define the Strategic Architecture, which will have a long-term view. This architecture will have several segments of SOA. Each segment can be detailed out in Segment Architecture and will have a single, integrated SOA. Segments can further divide into smaller and less complex units called Capability Architecture. The diagram below shows the TOGAF scope mode:

Business Drivers & Concerns: While defining the concerns and viewpoint of your business drivers, the principles and tenets of SOA need to be adhered to.

Readiness: While evaluating business capabilities, evaluation of SOA readiness activity needs to be done.

Business Architecture
This phase focuses on business architecture aspects such as people, processes, and function. From an SOA perspective, TOGAF’s meta-models need to be extended to cover the business architecture. Also contracts, one of the main parts of SOA, are needed to formalize the functional and non-functional properties of business service interaction with both external and internal entities. Regarding non-functional requirements, SOA service quality objects should be modeled.

Information Systems Architecture
This phase focuses on the application portfolio and entity of organization. The major changes need to be done at the application architecture layer. SOA artifacts are different from those of TOGAF and the process of gap analysis between base and target architecture is different.

Technology Architecture
This phase defines the software and hardware infrastructure required for architecture. SOA related activity can be started with the SOA Reference Architecture and can be customized with respect to Organization. For defining the technology, SOA Reference Model should be used.

Opportunities & Solutions
This phase focuses on the initial level implementation planning and then identifies the delivery vehicles for the architecture defined in the previous phases. In SOA, identification of service and solution portfolios is a key thing. Identification of solution portfolios, integration and management, and internal or external service providers is done in this phase. SOA & SOI roadmaps, SOA solution matrices & diagrams are the output of this phase.

Migration Planning
This phase focuses on forming a set of detailed sequence of transition architectures with a supporting previous phase identified plan. In this phase, SOA governance and strategy should mesh with the TOGAF suggested governance model and should be finalized before implementation starts.

Implementation Governance
This phase focuses on the architectural oversight of the implementation. An architecture implementation should adhere to the TOGAF and SOA governance and strategy model defined in the previous phase.

Architecture Change Management
This phase focuses on managing the changes to the new architecture and also helps in considering adopting the principle of service-orientation.

Summary

The main aspects to focus on while realizing SOA with TOGAF are:

  • Content Meta-Model
  • Reference Model
  • Maturity Model
  • Organization SOA readiness
  • SOA Governance Model
  • SOA CoE

When realizing SOA with TOGAF, the architect should remember that the object is to have SOA solutions that focus on managing the enterprise's complexity and provide business agility.

Resources

 


About the Author

Gaurav Tripathi (http://in.linkedin.com/in/gauravtripathi) works at one of the leading IT conglomerate as a Solutions Architect. His primary job responsibility is to provide architecture consulting of large scale/ complex Enterprise Applications and Application Portfolio Optimization, IT Strategy, Technology roadmaps. Other keen interest areas are participation and contribution towards architecture governance, mentoring, technical training and blogging. Please visit: http://visitgaurav.blogspot.com/ to know more.

29 Jul 2011

Disclaimer: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.