Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series...

29
Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A

Transcript of Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series...

Page 1: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Introduction to Service Oriented Architecture

LIVE WebSphere Lunch & Learn Teleconference Series with Q&A

Page 2: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Agenda

Service distinctions and terms– Business and technical services– Service classifications– Qualities of services

Process Considerations– Discovery (business and technical),

harvesting, exposing– Orchestration and Virtualization– Governance

Getting Started– Interpretation and effectiveness– Health checks & readiness assessments

Questions

Page 3: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Perficient Today

16 City Network in US and Canada: Atlanta, Austin, Chicago, Cincinnati, Columbus, Dallas, Detroit, Fairfax, Houston, Indianapolis,

Minneapolis, New Orleans, Philadelphia, San Francisco, St. Louis, Toronto

Total headcount of ~1,100

Perficient is a leading information

technology consulting firm serving clients

throughout the United States.

We help clients implement business-driven

technology solutions that integrate

business processes, improve worker

productivity, increase customer loyalty and

create a more agile enterprise to better

respond to new business opportunities.

Page 4: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Fast Facts

Founded in 1997 Public, NASDAQ: PRFT ~$500+ million market cap and $220 million in

annualized revenues– 20+% organic growth rate– One acquisition in 2007– Four acquisitions since beginning of 2006 with

expressed intent to acquire additional complementary businesses

1100+ consultants Dedicated solution practices Served 400+ clients in past 12 months Alliance partnerships with major technology

vendors Multiple vendor/industry technology and

growth awards

Page 5: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Introduction to SOA

This is a broad topic, with many angles we could take– And many side roads to wander down

There are many resources describing the technology underneath services and SOA

In one hour, we will cover the breadth of the SOA space– Today we will talk less about how services work and more

about what they can do for us– We will introduce technology and terms, and a few key

distinctions– We will discuss getting started in a practical way, or

benchmarking our progress against best practices

introduction distinctions and terms process considerations getting started questions

Page 6: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Promises of SOA

Adoption SOA is not generally an end of its own, but is supported by business drivers that align with several of the core promises of SOA:

– Increased IT responsiveness– Improved flexibility and adaptiveness to business changes– Better IT alignment with business goals and drivers– Enhanced monitoring of enterprise systems– Simplification of infrastructure components– Creation of business-level events– Facilitation of workflow and process automation– Maintenance and support cost reductions

introduction distinctions and terms process considerations getting started questions

Page 7: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Reasons Companies Look at SOA

There are at least seven key patterns leading companies toward adopting SOA1. Desire for more agility from IT2. Elimination of redundancy / increase reuse of assets3. Process reengineering4. Legacy modernization5. Partner enablement6. ERP migration7. Componentization of a software product line

introduction distinctions and terms process considerations getting started questions

Page 8: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Components of a SOA Vision

When developing a vision for SOA in your company, start with the previous slides and consider some of the following:– Increasing IT capacity to deliver value to the business– Reduction in complexity for integrating new acquisitions as

well as legacy systems– Capabilities to increase automation and self-service to

business users– Improved operational support practices and triage

capabilities– Reduction in integration-oriented defects– Placing more control of business process in the hands of

Business Owners

introduction distinctions and terms process considerations getting started questions

Page 9: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Services in Simple Terms

OASIS distinction: A service is the means by which the needs of a consumer are brought together with the capabilities of a provider

– This is useful, in that it aligns withour common intuition about servicesin the marketplace

At its most basic level, allorganizations provide “businessservices”

– An organization has manycapabilities it provides themarketplace

– These are often consistent over time banker has capabilitiesbanker has capabilities

loan applicant has needsloan applicant has needs

introduction distinctions and terms process considerations getting started questions

Page 10: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Technical Services

In a similar way, the systems and applications in IT provide capabilities, and our end users have needs

– Technical services are a means for bringing those capabilities to our end users

– Often only a subset of all the capabilities of a system are needed for a given business process

Note that the business service in the previous slide (loan application) still exists, in a different “execution context”

Bank Loan System

Applicant Payment

Regulatory Investment

Collections Interest

Underwriting

CorrespondenceLoan

Applicant Portal

submit application???

assess risk???

establish auto-payment???

introduction distinctions and terms process considerations getting started questions

Page 11: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Underneath Technical Services

Application or System

“Harvested”Functionality

Consumer

Registry

executioncontext

We spend much of our time worrying about the “execution context”… this is really about how invocation flows end-to-end… SOAP, HTTP/XML, XML/JMS, TEXT/HTTP, etc.

The promises of SOA are hidden, however, in the phenomenon of matching business capabilities with the needs of our consumers.

