Full HTML for

Basic foilset Object Models:Computing - Web Based Education and Training - Collaboration

Given by Geoffrey C. Fox at Seminar at Los Alamos on 31 March 99. Foils prepared 30 March 99
Outside Index Summary of Material


We describe some use of object web technologies in computing
We describe the importance of the Web as a source of information objects and as a mechanism for invoking general server side objects
We stress constraints of cross disability interfaces
We note relevance of JavaScript as language to capture changes in document object structure and to choose appropriate rendering
We stress the important role of both Asynchronous and Synchronous collaboration and the web and web-based collaboration allows one to implement it.

Table of Contents for full HTML of Object Models:Computing - Web Based Education and Training - Collaboration

Denote Foils where Image Critical
Denote Foils where HTML is sufficient

1 Object Models Computing Web Based Education and Training Collaboration
2 Abstract of An Introduction to Web-based Education and Computing Presentation
3 Challenge and Opportunity in Training
4 The Ingredients of Web Based Education
5 NPAC Education Curricula and Distance Delivery Activities
6 CSC499/615 at Jackson State
7 Architecture of Tango Distance Education
8 Simplistic Object Web View
9 Other Useful Objects
10 Basic Multi Tier architecture
11 Summary of NPAC's JWORB natural Building Block of the POW
12 WebFlow + High Performance Backend Functional Architecture
13 Gateway
14 DoD Modernization Gateway Project
15 PPT Slide
16 HLA/RTI and Coarse Grain Technologies I
17 HLA/RTI and Coarse Grain Technologies II
18 How are Objects Used Collaboratively?
19 What is Universal Acccess / Cross Disability Rendering?
20 Naïve Shared Object Strategy
21 If you believe these assertions
22 What Objects should we look at first and what services do we need?
23 What's wrong with Java Clients?
24 What about databases and Lotus Notes
25 What is Involved in Sharing Web Pages?
26 Document Object Tag Hierarchy
27 Hierarchical Object Components in a Web Page
28 JavaScript Shared Browser with Dynamic HTML
29 Shared Form Illustrated by Shared Access to NCSA Biology Workbench showing how general server objects can be shared from web interface
30 PPT Slide
31 PPT Slide

Outside Index Summary of Material



HTML version of Basic Foils prepared 30 March 99

Foil 1 Object Models Computing Web Based Education and Training Collaboration

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Los Alamos March 31 1999
http://www.npac.syr.edu/users/gcf/lanlmarch99
http://www.npac.syr.edu/tango
Geoffrey Fox
Syracuse University
NPAC
111 College Place Syracuse NY 13244 4100
3154432163

HTML version of Basic Foils prepared 30 March 99

Foil 2 Abstract of An Introduction to Web-based Education and Computing Presentation

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
We describe some use of object web technologies in computing
We describe the importance of the Web as a source of information objects and as a mechanism for invoking general server side objects
We stress constraints of cross disability interfaces
We note relevance of JavaScript as language to capture changes in document object structure and to choose appropriate rendering
We stress the important role of both Asynchronous and Synchronous collaboration and the web and web-based collaboration allows one to implement it.

HTML version of Basic Foils prepared 30 March 99

Foil 3 Challenge and Opportunity in Training

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Pervasive Communication Infrastructure (The Internet) and powerful new software technologies and concepts
  • Distributed Multimedia information on the Web
  • Web-linked Databases, Distributed Objects
  • Collaborative Systems
Can enable education and training with
  • Better curricula
  • New collaborative learning models
  • Different "business models" for universities and schools
Can also change/enable businesses, research, electronic societies
Need to implement so that
  • Can take advantage of the evolving web
  • Can be used by all independent of capabilities

HTML version of Basic Foils prepared 30 March 99

Foil 4 The Ingredients of Web Based Education

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Design of (possibly new as exploiting new possibilities) curricula
Decide on Architecture of the curricula material
Authoring of material in curricula
Managing the material and students response to it including quizzes, grades and administration
Delivery of the material in a mix of self-paced (asynchronous), traditional (synchronous) or collaborative (interactive)
Good answers to all these components are pretty clear and these answers will match the evolution of web over next few years
  • The answers are not perfect but they will improve and they are already good enough and can be delivered at a distance
So all we need is .......................
Organizations with appropriate mission, resources and entrepreneurial spirit to do the grand experiments, succeed and blossom in the future ....

HTML version of Basic Foils prepared 30 March 99

