Slide1: OpenVMS
Service–Oriented Architecture
Exposing Applications as Web Services Matt Muggeridge
OpenVMS Engineering
Agenda: Agenda Service-Oriented Architecture: Enabling an Adaptive Infrastructure for an Adaptive Enterprise
Web Services: where are we?
Software Development
…no integration without it…
On OpenVMS
On other platforms for OpenVMS
Integration Technologies, Partners and Products
Data
Components
Applications
Web Services
Message Queuing and Caching
What are our customers doing and what we are doing to help
Questions and answers
SOA Concepts: SOA Concepts Understand the core concepts of SOA
Understand how SOA can address various business and IT challenges
Understand the role some standards and technologies play in implementing SOA
Be familiar with some common approaches to implementing SOA
Pressures on the business… this is not new!: Pressures on the business… this is not new! Continuous business transformation Evolving business objectives Changing markets New demands Satisfying unpredictable needs Business agility
… customers want and need agility: … customers want and need agility Change event Business process change Application service change Infrastructure service change Lag! Lag! Time Change event Business process change IT synchronize change Business objective Time Time to agility and business benefits What they have What they want Business objective Lag!
Enterprise Application Traits (today): Enterprise Application Traits (today) Big, monolithic and expensive
Not designed for reuse as services
Inter application is hard – so many standards
Synchronous (RPC)
DCE, DCOM, CORBA, Java RMI, CICS DPL, RDBMS stored procedures
Asynchrnous (Messaging)
Tuxedo ATMI, MQSeries, Java JMS, CICS TDQs, TIBCO
Difficult to change due to tight integration
Proprietary and difficult to integrate
Suited to a vendor-specific platform
Developed and enhanced over many years – they become entrenched, legacy.
Technology carries too much weight in business decisions
Abstract for Agility : Abstract for Agility 2. Loosely-coupled, open interfaces User Interface Client Hardware & OS 1. Tightly-coupled, proprietary interfaces 3. Driven by the Web application platform
Database
Application Web
Platform Active Adaptability
CIO balancing act—SOA drivers: CIO balancing act —SOA drivers Mitigate risk:
Ensure security, continuity of business operations
Reduce impact of technology implementation on people and process
Enable regulatory compliance Maximize return:
Lower costs of maintaining heterogeneous environment
Reduce complexity
Reduce cost of change Improve performance:
Improve IT’s ability to respond to changing business needs
Improve customer satisfaction
Link and extend value chain Increase agility:
Drive higher levels of reuse
Improve response to business demands
Enable business to respond to changing markets and competitive pressures
SOA is not new! Why has it been difficult to date?: SOA is not new! Why has it been difficult to date? Unfortunately most applications lacked the modularity to present functions as services
Programmer’s meet schedules with tightly integrated code, undermining services architecture
Integration & Reuse is inherently difficult
Different developers
Different places
Different schedules
Different data sources
Different models
In The News Recently (Oct. 2005): In The News Recently (Oct. 2005) Linda Price, GM of IT for Fairfax
“Ultimately, what I want to produce is an IT strategy that will enable us to respond with agility and flexibility to what’s happening in the market - and at the moment, in our market, there’s likely to be substantial change. The business could be called upon to re-invent itself,”
Ian Graham, CIO at Macquarie Bank
Hired to lead the transformation of the 700-strong IT department into a service-oriented, customer-focused group.
Michelle Tredenick NAB CIO (on integrating CRM)
But, with disasters such as the aborted Integrated Systems Implementation project and the massive write-down fresh in its memory, the NAB has taken a big broom to its IT strategy, promising a new era that ties technology projects tightly to the business and is devoid of "big bang" initiatives.
NAB has also introduced new governance for projects, which involves improving the skills of project managers, setting up a steering committee to approve investments and killing projects where required.
"Our underlying core banking systems are actually quite adequate,“
"They are quite robust. But what has happened over the years is that there have been lots of functions added to them and lots of pieces of business functionality that have been put in there that probably belong in different parts of the architecture.
For the NAB, flexibility means speedier development of new products and shorter turnaround times for products such as loans.
"That's what we think will really hit the bottom line,"
Slide11: Is an architectural style that provides a framework through which organizations describe services and their behaviour The change from an object-oriented system to a service-oriented one is an evolutionary idea stemming from the Internet and Web system SOA is an approach to enterprise architecture that abstracts IT functionality into business-oriented Services. Service-Oriented Architecture
Is the evolution of [Web]
applications into service-
oriented components with
Web Services.
Services are at the centre of a SOA “SOA Governance: Reengineering IT Governance ZapFlash”,
By Jason Bloomberg, ZapThink, Document ID: ZAPFLASH-10272004
Key Elements of a SOA*: Approved Products, Technologies, and Facilities Web Services Platform *Understanding SOA with Web Services by Eric Newcomer and Greg Lomow, Addison Wesley 2005. Key Elements of a SOA*
SOA – Centred on Services: SOA – Centred on Services Services are:
Simple
Abstract
Platform independent
Service description
Identification, Interface, Behaviour
It does not describe implementation ―> promotes loose-coupling
Get me the order status The order status is… Service Consumer Service Provider
A service may have many operations: A service may have many operations New customer order Check order status Update order status Split order
Service composition: Service composition Services may be created through composition.
We can combine existing services to compose new ones. SOA
Principle Send message
to customer Get customer preference Validate
preferred channel Send
message
Process: Process Process is a fundamental part of SOA
A business process can be used to link together services to create new functionality. SOA
Principle Send message to customer Get customer preference Validate
preferred channel Send
message
Process: Process The business process then offers a service. Get customer preference Validate
preferred channel Send
message Send message to customer
Process: Process This process-based service can, in turn, be used in other services. Customer preferences
service Channel management service Comm.
service Send message to customer Send invoice to customer Customer invoice
service
Services may be shared: Services may be shared SOA
Principle Re-use ~ Sharing A result of loose-coupling is that services may be easily shared or re-used.
For example:
Tax calculation
Customer data management
Geographical locator Customer preferences
service Channel management service Comm.
service Send message to customer Send invoice to customer Customer invoice
service
Service Publication/Discovery: Service Publication/Discovery Services are placed in an enterprise service registry for publication.
The service registry holds service description information.
There are multiple (security controlled) views onto the service registry. SOA
Principle Export
Services Internal
Services Business
Services Infra-
structure
Services Service Registry
Dynamic service selection: Dynamic service selection Services may be selected at any time.
A service consumer may discover a service it needs according to a set of criteria
Price
Availability
Quality
Speed
Etc.
Service brokers may assist Map upload service Resolve at run-time All the world
$0.50 United States
$0.05 Western
Europe
$0.40 SOA
Principle
SOA shifts the way we think: SOA shifts the way we think
When not to use SOA?: When not to use SOA? Standardized platforms and technology
Rate of change is low
Tight-coupling
Visibility requirements are met/low
Real-time performance is critical Increased business agility
Greater capability visibility
Improved interoperability
Reduced cost of integration
Maximized re-use
Simplification Performance overhead
Increased design effort
Cost of change Contra-Indications
More In The News (Oct 2005): More In The News (Oct 2005) Australian Customs – Integrated Cargo System (Cargo system backdown, Simon Hayes OCTOBER 25, 2005)
The web-based Customs Interactive System was inadequate for larger brokers
Brokers said the government had not paid enough attention to small brokers and forwarders.
"We don't want to use the web system -- it's too slow,"
"We want to get the messages back through our system."
"Often it's not the technology that's the problem, it's the processes or the people“
Summary: SOA Core Principles: Summary: SOA Core Principles A service has a description
Identification, Interface, Behavior
Abstraction
Loose-coupling
Services may have operations
Services may be composed
Process uses services and may implement a service Sharing
Re-use
Publication
Discovery
Classification
Dynamic service selection
SOA is an architectural approach, centered around the concept of services
Service Infrastructure: Service Infrastructure
Slide27: Reusable Services Prescription Processing Process
Order Drug
image Get
order Get
patient Get
stock Plan
Orders Check
credit Drug
details XML Business Service Bus Transform
messages Process
Patient Process
Drugs Shop
Floor Info Production Control Reusable Technical Services Multiple applications sharing services Reusable Services
Key Component Layers of a SOA: Key Component Layers of a SOA Existing Data 3GL Components Exposed
As
[Web] Services Exposed
As
[Web] Services Service-oriented Architecture Service-oriented Architecture Screen Based
Integration JCA
Web Service Applications
Key Component Layers of a SOA: Key Component Layers of a SOA Existing Data Applications Screen Based
Integration JCA
Web Service 3GL Components Industry-
standard
protocols,
i.e.,
HTTP,
SMTP Industry-
standard
message
formats:
WSDL,
SOAP,
XML, MIME Service-oriented Architecture Service-oriented Architecture
Key Component Layers of a SOA: Key Component Layers of a SOA Existing Data Applications Screen Based
Integration JCA
Web Service 3GL Components Implementation
details hidden
from caller.
Data conversion
done according
to standard
schemas (W3C) Messages can
be synchronous
or
asynchronous.
With or without
notification or
attachments Service-oriented Architecture Service-oriented Architecture
Key Component Layers of a SOA: Key Component Layers of a SOA Existing Data Applications Screen Based
Integration JCA
Web Service 3GL Components Build composite
applications by
combining
multiple sources,
perhaps by
using an
Enterprise
Service Bus Use BPEL tools
to control the
flow through
the various
sources.
Could include
a Rules Engine. Service-oriented Architecture Service-oriented Architecture
HP Expands SOA Services: HP Expands SOA Services Comprehensive suite of service-oriented architecture (SOA) consulting services
Four worldwide competency centers to assist customers in planning, designing, implementing and managing SOAs to improve their business performance
Atlanta, Bangalore, India, Sophia Antipolis, France and Tokyo
HP offers the two critical elements for using SOA to run IT as a business:
management software and
professional consulting services.
Agenda: Agenda Service-Oriented Architecture: Enabling an Adaptive Infrastructure for an Adaptive Enterprise
Web Services: where are we?
Software Development
…no integration without it…
On OpenVMS
On other platforms for OpenVMS
Integration Technologies, Partners and Products
Data
Components
Applications
Web Services
Message Queuing and Caching
What are our customers doing and what we are doing to help
Questions and answers
SOA Technology and Web Services: SOA Technology and Web Services One of the key reasons for the today’s focus upon SOA is the emergence of supporting technologies.
SOA is an architectural approach, centered around the concept of services
SOA ≠ Web Services
SOA can exist without Web Services
Web Services can be utilized without an SOA
Using web services can significantly enhance our ability to implement SOA A common source of confusion
Web Services: Where are we?: Web Services: Where are we? What is a Web Service?
Based on well defined industry standards
Promotes loose-coupled connectivity
Can be synchronous or asynchronous
Is platform agnostic and Vendor Independent
Java, .NET, LAMP, home-grown
Provide integration at service level
Connectivity defined by www.WS-I.org
Base Web Service Standards *(aka First Generation Web Services): SOAP Simple Object Access Protocol
WSDL Web Services Description Language
UDDI Universal Discovery, Description, Integration Base Web Service Standards * (aka First Generation Web Services) Connect via SOAP Describe via WSDL Publish via UDDI Find via UDDI Service Provider Service Consumer Service Registrar From CBDI Forum: http://roadmap.cbdiforum.com/reports/
Base Web Service Standards: Base Web Service Standards SOAP – Simple Object Access Protocol
Standard packaging structure for XML doc transport
Transport over, for example, SMTP, HTTP, FTP, Jabber, etc.
Also defines encoding and binding standards for non-XML RPC invocations
EJBs can be exposed through SOAP and so can .NET components
WSDL – Web Services Description Language
XML technology that describes the interface to a Web service in a standardized way
Describes I/O parameters of an invocation externally
Describes service protocol binding
UDDI – Universal Description, Discovery, and Integration
Registry of available Web services (worldwide)
Used for advertising, discovering and integrating Web services
What else is needed?(beyond First Generation Standards): Asynchronous,
could take weeks! Call to external entity Company might
go out of business! What else is needed? (beyond First Generation Standards)
UDDI, SOAP, WSDL – Just the Beginning : UDDI, SOAP, WSDL – Just the Beginning What other Services are Required by Enterprise Applications?
Security
Context & Transaction Management
Business Processes
Reliable Messaging
Policies
Notification
Management
These are the Second Generation Web Services
Many Specifications Define these Services
Web Services Architecture: Web Services Architecture
Engaging a Web Service*: Engaging a Web Service* * http://www.w3.org/TR/2004/NOTE-ws-arch-20040211/
(Simple) Web Service Interaction: (Simple) Web Service Interaction UDDI Registry Application SOAP Processor Discrete
Business
Logic Service [HTTP] Request [HTTP] Response
Current Web Service Protocol Stack*: Current Web Service Protocol Stack* * http://roadmap.cbdiforum.com/reports/protocols/images/figure2.gif
Extended Web Service Standards: Extended Web Service Standards
Extended Web Service Standards: Extended Web Service Standards Web Services Distributed Management
OASIS WSDM definition:
“define web services management, including using web services architecture and technology to manage distributed resources. This Technical Committee will also develop the model of a web service as a manageable resource”
WSDM compliant Web Services and platforms will offer a standard WSM interface
Management Of Web Services (MOWS)
Management Using Web Services (MUWS) Reliability and Messaging
Extended Web Service Standards: Extended Web Service Standards Security
WS-Security – provides message-level security on an end-to-end basis for Web Services messages
XML Encryption – provides confidentiality using a variety of encryption algorithms, ensuring reception of unchanged messages
XML Signature – using a variety of encryption and signature mechanisms, ensures messages are not tampered with and are received once and only once
Extended Web Service Standards: Extended Web Service Standards Metadata
XML Schema – message typing and structuring
WSDL – associates messages and exchange patterns with service names and network addresses
WS-MetadataExchange – queries and discovers metadata associated with Web Service. Can also fetch a WSDL file and the associated WS-Policy definition
WS-Policy – Associating QoS requirements with WSDL definition. WS-Policy includes declarations for security, transactions and reliability
Extended Web Service Standards: Extended Web Service Standards Messaging
SOAP - Simple Object Access Protocol
Provides the definition of the XML-based information which can be used for exchanging structured and typed information between peers in a decentralized, distributed environment
WS-Addressing – enables messaging systems to support message transmission in a transport-neutral manner through networks that include processing nodes such as endpoint managers, firewalls, and gateways
WS-Reliability – designed to ensure reliable delivery of SOAP messages using unreliable transports such as HTTP
WS-Coordination - Describes an extensible framework for providing protocols that coordinate the actions of distributed applications
Extended Web Service Standards: Extended Web Service Standards Web Services Orchestration
WS-Choreography
Business or other activities that involve multiple different organizations or independent processes that use Web service technology to exchange information
Long running business processes should also be transactional
Hours or days rather than sub-second intervals
May cross organizational boundaries
Supply chain and service aggregation scenarios
Locking is neither desirable or feasible
We need alternative techniques Start Check
Process
three
Process
four Finish
Process
one
Process
two Asynchronous,
could take weeks! Call to external entity Company might
go out of business!
Extended Web Service Standards: Extended Web Service Standards Transactions
WS-Composite Application Framework (WS-CAF)
Web Service Context (WS-CTX), a lightweight framework for simple context management
Web Service Coordination Framework (WS-CF), a sharable mechanism to manage context augmentation and lifecycle, and guarantee message delivery
Web Services Transaction Management (WS-TXM), comprising three distinct protocols for interoperability across multiple transaction managers and supporting multiple transaction models
two phase commit
long running actions
business process flows Start
Txn
Process
one
Process
two Commit
Txn
Extended Web Service Standards: Extended Web Service Standards Transactions
WS-AtomicTransaction (WS-AT)
The coordinator accepts:
Commit
Upon receipt of this notification, the coordinator knows that the participant has completed application processing and that it should attempt to commit the transaction.
Rollback
Upon receipt of this notification, the coordinator knows that the participant has terminated application processing and that it should abort the transaction.
The initiator accepts:
Committed
Upon receipt of this notification, the initiator knows that the coordinator reached a decision to commit.
Aborted
Upon receipt of this notification, the initiator knows that the coordinator reached a decision to abort.
Extended Web Service Standards: Extended Web Service Standards World’s first Web Service transaction platform (HP-WST) released in 2002 by HP and Arjuna Technologies Ltd.
Formed in 2002 from Hewlett Packard Middleware Division
Long history in reliable distributed systems
Leading research in reliable distributed systems since 1985
Too Many Web Service Standards?: Too Many Web Service Standards? SCSI
USB
TCP/IP
BIOS
Sockets and plugs
TV and radio
Mobile phone
Fiber optic
X-Ray
CD player
Amplifier
Loudspeaker
… Lots of standards that we never even think of…
They just ‘work’!
Web Services: Why will they succeed?: Web Services: Why will they succeed? Universal Support
All vendors participating in standards work; interoperability defined by the WS-Interoperability consortium
Protocol not Platform
All WS define protocols, not platform or implementation
Low Product Costs
WS basic needs will be supported ‘for free’ as part of a platform or add-on to existing product; WS are not expensive to implement
Evolutionary
WS can be used to leverage existing infrastructure rather than ‘rip and replace’.
“If it’s not broken, don’t fix it!”
Business Oriented
WS address business needs and can be understood by the business person as well as the technologist. Especially true when WS are being exposed externally as ‘business functions’
What does Google say?*: What does Google say?* What applications can I create using Google™ Web APIs?
Some possibilities might include:
Issuing regularly scheduled search requests to monitor the Web for new information on a subject.
Performing market research by analyzing differences in the amount of information available on different subjects over time.
Searching via non-HTML interfaces, such as the command line, pagers, or visualization applications.
Creating innovative games that play with information on the Web. * From the Google™ Web APIs FAQ http://www.google.com/apis/index.html
Agenda: Agenda Service-Oriented Architecture: Enabling an Adaptive Infrastructure for an Adaptive Enterprise
Web Services: where are we?
Software Development
…no integration without it…
On OpenVMS
On other platforms for OpenVMS
Integration Technologies, Partners and Products
Data
Components
Applications
Web Services
Message Queuing and Caching
What are our customers doing and what we are doing to help
Questions and answers
Software Development: Software Development On OpenVMS:
Used to have Enterprise Toolkit for Visual Studio (V6)
Now replaced by NetBeans
DECset is still available for pure 3GL environments
Including Integrity
On other platforms:
Develop on 'platform of choice', test and deploy on OpenVMS using
“Distributed NetBeans” with remote code management and debugging
BEA WebLogic Workshop
jDeveloper
jBuilder
Eclipse
…
Software Development: Software Development NetBeans?
Sun-Sponsored Open-Source Integrated Development Environment
100% Java – runs anywhere there’s a JVM
Feature-rich, drag-n-drop GUI creation, JSPs, Web services
Extensible
Supports other languages (C/C++, XML, HTML, FORTRAN, COBOL*, Pascal*)
Support for CMS
CVS client
Ant (multiple platform builds from one build definition file)
Software Development – Distributed NetBeans: Software Development – Distributed NetBeans Allows any desktop (Windows, Linux, HP-UX, etc.) to be used to do remote OpenVMS development
NetBeans is an open-source Java-based integrated development environment that runs on many platforms
Distributed NetBeans runs on the non-OpenVMS desktop, provides remote file access (using FTP or SMB) and operations on the OpenVMS machine
We provide remote compilation and editing (Java, C/C++, COBOL, Fortran, Pascal, Basic, DCL, MMS, and Bash SH), as well as error navigation, remote execution, and eventually debugging
OpenVMS services are provided by the IDE Server on OpenVMS
Also provides remote Ant and remote CMS operations
Distributed NetBeans: Distributed NetBeans DCL Commands DCL Command Output FTP transfers or SMB file access OpenVMS Alpha or Integrity HP Desktop Computer
Agenda: Agenda Service-Oriented Architecture: Enabling an Adaptive Infrastructure for an Adaptive Enterprise
Web Services: where are we?
Software Development
…no integration without it…
On OpenVMS
On other platforms for OpenVMS
Integration Technologies, Partners and Products
Data
Components
Applications
Web Services
Message Queuing and Caching
What are our customers doing and what we are doing to help
Questions and answers
Data Integration Technologies and Products: Data Integration Technologies and Products
Attunity Data Integration Products: Attunity Data Integration Products Data Access & Adapters Data Federation Change Data Capture Attunity Server and Metadata Relational Legacy Apps EII ETL / DW / BI EAI Enterprise Data Sources Define,
Control,
Manage
Attunity Connect – Functional Architecture: Attunity Connect – Functional Architecture Relational Legacy Apps Native
Adapter SQL
Query Processor XML
Service Processor SQL
Query Governor XML
Event Services ODBC JDBC ADO.NET Web Services JCA COM, .NET MS BizTalk BEA WebLogic Oracle AS
Attunity Federate – Functional Architecture: Attunity Federate – Functional Architecture Relational / DW Legacy Apps Portals Business
Intelligence Composite
Applications Metadata Distributed
Federation Engine SQL and XML
Interfaces Distributed
Transaction Mngr Virtual DB
Federated DB
Segmented DB Adapters
Attunity Stream – Functional Architecture: Attunity Stream – Functional Architecture Relational Legacy Apps Change
Capture ETL BAM EAI / ESB SQL
Change Publisher XML
Change Publisher Event Warehouse
Comprehensive Enterprise Data Support: Comprehensive Enterprise Data Support
Oracle
DB2
Sybase
Informix
Ingres
SQL Server
Rdb
SQL/MP
DBMS
VSAM
IMS/DB
Adabas
QSAM
Enscribe
RMS
C/D ISAM
Flat Files
Delimited Text
CICS
IMS/TM
Pathway
Tuxedo
Natural
COBOL
RPG
C
Any other 3GL Data Integration
Universal Connectivity: Universal Connectivity
ODBC
JDBC
OLE/DB
ADO
ADO.NET
JCA
.NET
COM
XML/HTTP
Web Services (SOAP/WSDL)
MS BizTalk
BEA WebLogic
Oracle AS
BO Data Integrator Data Integration
Enterprise Platform Support: Enterprise Platform Support
NT
XP
Server 2000
Server 2003
HP/UX
Solaris
AIX
HP Tru64 Unix
DG-UX
Linux
OpenVMS
OS/400
OS/390
z/OS
HP NonStop NSK Data Integration
Agenda: Agenda Service-Oriented Architecture: Enabling an Adaptive Infrastructure for an Adaptive Enterprise
Web Services: where are we?
Software Development
…no integration without it…
On OpenVMS
On other platforms for OpenVMS
Integration Technologies, Partners and Products
Data
Components
Applications
Web Services
Message Queuing and Caching
What are our customers doing and what we are doing to help
Questions and answers
Component Integration Technologies and Products: Component Integration Technologies and Products
Slide72: Component Integration – HP BridgeWorks (OpenVMS Alpha only) Wraps callable 3GL applications
Handles all languages adhering to the OpenVMS Call Standard (including Pascal, BASIC, Fortran, C, COBOL, DIBOL, ADA, C++, …)
Automates process using compiler generated ANA files
Exposes 3GL programs as COM objects, JavaBeans or Enterprise JavaBeans
Wraps callable ACMS Tasks*
Generates multi-threaded agent
(provides access to SignIn, SignOut, Extended Status, and ACMS Application Name)
Automates process using ACMS compiler generated** STDL files
* Java™ based connections only ** Requires ACMS V4.2+
Slide73: Wraps DCL Procedures as routines
Allows passing in parameters and passing back a return value
For example:
wrap a DCL procedure and invoke it from a VB program – the DCL procedure writes the results of the execution to a log file
Provides generic wrapping of OpenVMS based Files
Returns contents as a String
For example:
wrap the log file produced by the above DCL procedure and 'read' it to check the results of the invoked command procedure HP BridgeWorks - Features
HP BridgeworksApplication Model - Overview: HP Bridgeworks Application Model - Overview Components in green you supply, BridgeWorks provides/generates the rest Client Your Application OpenVMS
Application Model - Simple: Application Model - Simple Components in green you supply, BridgeWorks provides/generates the rest Client Your Application JVM Java™ Bean Alpha/OpenVMS V7.2-2+
Application Model - Distributed: Application Model - Distributed Components in green you supply, BridgeWorks provides/generates the rest Client BWX MC Alpha/OpenVMS V7.2-2+ W2000 / Windows XP JVM IPC IPC BWX SC Your Application OpenVMS Alpha/OpenVMS V7.2-2+ JavaBean & IPC*
*IPC (Inter-Process Communication) can be either RPC and/or ICC
Application Model – EJB Distributed: Application Model – EJB Distributed Components in green you supply, BridgeWorks provides/generates the rest Client BWX MC Alpha/OpenVMS V7.2-2+ W2000 / Windows XP JVM EJB & IPC IPC JVM J2EE Platform = … IPC BWX SC Your Application OpenVMS Alpha/OpenVMS V7.2-2+
Application Model - Complex: Application Model - Complex Components in green you supply, BridgeWorks provides/generates the rest JSP BWX MC Tomcat Apache,Tomcat, WebLogic EJB & IPC IPC JVM J2EE Platform = … Apache Internet JVM IPC BWX SC Your Application OpenVMS Alpha/OpenVMS V7.2-2+ Alpha/OpenVMS V7.2-2+ W2000 / Windows XP
Application Model – COM Version: Application Model – COM Version Components in green you supply, BridgeWorks provides/generates the rest IPC IPC COM Client BWX MC BWX SC Your Application OpenVMS Alpha/OpenVMS V7.2-2+ COM & IPC Alpha/OpenVMS V7.2-2+ W2000 / Windows XP
ACMS Application Model: ACMS Application Model Modular Applications With a TP-Specific Programming Language Presentation Functions ACMS Task:
Transaction, Flow Control Processing Functions Displays VT Screens based on
DECforms: IFDL C, COBOL, FORTRAN, ... Rdb: SQL ACMS: TDL Task Definitions Databases Files ...
ACMS, HP BridgeWorks and BEA Weblogic Server: ACMS, HP BridgeWorks and BEA Weblogic Server Processing Functions Displays DECforms: IFDL C, COBOL, FORTRAN, ... Rdb: SQL ACMS: TDL Task Definitions Databases Files ... Modular Applications With a TP-Specific Programming Language ACMS Task:
Transaction, Flow Control
HP BridgeWorks and ACMS: HP BridgeWorks and ACMS ACMS Task (Txn.) imported by BridgeWorks from ACMS meta-data automatically
HP BridgeWorks and ACMS: HP BridgeWorks and ACMS ACMS Task (Txn.) 'attributes' displayed by BridgeWorks
BEA WebLogic Workshop with ACMS: BEA WebLogic Workshop with ACMS ACMS Tasks 'imported' from EJB generated by HP BridgeWorks
BEA WebLogic Workshop with ACMS: BEA WebLogic Workshop with ACMS ACMS Task 'methods' for invocation by WebLogic Server
Agenda: Agenda Service-Oriented Architecture: Enabling an Adaptive Infrastructure for an Adaptive Enterprise
Web Services: where are we?
Software Development
…no integration without it…
On OpenVMS
On other platforms for OpenVMS
Integration Technologies, Partners and Products
Data
Components
Applications
Web Services
Message Queuing and Caching
What are our customers doing and what we are doing to help
Questions and answers
Application Integration Technologies and Products: Application Integration Technologies and Products
Application Integration: Application Integration Mainframe HP e3000 AS/400 Databases Custom/
Packaged Apps Target Applications
& Tools
Reuse legacy functions in new ways Adapters
Abstracts host logic & data
into components Interfaces
.NET, COM, Java,
EJB, Web-services,
HTTP/XML, JMS
Composite Services
Combine components into high value services Components
Represent business functions or data elements OpenVMS
& UNIX OpenVMS adapters
Screen: Any VT-based application: All-in-1, FMS, DECforms, TDMS, Cognos Powerhouse, 3GLs, SMG, …
Data: RMS Files, RMS, Oracle Rdb, Oracle CDD Mobile
Web
Portals Packaged
Applications Integration
Brokers Development
Tools/IDEs Application
Servers
Application Integration: DecForms Components: getOrder(Cus) 3GL Components: getCus(Cus) RMS Data Tables: cusData(Cus) Application Integration Verastream Integration Broker Repository 3270 Components: getSupp(Supplier) ACMS Components: getDetail(Order) Rdb Tables: suppData(Supplier)
Application Integration: Application Integration Existing
applications,
components &
databases Reusable business components Composite Application encapsulating existing business functions (screens), components and data. Allows reuse and helps accelerate new application development “Composite application”
components getCus(Cus){
// some code…
} Orcl RMS Rdb VMS NT U*X New
“Composite application”
WRQ Verastream Architecture: WRQ Verastream Architecture Verastream Procedures Session Services Adapters Verastream Interfaces JavaBean COM JSP ASP / ASP.Net XML Web Services JMS BizTalk .Net Component JDBC Event Handlers Target Applications and Tools Web Applications Development Tools Packaged Applications Portals Integration Brokers Application Servers TN5250 TN3270 VTxxx HP/NSVT RMS
Files RMS/
Cobol RMS/
Datatrieve Web Svcs
JCA / XML HP
HP OpenVMS,
HP/UX, HP e3000, True 64 RDB Packaged
Applications
(SAP, Siebel, ..) Verastream Procedures Session Services Adapters Verastream Interfaces JavaBean COM JSP ASP / ASP.Net XML Web Services JMS BizTalk .Net Component JDBC Event Handlers Target Applications and Tools Web Applications Development Tools Packaged Applications Portals Integration Brokers Application Servers TN5250 TN3270 VTxxx HP/NSVT RMS
Files RMS/
Cobol RMS/
Datatrieve Web Svcs
JCA / XML HP
HP OpenVMS,
HP/UX, HP e3000, True 64 RDB IBM
zSeries, iSeries
Slide92: Components used by WRQ Verastream Application Integration OpenVMS Server BWX Addserver Component Verastream Services Daemon Claims Data Module DECForms Checking Model Deployed on VHI Server Verastream Java Classes Model Servlet Business Logic Windows/UNIX/ Linux Server Viewing (JSP) Controller Servlet Apache/ Tomcat Server Web Clients HTML/Javascript Components built with WRQ Verastream BWX Addexample CmathlibBean Authentication/ Shipping Component DECForms Checking Application RMS Data
Agenda: Agenda Service-Oriented Architecture: Enabling an Adaptive Infrastructure for an Adaptive Enterprise
Web Services: where are we?
Software Development
…no integration without it…
On OpenVMS
On other platforms for OpenVMS
Integration Technologies, Partners and Products
Data
Components
Applications
Web Services
Message Queuing and Caching
What are our customers doing and what we are doing to help
Questions and answers
Web Services Integration: Web Services Integration
This just in…: This just in…
Web Services Integration Toolkit: Web Services Integration Toolkit Succeeds HP BridgeWorks on Alpha and Integrity
Is a set of integration tools based on Open Source tools and standards
Is focused on integration at the API-level
Calls routines written in 3GL languages, e.g.,
‘C’, COBOL, BASIC, FORTRAN or
ACMS Tasks
From
Java, Microsoft .NET, Web Services
Deployment descriptor specifies where 3GL routine to be run:
In-process, i.e., in the same process as Web application container
Out-of-process, i.e., in a separate OpenVMS process managed by the WSIT runtime
WSIT vs Bridgeworks: WSIT vs Bridgeworks Consider WSIT as the next generation of Bridgeworks
Web Services Integration Toolkit: Web Services Integration Toolkit Steps to follow:
Prepare 3GL module using WSIT toolkit, e.g.,
Remove terminal I/O; ensure can be linked as a shareable image
May be necessary to write a wrapper for the old code
Write a client to test the new interface
Determine whether in-process or out-of-process
Web Services Integration Toolkit: Web Services Integration Toolkit Create XML IDL file (on Integrity) using OBJ2IDL for 3GL or STDL2IDL for ACMS
Validate XML IDL file using VALIDATE
Generate components using IDL2CODE
Call generated JavaBean using technology of choice, e.g., Apache Axis, Apache Tomcat, BEA WebLogic Server, ‘P’ language, etc.
Web Services Integration Toolkit: Web Services Integration Toolkit Two types of deployment:
1. In-process deployment occurs when the application and the client are called from the same process
Pros: Fastest return time for client calls to application. No overhead added by the WSIT runtime
Cons: A crash will bring down all components in the process (client and application server together with all other threads)
Web Services Integration Toolkit: Web Services Integration Toolkit Two types of deployment:
2. Out-of-process deployment occurs when the client and application are run in different processes
Pros: Typically scales better than in-process deployments. Allows the use of the WSIT runtime deployment properties
Cons: Adds complexity and overhead to every call
Web Services Integration Toolkit: Web Services Integration Toolkit Sessions
LIFETIME_SESSION: This is the default session type. The session begins when the applications Impl object is created and the session ends when the remove method is called
NO_SESSION: The session begins when a method call is made on the application and the session ends when that call returns. The lifetime of the session is a single method call
TX_SESSION: The session begins when the client logs into the application by calling the methods AcmsSignIn or OpenVMSLogin of the application Impl object. The session ends when the client calls the methods AcmsSignOut or OpenVMSLogOut
Web Services Integration Toolkit: Web Services Integration Toolkit Runtime configurations: Not reusable
Default configuration for all WSIT out-of-process applications
An application is not reusable when it can only be used for one client session; a new OpenVMS process is created for each session
Web Services Integration Toolkit: Web Services Integration Toolkit Runtime configurations: Sequentially reusable
An application is sequentially reusable when it is able to process more than one client session, but requires that exactly one session be active at a time
The application must initialize its state before processing the next client session; the OpenVMS process is kept in the system
Web Services Integration Toolkit: Web Services Integration Toolkit Runtime configurations: Concurrently reusable
An application is concurrently reusable when it can be called from multiple clients without regard to the order of the clients’ sessions
The application processes one client call at a time
Web Services Integration Toolkit: Web Services Integration Toolkit Runtime configurations: Concurrently reusable with multiple threads
An application is concurrently reusable and thread-safe when it can be called from multiple clients, at the same time, on multiple threads
Has to be written using thread-safe languages and methods
Agenda: Agenda Service-Oriented Architecture: Enabling an Adaptive Infrastructure for an Adaptive Enterprise
Web Services: where are we?
Software Development
…no integration without it…
On OpenVMS
On other platforms for OpenVMS
Integration Technologies, Partners and Products
Data
Components
Applications
Web Services
Message Queuing and Caching
What are our customers doing and what we are doing to help
Questions and answers
Message Queuing and Caching: Message Queuing and Caching
Message Queuing and Caching: Message Queuing and Caching
Other Technologies – Oracle Forms: Other Technologies – Oracle Forms Tools and Services to convert Oracle Forms to Java
Only Oracle authorized tool
Converts 85-95% of all forms
1-2 days per form from conversion to production
POC – 14 forms into demo in 6 days.
www.ciphersoft.com
SOA Technology Products Summary: SOA Technology Products Summary Service-oriented Architecture Existing Data Applications Screen Based
Integration JCA
Web Service 3GL Components Service-oriented Architecture
Agenda: Agenda Service-Oriented Architecture: Enabling an Adaptive Infrastructure for an Adaptive Enterprise
Web Services: where are we?
Software Development
…no integration without it…
On OpenVMS
On other platforms for OpenVMS
Integration Technologies, Partners and Products
Data
Components
Applications
Web Services
Message Queuing and Caching
What are our customers doing and what we are doing to help
Questions and answers
What are our customers doing?: What are our customers doing? Major healthcare company
Front-end
Windows with Vitria as the main business bus, along with XML and Web Services
JDBC also to be used to access the Oracle Rdb databases
Current VT screens (DECforms and TDMS) will be replaced over time by Web-based interfaces
Middle tier
OpenVMS middle tier with HP BridgeWorks, Apache Axis and Apache Tomcat or BEA WebLogic
Back-end
OpenVMS with ACMS, COBOL and Oracle Rdb
Communication between Vitria and ACMS via XML with Web Services
Current user population of 6,000
Database tier
OpenVMS on Integrity Server using Rdb Remote for native code access and Oracle JDBC native drivers for the Oracle Rdb databases
What are our customers doing?: What are our customers doing? Oracle Rdb OpenVMS
Alpha
ACMS OpenVMS
Alpha
ACMS
COBOL DECforms
TDMS ACMS Rdb Direct
What are our customers doing?: Internet/ Intranet What are our customers doing? Oracle Rdb Windows Vitria/Tomcat
WS, JSP
JDBC Web
Services OpenVMS
Integrity
JDBC
Rdb OpenVMS
Alpha
WS
Axis
Tomcat OpenVMS
Alpha
ACMS
COBOL JDBC Rdb Remote Rdb Direct BridgeWorks
What are our customers doing?: What are our customers doing? Major media company
Front-end
Windows with SeeBeyond ICAN as the main business bus, along with XML and Web Services
Middle tier
OpenVMS middle tier with HP BridgeWorks, Apache Axis and Apache Tomcat or BEA WebLogic
Back-end
OpenVMS with ACMS, COBOL and Oracle Rdb
Communication between SeeBeyond and ACMS via HP BridgeWorks and later Web Services
Very large user population (17 million subscribers and growing)
Database tier
Currently OpenVMS on Alpha (GS1280s)
Looking toward Integrity Servers using Rdb Remote for native code access and Oracle JDBC native drivers for the Oracle Rdb databases
What are our customers doing?: What are our customers doing? Oracle Rdb OpenVMS
Alpha
ACMS
OpenVMS
Alpha
ACMS
COBOL ACMS Rdb Direct DECforms
TDMS
What are our customers doing?: What are our customers doing? Oracle Rdb Windows SeeBeyond
WS
JavaBeans
JDBC Web
Services BridgeWorks OpenVMS
Integrity
JDBC
Rdb OpenVMS
Alpha
Axis
Tomcat OpenVMS
Alpha
ACMS
COBOL JDBC Rdb Remote Internet/
Intranet Rdb Direct BridgeWorks
What are our customers doing?: What are our customers doing? Travel booking system
Linux front-ends with JBoss, XML and Web Services
Using Open Travel Alliance (OTA) XML messaging
OpenVMS middle tier with HP BridgeWorks, SOAP Toolkit V2 (Axis) and Apache Tomcat
OpenVMS back-end with ACMS, COBOL and Oracle DBMS (CODASYL)
Communication between JBoss and ACMS via XML with Web Services
Starting production early in 2005
Customer has agreed to testimonial
What are our customers doing?: What are our customers doing? Oracle DBMS OpenVMS
Back-end ACMS
COBOL OpenVMS
Middle Tier Axis
Tomcat MySQL Linux
JBoss
WS Web Service
files Internet Web
Services Bridge
Works
What are our customers doing?: What are our customers doing? Pharmacy distribution and shipping
Windows Server 2003 front-ends with VB.NET, XML and Web Services
OpenVMS middle tier with HP OpenVMS mailboxes, SOAP Toolkit V2 and Tomcat
OpenVMS back-end with COBOL and RMS, Oracle 9i being introduced
Communication between .NET and COBOL via XML with Web Services
Starting production with phase I in Feb., 2005
Customer has agreed to do a testimonial
Slide122: Reusable Services OpenVMS
Application COBOL OpenVMS
Middle Tier Axis
Tomcat Windows VB.NET
WS Intranet VMS
Mail-
box Web
Services Prescription Processing Process
Order Drug
image Get
order Get
patient Get
stock Plan
Orders Check
credit Drug
details XML Business Service Bus Transform
messages Process
Patient Process
Drugs Shop
Floor Info Production Control Reusable Services Multiple applications sharing services Reusable Services
Agenda: Agenda Service-Oriented Architecture: Enabling an Adaptive Infrastructure for an Adaptive Enterprise
Web Services: where are we?
Software Development
…no integration without it…
On OpenVMS
On other platforms for OpenVMS
Integration Technologies, Partners and Products
Data
Components
Applications
Web Services
Message Queuing and Caching
What are our customers doing and what we are doing to help
Questions and answers
Available Services from HP OpenVMS: Available Services from HP OpenVMS OpenVMS eBusiness Lab
Complementary Resources and Services
Technology Seminars
What we are doing to help: What we are doing to help
Located in HP’s Nashua, New Hampshire, USA, facility
Systems can be accessed locally or remotely
Latest Alpha and Integrity Servers are available
Systems are configured with the latest eBusiness technology on OpenVMS including Web server (Apache), middleware, application servers, Java and database systems
What we are doing to help: What we are doing to help Two day workshops to evaluate the current environment and plan for transition and integration
Consulting expertise centers jointly staffed with HP and Intel experts
Worldwide porting centers for validating ISV and custom applications on Itanium™ processor family systems
On-line support including “test drive” systems for application testing over the net
Comprehensive portfolio of white papers with “how to” transitioning information
What we are doing to help: What we are doing to help Available for delivery anywhere, anytime
Customizable for specific technologies
Can be tailored for specific customers
Can be delivered with partners
Available for delivery anywhere, anytime
Customizable for specific technologies
Can be tailored for specific customers
Can be delivered with partners
Architectural Workshop: Architectural Workshop January 15th – Day 1 10:00 Welcome and Introductions
10:15 Customer Presents
Business & Technical requirements regarding eCommerce Application / Environment and Goals
Current Architecture
Future Design
Implementation Prerequisites
Availability and Disaster Recovery Requirements today and future
12:00 LUNCH
1:00 Implementing Java based tiered solutions. Examples and best practices.
2:30 Discussion on Proposed Architecture
3:30 BREAK
3:45 Discussion on Architecture (continued)
4:30 Recap
5:00 Adjourn
Architectural Workshop (2): Architectural Workshop (2) January 16th – Day 2 9:00 Review Today’s Agenda and make any necessary modification
9:15 Tru64 and HP-UX Roadmaps
TruCluster and MC/ServiceGuard Architecture and Implementation Overview
Application Integration into a HA environment
Disaster Tolerance Solutions
11:15 BREAK
11:30 Review of overall HA architecture based on Customer design Implementation issues and product features required for Customer’s HA requirements
12:00 LUNCH (working)
2:00 Recommendation of Platform
2:30 Recap and Summary
3:00 End
Agenda eBusiness Seminar in Reading, UKThursday, 24 October, 2002: Agenda eBusiness Seminar in Reading, UK Thursday, 24 October, 2002
What we are doing to help ourselves: Business agility is a core requirement for today’s organisations
An adaptive IT infrastructure enables business agility
The application of Web Services & a SOA are a path forward
HP has done this before
HP is doing it now What we are doing to help ourselves
What we are doing to help ourselves: What we are doing to help ourselves The desired result:
Customers and partners interact with HP as one company
Products and solutions go-to-market through integrated, global supply chains
HP workforce operates as a single company
IT cost and complexity are reduced
Business performance improves Compaq/Digital/HP/Tandem: Biggest IT merger of all time
What we are doing to help ourselves: What we are doing to help ourselves Architecture Strategies Drive IT Transformation
Real simplification of IT environment
Radical reduction of IT infrastructure operating cost
Innovation instead of maintenance
What we are doing to help ourselves: What we are doing to help ourselves Achieved $3 billion in cost savings in 9 months
Delivered $1.3 billion in supply chain integration savings in first nine months, $1 billion more next year
e-business operations on a path to triple transaction volume by 2004
Reduced build-to-order PC manufacturing costs by 26%
Rolled out world’s largest, most complex PeopleSoft 8.0 e-HR installation
Reduced financial transaction processing costs by almost $20 million annually
Reduced and simplified applications portfolio from 7,000 to 5,000
Reduced overall IT costs by 24%
HP’s SOA Services – What we deliver: HP’s SOA Services – What we deliver Plan
Design
Build
Manage
Evolve SOA Pilot SOA Blueprint SOA Strategy and Vision SOA Concept SOA Agility Impact Service Applications Integration Applications Development Applications Consolidation SOA Operations Mgmt SOA Software Factory Mgmt HP C&I App & Infra., Services sales Web Services Design services & ICC specify roadmap ITSM V3 applied to SOA & WebServices Manage & Meter reuse to manage software as assets ROI of SOA/WebServices
Business dashboard Integration Comp. Center
SOA Design Service
SOA Implementation Service
SOA Lifecycle Management Service SOA Agility Impact
What we are doing to help: What we are doing to help Annotated list of Web Services
http://lists.w3.org/Archives/Public/www-ws-arch/2004Feb/0022.html
HP BridgeWorks
http://h71000.www7.hp.com/commercial/bridgeworks/bridgeworks_index.html
JAXTX provides an API for packaging and transporting ACID transactions
http://www.jcp.org/en/jsr/detail?id=156
OASIS¹ – Non-profit making organization promoting eBusiness standards
http://www.oasis-open.org/
A Framework for implementing business transactions on the Web
http://lists.oasis-open.org/archives/business-transaction/200103/pdf00001.pdf
OASIS Business Transaction Protocol Primer
http://www.oasis-open.org/committees/business-transactions/documents/primer/Primerhtml/BTP%20Primer%20D1%2020020602.html
Business Transactions in Workflow and Business Process Management
http://www.oasis-open.org/committees/business-transactions/documents/2001-07-12.BTPModelForWF2.doc
What we are doing to help: What we are doing to help The Tao of e-business services
http://www-128.ibm.com/developerworks/webservices/library/ws-tao/index.html
A Young Person's Guide to SOAP: Increases Interoperability Across Platforms and Languages
http://msdn.microsoft.com/msdnmag/issues/0300/soap/toc.asp?frame=true
Web Services Primer
http://www.capescience.com/education/primer/index.shtml
XMethods Utility Services
http://www.xmethods.com/
WSDL / SOAP Web Services Search Engine
http://www.salcentral.com/salnet/Webserviceswsdl.asp
Java Web Services – Using Java in Service-oriented Architectures (ISBN: 0-596-00269-6)
Understanding Web Services (ISBN: 0-201-75081-3)
Understanding SOA with Web Services by Eric Newcomer and Greg Lomow, Addison Wesley 2005
List of current Web Service standards
http://roadmap.cbdiforum.com/reports/protocols/summary.php
Contacts and Further Information: Contacts and Further Information
Slide139: Questions? OpenVMS eBusiness program office:
OpenVMS.eBusiness@hp.com
For more information:
http://h71000.www7.hp.com/eBusiness/
Thank you!: Thank you!
Appendix on Web Services: Appendix on Web Services See http://roadmap.cbdiforum.com/reports/protocols/summary.php for a summary of current WS standards
Service-level Abstractions of a SOA*: Service-level Abstractions of a SOA* Presentation Processes Services Components Business Data Interface Definitions Data Models Interaction Models Security Models Management Models WSDL
WS-Policy WSDL MEPs
WS-Reliability
WS-Notification XML WS-Security WSDM *Understanding SOA with Web Services by Eric Newcomer and Greg Lomow, Addison Wesley 2005.