Education as a Web Service Technology, Experience & Futures Geoffrey Fox Chief Scientist Anabas Inc. Professor of Computer Science, Informatics, Physics and Director PTLIU Laboratory.

Download Report

Transcript Education as a Web Service Technology, Experience & Futures Geoffrey Fox Chief Scientist Anabas Inc. Professor of Computer Science, Informatics, Physics and Director PTLIU Laboratory.

Education as a Web Service
Technology, Experience & Futures
Geoffrey Fox
Chief Scientist Anabas Inc.
Professor of Computer Science, Informatics, Physics
and Director PTLIU Laboratory for Community Grids
Indiana University, Bloomington IN 47404
http://grids.ucs.indiana.edu/ptliupages/presentations
[email protected]
uri="gxos:/ptliupages/presentations/diste
dtalkfeb02" email="[email protected]"
11/6/2015
1
Teaching Jackson State Fall 97 to Fall 2001
JSU
Syracuse
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
2
The Virtual University





Motivated either by decreased cost or increased quality of
learning environment
Will succeed due to market pressures (it will offer the best
product)
Assume that as with text books, only a few pedagogically
excellent teachers will produce lectures; only a few
charismatic souls deliver them
“Centers of Excellence” (including “One Professor Virtual
University”) are natural entities to produce and deliver
classes supported by good technology and rich
graphics/multi-media (instruction design)
University acts as an integrator putting together a set of
classes where it may only teach some 20% but acts as a
mentor to all classes its students take
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
3
Courses at Jackson State




Taught using Tango/Anabas since fall 97 over Internet twice a
week from Syracuse/FSU/Indiana
• Course material same style as online material for in-university
classes
• Curricula, Homework, Grading, Facilities done by “me”
• Students get JSU NOT Syracuse/Indiana Credit
Jackson State major MSI (Minority Serving) 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
Fall 99 Semester CPS640 offered to 40 students in 5 distant places
and separately 40 at Syracuse
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
4
What did this lead to?





Jackson State students got access to curricula that was not
otherwise available to them
Developed quite good Information Technology and
computational science curricula
Jackson State faculty acted as mentors in course and now
teach some of material in their own courses and to other MSI
colleges
• Make rapidly changing and important curricula available to
an MSI network -- could dramatically improve curricula
opportunities for MSI students
• JSU has institutional commitment to area
Used in High School Java, DoD wide training and Winter
00/01 semester as part of ERDC Graduate Institute
Supports migrant teachers -- I have delivered course spring
00 semester from Syracuse, FSU and ERDC, Vicksburg
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
5
Saturday Java Academy
http://old-npac.ucs.indiana.edu/projects/k12javaspring99/
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
6
Fall 2001 Technology
Large Room
Access Grid
Personal Access Grid + Anabas
Community A/V: The Access Grid
11/6/2015
Desktop
A/V
uri="gxos:/ptliupages/presentations/distedtalkfeb02"
email="[email protected]"
7
Lessons from Past







“True” Shared Event flexible but too much work for
most cases
Shared Display – nearly always works
Shared Export – SVG PDF HTML X3D etc. can be reused
Integrate synchronous and asynchronous collaboration
Do not build into browser as not a reliable or standard
virtual machine
Build around uniform publish-subscribe style XML
Event Model supporting archiving, customization,
filtering – apply to all collaboration modes
Later we realized need to integrate with Peer to Peer
and Web Services (straightforward as XML event
model fits these architectures)
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
8
Batik Viewer on PC
PowerPoint can be converted to SVG
via Illustrator or Web export
11/6/2015
SVG Sharing PC to PDA
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
9
Object Web View of the World

“Everything electronic” is a resource
•
•
•
•


Computers
Programs
Data (from sensors to this presentation to email to databases)
People
“Everything electronic” is a distributed object
“All External Interfaces” are defined in XML whether this is a
property (data-structure) or a method (service, function,
subroutine)
• We can assume that a data-structure property has getproperty() and
setproperty(value) methods to act as interface
• All resources have interfaces

All resources are linked by messages with format and transport
protocol to be discussed but as interfaces defined in XML,
message structure must be specifiable in XML
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
10
The 3 Critical XML Interfaces



Data (sort of
dumb)
Information
User
Rendering
Raw
Raw Data
Resources
(Virtual) XML Data Interface
Server
Processing
Information/Knowledge
(Virtual) XML Information Interface
Render to XML Display Format
(Virtual) XML
Rendering Interface
Clients
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
11
XML
Skin
Message
Or Event
Soft
Soft
Based
ware
ware
Inter
Connection
Resource
XML
Skin
Resource
Data
base
XML Defined Resources
connected by XML defined messages
Implementation of resource and
connection may or may not be XML
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
12
What is a Web Service


