8/15/2019 JASIGWeb2LearningDec05v2
1/43
Web 2.0 andSOA for Learning
Robert SherrattHead of Systems Integration
Steve Jeyes
Pearson Edexcel
8/15/2019 JASIGWeb2LearningDec05v2
2/43
Agenda
SOA and Web 2.0
AJAX
Web 2.0 for eLearning Reflection
8/15/2019 JASIGWeb2LearningDec05v2
3/43
Agenda
SOA and Web 2.0
AJAX
Web 2.0 for eLearning Reflection
8/15/2019 JASIGWeb2LearningDec05v2
4/43
Service Oriented Architecture
Services are components
Well defined interfaces
Implementation independent
Self-contained and loosely coupled Composite services can be assembled from
individual services
Using WS and SOAP
8/15/2019 JASIGWeb2LearningDec05v2
5/43
Sun eLearning architecture
Data Layer
Common Services
Collaboration
Service
Event
Management
Service
Reporting
Service
User
Management
Service
Learning Services
Learning
Content
Management
Service
Learning
Management
Service
Assessment
Management
Service
Learning
Administratio
n Service
Learning
Content
Metadata
Learning
Object
Repository
Learning
Interaction
Data
Assessment
Data
Administratio
n Data
Portal
8/15/2019 JASIGWeb2LearningDec05v2
6/43
Technical Overview
8/15/2019 JASIGWeb2LearningDec05v2
7/43
8/15/2019 JASIGWeb2LearningDec05v2
8/43
www.brantacan.co.uk for these and many more great bridges
8/15/2019 JASIGWeb2LearningDec05v2
9/43
8/15/2019 JASIGWeb2LearningDec05v2
10/43
From OReilly
http://www.oreillynet.com/pub/a/oreilly/tim/news/2005/09/30/what-is-web-20.html
8/15/2019 JASIGWeb2LearningDec05v2
11/43
Agenda
SOA and Web 2.0
AJAX
Web 2.0 for eLearning Reflection
8/15/2019 JASIGWeb2LearningDec05v2
12/43
What is Ajax?
From Jesse James Garretts paper Ajax: A newApproach to Web Applications http://www.adaptivepath.com/publications/essays/archives/000385.php
AJAX is a group of technologies
XHTML and CSS give standards based presentation Dynamic display and interaction using the DOM
Data interchange and manipulation using XML andXSLT
Asynchronous data retrieval using XMLHttpRequestand Javascript binding it all together
8/15/2019 JASIGWeb2LearningDec05v2
13/43
What does AJAX enable?
8/15/2019 JASIGWeb2LearningDec05v2
14/43
AJAX example 1
Activity
AJAX
Scrolling in a mapping website
Click on a right arrow to refresh whole page
Drag map area to the right
--and watch the map scroll,
likeGoogle Maps
Old Style
8/15/2019 JASIGWeb2LearningDec05v2
15/43
AJAX example 2
Activity
AJAX
Old Style
Interacting in online forum
Type message, click Submit,
regularly click "check new messages"
Type messages, and wait as new replies
appear automatically
without needing your interaction
8/15/2019 JASIGWeb2LearningDec05v2
16/43
AJAX example 3
Activity
AJAX
Old Style
Looking up a word in a dictionary
Enter the word, and click Submitto see a definition for that word
Begin typing the word,
see possible matches as you type
and the definitions as soon as youfinish typing, like ObjectGraph
8/15/2019 JASIGWeb2LearningDec05v2
17/43
8/15/2019 JASIGWeb2LearningDec05v2
18/43
AJAX advantages
AJAX has the ability to request/receive data fromthe webservice without refreshing the whole
page (great for responsive GUIs,portlets etc...)
load a page and AJAX runs in the background
communicating with web services.
Google, Yahoo etc. now see AJAX as delivering
the "one web page as application
develop client side "frameworks" to manage application
complexity within "one web page
8/15/2019 JASIGWeb2LearningDec05v2
19/43
Agenda
SOA and Web 2.0
AJAX
Web 2.0 for eLearning
Reflection
8/15/2019 JASIGWeb2LearningDec05v2
20/43
Web2.0 for Learning
Work from a Partnership betweenUniversity of Hull
( Robert Sherratt and Steve Jeyes)
Icodeon Ltd (Warwick Bailey)
NRICH Maths at CambridgeUniversity
(Mike Pearson and Charlie Gilderdalemainly)
A UK JISC ELF demonstrator using the ADL coLab/ ISIS/ ASSIS SimpleSequencing outputs andNRICHs wealth of developing Maths learningactivities / problems etc
8/15/2019 JASIGWeb2LearningDec05v2
21/43
Why did we do it ?
Easy creation of standards conformant sequencedlearning trails incorporating resources from NRICH
Introduce explorative games-based educational
environments
Use Simple Sequencing creatively to help a learner
capture pedagogical strategies for problem solving
(Systematics teaching)
develop thoughtful play leading to useful reflectiveinsights and methods of solution
8/15/2019 JASIGWeb2LearningDec05v2
22/43
Capturing the Pedagogy
Trying to reflect Charlie Gilderdales
Classroom practice
Explorative and developing systematic
approach
Reflect on evidence / knowledge to produce
deep learning
8/15/2019 JASIGWeb2LearningDec05v2
23/43
V Card Trail
Teaching Systematics
The structure and tools for problems
Capturing Teacher / Learner dialogue
Charlie Gilderdale storyboarding with 138 ppts withproblems , hints, directions etc
Converted to active simulation (Flash) and relevantdocs (XHTML etc)
Being sequenced to mimic the appropriate Teacherintervention
8/15/2019 JASIGWeb2LearningDec05v2
24/43
Card 11Increment
3No. of
solutions
1Start no.
3Length of
arms
n/aStart Number
Range
n/aIncrement range
n/aTime allowed
NoTimed
Hint text:Try all the different possible numbers at the bottom.
Objective:Find all solutions
Submit sequence:Finished if learner has found all solutions and thinks so.
Suggested Level: 1
8/15/2019 JASIGWeb2LearningDec05v2
25/43
8/15/2019 JASIGWeb2LearningDec05v2
26/43
Planet Vogsphere
8/15/2019 JASIGWeb2LearningDec05v2
27/43
Planets unavailable grey
8/15/2019 JASIGWeb2LearningDec05v2
28/43
Demo and Fallback
8/15/2019 JASIGWeb2LearningDec05v2
29/43
8/15/2019 JASIGWeb2LearningDec05v2
30/43
8/15/2019 JASIGWeb2LearningDec05v2
31/43
8/15/2019 JASIGWeb2LearningDec05v2
32/43
8/15/2019 JASIGWeb2LearningDec05v2
33/43
8/15/2019 JASIGWeb2LearningDec05v2
34/43
Technical Overview
8/15/2019 JASIGWeb2LearningDec05v2
35/43
Running AJAX
Used To dynamically update our "menu".
(i) A sequencing request(start, continue, previous etc) is sent to SS
(ii) The sequencing service(SS) uses the sequencing engine to figure outwhat activity (SCO) is next in sequence.
(iii) This process changes the state of the entire sequencing activity treeheld by the sequencing service.
(iv) Next activity (SCO) is sent to the browser.
(v) When next activity (SCO) has loaded, this triggers an AJAX call to getthe state of the sequencing activity tree from SS
(vi) state of the sequencing activity tree held by SS is returned to thebrowser (without refreshing) and used to update the "menu".
Thus "menu" items (visible/invisible, active/greyed out, expanded/collapsedetc) were continually dynamically updated with every change in state
8/15/2019 JASIGWeb2LearningDec05v2
36/43
Agenda
SOA and Web 2.0
AJAX
Web 2.0 for eLearning
Reflection
8/15/2019 JASIGWeb2LearningDec05v2
37/43
Why is MakingTracks Web 2.0?
From Tim OReillys paper What is Web 2.0 featuresused are
http://www.oreillynet.com/pub/a/oreilly/tim/news/2005/09/30/what-is-web20.html
AJAX group of technologies
Small pieces (joined web components) Rich user Experience
Play / game based
Granular addressable content
Emergent - user behaviour not predetermined
8/15/2019 JASIGWeb2LearningDec05v2
38/43
WS data exchange styles
Four levels: RPC/encoded
RPC/literal
Document/encodedDocument/literal/wrapped
Doc/literal wrapped enables the XML
to be sent as a single object and is WS-Icompliant
8/15/2019 JASIGWeb2LearningDec05v2
39/43
What did AJAX do
Enabled by the document literal model dataexchange
Allows the exchange of native XML between
the service and client
The Ajax client allows the parsing of whole
XML objects using XSLT
Enabled us to display adaptive dynamic
menus for the first time
8/15/2019 JASIGWeb2LearningDec05v2
40/43
AJAX Reflections
AJAX is very lightweight, fast in development and wellsupported by all modern browsers.
Once a Web Service "provider" has been published,creating a simple AJAX client "consumer" is easy
Just need a text editor to write XHTML and JavaScript.
This contrasts strongly to Web Services invoked fromweb applications, or calling BPEL engines from webapplications
require much more time, effort and infrastructure to puttogether
8/15/2019 JASIGWeb2LearningDec05v2
41/43
Ajax enabled SOA
Ajax interfaces enable the smaller scale, rapidintegration of services and their user interfaces
If you can start to connect your user interfaceto your services on the back end, then you've
really got something. It would [bring] thepossibility of service reuse into a vendor-neutralclient tier.
Pieter Humphrey Senior Product MarketingManager, BEA Systems Inc.
8/15/2019 JASIGWeb2LearningDec05v2
42/43
8/15/2019 JASIGWeb2LearningDec05v2
43/43
Questions
www.hull.ac.uk/esig