SEPP Technical Presentation - June Overview of Sakai Technology Mark J. Norton Senior Technical Consultant The Sakai Project
SEPP Technical Presentation - June Welcome! SEPP Summer Conference June 10, 2005 Baltimore, Maryland
SEPP Technical Presentation - June 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 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 The Sakai Framework Sakai Service Sakai Service Sakai Service Sakai Service 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 Aggregator Presentation Tools Services Client System The Abstract Sakai Environment 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 Architecture.vs. Framework Aggregator Presentation Tools Services Client System The Abstract Sakai Environment The Sakai Framework Internal Aggregator Sakai Tool Presentation Sakai Tool Code Application Services Framework Services Presentation Support The Sakai Tool Environment External Aggregator System Architecture Framework The Sakai Architecture leads to the design of a Sakai Framework
SEPP Technical Presentation - June 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 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 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 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 Legacy Services alias announcement archive assignment calendar chat content coursemanagement digest discussion dissertation event id message news notification preference presence realm resource security site time user CVS cluster component config courier current log memory portal session sql
SEPP Technical Presentation - June 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 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 The Sakai Common Services Authorization Authentication SuperStructure RepositoryAgent / Group UuidType
SEPP Technical Presentation - June The Authorization Structures Group Agents Group Tree UCD EnglishScience StaffBiology BIO-101 Section Site Tools Dean Prof. Super Structure Chat.Read .Write Assess.Grade Site.Create Functions WHOCAN-DOWHAT?
SEPP Technical Presentation - June sakai UM EE EE101 S123 Off101 chat-tooldir/ 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 a reporting structure, Rather, it is a way to organize resources and determine access to them.
SEPP Technical Presentation - June 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 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 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 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 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 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 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 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 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 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 User Centric Design User Feature Requests Sakai Style Guide User Interface Principles Requirements Conceptual Design Evaluation By Users Tool Design Service Requirements Test Plan
SEPP Technical Presentation - June Database Migration Sakai currently supports: –Oracle –MySQL –Hypersonic Others we could consider include: –PosGreSQL –MS SQL Server –Etc.
SEPP Technical Presentation - June 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 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 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 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 Bug Tracking Full-time bug manager (Peter Knoop) bugs.sakaiproject.org Open to the public to view and submit Will increasingly be the focus of new work assignments
SEPP Technical Presentation - June Documentation Sakai has several kinds of documentation: –The KnowledgeBase at Indiana U. –Sakaipedia –Published documents and reports –JavaDoc If you can’t find what you need, please consider writing it.
SEPP Technical Presentation - June 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 Questions?