[email protected] brisbane, qld 4064...

35
© ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting PO Box 1243, Milton BC Brisbane, QLD 4064 www.asert.com.au [email protected] OR CONFESSIONS OF AN APPLICATION ARCHITECT

Upload: others

Post on 28-Sep-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 1

Dr. Paul King

ASERT Consulting

PO Box 1243, Milton BC

Brisbane, QLD 4064

www.asert.com.au

[email protected]

OR CONFESSIONS OF AN APPLICATION ARCHITECT

Page 2: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 2

TOPICS

About ASERT

History of Application Development & Integration

Best Practice Technology forB2C/B2B

Page 3: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 3

Specialists in Advanced Software Engineering, Research & TrainingSmall but dynamic consulting and training company based in BrisbaneClients include AT&T, Telstra, Optus, Convergys, Compaq, RSA, Oracle, BEA, Qld SMEs, Qld Govt & othersTechnologies: Java, EJB, CORBA, XML, Ecommerce, Internet Security, Linux/NTProducts: Oracle, RSA, BEA Weblogic, Sun, Inprise/Borland, Netscape, IBM

ABOUT ASERT

Page 4: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 4

To remain competitive, companies must:reduce time to marketreduce response times eliminate supply-chain inefficienciesimprove customer acquisition, retention and satisfaction

Requires direct real-time linkage with major trading partnersTraditional approaches such as EDI are not well-suited:

lack flexibility, error prone, not real timecostly and time-consuming to implement and run

Business Climate

Page 5: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 5

XML and eCommerce

XML is rapidly becoming the lingua franca of e-Commerce

According to IBM:� “In the business domain there will soon be specific

XML languages to describe orders, transaction, inventory and billing. These open XML languages will allow manufacturers, retailers, and consumers, even banking and accounting systems to share the same data.”

Page 6: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 6

XML & e-Commerce (cont’d)

BizTalkAn industry initiative started by Microsoft and supported by a wide range of organizations, from technology vendors like webMethods, SAP and CommerceOne to technology users like Boeing and BP/AmocoHas the goal of driving the rapid, consistent adoption of XML to enable electronic commerce and application integration

Defining the BizTalkFramework™, a set of guidelines for how to publish schemas in XML and how to use XML messages to easily integrate software programs together in order to build rich new solutions

Page 7: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 7

History of Application Development and Integration

Platform IndependentNetworking

PlatformIndependent GUI

Software IndependentData

Platform IndependentPrograms

Adapted fromSimon Phipps, IBM

Page 8: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 8

Confession #1

10 years ago I believed them when they told me they had found the best technology for building distributed systems: MessagingThis involved

Hand-crafted messagesMultiple transportsC-basedNo managementNo transactionsNo security

Page 9: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 9

Confession #28 years ago I believed them when they told me they had found the best technology for building distributed systems: DCEThis involved

Stub-marshaledstrongly-typedmessages from IDLTransparenciesC-basedNo managementLimited transactionsSome security

Page 10: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 10

Confession #36 years ago I believed them when they told me they had found the best technology for building distributed systems: CORBAThis involved

Stub-marshaledmessages from IDLTransparenciesObject-based (C++)No managementLimited transactionsLimited security

interface StockMarket{

float get_price(in string symbol);

};

Page 11: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 11

Confession #45 years ago I believed them when they told me they had found the best technology for linking enterprise systems: EDIThis involved

Specially-formattedmessagesTypically leased linesMyriad of standardsBurden on partnersLimited toolsLimited security

Page 12: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 12

Confession #54 years ago I believed them when they told me they had found the best technology for building distributed systems: Multi-tier CORBAThis involved

Marshalling, IDLAdditional transparencies:GUI, Business logic, Dataintegration logicC++-basedLimited managementSome transactionsSome security GUI Business

LogicData

Page 13: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 13

Confession #6

3 years ago I believed them when they told me they had found the best technology for building distributed systems: Web-based thin clientThis involved

Web serversLimited transparenciesCGI programs hackedtogetherHTML, Java AppletsLimited managementNo transactionsLimited security GUI Business

LogicData

Page 14: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 14

