Liant and the Web

Download Report

Transcript Liant and the Web

Liant and the Web
2003 Seminar
Series
The Challenge
Web Applications
and Services
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 Solution
Problem
Reliability
Cost
Time-to-market
Vendor conflict
An Xcentrisity Solution
•Proven logic
•Secure infrastructure
•Incremental functionality
•Evolutionary development
•Rapid “critical mass”
•Minimal invention
•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
RM/COBOL
Consulting
Relativity
BIS
Cobol WOW
XML Toolkit
Powering
Xcentrisity
Business
Information
Server
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
App Session
HTTP
Server
App Session
App Session
App Session
COBOL
Program
Object
COBOL
Data
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>
BIS Data Flow
WEB Server
HTTP
Server
(IIS
or
Apache)
Web Data
Service Instance
Request
BIS
Session
Manager
Response
BIS
Exchange
Data
BIS
Service
Engine
RM/COBOL
Application
Program
COBOL
Data
Application Input Pipeline
HTTP
GET/POST
Request
IIS/BIS
XML
Service
Request
XSL
Transform
COBOL
Run Unit
Memory
IMPORT
COBOL
XML
Request
Application Output Pipeline
COBOL
Run Unit
Memory
EXPORT
XML
Response
Payload
XSL
Transform
HTTP
GET/POST
Response
BIS/IIS
HTML
Response
Payload
BIS Data Pipeline
XML
XSLT
Stencils
HTML,SOAP
HTTP
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 Set
®
Better 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
Conclusion
Ready for You