Any great journey starts with a goal or destination, and your organization’s decision to implement SOA is no different. But not unlike the pioneers who set off west in their wagons, you may start with only a vague idea of what awaits you, or how you could get to your destination. To be successful, you must assess your strengths and weaknesses, establish clear direction, choose a route, and then consistently reassess that route as you follow it. To put it simply, you must create your own unique map for your journey.
What Is an SOA Roadmap and Why Do You Need One?
Service-Oriented Architecture is an IT strategy that organizes the discrete functions contained in enterprise applications into interoperable, standards-based services that can be combined and reused quickly to meet business needs.
The benefits of SOA will be realized only if the balance between the long-term goals and the shorter-term needs of the business are preserved.
This balance can be maintained by instituting a set of organizational, financial, operational, design, and delivery practices from the outset of your SOA initiative. But rather than taking a “big bang” approach, it is important to deploy culture-changing disciplines in an incremental and iterative fashion to allow for an organizational learning curve. In essence, an SOA roadmap provides an iterative and incremental way to capture (and recapture) your organization’s unique plan as you progress.
Your SOA roadmap should contain three critical characteristics:
- Maturity: Treat your SOA roadmap as a “living document” that continually captures experiences and lessons learned. As your SOA roadmap matures, your SOA initiative reaches higher levels of sophistication in a controlled manner. The creation of an SOA roadmap begins with an assessment of your organization’s current capabilities and disciplines applicable to SOA.
- Scope: A complete SOA roadmap should encompass six domains (see Figure below). These domains, while distinct, are interrelated and interdependent. Executing on each domain is fundamental to the success of an enterprise-wide SOA initiative. The SOA roadmap should clearly delineate the boundaries of your SOA initiative and establish a transparent and flexible timeline for achieving SOA goals. These goals should be broken down into manageable phases, which can then be realized in an iterative and incremental manner.
- Quality: By applying a “Learn & Adapt” process at each milestone, and by being both iterative and incremental, your roadmap will remain relevant throughout the SOA initiative. To ensure your SOA roadmap’s quality, communicate and validate it with all stakeholders, soliciting feedback and buy-in from all quarters.
How to Build an SOA Roadmap
There are four phases to developing your SOA roadmap: SOA Planning, SOA Maturity Assessment, SOA Future Vision, and SOA Roadmap Definition.
During this phase, your SOA initiative is organized and defined. Stakeholders are brought into the process through communications and briefings, and mutually agreed upon priorities and parameters are set. Because this phase involves employees across your organization, clear and ample communication is critical. During this phase you will:
- Define the scope of SOA.
- Establish boundaries and alignments with other IT initiatives.
- Appropriately showcase the business justification for SOA.
- Show alignment of existing and future business initiatives.
SOA Maturity Assessment
During the SOA maturity assessment phase, you will establish a metric for where you are today. Here you will define what services and capabilities you currently have that can serve as a starting point for SOA, as well as identify projects that may serve as foundation projects. Through a series of interviews and questionnaires, your teams should examine the various domains—analyzing, base-lining, and validating the “as-is” current situation for each. A SOA Domain Model is utilized to structure your examination of the following:
- Business Strategy and Process: Top-down view of business strategies and processes.
- Architecture: Review of current architectures, policies, and standards.
- Cost and Benefits: Overview of existing cost structures and benefits cases.
- Building Blocks: Analysis of existing services, processes, tools, and technologies.
- Projects and Applications: Review of existing systems, and in-flight and planned projects.
- Organization and Governance: Analysis of existing governance structures and policies.
SOA Future Vision
In this phase, teams use workshops to determine and define the desired “should-be” state and ensure cross-organizational buy-in.
- Business Strategy and Process: Correlation of SOA future vision with business strategies and processes.
- Architecture: Guiding principles, requirements, policies, standards, and reference architecture.
- Cost and Benefits: Metrics and measurement requirements.
- Building Blocks: Shared services infrastructure requirements and standardized tools.
- Projects and Applications: SOA mapping to projects and applications.
- Organization and Governance: Governance and compliance structures and policies.
SOA Roadmap Definition
This phase is where the SOA roadmap is initially defined. A complete gap analysis should be performed for your corporation’s SOA goals and appropriate timelines, based on the information gathered in the previous three phases. Near-term events will be more detailed, while later events will be more fluid—so that they may incorporate lessons learned as you move forward.
- Business Strategy and Process: Opportunity alignment by business value.
- Architecture: Near-, medium-, and long-term reference architecture roadmap.
- Cost and Benefits: Roadmap of future metrics, cost structures, and benefits cases.
- Building Blocks: Prioritization of shared services strategy and standardized processes.
- Projects and Applications: Project and application impact.
- Organization and Governance: Proposed governance structures and policies.
Your SOA roadmap should be treated as a “living document” that continually captures experiences and lessons learned. As your roadmap matures, your SOA initiative will reach higher levels of sophistication in a controlled manner (see Figure below).
It has been my goal in this article to give you a framework for creating your own SOA roadmap, and an explanation of why that roadmap is so important for your SOA initiative. Your roadmap is your guide for what to develop, when to develop, and when to deploy what you’ve developed. It should be your single most powerful tool for a smooth deployment of SOA.