Confession #7

2 years ago I believed them when they told me they had found the best technology for building distributed systems: Application ServersThis involved

Combining best of webserver technology andmulti-tier CORBARich transparenciesHTML, Java Applets,Servlets, SSLUsable managementUsable transactionsUsable security

GUI BusinessLogic

Data

Page 15: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 15

Confession #8

1 year ago I believed them when they told me they had found the best technology for building distributed systems: EJB Application ServersThis involved

Best of applicationserver technologyRich transparenciesReal advancement towardsdistributed componentsDeclarative specificationof management, security,pooling and transactions GUI Business

LogicData

Page 16: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 16

Now the answer is XML

This involvesHand marshallingSimple messagingtransportsNo strong typingVB/Scripting supportNo managementNo transactionsNo security

What????Confession Time Again or Confusion Time?

GUI BusinessLogic

Data

Page 17: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 17

Is it just me?

CORBA Gurus“… HUH??? …”

Homer Simpson“… DUH!!! …”

Richard Soley“… biggest thing going on within OMG over the next 12

months is XML …”Chris Horn“… biggest thing for IONA to tackle over the next 12

months is XML …”Sun“… sorry we nearly missed the boat with XML but we will

rapidly catch up now …”

Disclaimer: all quotesexcept the first two

are paraphrased

Page 18: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 18

OMG Task Force Groups

CORBA Object Services

Horizontal CORBA Facilities

FinancialObjects

TransportationObjects

E-CommerceObjects

HealthcareObjects

TelecomObjects

ManufacturingObjects

Acco

untin

g

Ban

king

Insu

ranc

e

PDM

Vert

ical

Fac

ilitie

s

Tele

Net

wk

Mgm

t

Shop

Flo

or A

uto

ERP

Med

ical

MPI

Tele

Ser

vice

s

Stre

am C

ontr

ol

EC S

ervi

ces

E-Pa

ymen

t

Den

tal

Mar

ine

Rai

l

Offe

r Loc

/Tra

de

Inte

rmod

al

CORBA ORB

Page 19: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 19

Application Servers

ApplicationDevelopment

App

licat

ion

Inte

grat

ion

Adapted fromChris Horn, Iona

Page 20: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 20

Integration Servers

App

licat

ion

Dev

elop

men

tApplicationIntegration

Page 21: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 21

Typical Medium to Large Customers

ApplicationDevelopment

ApplicationIntegration

Page 22: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 22

Best Practice Technology for B2C/B2B

B2C

B2B

ApplicationIntegration

ApplicationDevelopment

Page 23: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 23

Client<FONT…><B>

Headline</FONT>

</B><BR>This is

the result of your

query:<TABLE>

<TR><TD>1.885

</TD></TR>

</TD>4.454</TD>

<TD>…

Web Server

CGI Program

SQL Dataset

SQL Query

Database

B2C - Traditional HTML Web Environment

1.8854.454

0.9537.817

Page 24: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 24

Refresher: XSL

XML Document

XSL Stylesheet

transformation formattingNew XML

format

Stylesheet Processor

Formatted output

Page 25: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 25

B2C with XML – Client Side BrowserTransformation & Rendering

Client

(Performs transformations and formatting:

XSL & CSS)

HTTP (+ SSL)

<?xmlstylesheet…?> <HEAD>Headline </HEAD> <SUMMARY> This is the result of your query: </SUMMARY> <TABLE> <TR><TD>1.885 </TD></TR> <TD>4.454</TD> <TD>…

XSL Processor

<Value1>1.885 </Value1> <Value2>0.953 </Value2> <Value3>4.454 </Value3> …

Web Server

Data Store

Query

XML Fragment

ServerServerServerServerClientClientClientClientApp Server

HTTP QueryServlet + JDBC

Servlet + SAX/DOM

EJBCOM+

CORBA

Page 26: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 26

B2C – Client Side Applet Multi Tier Environment

JavaClient

(Performs transformations and formatting:

XSL)

IIOP/RMI (+ SSL)

<?xmlstylesheet…?> <HEAD>Headline </HEAD> <SUMMARY> This is the result of your query: </SUMMARY> <TABLE> <TR><TD>1.885 </TD></TR> <TD>4.454</TD> <TD>…

