Mon, June 9, 2003 - PowerPoint PPT Presentation

1 / 42
About This Presentation
Title:

Mon, June 9, 2003

Description:

Mon, June 9, 2003. JA-SIG Conference, Westminster, CO. Planned ... Bug reporting. Mon, June 9, 2003. JA-SIG Conference, Westminster, CO. uPortal Mailing Lists ... – PowerPoint PPT presentation

Number of Views:38
Avg rating:3.0/5.0
Slides: 43
Provided by: KenWe8
Category:
Tags: june | mon

less

Transcript and Presenter's Notes

Title: Mon, June 9, 2003


1
uPortal Roadmap
  • Ken Weiner, UNICON-IBS
  • Dan Ellentuck, Columbia University

2
Overview
  • Release timeline
  • uPortal 2.1
  • New features for uPortal 2.2
  • Beyond uPortal 2.2

3
uPortal Release Timeline
1st Release
Performance
Misc.
1.0 Jul
1.6Jun
2.1 Dec
2.0.1 Apr
2.1.2 Apr
2.1.3 Jun
2.1.x Oct
2001
2003
2000
2002
1.5 Feb
2.0 Feb
2.2 Oct
2.0.2 Jul
2.0.3 Dec
2.1.1 Feb
Roles
XSLT Arch.
4
uPortal CVS File Lines
Source http//www.rootbin.com/cgi-bin/cvsmonitor/
cvsmonitor.pl?cmdviewBrowseModulemoduleJASIG.uP
ortal on June 7, 2003
5
uPortal CVS karma 2000-2003
Source http//www.rootbin.com/cgi-bin/cvsmonitor/
cvsmonitor.pl?cmdviewBrowseModulemoduleJASIG.uP
ortal on June 7, 2003
6
uPortal 2.1 Features
  • Applet publishing
  • CWebProxy enhancements
  • Local connection context
  • Channel rendering groups
  • Remote channels
  • Groups and permissions managers
  • Composite group service LDAP impl.
  • Usage statistics gathering
  • CAR file support
  • JNDI data sources

7
Planned for uPortal 2.2
  • Aggregated layouts
  • Integrated preferences management
  • Internationalization
  • Multiple permissions sources
  • WSRP client, server
  • Channel archive (CAR) improvements
  • Channel publishing tool
  • Transient channels
  • Secure channels
  • XML parser independence
  • LDAP Context Lookup

8
Aggregated Layouts
  • Experience constructed for the end user by the
    implementers/administrators of the portal
    combined with the end user's customized content
  • System for constructing, managing, and
    administering grouped content, such that the
    presence and level of visibility of this content
    is guaranteed to appear in a users layout
  • System allowing users to subscribe to grouped
    content

9
Aggregated Layouts
Fragment aggregation
A user layout constructed from pre-defined layout
fragments
10
Aggregated Layouts
Subscribing to fragments
Health Legal Services Column
User adding content that has been grouped by
content administrators
Tab by Faculty and course
Departmental Calendar and Events Column
11
Preferences Separate Channel
12
Integrated Preferences
Source http//www.immagic.com/uPortalprefs/tour/
13
Adding a New Column
Source http//www.immagic.com/uPortalprefs/tour/
14
Content Subscription - Channels
Source http//www.immagic.com/uPortalprefs/tour/
15
Content Subscription - Fragments
Source http//www.immagic.com/uPortalprefs/tour/
16
Internationalization
I18N
  • Support for multiple locales
  • Locale Language Country
  • Levels of personalization
  • uPortal installation
  • Layout or profile
  • Channel definition
  • Channel instance
  • Session

17
Locales in ChannelRuntimeData
  • public class ChannelRuntimeData
  • .
  • .
  • public Locale getLocales()
  • .
  • .

18
Groups and Permissions Roadmap
  • Introduction to Groups and Permissions
  • A little past history
  • Current Release Whats in, whats missing
  • Plans for Future Releases 2.2 and beyond

19
Introduction to Groups and Permissions
  • What do these systems do?
  • They collaborate on authorization deciding what
    a user can see and do. In the portal, the most
    basic authorization question is, what channels is
    a user is permitted to subscribe to and render.
  • Permissions manages authorization data and
    answers questions about what permissions a user
    has.
  • Groups is a more general and lower-level service
    that manages membership information about portal
    entities, enabling the portal operate on these
    entities collectively. Besides authorization, it
    supports other group-y activities like channel
    publication and layout management.

