A cloud service platform for providing Web Application for the higher education sector.
This is a short presentation of some of the results of the work with the prototype. Stay tuned for updates...
In-Depth Performance Testing Guide for IT Professionals
UNINETT IoU - UWAP Prototype
1. UWAP
A Cloud Service Platform.
Andreas Åkre Solberg
UNINETT, WebTechnology Research and Development
11. December 2012
2. Once upon a time
Web Single Sign-On with Feide was sufficient to provide
a seamless user experience across services.
3. Collaboration on Internet
✤ A dynamic working groups spanning multiple organizations, work
together using digital collaboration tools:
✤ A wiki
✤ Document sharing tool
✤ Meeting planner and calendar
✤ A Web meeting tool
✤ A web forum or mailinglist
4.
5. to provide a satisfying end-user experience
spanning multiple collaboration services today,
SSO is not sufficient.
6. Traditional approach
App1
✤ Does not scale
✤ Not dynamic
User
directory
App2
✤ (Often) only in one direction
Batch provisioning
of users and groups
App3 ✤ But it works,
for some use cases
7. Modern services
✤ Modern collaboration services share a bunch of common components:
✤ Users and authentication
✤ Groups and authorization
✤ Invitation (mapping users and groups)
✤ Activity stream
✤ Notifications (mail and mobile push notifications)
✤ Data access with third party REST API
8. Service Platform Architecture
App App App App App
Super simple
integration
People search Groups and authorization
Calendar sharing REST API Engine
Activity stream Service Platform Notifications
Authentication Feide
UWAP
9. Service Platform Architecture
UWAP
UI UI UI App App App App
All platform UI built as
indepedent apps
People search Groups and authorization
Calendar sharing REST API Engine
Activity stream Service Platform Notifications
Authentication Feide
UWAP
10. SurfConext
Service Service Service Service
SAML SAML SAML SAML
Groups and authorization
SurfConext Ad-hoc Group
management
Authentication SURFfederatie
11. Facebook
Third party apps App App App App
Super simple
integration
Notifications
Social network / groups
Activity stream Application
Authentication
Focus on individual rather than group
12. Groups
Ad hoc group
App App App
✤ Dynamic large-scale groups from Feide
management
attributes
✤ Organization, department
✤ Affiliation: like «all students at NTNU»
Service Platform Storage ✤ Ad-hoc groups
✤ Groups from external systems
✤ FS
Attributes
from Feide FS SurfConext +++ ✤ KIND, etc.
13.
14. Activity streams
› One activity stream per group.
ng
eti
› Generic information model
me
or ge
› Acitivites posted to one or more groups
Ag pa
ew
a
ou s
at wiki
an
gr if i
p
he rle
led
e!» a
o t ho
om ted
Public / Private
du
dt rT
he
elc rea
de se
Normal / Promoted
sc
«w as c
ad ew u
on
re
m
n
d
Si
A
An
User interfaces
ng d
f»
eti an
› WebApp frontend .pd
me ed
re
nd rm
tu
› Mobile app frontend
tor tec
tte nfi
ll a co
ds hi
› Widgets
o u rc
wi eas
Cl «a
› API
dr
at file
An
da
re
ha
zs
ma
Ar
15.
16. Notifications
✤ The most important activity
updates
✤ Email and mobile push
notifications
✤ Personal preferences
17. Invitations, people search
✤ Protected with Feide
✤ Generic js library
✤ Very easy integration in
all applications that
needs to «add users».
18. Federated Widgets
✤ Embed content on remote site
✤ Challenge:
✤ secure environment
✤ authentication
19. Federated Widgets
✤ Super simple integration!
✤ Secure separation from container site
✤ Auto-detecting existing Feide session
✤ No server-side requirements...
20. Federated Widget
✤ The
group-context-aware
«webmeeting button»
using
eting ect
We bme onn
be C ting
Ado in mee
Jo
21. Feed Widget
Shows an aggregated feed of activities for the current
selected group across all collaboration tools.
Share widget
Can be easily integrated anywhere. Will share a link to the current web page
to the activity stream for the current user in a selected group context.
22. Feed Widget
Shows an aggregated feed of activities for the current
selected group across all collaboration tools.
RedMine
With Activity Stream Connector enabled.
26. How does it work
✤ Each app gets their own domain: myapp.eduapps.org
✤ App engine provides a javascript API to access all functionality
✤ The javascript engine communicates with app server using REST api.
✤ Let’s test it...