uPortal Ken Weiner JA-SIG, IBS
CUMREC 2001 Ken Weiner, IBS JA-SIG Java In Administration Special Interest Group Conferences biannually Clearing house Collaborative projects
CUMREC 2001 Ken Weiner, IBS uPortal Community University of British Columbia my.ubc.ca Boston College Cal Poly San Luis Obispo College of the Holy Cross Columbia University Cornell University Interactive Business Solutions Meteor Project Memorial University of Newfoundland Plymouth State University Princeton University Rutgers University University of Delaware University of Hawaii University of California, Irvine University of Colorado University of New Mexico Villanova University Virtual Education Space (VES) Yale University
CUMREC 2001 Ken Weiner, IBS What is uPortal? Enterprise, horizontal portal Framework for presenting aggregated content (channels) Personalization Role-based access control Open source, collaborative effort Java web application XML transformations (XSLT)
CUMREC 2001 Ken Weiner, IBS Where does uPortal fit? DataApplications uPortal with Channels Browsing Devices People
CUMREC 2001 Ken Weiner, IBS What is a Channel? Displays content XML feeds Rich Site Summary (RSS) Legacy system An interactive application Bookmarks
CUMREC 2001 Ken Weiner, IBS Flexible Layouts Structures Tab / column Tree / column Themes Multi-column Multi-row Skins Matrix, Java
CUMREC 2001 Ken Weiner, IBS Content Transformation XML Stylesheet XHTML: Web Browser WML: Cell Phone HTML: PDA XSLT Processor
CUMREC 2001 Ken Weiner, IBS Tab / Column Layout
CUMREC 2001 Ken Weiner, IBS Tree / Column Layout
CUMREC 2001 Ken Weiner, IBS Multiple Target Devices
CUMREC 2001 Ken Weiner, IBS Interfaces Facilitate Implementation Alice wants to see the faculty calendar. Is Alice a faculty member? Look in our LDAP directory Contact our HR application or Interface Implementations
CUMREC 2001 Ken Weiner, IBS uPortal Interfaces Authentication Proving your identity Authorization Deciding what you can access User preferences Profiles, structure, themes, skins Channel information Availability and configuration
CUMREC 2001 Ken Weiner, IBS Release Schedule uPortal 1.0 July 2000 uPortal 1.5 February 2001 uPortal 1.6 June 2001 uPortal 2.0 Beta May 2001 uPortal 2.0 July 2001
CUMREC 2001 Ken Weiner, IBS What’s new in 2.0? Abstraction of layout Structure/theme transformations Standard channel events Standard CSS classes More flexible publish/subscribe User profile management JNDI lookup service WebProxy channel
CUMREC 2001 Ken Weiner, IBS Coming Soon Layout-specific user preferences management Fully-normalized database Support for “Wallet” authentication Integration of vendor content More support for cell phones and palm pilots
CUMREC 2001 Ken Weiner, IBS Support and Services uPortal Mailing List Interactive Business Solutions uPortal Implementation Services uPortal Training
CUMREC 2001 Ken Weiner, IBS Questions? Useful URLs
CUMREC 2001 Ken Weiner, IBS Going Live with JA-SIG’s uPortal Dave Frazer Associate Director ITServices The University of British Columbia
CUMREC 2001 Ken Weiner, IBS How it began Why uPortal Implementing the Reference code Sharing our Experience myUBC
CUMREC 2001 Ken Weiner, IBS 35k FTE students R1, Medical and Professional #2 in Canada Located in Vancouver University of BC
CUMREC 2001 Ken Weiner, IBS Access to information Collaborative Initiative JA-SIG uPortal Initiative Hit the ground running How it All Began
CUMREC 2001 Ken Weiner, IBS Attractions and Opportunities Technologies Open Source Small Clean, flexible, processing model The Portal Promise JA-SIG
CUMREC 2001 Ken Weiner, IBS Challenges Technologies new to us Developers reference implementation Unknown performance Unknown robustness Unknown reliability Deciding what functionality to deliver
CUMREC 2001 Ken Weiner, IBS What gave us the confidence to proceed? Useful, but not critical function Release date important but not critical Gradual release strategy Experienced development team Proven existing infrastructure BEA WebLogic Server Oracle RDBMS Sun E450 hardware
CUMREC 2001 Ken Weiner, IBS The major problem we faced Can we turn a reference implementaton into a production service?
CUMREC 2001 Ken Weiner, IBS Reference Implementations and Prototypes Demonstrate correct behaviour Environment is predefined Environment is assumed clean User behaviour expected to be reasonable Database assumed clean and maintained The 20% of the code that does correct things
CUMREC 2001 Ken Weiner, IBS Production Services Reasonable behaviour in an existing environment Wide audience Must behave reasonably all the time Databases must be maintained Need other 80% of the code
CUMREC 2001 Ken Weiner, IBS What we did to address the problem Froze the repository code Ported to the Oracle RDBMS Adapted to local authentication BEA WebLogic Servlet/JSP engine Team experienced in OS development
CUMREC 2001 Ken Weiner, IBS Other Challenges New technologies Selecting channel functionality
CUMREC 2001 Ken Weiner, IBS First Experiences In theory, theory and practice are the same. In practice, they are different Our first scaling problems Database problem recovery Database out of service Channels out of service
CUMREC 2001 Ken Weiner, IBS How did we achieve control? Few, well-behaved channels Minimal dependence on external resources Enhancements to database recovery Substantial hardware platform Avoided experimental changes Gradual release strategy
CUMREC 2001 Ken Weiner, IBS How successful were we? Users happy Confident we can grow New content limitations Forked from reference code Learned a lot
CUMREC 2001 Ken Weiner, IBS What we should have done (according to the rules) System testing Volume testing User environment testing Stress testing Load testing
CUMREC 2001 Ken Weiner, IBS We were lucky No wildly chaotic behaviours or hotspots were observed
CUMREC 2001 Ken Weiner, IBS Would we do it differently? Given our goals and requirements - … Probably not
CUMREC 2001 Ken Weiner, IBS What’s Next? Development of 2.x 1.0 -> 1.6 -> 2.x install myUBC server Implement more content Do the testing Target all students in Sept
Visit us at my.ubc.ca