20
Introduction to Groups and Permissions
  • Why does this matter to you?
  • Any uPortal deployment beyond prototype will
    spend time and effort integrating Groups and
    Permissions with pre-existing external resources,
    e.g., LDAP.
  • The success of this integration is a good index
    of how well the portal as a whole collaborates
    with its surroundings.

21
Prior Releases some history
  • Ancient History Release 1.x
  • Authorization performed by roles framework.
  • Role is an arbitrary symbol with some
    significance to the portal, e.g., Publisher,
    Developer, Administrator, Honored Guest, etc..
  • Each user had a list of roles.
  • Portal could query roles framework to find out
    what roles a user had and act accordingly.
    Example only users with the role Publisher were
    permitted to publish channels.

22
Prior Releases some history
  • Recent History Release 2.0
  • Roles framework split in half
  • Groups service to track user roles (memberships)
  • Authorization to compute user permissions.
  • Rationale
  • Groups have uses that transcend authorization.
  • Wanted richer authorization model to include a
    Permission that authorized a user or principal to
    perform some activity on some target in a context
    provided by some owner.
  • The process of assessing a users memberships is
    different from deciding what those memberships
    entitle a user to do.

23
Prior Releases some history
  • Recent History Release 2.0
  • Included
  • Groups model
  • Groups service API
  • Groups Manager channel
  • Permissions model
  • Authorization service API
  • Permissions Manager channel
  • But, Groups and Permissions in Release 2.0 were
    essentially prototypes. Even though they worked,
    they only worked with the reference portal
    database, so you had to re-implement one or both
    of them if you wanted to integrate them with
    pre-existing external services, like LDAP, which
    is what any medium- to large-scale portal
    deployment had to do.

24
Current Release whats in, whats missing
  • Groups and Permissions in Release 2.1
  • Groups rewritten as a composite service with
    multiple component services, each with its own
    group source and its own adaptor to make the
    external information look like group memberships.
  • Highly configurable. Group sources can be added
    or dropped by editing a configuration file and
    restarting the portal.
  • Sources can have varying relationships to the
    composite service internally vs. externally
    managed read-write or read-only.
  • All group information aggregated by the composite
    service looks the same to clients they do not
    have to be aware of service of origin.
  • Foreign group memberships enables creation of new
    groups (roles) out of old ones. Example a group
    derived from LDAP, supplemented by memberships
    from a group of read from the user database of a
    legacy system, plus additional members not found
    in any current group source all appear to be
    members of the same group.
  • Two adaptors LDAP and reference portal db.
  • All permissions derived from a single source
    reference portal db.
  • Logic for authorization can be overridden on a
    per-call basis (pluggable permission policy).

25
Current Release whats in, whats missing
  • Current Release bottom line
  • Pros
  • Lots of flexibility for configuring multiple
    sources of group information.
  • LDAP support.
  • Moderate flexibility in managing authorization,
    including pluggable permission policy.
  • Cons
  • Not tested under heavy load.
  • Single source of permissions.
  • Can be tough to get going (learning curve).

26
Plans for Release 2.2
  • Groups and Permissions 2.2
  • Improvements to LDAP adaptor. Caching, pre-load,
    etc.
  • New Filesystem adaptor makes groups out of files
    with lists of user IDs. Can create a group
    system with minimal effort. Could be used to
    bridge deployment effort and encourage
    experimentation.
  • Group Manager usability enhancements more
    flexible permission policy makes it easier for
    native channels to use group manager servant to
    collect group selections.
  • Support for multiple sources of Permissions,
    including pluggable priority policy for deciding
    which source takes precedence.

27
Remote Channel Web Service
Swing client
Channels
Web Service
SOAP
Channels
uPortal
WSDL
uPortal
28
Web Services for Remote Portals (WSRP)
  • Developed by OASIS
  • WSRP will define
  • A WSDL interface description for invocation of
    WSRP services
  • How to Publish, Find, Bind WSRP services and
    metadata
  • Markup Fragment Rules for markup emitted by WSRP
    services
  • Current spec
  • 0.95, April 24, 2003

Source http//www.oasis-open.org/committees/wsrp/
presentations/wsrp_overview.ppt
29
WSRP Interfaces
  • Markup
  • Enable embedding of Producer markup
  • Service description
  • Queries the entities of the producer
  • Portlet entity management
  • Manage entities within the Consumer
  • Registration
  • Consumer registers with Producer

