olivier liechti java architect sun microsystems p7: a pilot portal project for the k12 community in...

Post on 30-Jan-2016

214 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Olivier LiechtiJava architectSun Microsystems

P7: A pilot portal project for theK12 Community in Geneva, Switzerland

PEPC 2003

Pan European Portal Conference 2003

Agenda● Presentation of a K12 portal project

– Pilot for the State of Geneva, Switzerland– Delivered by Sun Professional Services

● Approach & methodology● Architecture

– Sun ONE platform & open source packages– 4 different modules delivered incrementally

● Demonstration (off-line)● Lessons learned● Questions & answers

Objectives● Share the experience gained

during the project● Explain how the portal is used

by the K12 community● Describe the pilot architecture● Review a number of Open

Source packages that fit nicely in any collaborative portal

Project Overview (1)● Partnership between:

– State of Geneva, Switzerland– Sun Microsystems

● Project owner– CTO for the State of Geneva (CTI)– Strong focus on e-Government– Want to establish a transversal portal

across departments (education, health, finance, ...)

● Project sponsor– Director of the Pedagogical Center for ICT

Project Overview (2)● The role of Sun Microsystems

– Take project leadership and deliver a complete solution.

– Take an active role in the capture of requirements and coaching of project team.

– Provide technical expertise.– Provide a platform for building a K12 portal.

● The approach– Iterative and incremental development– Early and frequent release of the system– Early involvement of portal users,

workshops and feedback gathering

Project Objectives● Pilot project● Explore the application domain

– Define high-level functional requirements– Implement them and provide a "sandbox"

to pilot users (teachers)– Iterative & incremental development,

participatory design, lots of workshops!● Evaluate the Sun ONE platform

– Design and implement a Sun ONE stack with the Sun ONE products.

● Integrate third-party packages

Project Timeframe● July 02 – November 02

– Analysis, design, implementation & evaluation

– Iterative process, evaluation started in August already

● December 02– End of the first evaluation period,

validation of the results.● January 03

– Extension of the pilot evaluation, with an increase in the number of participants

Approach & Methodology (1)● Iterative & incremental

development– Deliver system releases early and regularly– 4 modules delivered sequentially

● Involvement and coaching of users– Series of workshops, after each release– Super-users (teachers) had to come up

with usage scenarii for the generic tools● Initial requirement capture

– brainstorming workshops, high-level requirements definition

– Selection and definition of priorities

Approach & Methodology (2)● For every functional module

– Search for, evaluate and select a software package (Open Source if available)

– Integrate the user management of the package with the user management of the portal

– Develop a portal channel to present information on the desktop page

● Involve the customer team, so they can repeat the process in the future

● Show that S1PS can integrate heterogeneous technologies

Functional Requirements● Basic portal features

– personalization, aggregation, messaging, calendar, search

● Support identity management in a decentralized way

● Support role-based access to services

● Strong focus on collaborative tools– Collaborative Web spaces– Content Management System– Mailing lists and newsgroups

“Don't learn to use ICT. Use ICT to learn!”Raymond Morel, Director of CPTIC, Geneva

Project Sponsor

Non-Functional Requirements● Ease of use

– for the end-users– for the system administrator

● Localization● Stability & performance● Prepare for scalability and high-

availability, but do not address it explicitly during the pilot.

Subsystems● Core Portal

module– infrastructure– portal– messaging– calendar– search engine

● Collaborative Web module

● CMS module● Mailing lists

module● Newsgroups

module

Sun ONE stack Open Source packages

Core Portal Module (1)● Requirements

– Personalization– Aggregation– Identity

management– Communication– Search

● Hardware– 3 servers– 1 development

server

● Sun ONE Products– Portal Server 3.0– Directory Server– Messaging Server– Calendar Server– Sun ONE Web

Server– Compass– Personalized

Knowledge Pack

Collaborative Web Module (1)● Requirements

– Create a collaborative space, where people can browse and easily edit Web pages.

– The target is the workgroup (e.g. a class, biology teachers, a project team)

– Favor a lightweight approach, that does not require special tools on the client side.

● Application examples– Group assignments and collaboration– Never-ending story– Project management for interest groups

Collaborative Web Module (2)“TWiki is a leading-edge, web-

based collaboration platform targeting the corporate intranet world. TWiki fosters information flow within an organization; lets distributed teams work together seamlessly and productively; and eliminates the one-webmaster syndrome of outdated intranet content.”

http://twiki.org, mission statement

Collaborative Web Module (3)● Selected

