Date post: | 26-Dec-2015 |
Category: |
Documents |
Upload: | matilda-hunter |
View: | 215 times |
Download: | 0 times |
Liant and the Web2003 Seminar
Series
Web Applications and Services
The Challenge
The Worldwide Web (Today)• Desktop User Agents (Browsers)• Common Language (HTML)• Universal Connectivity (Internet)• Server Locating Protocol (URI)• Information Servers (HTTP)
The Worldwide Web (Today)Used For:• Information Retrieval and Display• Order Entry (Business to Consumer)• Entertainment
The Worldwide Web (Tomorrow)• Location-free Computing
– Unrestricted application point-of-entry• Distributed Applications
– Application specific functions on desktop and [multiple] servers.
• Diverse Human Interface– Multi-sensory (visual, audible, tactile)– Delivery (computer, phone, touch screen,
register, automobile, cable television)
Problems• Reliability
– Immature technology (“bleeding edge”)• Multiplicative probability of failure
(.75x.75x.75=.42) • Functional integrity (multiple skills=essential
complexity)– Malicious attack (targeted and blind)
Problems• Cost
– Diverse skills needed• Demand• Quality
– Legacy integration or replacement– Limited pass-thru ability– Short useful lifetime
• Rarely greater than 3 years• Often less than development time!
Problems• Time-to-market
– Conflicting factors• needed quickly• new skills required• invention on a timetable (never a good idea!)
• Vendor Conflict– Major players – you are in the middle, or
worse ...– Ringside at a sumo match
Could Be Dangerous!
Solutions?• Buy application, rather than build it
– Bounded cost– “Immediate” result– Little or no proprietary competitive advantage– Dependence on yet another vendor (often small)– Approximate fit– Might not be a choice
• Outsource entire function– Usually expensive– No proprietary advantage– Recurring expense
• P.O.R. (“press on regardless”)• Something else?
Solution!
Liant’s Xcentrisity™ solution!• Business Information Server• RM/COBOL + XML• Cobol-WOW w/Browser Extensions• Consulting Services
Xcentrisity™
Real Applications Powering The
Web
Our Belief, Our Focus, Our Goal• The World-Wide Web is the emerging
business application (super-)platform• Our strategic focus has always been on
removing the platform variable from commercial application development and deployment
• Xcentrisity is Liant’s system (methodology) for utilizing the worldwide web and its technology to build and support the next generation of commercial applications and services.
What Is Xcentrisity?• A System for Providing Web
Applications and Services– Consistent – Reliable– Enabling
• Dynamic– Tracking state-of-the-art– Open-ended
• Real Modernization
Characteristics of an Xcentrisity Solution• Utilizes Open Standards
– XML, HTTP, HTML• Leverages Open Source
– Gnome, Apache, Gnu• Targets Key Platforms
– Windows/UNIX/Linux– IBM, HP, Sun, Intel
• Broad Functionality
The SolutionProblem An Xcentrisity Solution
Reliability •Proven logic•Secure infrastructure
Cost •Incremental functionality•Evolutionary development
Time-to-market •Rapid “critical mass”•Minimal invention
Vendor conflict •Vendor neutral•Platform independent
The Hub: Business Information Server• Engine for web-based applications and
services• Extends web server
– IIS and Apache Initially• Seamlessly integrates RM/COBOL
logic• XML at the heart
Spoke: RM/COBOL + XML• Extended by XML Toolkit
– Enables XML data interchange– Enables BIS/COBOL integration
• Language Extensions– DATA DIVISION enhancements– LIKE operator– Selected 200X features
• InstantSQL• Contained within BIS
Spoke: Cobol-WOW• Browser-launched thin-client • <object> HTML element• Self deploying
– All necessary files transparently downloaded by MS ICD
• Requires IE 5+ browser and IIS 5+ server
• Runs under BIS
Spoke: Relativity• Relational data access• ODBC for UNIX/Linux• ODBC.NET Data Provider• Universal access
– Server-side scripts (ASP, PHP, etc.)– BIS applications (InstantSQL)– Client-side applications (WOW, Java)– Java applets– .NET managed applications
Consulting Services• Project assessment• Proof of concept assistance• Early-access product• Ongoing monitoring and advice• Whatever it takes
Xcentrisity
Consulting
Cobol WOW XML Toolkit
Relativity
RM/COBOL
BIS
Business InformationServerPowering
Xcentrisity
Business Information Server• Extends web (HTTP) server• Manages application sessions• Coordinates application interaction
with WWW infrastructure and other applications and services
• Includes web-enabled RM/COBOL runtime engine and XML support
• Exposes legacy business functions
Typical BIS Application
BIS
HTTPServer
App SessionApp Session
App Session
App Session
App Session
COBOLData
COBOL Program
Object
BIS Services• Serves designated URIs• Processes server-based file referenced by
URI as BIS Response File (or SRF)• Establishes and maintains user sessions
automatically• “Renders” the URI by copying SRF as
modified by {{tags}}• {{tags}} trigger key functions• {{tags}} control interaction with programs
Simple Stencil (Server Response File){{ handler * }}{{ RunProgram(Sample -v,xmlif.dll) }}<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd"><html> <head> <META http-equiv="Content-Type“ content="text/html; charset=UTF-8"> <META http-equiv="Content-Style-Type“
content="text/css"> <title>Liant BIS Web Application Sample</title> </head> <body> <h3>Liant BIS Program-driven Web Application
Sample</h3> <p>---Begin Application-Generated HTML Payload---</p> {{ XMLExchange(OnExit="goodbye.srf") }} <p>--- End Application-Generated HTML Payload ---</p> </body></html>
HTTP Server
(IISor
Apache)
BIS Session Manager
COBOLData
BISExchange
Data
Request
Response
BISServiceEngine
RM/COBOLApplicationProgram
WEB Server Service Instance
BIS Data Flow
Web Data
Application Input Pipeline
HTTPGET/POSTRequest
IIS/BISXML
ServiceRequest
COBOLRun UnitMemory
COBOLXML
Request
XSLTransform
IMPORT
Application Output Pipeline
COBOLRun UnitMemory
EXPORTXML
ResponsePayload
HTTPGET/POSTResponse
HTMLResponsePayload
XSLTransform
BIS/IIS
BIS Data Pipeline
HTTP
HTML,SOAP
Stencils
XSLT
XML
BIS Application (Typical Program Flow)• Starts when app URI is requested
(HTTP GET)• User Interaction:
– Responds with HTML (<form>)– Obtains HTTP POST request payload– Responds with HTML (<form>)– Obtains HTTP POST request payload– Etc.
• Terminates
BIS: Common Application Types • Program-driven application• Transform-driven application• SOAP-based service• Content provider service
Program-Driven Application• Service program controls most or all of
dynamic content, including visual layout and appearance
• Detailed “look and feel” provided by style sheets (CSS)
• Single point of control (the program)• Web design and application design
almost independent
Transform-Driven Application• Service program controls logic flow
and dynamic data content• Style sheets (XSLT) provide visual
layout and appearance, as well as determining data presentation and interaction with the user
• Control shared by program and web developer
SOAP-Based Service• No visual interface awareness in
program, style sheets, or server response file
• Program processes functional requests• Responses are XML (SOAP), not
HTML• State may be maintained between
requests
Content Provider Service• URI identifies dynamic content• Program processes request for
dynamic content (HTTP GET)• Program provides response payload
(may be HTML or XML, or neither)• Often used to provide partial results to
“outer layer” process• Does not use persistent session
Why BIS?• Fast, economical integration with
legacy application logic and data• Leverages most advanced technology
for practical business problems• Completely interoperable with all web
services and technologies• Opaque to application users and
technology partners• Safe and reliable
Why BIS?
BIS is the best way to deliver business functions and services on the web.
The RM/COBOL®
Tool SetBetter Than Ever,
Second to None
Active Products• RM/COBOL• XML Toolkit• BIS• Relativity• Cobol-WOW• InfoExpress
What do we consider?• Benefits
– Platform portability– Programming Efficiency– Interoperability– Reliability– Maintainability– Performance
Why Platform Portability?• Shield yourself from “Sumo” vendors• Focus on your application, not where it
runs• Platforms
– Windows– UNIX– The Web
Programming Efficiently• Development environments
– CodeWatch– WOW Designer– Relativity Designer
• Built-in functionality
Interoperability• Access to other languages
– C and C++– JAVA– SQL
• Access to Industry Standards– ODBC– XML– SOAP
Reliability• Proven logic
– your application already works• Data integrity
– Atomic I/O• Fast recovery when unavoidable errors
do occur• Clear, unambiguous error codes
What’s not to LIKE?• The LIKE operator
– Regular expression (”regxp”)– Allows any display item to be compared not to
just a single text value, but to a potentially infinite set of text values generated by a “pattern”
– box– Box|box– [bB]ox– .*[bB]ox.*– .*\s(([tT]ext)|([cC]at))\s([bB]ox).*
How do you manage your code?
Reduce your development and support efforts • Relativity Multi-file Support
– Create a single catalog with a single table– Point at multiple data files
• Cobol-WOW for UNIX now supports:– Character-based screens– Remote printing
Did you know?• Relativity’s Data Server
– Comes configured for X number of connections
– File access happens on the server– Only the records returned by a query
come back across the network– Can dramatically improve the
performance
The Right Tool for the Job• Web Applications
– BIS– Relativity– Cobol-WOW– Cobol-CGI
• Web Services– BIS
• Web Data Access– BIS– Relativity– Cobol-CGI
The Right Tool for the Job• Client/Server Applications
– Cobol-WOW– Relativity– RM/COBOL
• Client Server Data Access– Relativity
• Single Tier Applications– RM/COBOL– Relativity– Cobol-WOW
Made in America• RM/COBOL’s classic engine provides the muscle
to drive your application in a sleeker, more modern model…
Made for the Future
•The Information Highway—a.k.a.the Web
ConclusionReady for You