30
Remote Channel Web Service
Authenticate
credentials
Instantiate channel
fname
instance identifier
Web Service Client
Render channel
Web Service
instance identifier, runtime data
channel markup
Receive event
instance identifier, portal event
Free channel
instance identifier
Logout
WSDL
31
Channel ARchives (CAR)
  • Packaging and deployment of channel code and
    resources
  • WEB-INF/cars directory ? .car files
  • Car resource worker
  • org.jasig.portal.car.CarResourceWorker

32
CAR Viewer (Car Lot ?)
CAR file is a zip containingchannel sources,
stylesheets, and resources such as images
Images areloadedfrom car file
33
CAR Improvements
  • Support of more browser-accessible file types
  • Automatic recognition of new or updated CAR
  • Automatic channel publication
  • Creation of database tables for a channel
  • Externalized CAR resources
  • Third party library support
  • Ability to deploy services and channel types

34
Channel Publishing Tool
  • Maintain channel definitions as XML descriptors
  • org.jasig.portal.tools.chanpub package
  • ant pubish Dchannelmychannel.xml

35
Channel Definition Descriptor
ltchannel-definitiongt lttitlegtMy
Channellt/titlegt ltnamegtMy Channellt/namegt
ltfnamegtmy-channellt/fnamegt ltdescgtMy very own
channellt/descgt lttypegtCustomlt/typegt
ltclassgtedu.myschool.portal.channels.CMyChannellt/cl
assgt lttimeoutgt30000lt/timeoutgt
lthaseditgtNlt/haseditgt lthashelpgtNlt/hashelpgt
lthasaboutgtNlt/hasaboutgt
ltcategoriesgtltcategorygtApplicationslt/categorygtlt/cat
egoriesgt ltgroupsgtltgroupgtEveryonelt/groupgtlt
/groupsgt ltparameters/gt lt/channel-definit
iongt
36
Transient Channels
  • Channels appear on demand
  • Not needed anymore in user layout
  • Preferences (CUserPreferences)
  • Channel Admin (CChannelManager)

http//localhost8080/uPortal/.uP?uP_fnameport
al/userpreferences/general
37
Beyond uPortal 2.2
  • Layout fragment management
  • XLIFF-based channel development
  • WSRP service implementation
  • JSR-168 portlet wrapper
  • Channel deployment automation
  • GUI for registration of XSLT stylesheets
  • Channel notification service

38
Plans for Release 2.2 and Beyond
  • Groups and Permissions post-2.2
  • Enhance Permission design to include a
    higher-level Permission object, a Permission-Set,
    containing multiple Permissions for a given
    target, activity or owner. Meant to model a
    complex role whose targets or activities could
    vary depending on the group or user associated
    with it. Example Permission-Set for Club
    Treasurer could contain multiple activities that
    remain constant, but whose targets vary depending
    on the identity of the club Glee Club, Debating
    Society, etc.
  • Rework Permissions Manager for pluggable
    permissions policy, multiple permission sources
    and usability enhancements.
  • Additional group adaptors contributed by the
    uPortal community.

39
Developer Meetings
  • Set goals, prioritize features, technical
    discussions, work assignments
  • 2 per year, usually in March and August
  • Alternate east coast / west coast
  • Previous meetings
  • University of New Mexico, 3/2002
  • Memorial University of Newfoundland, 8/2002
  • SCT, 3/2003
  • Next meeting
  • Cornell University, 8/2003

40
Open Source Channels
  • portal_channels CVS repository
  • Blackboard - CalPoly
  • Bookmarks - Various
  • UBC_AddressBook - UBC
  • UBC_Webmail - UBC
  • Classifieds Iowa State
  • Elections Iowa State
  • Missing components
  • Release managers
  • Mailing lists
  • Bug reporting

41
uPortal Mailing Lists
  • jasig-announce_at_unm.edu
  • Low traffic
  • Open membership
  • uPortal releases, conferences, training classes
  • jasig-portal_at_unm.edu
  • High traffic
  • Open membership
  • Discuss anything related to uPortal
  • jasig-dev_at_unm.edu
  • Medium traffic
  • Membership restricted to uPortal framework
    developers
  • Coordination of development work

42
The End
Questions ?
Speaker Evaluation Info
  • Speakers Ken Weiner and Dan Ellentuck
  • Presentation Title uPortal Roadmap
  • Date 06/9/2003
  • Time 330 PM 430 PM
  • Room Westminster I and II
Write a Comment
User Comments (0)
About PowerShow.com