introduction distinctions and terms process considerations getting started questions

Page 12: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

System vs. SOA Perspective

There is an important difference between a system perspective and a “service-oriented” perspective

– In SOA, we are concerned about exposing capabilities, which OASIS defines as a “real-world effect”

A single system or application can provide many capabilities to its constituents

– Alternately, a single capability could be provided by more than one application or system in an enterprise

– We are left to determine if they are semantically similarBank Loan System

Applicant Payment

Regulatory Investment

Collections Interest

Underwriting

Correspondence

Credit Card System

Applicant Payment

Regulatory Investment

Collections Interest

Underwriting

Correspondence

Certificate of Deposit System

Applicant Payment

Regulatory Investment Interest

Correspondence

introduction distinctions and terms process considerations getting started questions

Page 13: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Service Classifications

There are many ways to classify services

– “Business” or “Technical”– “Atomic” or “Composite”– “Fine-grained” or “Coarse-

grained”

The diagram at the right puts these classifications in perspective

We will come back to this later

CompositeBusinessService

(Atomic)BusinessService

Composite(Technical)

Service

(Atomic)(Technical)

Service

composed of

implemented through

composed of

coarse-grained

fine-grained

introduction distinctions and terms process considerations getting started questions

Page 14: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Qualities of a Service

Reusable in multiple contexts Fully encapsulated implementation, providing isolation

and loose coupling to its consumers Composable with other services Accessible to its consumers, sometimes via a directory Available to provide its capabilities, based on a “service

contract”– There are many interpretations of service contracts– Certainly it includes the signature of the service operations– Also, “Service Level Agreements” can define other

characteristics• Performance, security, transactions, priorities, etc.

There are other qualities if you want an exhaustive list

introduction distinctions and terms process considerations getting started questions

Page 15: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Considerations and Challenges

IT develops services in technology to support business services as described earlier

– Technical services must expose “capabilities” to consumers who have needs

The challenges for IT therefore include:– Identifying capabilities that are needed (service discovery)– Determining where those capabilities exist (harvesting)– Providing a means for locating and invoking the services

(exposing)– Sequencing services into business processes

(orchestration)– Making decisions regarding change (governance)

introduction distinctions and terms process considerations getting started questions

Page 16: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Service Discovery

The single-most often asked question is “What makes a good service?”

– It is not enough to use the OASIS distinction, to just list the features of an application or to look at each task that comprises a process

A related question is “What is reusable?”– How do we know until we actually reuse it?

We have two recent IT industry precedents to draw out the importance of these questions

– Uncontrolled proliferation of stored procedures– Frameworks of which only a small portion were reused

introduction distinctions and terms process considerations getting started questions

Page 17: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Capabilities Define Business Services

Companies are interested in SOA to support flexible and adaptive business needs

– Interestingly, some fail because they drive their service architecture from shifting foundations

• Core business processes change (at least, we want to support them changing in the future)

• Organizational structure certainly changes• Enterprise applications also change

– By looking at business capabilities to define services, we can be more resilient to change

• Business process is an orchestration of services• Organizational structure supports governance processes• Enterprise applications drive the capabilities of services

introduction distinctions and terms process considerations getting started questions

Page 18: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Capabilities are Constitutive of Business

introduction distinctions and terms process considerations getting started questions

Page 19: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Discovering Technical Services

Service discovery requires a convergence of business services (top-down) and technical services (bottom-up)

– Business capabilities drive business services– Several alternatives drive technical services

• These map to some of the IBM SOA Entry Points (People, Process, Information, Connectivity and Reuse)

• Consumer-centric discovery– Portals– Multi-channel access– Web 2.0

• Process-centric discovery– Business process tasks– Process automation

• Data-centric discovery– MDM, information as a service

• Integration-centric discovery– Process automation– Sunset strategies– Event-driven architecture

• Command and control– You have developed a lot of

services, and need to coordinate new development, versioning and life cycle

introduction distinctions and terms process considerations getting started questions

Page 20: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Harvesting

Harvesting may be the most overlooked concern in SOA– Systems have capabilities and consumers have needs– How do I “harvest” the capabilities from existing systems?

Identifying that a portal needs to look up claims is one thing

– Writing the code that exposes claim information from three different data sources is another

– Often just identifying which systems “own” which data is a problem

…and after identifying the source system(s), finding a path from provider to consumer can also be a challenge

introduction distinctions and terms process considerations getting started questions

Page 21: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Exposing

Services can be exposed and consumed using a variety of protocols

– Many of you are probably familiar with SOAP as a standardized XML RPC format over HTTP

– However, a series of request/response messages over WebSphere MQ can be analogous to a service invocation

