Full HTML for

Basic foilset Distributed Objects and Portals for Earthquake Science

Given by Geoffrey C. Fox at GEM Meeting NPAC on June 24-25 99. Foils prepared June 24 99
Outside Index Summary of Material


Abstract and Overview
Portals to Computing and Business
  • Examples and Architecture of such a Portal
  • Multi-tier systems and Pragmatic Object Web
Role of XML in Portal Construction
  • Database and JDBC Middle Tier
Collaboration
Portal Programming
How to get High Performance in a multi tier model

Table of Contents for full HTML of Distributed Objects and Portals for Earthquake Science

Denote Foils where Image Critical
Denote Foils where HTML is sufficient

1 Object Models for Computational Science General Issues
2 Use of Java AND Distributed Objects in Computational Science
3 What's the Point I
4 What's the Point II
5 What's the Point III
6 What's the Point IV
7 Use of Java AND Distributed Objects in Computational Science
8 So What is a Portal?
9 Portals -- Continued
10 My Netscape Portal
11 Yahoo Portal to Stock Market Customized Displays
12 My Excite Specify Portal Content
13 Merrill Lynch Predictions Enterprise Information Portals
14 EIP Architecture and Different Components from Merrill Lynch
15 Building a Portal
16 Special Portals -- Computing I
17 Basic 3 Tier Computing Model
18 Object View of running a program
19 Special Portals -- Computing II
20 Portal to Earthquake Science 3-Tier Computing Architecture
21 Use of Java AND Distributed Objects in Computational Science
22 The 1998 3(Multi)-Tier Information System Architecture
23 Pragmatic Object Web Technology Model - I
24 Multi-Tier Client Server Service
25 Pragmatic Object Web Technology Model - II
26 Functionality of layers
27 Proxy -- Proxy -- Backend Capability
28 Basic Multi Tier architecture
29 Some caveats and comments
30 Use of Java AND Distributed Objects in Computational Science
31 More details on the implementation
32 Implementation of Front end
33 Implementation Continued I
34 Implementation Continued II
35 Databases versus XML?
36 xxxxxxML
37 ScienceML
38 Scientific Notepad
39 Use of Java AND Distributed Objects in Computational Science
40 XML used as a Template
41 XML Templates -- Example I
42 Resultant HTML Rendering
43 XML Templates -- Example II
44 Use of Java AND Distributed Objects in Computational Science
45 Collaboration using Tango-Interactive
46 Distance Learning with Tango
47 TangoInteractive Features and Strategy
48 SV2 + Tango Collaborative Visualization Architecture
49 SV2 + Tango Examples
50 Use of Java AND Distributed Objects in Computational Science
51 Implementation Architecture
52 Programming the Computing Portal
53 Use of Java AND Distributed Objects in Computational Science
54 Three Possible Implementations of CFD CSM Linkage

Outside Index Summary of Material



HTML version of Basic Foils prepared June 24 99

Foil 1 Object Models for Computational Science General Issues

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
GEM Tutorial June 24 99 Geoffrey Fox
Tom Haupt
NPAC
Syracuse University
gcf@npac.syr.edu
http://www.npac.syr.edu/users/gcf/gemcompsciencejune99/index.html

HTML version of Basic Foils prepared June 24 99

Foil 2 Use of Java AND Distributed Objects in Computational Science

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Abstract and Overview
Portals to Computing and Business
  • Examples and Architecture of such a Portal
  • Multi-tier systems and Pragmatic Object Web
Role of XML in Portal Construction
  • Database and JDBC Middle Tier
Collaboration
Portal Programming
How to get High Performance in a multi tier model

HTML version of Basic Foils prepared June 24 99

Foil 3 What's the Point I

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
There is a "philosophy/architecture" called building "Portals to X"
  • This is equivalent to building a complete customizable environment for X in terms of a web client interface and an "object web" middleware
There are distributed object technologies to label register and look up objects
  • CORBA COM Java WIDL (XML)
There is a language Java which is more productive than previous languages such as Fortran or C++
  • It is currently language of choice for all middleware -- whatever object model
  • In around 2 years it will achieve numerical performance similar to Fortran
There is a data structure metalanguage called XML which will allow the generation of application specific data specifications

HTML version of Basic Foils prepared June 24 99