Foil 5 NPAC Education Curricula and Distance Delivery Activities

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Can offer "Certificates in Internetics or Computational Science" (Total of 4-6 or 1-2 semester classes respectively)
Can offer internally Web and Java classes for K-12 level -- teaching Java Academy to Boston, Houston Syracuse and Starkville every saturday
All these courses are in form suitable for synchronous/asynchronous delivery
Taught two semesters from Syracuse over Internet a Senior Undergraduate Class in Java for web applications at Jackson State Mississippi using Tango collaboration system. Next 2 semesters teaching graduate computational science and Internetics
Can combine with local CDROM of curricula material
Have specialized programming laboratories for both Web and parallel programming -- Jackson students do ALL work from a PC at JSU accessing resources at Syracuse

HTML version of Basic Foils prepared 30 March 99

Foil 6 CSC499/615 at Jackson State

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Taught using Tango over Internet and defense high performance network DREN every Tuesday and Thursday from Syracuse
  • Course material based on Syracuse Senior Undergraduate class ECS406(Web Technologies) and graduate classes CPS615/616(Base Computational science/Internetics)
Jackson State major HBC University with many computer science graduates
Do not compete with base courses but offer addon courses with "leading edge" material (Web Technology, modern scientific computing) which give JSU (under)graduates skills that are important in their career
  • Job fair employers liked Java Programming!
Needs guaranteed 30 (audio) to 100 (video) kilobits per second bandwidth assuming course material mirrored at JSU
  • Can be offered using CD-ROM's to homes with audio only (plus modest fram rate video) link and 28.8 kbaud modem

HTML version of Basic Foils prepared 30 March 99

Foil 7 Architecture of Tango Distance Education

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
NPAC Web Server
JSU Web Server
Java Tango Server
.......
Share URL's
Audio Video
Conferencing Chat Rooms
White Boards etc.
Address at JSU of Curriculum Page
Teacher's View of Curriculum Page
Student's View of Curriculum Page
Participants at JSU
Teacher/Lecturer at NPAC
.......
Java Socket
HTTP
Java Control Clients

HTML version of Basic Foils prepared 30 March 99

Foil 8 Simplistic Object Web View

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
The Object Web Signifies the merger of distributed object and web technologies
The Pragmatic Object Web asks us to take the best of CORBA (Industry Standard) COM (Microsoft PC Standard) Java (Web Software Infrastructure) and W3C (XML)
An "object" is an entity that can be
  • registered, addressed, located
  • has properties and methods
The most common object is a Web Page
The richest available object model is the Web Document Object Model or DOM
JavaScript is language to manipulate this DOM
Web Browsers render this object
Web Servers broker this object

HTML version of Basic Foils prepared 30 March 99

Foil 9 Other Useful Objects

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Contents of (relational) Databases -- give these a web interface and view as an XML (or HTML) stream
  • Web-linked databases use Java Software and W3C serialization (XML) and rendering technology (HTML)
Computer Programs -- from CGI Scripts to Servlets to CORBA IDL brokered Fortran Programs
(Large) data resources -- from file systems to archival storage
Devices -- from toasters, microsensors to surveillance cameras, PC's, Printers, Supercomputers, Telescopes
Electronic Mail Messages -- favorite form of collaboration
People

HTML version of Basic Foils prepared 30 March 99

Foil 10 Basic Multi Tier architecture

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Define Objects and properties / methods (backend) and define services (frontend)
Objects (at "backend") can be on client of course
Broker or Server
Rendering Engine
XML
Result
XML Query
User dependent Style Sheets and Rendering engines
Rendering Engine
XML result
HTML
Objects
Universal Interfaces
IDL or Templates

HTML version of Basic Foils prepared 30 March 99

Foil 11 Summary of NPAC's JWORB natural Building Block of the POW

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
JWORB - Java Web Object Request Broker - multi-protocol middleware network server (HTTP + IIOP + DCE RPC + RMI transport)
Current prototype integrates HTTP and IIOP i.e. acts as Web Server and CORBA Broker
  • HTTP Services built in terms of CORBA services
  • Gives you immediately web interfaces to CORBA
  • CORBA supports applications in any language
Currently testing support of Microsoft COM
JWORB - our trial implementation of Pragmatic Object Web
First non DMSO implementation of RTI -- HLA (distributed event driven simulation) Runtime at 5% cost(!)

HTML version of Basic Foils prepared 30 March 99

Foil 12 WebFlow + High Performance Backend Functional Architecture

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Globus High Performance Backend
Java Applet Frontend
Java Servers in Middle Tier
Database
Computing
Visualization
IIOP
/RMI

HTML version of Basic Foils prepared 30 March 99

Foil 13 Gateway

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
DoD Modernization Project at ASC Dayton to build a "seamless interface" including a Problem Solving Environment Toolkit with PSE XML Templates that you can customize for each domain -- Chemistry is first example
e.g. <visualize render="AVS">See it!</visualize> gives you a button invoking middle-ware visualization service and AVS renderer
Ken Flurchick, http://www.osc.edu/~kenf/Gateway