XSL Processor

<Value1>1.885 </Value1> <Value2>0.953 </Value2> <Value3>4.454 </Value3> …

WebServer

Data Store

SQL Query

XML Fragment

ServerServerServerServerClientClientClientClient

App Server

HTTP QueryServlet + JDBC

Servlet + SAX/DOM

EJBCOM+

CORBA

Page 27: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 27

B2C with XML – Server SideTransformation & Rendering

Client

<?xmlstylesheet…?> <HEAD>Headline </HEAD> <SUJMMARY> <TABLE> <TR><TD>1.885 </TD></TR> <TD>4.454</TD> <TD>…

Web Server

XSL Processor

XML Fragment

Data Store

Query

(Viewer only–applies formating, but no transform

HTTP Query

<Value1>1.885 </Value1> <Value2>0.953 </Value2> <Value3>4.454 </Value3> …

Page 28: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 28

B2C – Support for Multiple Clients

DatabaseXML ParserXML

Document

XML ParserClientApplication

Server

Data can be served up as XMLregardless of ‘native’ format

Client

Middleware

Business LogicData integration

XML Parser

Client

Multiple views of the datacreated from the delivered

XML data

ClientApplication

XSLTProcessor

ClientApplication

Client

Page 29: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 29

B2C – Application Development Issues

Architecting Reusable ComponentsChange Management: UML design across EJB, JSP, HTML still needs further investigationApplication ManagementAll-in-one Ecommerce solutions are great provided they have APIs for evolutionCross platform GUI: Win32, DHTML subset? Java?Technologies: HTML, XML, Servlets, JSP, UML, Java, Java Beans, C++, EJB, CORBA, COM+, Application ServersProducts: early days for Ecommerce applications with XML support: Oracle’s iStore and IBM’s net.commerce have open Java APIs and are beginning to support XML

Page 30: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 30

B2C – Application Integration Issues

Consistent InterfacesWorkflow/Long-term TransactionsIntegrated Application ManagementTechnologies: HTML, XML, Servlets, JSP, Java, JDBC, C++, EJBs for wrappering, CORBA, COM+, Application ServersProducts: Forte conductor

Page 31: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 31

B2B – Typical Scenario

Source: webMethods

Page 32: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 32

B2B – Integration Server Architecture

JavaClient

XSL Processor

<Value1>1.885 </Value1> <Value2>0.953 </Value2> <Value3>4.454 </Value3> …

IntegrationServer

Data Store

SQL Query

XML Document

ServerServerServerServer

Data Store

XML or XSLprocessing

SAP

XML or XSLprocessing

MultipleCommunication

Formats

Multiple Data/AppAccess Mechanisms

Multiple XMLVocabularies

And custom tools

Long-termTransactions

& Security

Page 33: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 33

B2B – Application Development Issues

Similar to B2C issues but should design with Enterprise Portals & Marketplaces in mind

SecurityAPIsInternal and External integration

Technologies: Public Key Solutions, XML, Servlets, JSP, Java, EJB, CORBA, COM+, Application Servers

Page 34: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 34

B2B – Application Integration Issues

Workflow/Long-term TransactionsIntegrated Application ManagementCommunications ServicesDocument Handlers/ProcessorsVocabulary handlersDatabase AccessApplication Access: SAP, Peoplesoft, customisedInterorganisational Security

Page 35: enquiries@asert.com.au Brisbane, QLD 4064 ...svc034.wic023v.server-web.com/pubs/XMLConfessions/... · © ASERT Education XML & Enterprise Integration - 1 Dr. Paul King ASERT Consulting

© ASERT Education XML & Enterprise Integration - 35

B2B – Appl’n Integration Issues (cont’d)

To DTD or not to DTD?XML/EDI area is still fluid, need support for multiple protocols

XML: cXML, BizTalk, OAG, FpML, …RosettaNetEDIOBI (Open Buying on the Internet)

Technologies: XML, SSL, XSL, Java, JDBC, Application ServersProducts: webMethods B2B, eXcelon