Foil 4 What's the Point II

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
There are a set of services that are either
  • common to most portals such as "yellow-pages", "search data archives", security, collaboration, render XML to HTML for display
  • common to most computing portals such as "visualization", "seamless access to computers", "execute program with particular programming model"
  • specific to particular portal such as "filter SAR data"
One tries to construct "toolkit" and "template" for building portals
NCSA biology Workbench http://biology.ncsa.uiuc.edu was one of first computational portals
Gateway is one of most technically advanced portal toolkits with a specific chemistry instantiation

HTML version of Basic Foils prepared June 24 99

Foil 5 What's the Point III

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Java Grande at http://www.javagrande.org is a community activity to encourage use of Java in "real computing" and the necessary changes in Java infrastructure
Distance Education and Object web curricula may be found at http://www.npac.syr.edu/projects/admijune99/
Tango Interactive at http://www.npac.syr.edu/tango supports "synchronous" sharing of objects designed otherwise for asynchronous use
  • digital Audio -video conferencing, chat rooms, whiteboards, shared multimedia strems
  • web pages including forms and pointers
  • emacs, telnet, visualization have not been used in production
SV2 (Scientific Visualization -- the 2nd effort) is a Java3D visualization system supported by Tango 2
There are two versions of Tango: Tango 1.4 (production and supporting Netscape on UNIX and Windows) and Tango 2 (in alpha testing)
Internet Explorer will be supported on Tango 2 (September 1 99?)
Macintosh may be supported on Tango 2

HTML version of Basic Foils prepared June 24 99

Foil 6 What's the Point IV

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Using Tango? Best platform is Windows NT as Java/multimedia flaky on UNIX
  • Linux is quite popular
  • Need to correctly install multimedia hardware if used
  • Download Tango 1.4 plugin for Netscape 4.5. This is a simple install-shield on windows gotten from Run It! Button on Tango page
One has
  • a) On each client a Plugin for browser and perhaps helper applications (e.g. C++ audio-video teleconferencing) downloaded from Tango page as above
  • b) A Web Server for shared applications
  • c) A Java Server to coordinate collaboration -- Tango Server can also be freely downloaded. Use UNIX or NT
b) and c) can be defaulted to NPAC or set up specially for each community
Tango has a well defined API to allow any application to be shared if C++ Java or JavaScript
NPAC offers tutorials to users or system administrators

HTML version of Basic Foils prepared June 24 99

Foil 7 Use of Java AND Distributed Objects in Computational Science

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Abstract and Overview
Portals to Computing and Business
  • Examples and Architecture of such a Portal
  • Multi-tier systems and Pragmatic Object Web
Role of XML in Portal Construction
  • Database and JDBC Middle Tier
Collaboration
Portal Programming
How to get High Performance in a multi tier model

HTML version of Basic Foils prepared June 24 99

Foil 8 So What is a Portal?

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Portals to X are essentially the name for an Object web system where it is designed to address a particular application X
Portal to Syracuse University is by definition http://www.syr.edu
Portal to NPAC is http://www.npac.syr.edu
Portal to the world is http://www.yahoo.com/ or http://my.netscape.com/
Portal to latest news is http://www.cnn.com
Portal to computational chemistry is http://www.osc.edu/~kenf/theGateway/PSEactivities/CCM.html
Portal to stock trading is http://quote.yahoo.com/

HTML version of Basic Foils prepared June 24 99

Foil 9 Portals -- Continued

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
http://www.npac.syr.edu/restricted/ is a portal to NPAC internal information
http://www.ibm.com is the external portal to IBM for customers. There will also be an internal portal for IBM employees used to "run the company"
http://www.amazon.com is a portal to books (and more)
Kodak is interested in portals to family memorabilia
More generally a portal is a web entrance to a set of resources and consists of a mix of information, computer simulations and various services
For businesses portals generalize the concept of a a company Intranet and encompass domain of IBM main frames, Lotus Notes etc.
For computing, portals are called Problem Solving Environments

HTML version of Basic Foils prepared June 24 99

Foil 10 My Netscape Portal

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index

HTML version of Basic Foils prepared June 24 99

Foil 11 Yahoo Portal to Stock Market Customized Displays

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index

HTML version of Basic Foils prepared June 24 99