HTML version of Basic Foils prepared 30 March 99

Foil 14 DoD Modernization Gateway Project

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Client Tier
  • Multiple Problem Solving Environments (PSE)
  • Creates User Friendly, "Point & Click" Environment for HPC Resources
  • Offers Batch Submission, Data Visualization, Problem Solving Strategies
  • Accommodates Multidisciplinary Computational Solutions
Middle Tier
  • Utilizes Commodity Hardware and Software (Java, Corba, Globus, etc)
  • Seamless Interface Between User's Desktop and HPC Resources
Back-end Tier
  • Computing Resources: Supercomputers, Metacomputing, Workstation Clusters
  • Databases
  • Mass Storage Systems

HTML version of Basic Foils prepared 30 March 99

Foil 15 PPT Slide

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Gateway Schematic

HTML version of Basic Foils prepared 30 March 99

Foil 16 HLA/RTI and Coarse Grain Technologies I

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Consider large class of problems that can be thought of a set of coarse grain entities which could be internally data parallel and the coarse grain structure is "functional or task" parallelism
Use (Enterprise) JavaBeans to represent modules at (server) client level
Use UML (and related technologies) to specify application and system structure
WebFlow is graphical (Java Applet) composition palette (Beanbox for computational modules)
Use "To be Agreed Seamless Computing Interface" to implement linkage of proxies to backend hardware
We can support any given paradigm at either high functionality (web server) or high performance (backend) level
HPCC Messaging could be a pure Java/RMI middle tier version of MPI or Nexus/Optimized Machine specific MPI at backend

HTML version of Basic Foils prepared 30 March 99

Foil 17 HLA/RTI and Coarse Grain Technologies II

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Coarse Grain Entities can be time synchronized simulations and use MPI(HPF?) at either middle or back end tier or as in DMSO simulations a federate running a custom discrete event simulation
Use DMSO Object model HLA to specify object structure of jobs and systems at middle tier level
A HLA Federation could be the set of all jobs to be run on a particular site
  • We can classify both jobs and computers as separate federations
A HLA Federate could be a job consisting of multiple possibly shared objects
Use DMSO Runtime Infrastructure RTI to implement dynamic management
  • As RTI already incorporates time management as a service, it can be basis of powerful commodity resource management at level of linked coarse grain objects

HTML version of Basic Foils prepared 30 March 99

Foil 18 How are Objects Used Collaboratively?

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Some sort of activity involves interactions between objects and/or objects and individuals (which can be thought of as objects as well if you want)
Interaction can be synchronous as when individuals talk to each other; parallel program components exchange MPI messages
  • Objects or object properties are shared at same time
Or asynchronous when sharing is done at different times
I post a web page and you look at it later is basic asynchronous sharing model while writing on a blackboard is hallowed synchronous model in teaching
  • other areas are similar

HTML version of Basic Foils prepared 30 March 99

Foil 19 What is Universal Acccess / Cross Disability Rendering?

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
This implies choosing a rendering method that best suits client user and respects
  • Any hardware constraints -- network bandwidth or screen resolution or client performance
  • Any sensory or physical limitations of user
e.g. Visually impaired would prefer audio rich rendering
e.g. Muscularly limited users would need appropriate interfaces
New Cascading Style Sheets can express this but need intelligent renderer to make correct decision and allow user to adjust choices
Further one needs decision at the stage of XML input and not after it has already been rendered into HTML
  • HTML expresses "meaning of document" by positioning and other means which are in general impossible to recognize and render in a cross disability fashion
Assume goal is equal and high quality rendering -- do not downgrade material to support cross disability rendering

HTML version of Basic Foils prepared 30 March 99

Foil 20 Naïve Shared Object Strategy

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Assume teachers, students, engineers, shoppers, salespersons, families teach, learn, collaborate, buy, sell, socialize via electronic versions of traditional human interactions combined with shared objects rendered as web pages
  • Most sharing is asynchronous and one usually wishes to share synchronously same material that one accesses asynchronously
  • objects can be (electronic) text books, aircraft designs and simulations, expensive jewelry or photos of grandchildren .....
  • Best sharing must support cross disability rendering

HTML version of Basic Foils prepared 30 March 99

Foil 21 If you believe these assertions

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
One needs to be able to
  • Share specification of object
  • Deliver XML specification of shared object to participants
  • Customize User profile
  • Render from profile to provide cross disability access
  • Provide digital versions of audio video conferencing, pointers, white boards etc.
  • Reliably deliver shared object with appropriate performance (Caching, proxy servers ...)
  • Monitor all of the above