A web service is a computer program running on either
the local or remote machine with a set of well defined
interfaces (ports) specified in WSDL
In principle, computer program can be in any language
(Fortran .. Java .. Perl .. Python) and the interfaces can
be implemented in any way what so ever
• Interfaces can be method calls, Java RMI Messages, CGI
Web invocations, totally compiled away (inlining) but


The simplest implementations involve XML messages
(SOAP) and programs written in net friendly languages
like Java and Python
Web Services separate the meaning of a port (message)
interface from its implementation – WSDL Interfaces
are virtual XML
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
13
Role of Web Services

Define interfaces of web applications so that computer-computer
interactions are enabled
• Defines virtual XML for all system and application services




WSDL is XML versions of Class and Method definitions
SOAP is XML version of message
UDDI or WSIL catalogs WSDL based services enabling precise
linkage of them (
WSFL and WSCL are candidate linkage languages
WSDL interfaces
Security
WSDL interfaces
11/6/2015
Payment
Credit Card
Catalog
Warehouse
shipping
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
14
Raw
Resources
Raw Data
Raw Data
(Virtual) XML Data Interface
Web Service (WS)
WS
WS
WS
etc.
XML WS to WS Interfaces
WS
WS
WS
WS
WS
(Virtual) XML Knowledge (User) Interface
Render to XML Display Format
Clients
11/6/2015
(Virtual) XML
Rendering Interface
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
15
Some General Grid or Web Services
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
16
Some Science Web Services

These build on general (community) web services
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
17
Education as a Web Service














Can link to Science as a Web Service and substitute educational
modules
“Learning Object” XML standards already exist from IMS/ADL
http://www.adlnet.org – need to update architecture
Web Services for virtual university include:
Registration
Performance (grading)
Authoring of Curriculum
Online laboratories for real and virtual instruments
Homework submission
Quizzes of various types (multiple choice, random parameters)
Assessment data access and analysis
Synchronous Delivery of Curricula
Scheduling of courses and mentoring sessions
Asynchronous access, data-mining and knowledge discovery
Learning Plan agents to guide students and teachers
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
18
UDDI & Content Management




Consider content to consist of “curricula pages” and
meta-data
We have meta-data stored in LDAP, flat files, UDDI,
databases (Oracle 9i), XML databases, WebDAV, Web
page header tags, JMS topics
Content meta-data and content linked by URI. In
general content & meta-data stored separately
Managing meta-data is hardest problem – view as
federation of multiple independent heterogeneous
databases with separate access and lookup services
• Each component is a web service supporting query, access,
store etc.


UDDI will be replaced by this more general view
Most of education is meta-data …….
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
19
LCMS as a Web Service

For meta-data, just build federated database as a Web
Service
• Storage, update, lookup of objects
• Registration of different control engines

For content, if W3C DOM and Java API as for SVG
and “decent” XHTML browsers, then can wrap DOM
as a web service for all interface functions
• Can of course do this for IE5 but document object model
unreliable

Build collaboration systems as sharing Web Service
interfaces (not COM or other object API)
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
20
Integration of XML/Web Services into an
Enterprise I




You are the CIO of a little known state’s (call it Xanadu)
education system and been tasked to position it as a 2005 leader
in technology enhanced education
Your initial review reveals a multitude of incompatible existing
information systems distributed over Xanadu’s 50 campuses
Your cradle to grave community education mandate (which got
the Governor elected) implies integration of all aspects of
education in your information system
You note that performance issues are much less important in this
application than interoperability (it currently takes months to
get anything done so what's an extra millisecond or so at a
WSDL interface) , so even in current primitive/immature state
Web services look attractive
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
21
Enterprise Web Services II






We start a requirements analysis and a catalog of existing “raw
resources”. This will lead to the clean internal XML(WSDL)
interfaces XIF and to the external XML interfaces (XEF) to the
raw resources
What is Xanadu Internal Framework (XIF) ?
We find that The Grid Forum community has defined computing
interfaces which we will adopt to support infrastructure needed
for use of simulations and data repositories in curriculum
We find that Microsoft, the Liberty Alliance and the Grid have
Security schemes but are relieved that with a little bit of XSLT
(transformations) we can map between them and can define
authentication & access control as a Web Service
We join the IMS consortium and adopt their standards for
learning meta-data and user related information
We adopt the AICC and ADL SCORM standards for “learning
objects” (course pages)
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
22
Enterprise Web Services III



We define Xanadu educational agents which use XIF plus
RDF/DAML-OIL to be able to capture educational goals
We expect commercial standards compliant solutions will be
available for most other needed Educational web services
We find that we must interface with a dreadful collection of
external raw resources coming from legacy PeopleSoft SAP
Oracle and Microsoft products
• As our new model is object (XML) and open standards based we build a
separate XII (Xanadu Information Infrastructure) supporting XIF objects

We analyze structure of legacy systems and their relation to XIF
and define the external framework XEF which captures much of
the raw resources
• This XEF Schema is extensible to capture quirks of each legacy system
• We build a set of Web services that convert XEF into XIF

We inform vendors that we will only install XIF compliant
systems in all future purchases
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
23
CollabWS: Collaboration as a Web Service






This includes Audio-Video conferencing, Instant
Messengers, shared applications and tools
There are basic standards H323 and SIP
There are peer to peer collaboration approaches like
JXTA from Sun
The various commercial products – Anabas …Centra
…Webex … Groove Networks effectively defines
some shared application interfaces
CollabWS defines a superset of collaboration
properties and subservices in XML/WSDL
Then you provide several bindings of collabws.wsdl
to new transports and old ones (binary H323)
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
24
H323
SIP
JXTA
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
25
SIP
H323
JXTA
SIP
H323
11/6/2015
JXTA
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
26
A Typical SIP Message


REGISTER sip:registrar.biloxi.com
Via: SIP/2.0/UDP 10.4.1.4:5060
To: Bob (sip:[email protected])
From: Bob (sip:[email protected]);tag=456248
Call-ID: [email protected]
CSeq: 1826 REGISTER
Contact: (sip:[email protected])
Expires: 7200
Contact-Length: 0
Initially build a wrapper that accepts such messages
and converts to …..
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
27
Collaboration as a Web service - now
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
28
SIP as XML


<sipasxml>
<register> sip:registrar.biloxi.com</register>
<via> SIP/2.0/UDP 10.4.1.4:5060</via>
<to> Bob (sip:[email protected]) </to>
<from tag="456248" > Bob (sip:[email protected]) </from>
<call-id> [email protected]
</call-id>
<cseq> 1826 REGISTER </cseq>
<contact> (sip:[email protected]) </contact>
<expires> 7200 </expires>
<contact-length> 0 </contact-length>
</sipasxml>
So this is either an internal format to which we map SIP
messages or it is an external format used for Collaboration
Web Service
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
29
Future Collaboration Web Service
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
30
Messaging/Events as a Web Service


We can implement messaging subsystem (between
WSDL resources) with either direct messages or by a
queued system where you publish messages to queues
and subscribe as receiver to particular queues
There are many different publish/subscribe models
• JMS is a cluster of central servers
• JXTA is a very dynamic Peer to Peer model where pipes are
queues and topics (metadata) are service advertisements

One could have different ports in Messaging/Event Web
Service corresponding to the different JMS or JXTA
fault tolerance/reliability semantics
• Could use JMS as long distance “carrier” between JXTA peers
• JXTA provides higher performance than JMS for nearby
recipients
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
31
Event Web Service
Destination
Source Matching
Routing
Web
Service 1
WSDL
Ports




(Virtual)
Queue
Filter
workflow
Web
Service 2
WSDL
Ports
Filter is mapping to PDA or slow communication
channel (universal access) – see our PDA adaptor
Workflow natural as all messages “intercepted” by
Event Web Service
Routing illustrated by JXTA
Destination-Source matching illustrated by JMS
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
32
Broker Network
Software multicast
P2P: Brokers are clients
Broker
Broker
Resource
Broker
Broker
Broker
Data
base
Brokers created dynamically
when needed for a new cluster of resources
Broker
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
33
Narada JXTA/JMS Integration





http://grids.ucs.indiana.edu/ptliupages/projects/narada/
Is a network of event brokers which can reliably deliver XML
specified events
Using openJMS selection module, becomes a distributed or
conventional Java Message Service
Linking special JXTA
proxies, it can link
JXTA communities
Think of JXTA JMS and
“native” Narada as
different bindings
(ports) in an
event/messaging
web service
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
34
Database
Database
JXTA
Event
Broker
Event
Broker
JMS
Event
Broker
Peer to Peer Grid
Event
Broker
Community Grid
11/6/2015
JXTA
Peer to Peer Grid
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
35
PDA Collaboration Adaptor
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
36
MyProfessor
on the PDA
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
37
Component –based Portal



Web Services provide a component model for the
middleware (see large “common component
architecture” effort in Dept. of Energy)
Should match each WSDL component with a
corresponding user interface component
Thus one “must use” a component model for the
portal with again an XML specification
(portalML) of portal component
11/6/2015
uri="gxos:/ptliupages/presentations/distedtalkfeb02" email="[email protected]"
38