Foil 12 My Excite Specify Portal Content

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Market Value $6.6B
Annual Sales $154M
Annual Revenue Growth 210%

HTML version of Basic Foils prepared June 24 99

Foil 13 Merrill Lynch Predictions Enterprise Information Portals

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Area 1998 2002 CAGR
Content Management $1.2B $4.7B 40%
Business Intelligence $2B $7.3B 38%
Data Warehouse/Marts $.99B $2.6B 27%
Data Management $0.18B $0.36B 18%
Totals $4.4B $14.9B 36%
http://www.sagemaker.com/company/lynch.htm or
http://www.sagemaker.com/company/downloads/eip_indepth.pdf

HTML version of Basic Foils prepared June 24 99

Foil 14 EIP Architecture and Different Components from Merrill Lynch

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index

HTML version of Basic Foils prepared June 24 99

Foil 15 Building a Portal

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
We can identify a set of tools that enable the construction of portals
These are roughly equivalent to the tools needed to build a general application based on "object web technologies"
There is also an architecture (explained ad nauseam later) implying multi-tier systems with standard compliant interfaces
  • Object Web is Architecture standard for portals
A common portal architecture means that portals can be conveniently linked together
  • e.g. the 3 portals to biology, chemistry, and physics naturally form portal to science

HTML version of Basic Foils prepared June 24 99

Foil 16 Special Portals -- Computing I

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
So we can discuss some special portals
  • Real World Wide Web and Business Enterprise Intranets
  • Virtual University and Training
  • Science and Engineering Computing Environments
The latter include several projects aimed at harnessing the power of the web to do computing
  • These can be divided into those that harness web clients (as in Javelin++ at ACM Conference June 99)
  • And those than make networks of Web or distributed object servers
NPAC has focussed on networks of web servers and these fit the portal model well
However there is most computing power in collections of web clients

HTML version of Basic Foils prepared June 24 99

Foil 17 Basic 3 Tier Computing Model

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
A server accepts input and produces output
  • A Web Server accepts HTTP request and returns a web page
  • a Database Server accepts a SQL request and returns records selected from database
  • An Object Broker accepts IIOP requests to invoke methods of an "object" (e.g. run a program)
IIOP and HTTP are two common protocols (formats of control data) for inter program messages
A Web browser (Netscape or Microsoft) can access any server at "the click of a button" with data from user refining action

HTML version of Basic Foils prepared June 24 99

Foil 18 Object View of running a program

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Similar to invoking a web page
"CORBA" or "WIDL" (pure XML CGI specification) is just CGI done right ......
Object Broker
Fortran Simulation Code on Sequential or
Parallel Machine
Convert Generic Run Request into Specific Request on Chosen Computer
Fortran Program
is an Important
Type of Object
It can be built up from
smaller objects
e.g. Matrix
library could be an
object

HTML version of Basic Foils prepared June 24 99

Foil 19 Special Portals -- Computing II

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
But perhaps more interestingly computing portals involve building a web based problem solving environment to link together all the capabilities needed to compute
run programs and access dynamically status of jobs and computers -- in particular allow a uniform interface to running a given job on one of many backend compute servers
compile and debug programs
link diverse data sources with computations run on multiple backend machines
visualize results
web-based help systems and collections of related scientific papers
computational steering i.e. interacting with a job (change parameters) based on dynamic results such as visualized results
See http://www.osc.edu/~kenf/theGateway/ and http://www-fp.mcs.anl.gov/~gregor/datorr/

HTML version of Basic Foils prepared June 24 99

Foil 20 Portal to Earthquake Science 3-Tier Computing Architecture

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Application Integration
Visualization Server
Seamless Access
Collaboration
Security Lookup
Registration
Agents/Brokers
Backend Services
Middleware
Bunch of
Web Servers
and Object
Brokers

HTML version of Basic Foils prepared June 24 99

Foil 21 Use of Java AND Distributed Objects in Computational Science

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Abstract and Overview
Portals to Computing and Business
  • Examples and Architecture of such a Portal
  • Multi-tier systems and Pragmatic Object Web
Role of XML in Portal Construction
  • Database and JDBC Middle Tier
Collaboration
Portal Programming
How to get High Performance in a multi tier model

HTML version of Basic Foils prepared June 24 99