An “endpoint” is the ultimate target of a service request– Often the same service endpoint can be exposed for SOAP

consumers and MQ (or JMS) consumers– Sometimes, it is most convenient to integrate TEXT files

sent over FTP as “messages” or “service invocations”– A registry may be use to lookup and locate desired

endpoints

introduction distinctions and terms process considerations getting started questions

Page 22: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

ENROLLMENT PROCESS (NEW BUSINESS)

Submit application Underwrite Process paymentEnroll/send welcome kit

ORCHESTRATED ENROLLMENT PROCESS (NEW BUSINESS)

Submit application Underwrite Process paymentEnroll/send welcome kit

Enrollment Underwriting Rating Pricing Correspondence

Orchestration

Combining services together to implement a business process is called orchestration

– Ostensibly, a company that has no services is not usually concerned about orchestration when starting with SOA

– However, companies who choose a “process” entry point may drive toward services that can be orchestrated earlier

introduction distinctions and terms process considerations getting started questions

Page 23: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Moving Beyond Orchestration

Orchestration is an important interim step for realizing the benefits of SOA

– Orchestration enables effective use of “virtualization”– Virtualization provides to SOA what polymorphism provides

to object oriented programming

SOME REALLY IMPORTANT BUSINESS PROCESS

Do something Something elseFetch claims

historyComplete the

process

WebSphere Business Services Fabric (Runtime)

Claims

Claims(Georgia)

Claims(California)

POLICY:For regulatory reasons, fetch claims history only from the system related to the state of residence

introduction distinctions and terms process considerations getting started questions

Page 24: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Virtualization Summary

The WebSphere Business Service Fabric is a unique offer for service virtualization

– Consumers invoke services– The fabric makes decisions at runtime about which

endpoints actually get invoked, possibly based on• The role of the consumer• The kind of information being processed• …nearly any policy imaginable (context, content, or contract)

– The implications are significant…• Several claims systems can look like one service• Preferred customers can receive different treatment• Business processes are streamlined• Avoid or deter massive consolidation efforts• More options for sunset strategies or enterprise rollouts

introduction distinctions and terms process considerations getting started questions

Page 25: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Governance

There are two components to governance– Decision-making

• How to deal with service interface changes over time, especially after services are consumed by many parties

• What constitutes a service we think we can reuse• What standards promote adaptiveness, like wire-data formats?

– Oversight• Are we following approved standards• What to do about retiring old versions of services• How are we doing with service level agreements

There are many governance structures– What works best for your current and planned capabilities?– Always starts with and involves people, talking to people

introduction distinctions and terms process considerations getting started questions

Page 26: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Interpretation and Effectiveness

Innovation on anyscale requires newinterpretations

– History is a storyof continuousreinterpretation

– Your interpretation of yoursituation determines youreffectiveness with adoptingSOA

When starting out, we trust theinterpretations of others

– This helps us get into the game

introduction distinctions and terms process considerations getting started questions

Page 27: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

So What to Do With All This Info?

1. You are wondering where to get started with SOA– You may not have existing

messaging or integration– There are way too many

options to know what will work best for you

2. You have already made progress with SOA or EAI– Benchmarking against best

practices and lessons learned might be useful

– You really want to address your gaps to move ahead

Most likely, you are now in one of four positions:

3. You have no questions, need no help, and are master of the SOA domain– I love to learn– Please share your insights

with me

4. I did not anticipate what state you would be in– Isn’t it great to know we are

all human?– I am very interested to hear

your thoughts from this presentation

introduction distinctions and terms process considerations getting started questions

Page 28: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Next Steps

For those just gettingstarted

– Perficient offers a SOA Readiness Assessment

• We help you identify your starting point

• We help you determine candidate projects

• We work with people and process, not just technology

• We believe in incremental acquisition of technology

– “Service-ification” is not just about service consumers

• We help you harvest assets• We help build your SOA

business architecture

For those already on the SOA path

– Perficient offers a SOA Health Check

• We benchmark people, process and technology

• We have a library of six years of best practices

• We quickly identify gaps and guidance

– A Roadmap can take you beyond your “entry point”

– Blueprints produce the strategic vision in terms of business services

• Drives virtualization and process orchestration

introduction distinctions and terms process considerations getting started questions

Page 29: Introduction to Service Oriented Architecture LIVE WebSphere Lunch & Learn Teleconference Series with Q&A.

Questions?

Contact informationMatthew CastleBusiness Development ExecutivePerficient, [email protected]

Ken FawDirector, Integration StrategiesPerficient, [email protected]

introduction distinctions and terms process considerations getting started questions