Top Banner
CICS & SOA What you don’t know might help you Will Yates CICS Test Architect
28

CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

Feb 13, 2019

Download

Documents

ledien
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

CICS & SOA

What you don’t know might help you

Will Yates – CICS Test Architect

Page 2: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

SOA is not just web services

8/9/2015 3

A service-oriented architecture (SOA) is an

architectural pattern in computer software

design in which application components

provide services to other components via a

communications protocol, typically over a

network. The principles of service-

orientation are independent of any vendor,

product or technology.

Page 3: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

CICS essential design concepts

8/9/2015 4

Presentation

Logic

Business

Logic

Data Access

Logic

• Pseudo – conversational programming

• Communication Area – COMMAREA or Channels & Containers

• Program to program communication

Page 4: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

Two models of CICS SOA Integration

8/9/2015 5

CICS TS

Web

service

client

Service

client

Service

end-point

Integration

logicBusiness

Logic

Presentation

Logic

Data

Access

Logic

Terminal

Service end-point

Page 5: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

Two models of CICS SOA Integration

8/9/2015 6

CICS TS

Web

service

client

Web

service

client

CICS

Web

service

support

Integration

logic

Business

Logic

Presentation

Logic

Data

Access

Logic

Terminal

CICS

REST

support

Page 6: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

SOA Story: Enterprise SOA

8/9/2015 7

SOA High Ceremony

SOAP

WSDL

WSRRWS-Sec

WS-AT

Service Description

Service Governance

Page 7: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

SOA Story: Restful SOA

8/9/2015 8

SOAP

WSDL

WSRRWS-Sec

WS-AT

Service Description

Service Governance

SOA

High Ceremony

RESTPHP

HTTPATOM

Situational Apps

Mobile Enablement

Resource Orientated

Page 8: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

SOA Story: CICS TS v3 era

8/9/2015 9

SOAP

WSDL

WSRRWS-Sec

WS-AT

Service Description

Service Governance

SOA

High Ceremony

RESTPHP

HTTPATOM

Situational Apps

Mobile Enablement

Resource Orientated

CICS TS v3

Page 9: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

SOA Story: CICS TS v4 era

8/9/2015 10

SOAP

WSDL

WSRRWS-Sec

WS-AT

Service Description

Service Governance

SOA

High Ceremony

RESTPHP

HTTPATOM

Situational Apps

Mobile Enablement

Resource Orientated

CICS TS v4

CICS TS V4.2

Feature Pack for Mobile Extensions

Page 10: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

SOA Story: CICS v5 era

• Language mapping enhancements to WSBIND

• New Base Function

– Mobile Extensions Feature Pack

• New enablement function

– Websphere Liberty Profile embedded into CICS runtime

• Web enabled servlets

• JAX-RS

• JAX-WS

8/9/2015 11

Page 11: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

Mobile: Another stage in computing history

8/9/2015 12

Host / Mainframe

Client / Server

Web / Desktop

Mobile / wireless / cloud

Mobile is different:

• Ubiquitous computing

• Mixed models

• A different type of app

• Revolutionary to business

models

Page 12: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

Mobile internet usage (UK 2014)

8/9/2015 13

68% of adults used the internet ‘on the go’

58% used a mobile

phone or smartphone

43% used a portable

computer

15% used an Ebook

reader or other

handheld device

Source: UK Office for National Statistics

Page 13: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

Worldwide 4G network coverage

8/9/2015 14

64%Of the worlds

population will be

covered by 4G-LTE

networks by the nd of

2020

Source: GSMA Intelligence

Page 14: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

8/9/2015 15

OK I get it mobile is huge!

But how does that affect which SOA technology I pick?

What choices do I have?

Page 15: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

SOA pick and mix

8/10/2015 16

JSON SOAP XML HTML

REST WS - *

HTTP HTTPSMessage

QueueCTG

Language Protocol

Service invocation

Transport

Page 16: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

SOA pick and mix

8/10/2015 17

JSON SOAP XML HTML

REST WS - *

HTTP HTTPSMessage

QueueCTG

Language Protocol

Service invocation

Transport

Page 17: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

SOA pick and mix

8/10/2015 18

JSON SOAP XML HTML

REST WS - *

HTTP HTTPSMessage

QueueCTG

Language Protocol

Service invocation

Transport

Page 18: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

SOA pick and mix

8/10/2015 19

JSON SOAP XML HTML

REST WS - *

HTTP HTTPSMessage

QueueCTG

Language Protocol

Service invocation

Transport

Page 19: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

Language formats