Foil 22 The 1998 3(Multi)-Tier Information System Architecture

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index

HTML version of Basic Foils prepared June 24 99

Foil 23 Pragmatic Object Web Technology Model - I

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Basic Vision: The current incoherent but highly creative Web will merge with distributed object technology in a multi-tier client-server-service architecture with Java based combined Web-ORB's
Need to abstract entities (Web Pages, database entries, simulations) and services as objects with methods(interfaces)
  • CORBA .. XML is "just" CGI done right
COM(Microsoft) and CORBA(world) are competing cross platform and language object technologies
  • Every Netscape4 browser has a Visigenic ORB built in
Javabeans plus RMI and JINI is 100% pure Java distributed object technology
W3C says you should use XML which defines a better IDL and perhaps an object model -- certainly does for documents
How do we do this while technology is still changing rapidly!

HTML version of Basic Foils prepared June 24 99

Foil 24 Multi-Tier Client Server Service

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Client Tier
Javabean Enterprise Javabean
Old and New Useful Backend Systems
Back-end Tier
Services
Middle Tier
Servers

HTML version of Basic Foils prepared June 24 99

Foil 25 Pragmatic Object Web Technology Model - II

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Need to use mix of approaches -- choosing what is good and what will last
For example develop Web-based databases with Java objects using standard JDBC (Java Database Connectivity) interfaces
  • Oracle DB2 Informix Sybase, Lotus Notes, Object database confusion becomes an issue of performance/robustness NOT functionality
Use XML to record small databases in flat files
Use XML to define all interfaces
Use CORBA to wrap existing applications
Use COM to access components of major PC applications such as Microsoft Excel and Word
Use Java to build all Middleware
Use Jini to implement dynamic registration of objects
Use HTML and JavaScript to render everything

HTML version of Basic Foils prepared June 24 99

Foil 26 Functionality of layers

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
1)Rendering of (Multiple) Objects 2)Proxy to some backend capability used to render
input and output to and
from service
Database
MPP
Telescope
File System
1)Server acts as a broker
and control layer
2)Same software as client
but higher performance
multi-user
3)Again service represented
as proxy used as a token for
control logic
Services with
specialized software
and capabilities

HTML version of Basic Foils prepared June 24 99

Foil 27 Proxy -- Proxy -- Backend Capability

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
The Proxies and actual instantiation are linked by messages whose semantic content is defined (best) in XML
The lower system level format can be HTTP RMI IIOP or ...
The client proxy is for rendering input and output including specification of object
The middle tier proxy allows choice of backend provider and functional integration (the user can specify integration at client proxy level)
Real Capability
XML
XML

HTML version of Basic Foils prepared June 24 99

Foil 28 Basic Multi Tier architecture

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Objects (at "logical backend") can be on client of course
Front end can define a generic (proxy for a) object. The middle control tier brokers a particular instantiation
Broker or Server
XML
Result
XML Query
Rendering Engine
Browser
Rendering Engine
HTML
Universal Interfaces
IDL or Templates
XML Request for service
followed by return of XML result

HTML version of Basic Foils prepared June 24 99

Foil 29 Some caveats and comments

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Need version 5 browsers with good XML support to properly implement this
We draw three tier as minimum architecture but as previous diagram suggests, one is likely to build a more structured system with middle tier having more layers
Network computer breaks client tier into two with simple HTML at user and Java servlets providing heavier weight capability on a different machine
  • Here user is at a WebTV or Palm Pilot or similar low-end device

HTML version of Basic Foils prepared June 24 99

Foil 30 Use of Java AND Distributed Objects in Computational Science

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Abstract and Overview
Portals to Computing and Business
  • Examples and Architecture of such a Portal
  • Multi-tier systems and Pragmatic Object Web
Role of XML in Portal Construction
  • Database and JDBC Middle Tier
Collaboration
Portal Programming
How to get High Performance in a multi tier model

HTML version of Basic Foils prepared June 24 99

Foil 31 More details on the implementation

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Note the hardware can be as little as 1 PC on your desk
More interestingly it is your 64 PC Linux or Windows NT Cluster up to the cluster of 64 128 node SGI Origin's at Los Alamos
  • i.e. a parallel computer is by definition a special case of an Intranet
