overview of sakai technology
DESCRIPTION
Overview of Sakai Technology. Mark J. Norton Senior Technical Consultant The Sakai Project. Welcome!. SEPP Summer Conference June 10, 2005 Baltimore, Maryland. Overview. Quick Technical Overview What’s New in Sakai 2.0 Kernel Services Portals Sakai Technical Development - PowerPoint PPT PresentationTRANSCRIPT
SEPP Technical Presentation - June 2005 1
Overview of Sakai Technology
Mark J. Norton
Senior Technical Consultant
The Sakai Project
SEPP Technical Presentation - June 2005 2
Welcome!
SEPP Summer ConferenceJune 10, 2005
Baltimore, Maryland
SEPP Technical Presentation - June 2005 3
Overview
• Quick Technical Overview
• What’s New in Sakai 2.0– Kernel– Services– Portals
• Sakai Technical Development– Getting Involved– Anticipated Changes
SEPP Technical Presentation - June 2005 4
What is Sakai?
• Sakai is a Collaboration Learning Environment.
• It is a platform for modular tools.
• It’s also bundled support for:– Course management– Learning delivery– Collaboration, work, and administration
SEPP Technical Presentation - June 2005 5
The
Sak
ai F
ram
ewor
k
SakaiService
SakaiService
SakaiService
SakaiService
Sakai Tool Sakai Tool Sakai Tool
What is a Framework?
• A “framework” is like a “hosting environment”• It is the stuff that “surrounds” the user-programmable
parts “inside”• This framework includes common services that can
be used to build more complex services.
SEPP Technical Presentation - June 2005 6
Aggregator
Presentation
Tools
Services
Client
System
The
Abs
trac
t S
akai
Env
ironm
ent
What is an Architecture?
• Very abstract• The part that doesn’t change• Defines common terminology• Usually not heavily debated• Is not the implementation
detail at all
SEPP Technical Presentation - June 2005 7
Architecture .vs. Framework
Aggregator
Presentation
Tools
Services
Client
System
The
Abs
trac
t S
akai
Env
ironm
ent
The
Sak
ai F
ram
ewor
k
InternalAggregator
Sakai ToolPresentation
SakaiTool Code
ApplicationServices
FrameworkServices
PresentationSupport
The
Sak
ai T
ool E
nviro
nmen
t
ExternalAggregator
System
Architecture
Framework
The Sakai Architecture leads to the design of a Sakai Framework
SEPP Technical Presentation - June 2005 8
The Sakai Framework
JSF
Tools
Application Services
Portal
Common Services
Kernel
The Sakai Framework consists of three essential parts: JSF to manage presentation and implement the Style Guide, Common Services to provide essential service support, and the kernel to provide a basic web application environment.
SEPP Technical Presentation - June 2005 9
What’s New in Sakai 2.0?
• A Completely New Kernel– Flexible support for applications
• Service Transition– Legacy Services moving forward– New Common Services
• Portals– Now: Charon and Mercury– Later: Astro and uPortal
SEPP Technical Presentation - June 2005 10
New Kernel Features
• Login and Authentication
• User Sessions
• Tool Placement
• Component and App Registration
• Dependency Injection via Spring
• Broader UI support (Servlet, JSP, myFaces)
SEPP Technical Presentation - June 2005 11
Legacy Services Start to Migrate
• The Legacy Authorization service is still in place.
• Changes were made to legacy services so they will work with new kernel.
• Work being done on Content Hosting.
• Providers replace plug-ins.
SEPP Technical Presentation - June 2005 12
Legacy Services• alias• announcement• archive• assignment• calendar• chat• content• coursemanagement• digest• discussion• dissertation• email• event• id• message
• news• notification• preference• presence• realm• resource• security• site• time• user• CVS• cluster• component• config• courier
• current• email• log• memory• portal• session• sql
SEPP Technical Presentation - June 2005 13
Providers
• Providers are a way to “look someplace else” for data.
• These other place can be a remote service or a database.
• Sakai is working on well known database schemas to allow data to be moved in via intermediate databases.
SEPP Technical Presentation - June 2005 14
New Common Services
• Several key services are being completely re-designed:– Authorization– Super Structure– Course Management
• These will enable hierarchical site organization and improve integration.
SEPP Technical Presentation - June 2005 15
The Sakai Common Services
Authorization
Authentication
SuperStructure
RepositoryAgent / Group
UuidType
SEPP Technical Presentation - June 2005 16
The Authorization Structures
Group
Group Group
Agents Agents
Group Tree UCD
English Science
Staff Biology
BIO-101
Section
Site
Tools
Dean
Prof.
Super Structure
Chat.Read
Email.Write
Assess.Grade
Site.Create
Functions
WHO CAN-DO WHAT?
SEPP Technical Presentation - June 2005 17
sakai
UM
EE
EE101
S123
Off101
chat-tool dir/
file.txt
rsrc-tool
layout
Group-EE-Students
Group-UM-Students
chat-tool
GRP1
GRP2
Chat-channel-0439
Sakai Super Structure
Note: this is not areporting structure,Rather, it is a way toorganize resourcesand determine access to them.
SEPP Technical Presentation - June 2005 18
Portals
• Sakai will continue to offer it’s own portal.
• These are being rolled out in Sakai 2.0 and 2.1.
• Support for uPortal is being moved into place based on WSRP work by Anthony and Chuck.
SEPP Technical Presentation - June 2005 19
Charon
• Charon is a new version of the Sakai portal that supports flat worksites and legacy authorization.
• It is integrated with the new Sakai kernel, so it is more robust, flexible, and extensible.
• It works pretty much the same as before (but look for a new Sakai skin!).
SEPP Technical Presentation - June 2005 20
Mercury
• Mercury is a development portal, new in Sakai 2.0.
• It provides some system level information to help developers.
• Allows tools to be accessed independently.
• No more need for tunneled access.
SEPP Technical Presentation - June 2005 21
Astro
• Astro will be the default Sakai portal in Sakai 2.1.
• It will support hierarchical organization of projects and courses, including inheritance of permissions.
• It will use the new Authorization Common Service.
• Will require some admin changes.
SEPP Technical Presentation - June 2005 22
uPortal
• Anthony Whyte and Charles Severance have been working on adding WSRP support to Sakai (for the IMS TPP project).
• This should also provide support for uPortal integration as well.
• Coordination and development will be needed from both Sakai and JA-SIG.
SEPP Technical Presentation - June 2005 23
Getting Involved in Sakai
• Sakai is a community based, open source development effort.
• That means that we need many people to get involved.
• Not everyone needs to be a developer:– UI specialists -- Database people– Testing and QA -- Documentation
SEPP Technical Presentation - June 2005 24
Kinds of Sakai Development
• Framework development – core
• Service development - specialists
• Tool development - general
• User interface design – HCI specialists
• Database Migration – DBAs, etc.
• Skins and style sheets - designers
SEPP Technical Presentation - June 2005 25
Framework Development
• Chuck, Glenn, Lance, Craig and others will continue to work on the Sakai Framework.
• However, there is room for other contributors:– Internationalization– Accessibility– Modularity, Plug’n’Play, etc.
SEPP Technical Presentation - June 2005 26
Service Development
• Services are the heart of Sakai functionality.
• Legacy services will be migrated.
• Common services, completed.
• Consider other services, though:– Work flow, SCORM, instructional design,– Content management, library services, etc.
SEPP Technical Presentation - June 2005 27
New Tool Development
• Existing tools are being reviewed and re-designed to make them Style Guide compliant.
• New tools are being proposed.
• What tools would you like to build?
SEPP Technical Presentation - June 2005 28
User Centric Design
User FeatureRequests
Sakai StyleGuide
User InterfacePrinciples
Requirements
ConceptualDesign
EvaluationBy Users
ToolDesign
ServiceRequirements
TestPlan
SEPP Technical Presentation - June 2005 29
Database Migration
• Sakai currently supports:– Oracle– MySQL– Hypersonic
• Others we could consider include:– PosGreSQL– MS SQL Server– Etc.
SEPP Technical Presentation - June 2005 30
Governance
• We framing the discussion of how Sakai should be governed at this conference.
• If you care about Sakai, please contribute to this dialog!
• Governance many not specify what gets built, but it may determine how fast it gets there.
SEPP Technical Presentation - June 2005 31
Starting a Work Group
• The Sakai discussion groups will continue to serve as a place to incubate ideas around.
• If there are people who are interested in turning these ideas into code, a work group can be created.
• Sakai provides on-line support for WGs.
• Submit a WG proposal, it’s easy!
SEPP Technical Presentation - June 2005 32
CVS Process
• Server: cvs.sakaiproject.org• CVS Structure
– The bundled release of Sakai is now managed under the sakai2 CVS root.
– Use scratch to hold prototypes, etc.– Use config to distribute completed (etc) code.
• Sakai Releases– Part of the governance discussion is to figure out
how future Sakai releases will be managed.
SEPP Technical Presentation - June 2005 33
Quality Assurance
• Carol Dipple is leading the Sakai QA effort.
• We all benefit from the QA process.
• Sakai is getting better at testing release candidates, but we still have a ways to go.
• Please help by volunteering to test.
SEPP Technical Presentation - June 2005 34
Bug Tracking
• Full-time bug manager (Peter Knoop)
• [email protected]• [email protected]• bugs.sakaiproject.org• Open to the public to view and
submit• Will increasingly be the focus
of new work assignments
SEPP Technical Presentation - June 2005 35
Documentation
• Sakai has several kinds of documentation:– The KnowledgeBase at Indiana U.
• https://www.indiana.edu/~sakaikb/
– Sakaipedia– Published documents and reports– JavaDoc
• If you can’t find what you need, please consider writing it.
SEPP Technical Presentation - June 2005 36
Documentation
• Collab.sakaiproject.org– This is where most projects are organized.
• Sakaipedia– A collaborative documentation
effort similar to Wikipedia.
• Formal documents– The kernel and key services are formally
documented.
SEPP Technical Presentation - June 2005 37
Questions?