Click to edit Master Title style CICS SOA and WSRR Martin Cocks SOA on your terms and our expertise GSE 2008, Brussels, Belgium © 2008 IBM Corporation GSE 2008, Brussels, Belgium © IBM Corporation 2008. All Rights Reserved. The workshops, sessions and materials have been prepared by IBM or the session speakers and reflect their own views. They are provided for informational purposes only, and are neither intended to, nor shall have the effect of being, legal or other guidance or advice to any participant. While efforts were made to verify the completeness and accuracy of the information contained in this presentation, it is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this presentation or any other materials. Nothing contained in this presentation is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results. Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user's job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here. All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer. The following are trademarks of the International Business Machines Corporation in the United States and/or other countries. For a complete list of IBM trademarks, see www.ibm.com/legal/copytrade.shtml AIX, CICS, CICSPlex, DB2, DB2 Universal Database, i5/OS, IBM, the IBM logo, IMS, iSeries, Lotus, OMEGAMON, OS/390, Parallel Sysplex, pureXML, Rational, RACF, Redbooks, Sametime, Smart SOA, SupportPac, System i, System i5, System z , Tivoli, WebSphere, and z/OS. Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both. Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both. Intel and Pentium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. UNIX is a registered trademark of The Open Group in the United States and other countries. Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both. Other company, product, or service names may be trademarks or service marks of others. 3 GSE 2008, Brussels, Belgium Objectives Understand the value of using a Service Registry and Repository – The value of SOA – The importance of SOA Governance – The value of Meta-data WebSphere Service Registry and Repository – Overview Publishing CICS service definitions into WSRR – Batch – Rational Developer for System z (RDz) Retrieving service definitions from WSRR – Batch – Rational Developer for System z (RDz) Managing service definitions within WSRR – Enabling Governance – Properties – Classifications – Notifications – Searching – Access Control 5 GSE 2008, Brussels, Belgium The Value of SOA 7 GSE 2008, Brussels, Belgium What is Service Oriented Architecture (SOA)? • Business Goals Flexible, Responsive, Time to market • IT systems can be inflexible Tightly coupled applications, difficult to change, difficult to re-use • SOA is an architectural style that can help the business goals Develop loosely coupled re-usable services with well-defined interfaces Link services together to perform business processes Provide closer alignment between your IT systems and your Business Processes 9 GSE 2008, Brussels, Belgium What is Service Oriented Architecture (SOA)? • Break business processes into repeatable business tasks • Consider which repeatable business tasks are common across business processes • Develop services that perform common business tasks • Share services between business tasks •Eliminate duplication •Business processes use same source of information • Services should be loosely coupled, with a well defined interface •Web services provide an example of loosely coupled services with well defined interfaces 11 GSE 2008, Brussels, Belgium The promised benefits of SOA Business process vitality New value through reuse of assets Improved connectivity Closer alignment of IT to business Business Flexibility 13 GSE 2008, Brussels, Belgium The Importance of SOA Governance 15 GSE 2008, Brussels, Belgium SOA brings new emphasis to the governance challenges within organizations How do I eliminate “rogue services” and ensure control of my SOA? How do I manage the services lifecycle? How do I enable enforcement of policies across all internal and external services? How do I help services interact efficiently and dynamically with each other? 17 How do I govern services as part of my SOA? How do I increase service reuse? How can I help my ESB execute in the right context? How do I optimize service interactions to be better aligned with business process? GSE 2008, Brussels, Belgium Without proper management and governance of your SOA… This could become… The promise of SOA … like this A pile of services … and so would go the promised benefits of SOA 19 GSE 2008, Brussels, Belgium SOA Governance and Management Enable IT organizations to drive reuse of services, define and enforce policies, and manage the life cycle of services The governance model defines: – What has to be done? The Service lifecycle People – How is it done? The governance decision path based processes – Who has the authority to do it? As defined by the roles and responsibilities of the Service lifecycle processes – How is it measured? The vitality and conformance checkpoints Services Technology Processes The focus of SOA is the Services Model Governance is enabled by management – Governance determines who has the authority to make a decisions – Management is the process of making and implementing the decisions 21 GSE 2008, Brussels, Belgium The Value of Meta-Data 23 GSE 2008, Brussels, Belgium The value of Meta-data Add meta-data to individual documents to provide additional information – For example • • • • Classify documents to enable them to be easily located by others – For example • Internal Applications – Customer Related – Employee Related • External Applications – Ordering – Registration Provide logical links between documents that have a logical association – For example • • • 25 Contact name Contact telephone number Department code Owning system WSDL describes service interface Documentation for service also available Add a relationship between the two so that from one of the documents, the other can be easily found GSE 2008, Brussels, Belgium WSRR Overview 27 GSE 2008, Brussels, Belgium WebSphere Service Registry and Repository (WSRR) Enables governance through configurable service lifecycle, classifications and access controls Manages service metadata while providing better search granularity than most UDDI-based products User-friendly UI to facilitate design time discovery Provides location transparency through runtime access Stores all service artifacts, not just WSDL Provides fully configurable functionality to classify services Supports state model functionality to manage service lifecycles in a shared environment Service notification to facilitate communication between service consumers and providers Enforces consumer access to services Simple version management functionality 29 GSE 2008, Brussels, Belgium The WebSphere Service Registry and Repository provides value throughout the SOA lifecycle WebSphere Service Registry and Repository Publish Publish Find Enrich Manage Govern Find Encourage Reuse Find and reuse services for building blocks for new composite applications. Govern Enable Governance Govern services throughout the service lifecycle 31 Enrich Enhance Connectivity Enable dynamic and efficient interactions between services at runtime. Manage Help optimize service performance Enable enforcement of policies. Impact analysis GSE 2008, Brussels, Belgium WSRR default lifecycle Created Plan Model Authorize Development Assemble Certify Manage Approve Deprecate Revoke Retired 33 Deploy Repair GSE 2008, Brussels, Belgium Example: What actions need to occur in the “Plan” transition? Potential Actions for “Plan” Transition ● Define Service Focus - Understand the important business domains affected Created ● Identify Service Owners – Understand who will own the service ● Define Service Funding - Understand how the service will be funded Plan ● Identify the Service – identify the service candidates (meet-in-the-middle approach) Model ● Specify the Service – Choose service candidate which will be developed, understand service dependencies, service composition, QoS requirements, message format specifications ● Realize the Service – Map technology to the service, make architectural and design decisions on technology implementation, standards compliance, adapters required for legacy systems 35 GSE 2008, Brussels, Belgium Publishing and Retrieving Definitions in WSRR 37 GSE 2008, Brussels, Belgium Publish WSDL from z/OS batch to WSRR z/OS Batch JCL Input Parameters: Language, container, end of URI, Provider Application Name, etc... Output Input Language Structures Input Parameters: WSDL document location, meta data – description, name, version, encoding, user-defined name+value, WSRR server location + security credentials . DFHLS2WS . Build WSDL and WSBind file from. Language Structure(s) . . . . DFHWS2SR . Publish to WSRR . . WSBind WSDL Web service WSRR API WSRR log 39 GSE 2008, Brussels, Belgium Publishing WSDL from RDz into WSRR You can enable your CICS COBOL applications as Web services using Rational Developer for System z (RDz). Having done this, the WSDL describing your CICS Web service can be published from RDz into WSRR by using a WSRR eclipse plugin. Use the WSRR eclipse plugin to enable the publication of this WSDL to WSRR. Pre conditions – RDz successfully created WSDL – Eclipse plugin installed into RDz – Eclipse plugin configured with hostname and port of WSRR server Process flow – From Navigator view, right click on WSDL and select Service Registry -> Publish Document(s) – Specify the Name, Namespace, Version, Description and File Type (WSDL) of the document – Click Finish Post conditions – Log of activities – Web service definition is available in service registry 41 GSE 2008, Brussels, Belgium Read WSDL from WSRR from z/OS batch z/OS Batch JCL Input Parameters: WSDL unique token, WSRR server location + security credentials Input Parameters: Language, container, end of URI, Provider Application Name, etc... . DFHSR2WS . Read from WSRR . . . . . DFHWS2LS Build Language . Structure(s) & WSBIND file from . WSDL . log 43 Web service WSRR API WSDL WSBind Output Input Language Structures WSRR GSE 2008, Brussels, Belgium Read a WSDL document from WSRR into RDz WSRR 6.1 provides an eclipse plugin – This interoperates with previous versions of WSRR – Use the WSRR plugin to retrieve WSDLs from WSRR into an inmemory cache. – Select the WSDL you wish to use and click on it to import it into a project – Use the Enterprise Service Tools to generate the COBOL copybooks and WSBIND file from the WSDL. – Develop your Web service requester or Web service provider using the generated COBOL copybooks – This plugin requires an Eclipse 3.1 platform or higher – A different plugin version is shipped with previous versions of WSRR and in SupportPac SA02 45 GSE 2008, Brussels, Belgium Enabling Governance – Managing Service Definitions within WSRR 47 GSE 2008, Brussels, Belgium Enabling Governance 49 GSE 2008, Brussels, Belgium Enabling Governance 51 GSE 2008, Brussels, Belgium Enabling Governance Once a WSDL document is published into WSRR, governance can be enabled on it. This starts the process of taking the document through the lifecycle that you are using. Documents can be governed individually, or as a collection. A Concept document can be used as a logical high level document that contains relationships to a number of other documents. The Concept can then be governed, which causes all the documents it has relationships with also to be governed. 53 GSE 2008, Brussels, Belgium Other Functions Available Within WSRR 55 GSE 2008, Brussels, Belgium Properties 57 GSE 2008, Brussels, Belgium Classifications 59 GSE 2008, Brussels, Belgium Notifications WSRR supports notification by having service consumers subscribe to a service’s notification events. These events include: – Change in state within the lifecycle – Change in classification – Change in endpoint – Change within the metadata of a service – Any creation, update, delete or transition An email is sent when an event occurs 61 GSE 2008, Brussels, Belgium Searching 63 GSE 2008, Brussels, Belgium Access Control WSRR controls access to metadata not to services. Access control to services is left to middleware (ESB). Having a classification requires access control to ensure the proper users (and only the proper users) have the ability to update the appropriate metadata WSRR can integrate with enterprise wide security models by leveraging Tivoli Identity Management / Tivoli Access Management. The roles defined within the access control can be based on any categorization of the service – business domains, states, geography, etc. 65 GSE 2008, Brussels, Belgium WebSphere Service Registry and Repository: Additional information WebSphere Service Registry and Repository - Product Web Site – http://www-306.ibm.com/software/integration/wsrr/index.html WebSphere Service Registry and Repository – Information Center – http://publib.boulder.ibm.com/infocenter/sr/v6r1/index.jsp Rational Developer for System z - Product Web Site – http://www.ibm.com/software/awdtools/rdz/index.html 67 GSE 2008, Brussels, Belgium Summary Understand the value of using a Service Registry and Repository – The value of SOA – The importance of SOA Governance – The value of Meta-data WebSphere Service Registry and Repository Publishing CICS service definitions into WSRR – Batch – Rational Developer for System z (RDz) Retrieving service definitions from WSRR – Batch – Rational Developer for System z (RDz) Managing service definitions within WSRR – – – – – – 69 Enabling Governance Properties Classifications Notifications Searching Access Control GSE 2008, Brussels, Belgium Any Questions 71 GSE 2008, Brussels, Belgium CICS news delivered to your Inbox • Find out what’s on the mind of other CICS users, industry analysts and CICS decision makers • Learn about the latest CICS innovations and releases • Get information about up to date CICS training opportunities and events • Grab the CICS papers hot off the press • Feedback directly to CICS people … for all these and more, join the growing list of people who subscribe to ibm.com/cics/enews 73