Software divides into several types
Fortran Program
PLSQL Database
or .....
HTML Rendering
Java/CORBA/WIDL Wrapper
Style Sheets and Page Design
"Glue" with (multiple) tier servers and XML inter tier communication

HTML version of Basic Foils prepared June 24 99

Foil 32 Implementation of Front end

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
The front end is some document consisting of a mix of HTML or XML
  • The HTML is whatever you want to make a nice page
  • The XML is converted into some variant of HTML by
    • Browser default or
    • XSL style sheet
    • User Program -- logically in middle tier
  • Note HTML can include Java applets either directly or invoked from XSL style sheets
We will NOT discuss either how to code backend in PLSQL or Fortran or how to compose final rendered document in HTML

HTML version of Basic Foils prepared June 24 99

Foil 33 Implementation Continued I

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
The backend software can be parallel or sequential and simulation or information based
  • It can be COBOL, Fortran, C++, Perl ...
We need to define in XML its interface needed to
  • run it
  • set its parameters -- i.e. its input mechanisms
  • get its output -- numbers or visualization
This backend program interface is defined as an XML file e.g. <program name="physicssimulation1"> <run domain="npac" machine="maryland" type="pc" os="nt" >c:\myprogs\a.out</run> <input type="htmlform" > <name>userinput</name> <field default="10" >iterations</field> .......... </input> <output> ...</output> </program>
Becomes HTML form with name
userinput and text field iterations
with default value 10 on client

HTML version of Basic Foils prepared June 24 99

Foil 34 Implementation Continued II

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
For this example (running a physics program), we could use a specific machine as defined on previous foil (the Windows NT PC maryland) or a generic machine <run domain="any" machine="any" type="pc" os="nt" >
In this case, middle tier broker, would look in a database (XML file) to find what machines were available and either automatically or with user input choose one.
Both Software and Hardware are defined in XML
Note databases and an XML files are logically equivalent
JDBC can access either Oracle (Microsoft) database or XML ASCII file
More generally XML can be thought of as general object serialization
  • A database table is one type of object

HTML version of Basic Foils prepared June 24 99

Foil 35 Databases versus XML?

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
The XML File <machines domain="npac" type="pc" > <machine os="nt" cpu="pentium2" memory="128" >maryland</machine> <machine os="nt" cpu="pentium3" memory="256" >georgia</machine> <machine os="95" cpu="mmx" memory="128" >foxport1</machine> ..... </machines> <machines domain="cis" > <machine os="solaris" cpu="sparcXX" > top</machine> ..... </machines>
is equivalent to database tables such as

HTML version of Basic Foils prepared June 24 99

Foil 36 xxxxxxML

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Every field has data of special significance -- for field xxxxxx, we imagine a group of standards realized in XML and used for exchange of information. We call this xxxxxxML
  • ScienceML needed in "Portal to Computing"
  • BusinessML needed in Enterprise Information Portal
  • EducationML needed for interchange of data between educational portal components
http://www.xml.com/xml/pub/submlist lists some standards currently proposed for XML
The Portal for xxxxxx must support xxxxxxML
For businesses, perhaps one needs special support for "excelML" "SAPML" (XML export format for EXCEL or SAP) as well as support for more general forms of information
  • Here we have a things like XML-QL general query language for unstructured data
  • "mailML" to support electronic mail, bulletin board messages, discussion groups etc ...............

HTML version of Basic Foils prepared June 24 99