HTML version of Basic Foils prepared 30 March 99

Foil 22 What Objects should we look at first and what services do we need?

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
So web documents are the natural choice but actually this doesn't say so much as they can have
  • Java Applets
  • Active X controls
  • General helper applications
And "everything" exports itself to the web including Microsoft Word and Macromedia authoring systems
  • Actually Microsoft Word is rumored to be moving to XML internal form and "Save as HTML" is a reasonable representation of most Word documents
So we will consider first Web documents constructed according to W3C DOM

HTML version of Basic Foils prepared 30 March 99

Foil 23 What's wrong with Java Clients?

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Well there is the battles between Sun Netscape and Microsoft which makes Java on the client less robust than Java on the server
However Java allows to build totally general users interfaces and there appear to be no rules.
Thus it does not seem practical to build cross disability interfaces for arbitrary Java applet interfaces
On the other JavaScript and dynamic HTML can do many things that you might have thought one needed Java for
General Java visual interfaces need languages such as UML to describe interface object model?

HTML version of Basic Foils prepared 30 March 99

Foil 24 What about databases and Lotus Notes

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Web-linked databases look "just" like web pages and in fact using XML templates one can store DOM components in database and improve representation of object structure of pages
  • Each bullet of this slide is a separate record etc.
  • XML is natural serialization of a database and correspondingly databases, not web servers are natural place to store XML documents
On the other hand, current Lotus Notes supports a web client but does not naturally integrate with other web resources
  • It provides its own isolated world which is not so satisfactory
  • Instead one should use technologies that add value to a dominant world wide web.

HTML version of Basic Foils prepared 30 March 99

Foil 25 What is Involved in Sharing Web Pages?

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
One needs to certainly share the basic page URL but also
  • Entries into forms specifying object to be accessed -- note sharing client side information implies sharing server side objects
  • Scrolled position on page
  • Dynamic HTML including CSS style parameters such as position
  • Mouse and Keyboard actions observed as events
  • selected (highlighted) content
  • internal JavaScript (but this is consequent to external actions i.e. to observed events)
JavaScript in principle allows one to identify relevant DOM components , change the rendering through choice of style attached to each component and so deliver a cross disability shared rendering

HTML version of Basic Foils prepared 30 March 99

Foil 26 Document Object Tag Hierarchy

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index

HTML version of Basic Foils prepared 30 March 99

Foil 27 Hierarchical Object Components in a Web Page

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Here is an example of a particular source document encoded in HTML:
<HTML>
<TITLE>My home page</TITLE>
<BODY>
<H1>My home page</H1>
<P>Welcome to my home page! Let me tell you about my favorite composers:
<UL>
<LI> Elvis Costello
<LI> Johannes Brahms
<LI> Georges Brassens
</UL>
</BODY>
</HTML>
Component Objects in Web Page

HTML version of Basic Foils prepared 30 March 99

Foil 28 JavaScript Shared Browser with Dynamic HTML

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Shared Pointer added to Internet Assistant PowerPoint on the Web
Movement tracked and shared with JavaScript
Illustrates sharing of W3C Object Model internal to documents
DHTML "Heartbeat" recording shared events in last 60 seconds on application specific "bar" which is locked above all windows -- addresses window clutter

HTML version of Basic Foils prepared 30 March 99

Foil 29 Shared Form Illustrated by Shared Access to NCSA Biology Workbench showing how general server objects can be shared from web interface

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Shared Multiple List
Shared Buttons
Shared Text field
Shared Checkbox

HTML version of Basic Foils prepared 30 March 99

Foil 30 PPT Slide

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Educational Objects i.e.
Data Defining Curricula Material at all levels from "University" to "foil"
Server side
Java(JDBC)
XML Parser
Servlet
Metadata
WebWisdom XML Template Server
Conventional XML/HTML Pages
Dynamically Generated
(IMS/ADL) Metadata
Streaming Audio/Video
Cross Disability Shared Choice of CSS
Templates Defining in XML How educational data stored in Pages
Share with TangoInteractive
JavaScript API

HTML version of Basic Foils prepared 30 March 99

Foil 31 PPT Slide

From Object Models:Computing - Web Based Education and Training - Collaboration Seminar at Los Alamos -- 31 March 99. *
Full HTML Index
Conventional Web Site
WebWisdomDB Database
Educational Object Manager
XML Template
Server
(A)Synchronous Access via Cross Disability JavaScript
TangoClient
TangoServer
WebWisdom Synchronous and Asynchronous Learning System
TangoInteractive Collaboration System
Enhanced DHTML
Server (add pointers etc.)
Unstructured Data
Structured Data

© 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 Sat Apr 3 1999