8/10/2015 20

<SOAP><xml/></SOAP>

{“JSON”: “REST”

}

• Lightweight, human readable, text

based format for data

• Simple Structure

• Native JavaScript support

• Widely adopted by the industry

• heavyweight, human readable, text

based format for data

• More complex with custom types

• Requires dedicated parser

Page 20: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

Not just JSON or SOAP

• Neither technology demands a particular data format

– Raw XML

– HTML

– Binary Data

• PDF etc

• HTTP media type can inform the client of the response

data

• What can your client consume – who is the customer?

8/10/2015 21

Page 21: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

SOA pick and mix

8/10/2015 22

JSON SOAP XML HTML

REST WS - *

HTTP HTTPSMessage

QueueCTG

Language Protocol

Service invocation

Transport

Page 22: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

Service invocation (REST or WS-*)

• The key motivator of a RESTful SOA is simplicity and ubiquity

– Deliver content in the simplest possible way

– HTTP is available everywhere; it’s like the air around us

• With Enterprise SOA (WS-*), it’s not the body (user data) that distinguishes the QoS, it’s the richness of the WS-* headers

– WS-Security is about choice in the decision of encryption, identity tokens and digital signatures

– WS-Addressing is about transport-neutral mechanisms of describing addresses

– Even the WS-I standards are about allowing maximum flexibility within a fully agreed-upon framework of standards

• You might want to choose WS-* where you don’t have overall control of connectivity.• WS-ReliableMessaging and SOAP over JMS are about choice in how you obtain qualities of

service

8/10/2015 23

Page 23: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

REST: Accessibility for Developers

• A RESTful Web service is formed like a sentence – it simplifies how developers

access services

– Verb = HTTP Action (GET, POST, PUT, DELETE)

– Noun = the URI of the Service (the document)

– Adjective = MIME type of the resulting document

8/9/2015 24

http://server.com/users/100210

GET

PUT

POST

DELETE

verb noun adjective

json

Page 24: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

REST: Accessibility for Developers

• A RESTful Web service is formed like a sentence – it simplifies how developers

access services

– Verb = HTTP Action (GET, POST, PUT, DELETE)

– Noun = the URI of the Service (the document)

– Adjective = MIME type of the resulting document

8/10/2015 25

GET http://server.com/

verb noun adjective

soap

<operation>

<function>getCustomerDetails</function>

<customerNumber>100210</customerNumber>

</operation>

Page 25: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

JSON vs SOAP/XML web services

• JSON is lightweight?

– Complexity of message structures

• A complex message in JSON representation will be more costly to

process than a simple message in XML representation

• HTTP(S) connectivity base-line cost is equivalent

JavaScript and JSON work together well by design out of the box

XML is very powerful but needs requires a dedicated parser

• Versioning of a service can be costly with SOAP/XML

– Rolling out changes to back-level clients can be costly

• Regenerate and deploy WSDL

• JSON schemas are more forgiving e.g. default values fields

8/10/2015 26

Page 26: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

Merging Enterprise SOA & RESTful SOA

• Developing for both Enterprise SOA and RESTful SOA enables the

exploitation of distinct content pools:

– Services generated inside your enterprise

– Services generated outside the enterprise

• Utilizing the best of both worlds allows you to take advantage of all the

communities served by your business

8/9/2015 27

Internal

services

External

services

New content

& ways to

reach your

communities

Page 27: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

Attributes and Advantages of a RESTful SOA

• Simplicity – Many decisions pre-made, constrained choices

• Protocol (HTTP), encryption model (HTTPs)

• Identity token exchange (Basic-Auth, or standard HTTP schemes)

• Ubiquity – Use the HTTP infrastructure and other technologies like JavaScript that already

exist

• Effortless use of services – Single, well-understood programming model (Javascript)

– Lots of examples on the web • Copy-cut-and-paste programming to use services

– Someone should be able to use a RESTful SOA Service without knowing they’re doing it!

• Cacheability, Scalability, Testability, Secureability, Navigability

8/9/2015 28

Page 28: CICS & SOA - SHARE · Two models of CICS SOA ... Restful SOA 8/9 ... WS-AT Service Description Service Governance SOA High Ceremony REST HTTP PHP ATOM Situational Apps Mobile ...

Summary

• SOA is here to stay

– Exposing services not just functions

– SOAP like JSON and REST is just an enablement technology

• Importance of choosing a technology to expose your

services that can be consumed by the client

• CICS implements key technologies to allow you to ‘take

your pick’ to build your SOA strategy

8/10/2015 29