Foil 37 ScienceML

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
This we define as a group of defined formats that support scientific data, note taking and sketches
XSIL (Scientific data Interchange) defines metadata needed to specify scientific data files including high level parameters and methods needed to read data
VML is Vector Graphics Mark up Language
DrawML is designed to support simple technical drawings (easier than VML but VML should be able to do this?)
VRML (3D scenes) re-implemented in XML as X3D (http://www.vrml.org/news/pr990210-content.html)
MathML Mathematical Expressions
CML Support Chemistry -- not clear if adopted widely

HTML version of Basic Foils prepared June 24 99

Foil 38 Scientific Notepad

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Presumably this allows Scientists to make notes and record thoughts in a way that it supports important scientific constructs
At its simplest this is an authoring tool like Microsoft Word, PowerPoint or Framemaker
  • These will improve and support standards such as MathML (openMath) with better WYSIWYG authoring
One useful utility would be a whiteboard that supported scientific notes using ScienceML
Such a collaborative whiteboard (implemented in Tango for instance) would be useful in research and teaching
  • Use commercial authoring tool and WebEQ or equivalent to render

HTML version of Basic Foils prepared June 24 99

Foil 39 Use of Java AND Distributed Objects in Computational Science

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Abstract and Overview
Portals to Computing and Business
  • Examples and Architecture of such a Portal
  • Multi-tier systems and Pragmatic Object Web
Role of XML in Portal Construction
  • Database and JDBC Middle Tier
Collaboration
Portal Programming
How to get High Performance in a multi tier model

HTML version of Basic Foils prepared June 24 99

Foil 40 XML used as a Template

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Example comes from WebWisdomDB for storing training and education curricula objects -- PowerPoint, HTML, Photos ..
XML embedded as part of HTML "Web Page"
URL of Web Page invokes Servlet
e.g. http://witch.npac.syr.edu/servlet/TDLServlet/witch/index.tdl?USID=67
Servlet leaves HTML untouched but calls Java Methods to process XML tags
This Servlet processes <WW_... tags -- others are left for other servers or browser

HTML version of Basic Foils prepared June 24 99

Foil 41 XML Templates -- Example I

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
<!-- WW_CONNECT is a tag that establishes a connection to the database. Connection string may be supplied in the CONNECTION attribute, or if it is omitted (empty string) the default connection string is taken from configuration file for current template.-->
<WW_CONNECT CONNECTION=""/>
<html> <head> <title> Separate IMAGE for LOCAL foil
<!-- WW_FOILNUMBER tag takes the position of the current foil in the current presentation. -->
<WW_FOILNUMBER PARENTID="${PID}" FOILID="${FID}"/>
<!-- WW_TITLE is a tag that allows to insert title of a presentation or foil. The presentation/foil is identified by an ID supplied in FOILID attribute. PARENTID is not currently used by the WW_TITLE tag, but can be later used, e.g. to check the formatting properties, which can be defined on the presentation level. FID and PID were supplied by the servlet from query attributes of the URL -->
Yellow is ordinary HTML, Green XML, White Comments

HTML version of Basic Foils prepared June 24 99

Foil 42 Resultant HTML Rendering

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
So this mix of HTML and XML is processed by a special Java Server and XML is translated as shown in green
The yellow HTML is passed throuigh untouched
The URL handed to servlet uniquely specifies page in this case. Better one could pass an XML specification of page
<html> <head> <title> Separate IMAGE for LOCAL foil 17 while this part came from database</title>
<body bgfile="whatyouwant.gif" >
<tt><a href="#image">Image</a><a href="#buttons"> Buttons</a> </tt> <b>
<a href="currenthelp.html"> HELP!</a> * GREY=local</b><tt> LOCAL IMAGE version of Foils prepared
May 23 1999 </tt>

HTML version of Basic Foils prepared June 24 99

Foil 43 XML Templates -- Example II

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
<WW_TITLE FOILID="${FID}"/>
</title> </head>
<!-- WW_BODYIMAGE inserts a 'body' HTML tag with background image typical for foil files. -->
<WW_BODYIMAGE/>
<tt><a href="#image">Image</a><a href="#buttons"> Buttons</a> </tt> <b>
<WW_LINK FILENAME="temphelp.tdl" ATTR="">HELP!</WW_LINK> * GREY=local</b><tt> LOCAL IMAGE version of Foils prepared
<!-- WW_MODIFICATIONDATE inserts modification date of the current foil -->
<WW_MODIFICATIONDATE FOILID="${FID}"/> </tt>
...... And So On!

HTML version of Basic Foils prepared June 24 99

Foil 44 Use of Java AND Distributed Objects in Computational Science

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Abstract and Overview
Portals to Computing and Business
  • Examples and Architecture of such a Portal
  • Multi-tier systems and Pragmatic Object Web
Role of XML in Portal Construction
  • Database and JDBC Middle Tier
Collaboration
Portal Programming
How to get High Performance in a multi tier model

HTML version of Basic Foils prepared June 24 99

Foil 45 Collaboration using Tango-Interactive

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Tango is a fully Web integrated
system that can share general client side applications, web pages and output from databases and other servers
TangoInteractive is being deployed to support:
Distance Education and Training which links asynchronous and synchronous modes with database or web server backend
  • Teaching computational science at HBCU; High School classes on Java; Internetics Certificate
Collaborative Visualization and Computing
  • Tango collaboratively links visualization from CAVE to PC
  • NCSA Biology Workbench made collaborative using shared web forms -- example of shared databases and simulations
Shared Client Side Java applets for "Rapid Prototyping" Phase
Shared emacs for John Salmon ....

HTML version of Basic Foils prepared June 24 99

Foil 46 Distance Learning with Tango

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index

HTML version of Basic Foils prepared June 24 99

Foil 47 TangoInteractive Features and Strategy

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Links Interactive (synchronous) and self-paced (asynchronous) collaborative models
  • Integration of the Best of Web Browsing, Lotus Notes, CUSeeMe
Runs on Windows 95,98,NT UNIX (Irix, Solaris, Linux)
Supports multi-language shared server and client applications in Java, Javabeans, C++ and JavaScript (W3C DOM)
Supplement existing very general tools (audio-video conferencing, chats, whiteboard etc.) by specialized applications to support particular collaborative activities
  • Education and Training: support completely particular course development models
  • Management: Distance Briefings
  • Research: Custom link to particular Environments
Upgrade core technology in areas such as browser independence, security, multiple community support, archiving
Improve User Support and documentation

HTML version of Basic Foils prepared June 24 99

Foil 48 SV2 + Tango Collaborative Visualization Architecture

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index

HTML version of Basic Foils prepared June 24 99

Foil 49 SV2 + Tango Examples

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index

HTML version of Basic Foils prepared June 24 99

Foil 50 Use of Java AND Distributed Objects in Computational Science

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Abstract and Overview
Portals to Computing and Business
  • Examples and Architecture of such a Portal
  • Multi-tier systems and Pragmatic Object Web
Role of XML in Portal Construction
  • Database and JDBC Middle Tier
Collaboration
Portal Programming
How to get High Performance in a multi tier model

HTML version of Basic Foils prepared June 24 99

Foil 51 Implementation Architecture

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
So between XML/HTML document and backend Fortran is a bunch of servers linked by XML Messages
Software of this glue (business logic) is built in Java
Servers can either be commercial Web Servers (Apache with servlets), CORBA brokers or custom Servers
  • Servers will be written typically in C++ or more and more Java
Java/CORBA/WIDL Wrapper
Style Sheets and Page Design

HTML version of Basic Foils prepared June 24 99

Foil 52 Programming the Computing Portal

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
We can copy a much reviled model -- Microsoft Word or PowerPoint -- Problem Solving Environments for document preparation -- to get PSE for Computing
XML Widgets are organized into Toolbars ....
Computing abstracted as a set of hierarchical Toolbars Toolbars are defined in XML and rendered in HTML for user interface. XML interpreted on middle tier as some suitable service.
Computing Toolbars include user profile, results, visualization (where "command" could be AVS), collaboration, programming model, HPF, Dataflow, resource specification, resource status, code (application specific)

HTML version of Basic Foils prepared June 24 99

Foil 53 Use of Java AND Distributed Objects in Computational Science

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
Abstract and Overview
Portals to Computing and Business
  • Examples and Architecture of such a Portal
  • Multi-tier systems and Pragmatic Object Web
Role of XML in Portal Construction
  • Database and JDBC Middle Tier
Collaboration
Portal Programming
How to get High Performance in a multi tier model

HTML version of Basic Foils prepared June 24 99

Foil 54 Three Possible Implementations of CFD CSM Linkage

From Distributed Objects and Portals for Earthquake Science GEM Meeting NPAC -- June 24-25 99. *
Full HTML Index
1)Simple Server Approach 2)Classic HPCC Approach
Data and Control
CFD
Structures
Data Only
CFD Server
Structures Server
Control
Only
3)Hybrid Approach with control at server and
data transfer at
HPCC level
Can switch at each mpi_init or at each MPI message

© Northeast Parallel Architectures Center, Syracuse University, npac@npac.syr.edu

If you have any comments about this server, send e-mail to webmaster@npac.syr.edu.

Page produced by wwwfoil on Thu Jun 24 1999