software– http://twiki.org– perl

● Features– Any browser– Link management– Attachments– Revision control– Access control– Variables & plugins– Skins

● Pros– very lightweight– editing the content

is very fast● Cons

– don't expect "beautiful" documents

– need to learn the TWiki syntax

– not designed for scalability

Collaborative Web Module (4)

Collaborative Web Module (5)● Portal channel

– Quick solution: the URLScaper provider, but...– only works for non-protected URLs– Screen real-estate is an issue

● Identity management– TWiki provides its own user management– Users and groups are defined in TWiki topics– Every TWiki user has an associated TWikiUser

topic, with its data and preferences.– In this topic, the TWikiUser id is mapped with

the Web server user id

Browser Web server TWiki script

GET /twiki/bin/view

401 UnauthorizedWWW-Authenticate: Basic realm="twiki"

TWiki

UserTopic

GET /twiki/bin/viewAuthorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==

invoke

REMOTE_USER=john

lookup mapping

between web server user

and TWiki user

LDAP Server

auth

CMS Module (1)● Requirements

– Provide a mechanism to create and publish on-line documents, in a controlled manner.

– Support a basic validation workflow, where editors validate the content submitted by authors (then accessed by readers).

● Application examples– School newspaper– Assignments submitted on-line– One-to-many communication channel

between teacher and parents

CMS vs. Collaborative Web

AuthorsLecteurs

CMS (spip)

Éditeurs

explicit control and validation

Editors

Readers

induced control mechanisms

Collaborative

Web (twiki)Community of peers

CMS Module (3)

SPIP is a simple, yet powerful CMS system

http://spip.org

CMS Module (4)● Selected

software– http://spip.org– PHP, mysql

● Features– administrative

interface– LDAP interface– validation

workflow– forums– syndication

● Features (cont.)– keywords– search engine

● Pros– new instance can

be deployed very easily (by end-user)

– user friendly– very simple, yet

feature rich– elegant

CMS Module (5)● The dynamic sites consist of

categories, organized in a hierarchy● Articles and briefs are published in

these categories● Authors use the admin interface to

create and submit documents● Editors use this interface to define

categories and validate documents● Webmaster use tags to create

templates for the site

CMS Module (7)● Identity management

– First versions of SPIP stored users, passwords and roles in the mysql database

– SPIP 1.5 now offers an LDAP interface for authentication, and a basic mechanism for role assignment on initial login

● Portal channel– Display article headers in the channel– In the "edit" mode of the channel, users

can select from which SPIP categories

CMS Module (9)

Portal

Provider

SPIP

Abstraction

Layer in JavaSPIP

Database

SPIP

PHP

Web

Browser JDBC

JDBC

Client Presentation Business Integration Resource

Templates Core

Mailing Lists Module (1)● Requirements

– Support the creation and management of mailing lists

– Enable the definition of policies for these lists (access rights to archives, posting rights, etc.)

– Provide a web-based interface (localized) ● Application examples

– Teacher to students communication channel in a classroom

– Exchange of information between all teachers of the same branch

Mailing Lists Module (2)

http://sympa.org

Sympa is a very flexible mailing list manager

Mailing Lists Module (3)● Selected

software– http://sympa.org– perl, mysql

● Features– Multilingual– Customizable web

interface– Policies– Dynamic

membership– Document

repository

● Pros– very flexible– LDAP interface

for authentication and dynamic membership

● Cons– Need to run as

FASTCGI for good performance

Mailing List Module (4)

Mailing List Module (5)● Integration with Sun ONE Messaging

– One account for every mailing list– Pipe the messages to the Sympa daemon– Manage accounts through the web interface

● Identity management– Sympa offers an LDAP interface for

authentication and dynamic membership● Portal channel

– Display message headers in the channel.– Future work: display statistics, e.g. most

active list, number of messages, etc.

Mailing Lists Module (8)

Portal

Provider

Sympa

Abstraction

Layer in JavaSympa

Database

Sympa

perl

Web

Browser JDBC

JDBC

Client Presentation Business Integration Resource

Templates Core

Summary● Use TWiki if you want to

create collaborative spaces for workgroups

● Use SPIP if you need a publication workflow and good looking documents

● Use Sympa if you want to use mailing lists and newsgroups

Lessons Learned & Conclusions● Engaging users early and often in

the design process is very important● There is a strong demand for

collaborative tools in the K12 community

● The tools used for the project are not specific to the K12 domain – they can be used in other application domains

● Working with teachers is a lot of fun!

Q&A

top related