Presentation is loading. Please wait.

Presentation is loading. Please wait.

UPortal Roadmap Patches, evolution, and revolution Andrew Petro, Yale University Eric Dalquist, Unicon.

Similar presentations


Presentation on theme: "UPortal Roadmap Patches, evolution, and revolution Andrew Petro, Yale University Eric Dalquist, Unicon."— Presentation transcript:

1 uPortal Roadmap Patches, evolution, and revolution Andrew Petro, Yale University Eric Dalquist, Unicon

2 uPortal Releases uPortal 2.4.3 Major Minor Patch

3 Types of releases Patch releases Patch releases Bug fixes, backwards-compatible Bug fixes, backwards-compatible Every 1-2 months Every 1-2 months Easy to upgrade Easy to upgrade Minor releases Minor releases New features and possible database changes New features and possible database changes Every 6-12 months Every 6-12 months Not trivial to upgrade Not trivial to upgrade Major releases Major releases Extensive changes Extensive changes Every 2-4 years Every 2-4 years Difficult to upgrade Difficult to upgrade 2.4.3 2.5.1 2.5.0 2.6.0 3.0.0

4 Marching towards a particular release Nightly build Nightly build “Milestone” “Milestone” Alpha Alpha Beta Beta Release Candidate Release Candidate General Audience Release General Audience Release

5 This Presentation uPortal 2.x Roadmap uPortal 2.x Roadmap uPortal 3.x Roadmap uPortal 3.x Roadmap Questions and Answers Questions and Answers

6 uPortal 2.x Roadmap 2-4-patches2-5-patches Towards 2.6 and beyond

7 What’s a Roadmap? 2.5.0 Happened. What’s in it? 2.5.0 Happened. What’s in it? 2.4.3 Plans 2.4.3 Plans 2.5.1 Plans 2.5.1 Plans 2.6.0 Opportunities 2.6.0 Opportunities 3.0.0 Revolution 3.0.0 Revolution

8 uPortal 2.5.0 Evolutionary improvement Incremental new features, Takes some work to upgrade Released 26 May 2005 2.5.0

9 2.5.0 features DLM DLM Better JSR-168 support Better JSR-168 support Require / embrace JDK 1.4 Require / embrace JDK 1.4 Chaining throwables Chaining throwables Support JDK 1.5 Support JDK 1.5 Spring Spring DOM3 / JAXP 1.3 DOM3 / JAXP 1.3 Threading / Concurrency library Threading / Concurrency library 2.5.0

10 DLM Alternative to ALM Alternative to ALM Pushed fragments managed as layouts of “fragment owners” Pushed fragments managed as layouts of “fragment owners” 2.5.0

11 What is DLM? User’s Layout Personal Preferences Declarative Configuration Fragment Owners

12 Library Tab 2.5.0

13 Library Tab Plus 2.5.0

14 Simple User Layout Management PersonDirectory Template Assignment TemplatePersonal Layout 2.5.0

15 Simple User Layout Management PersonDirectory Template Assignment TemplatePersonal Layout 2.5.0

16 “Distributed” User Layout Management PersonDirectory “Template” Assignment Dynamic “Template”Personal Layout 2.5.0

17 “Distributed” User Layout Management Person Directory Template Assignment Dynamic TemplatePersonal Layout 2.5.0

18 SLM? ALM? DLM? Currently: SLMALMDLM Where we’re going: SLM CLM

19 JSR-168 support improvements Expiration caching Expiration caching Redirects Redirects Window state changing in processAction Window state changing in processAction 2.5.0

20 JDK 1.4 / Chaining Throwables NullPointerException ChannelRenderingException PortalException 2.5.0

21 JDK 1.5 support Compiles and runs under JDK / JRE 1.5 Compiles and runs under JDK / JRE 1.5 2.5.0

22 Spring Declarative configuration Declarative configuration That’s about Java Objects, rather than about Strings That’s about Java Objects, rather than about Strings The sun is setting on static factories that read class names from portal.properties. The sun is setting on static factories that read class names from portal.properties. PersonDirectory as the first Springified component PersonDirectory as the first Springified component 2.5.0

23 uPortal 2.4.3 The next 2-4-patches deliverable Backwards compatible conservative fixes, enhancement Sharing of fixes for released code. 2.4.3

24 Adoption of threading library Backport-util-concurrent Backport-util-concurrent 2.4.3

25 Minor bugfixes 2.4.3

26 2.5.1 Backwards-compatible improvement. Bugfixes. 2.5.1

27 uPortal 2.6 And beyond 2.6.0

28 uPortal CVS head portal 2.5.0 2.4.0 2-4-patches 2-5-patches Head 2.4.1 2.4.3 … 2.5.1

29 Will there be a uP 2.6? Are there incremental improvements that could be made beyond uP 2.5 that would make you want to deploy 2.6? Are there incremental improvements that could be made beyond uP 2.5 that would make you want to deploy 2.6? So much so that there are developers, resources interested in working to make this happen? So much so that there are developers, resources interested in working to make this happen? Then it makes sense to produce uP 2.6. Then it makes sense to produce uP 2.6. 2.6.0

30 Some uP 2.6 ideas Continue to improve Layout Management Continue to improve Layout Management Stability, Stability, Stability Stability, Stability, Stability Have we stopped leaking memory yet? Have we stopped leaking memory yet? Skinning improvements, CSS/Divs as default example Skinning improvements, CSS/Divs as default example Groups and Permissions Groups and Permissions More Spring More Spring … 2.6.0

31 Serializable Sessions And sessions worth serializing And sessions worth serializing Beyond load balancing and clustering Beyond load balancing and clustering State-retaining failover * State-retaining failover * (For channels written to take advantage) (For channels written to take advantage)

32 JIRA for project planning Identify desired improvements Identify desired improvements Schedule for 2.6 Schedule for 2.6 “Assign” resources “Assign” resources Track to completion Track to completion 2.6.0

33 Lather, Rinse, Repeat Continue to incrementally improve uPortal 2.x so long as there’s interest and resources. Continue to incrementally improve uPortal 2.x so long as there’s interest and resources. 2.6.0

34 At some point Interest in continuing to develop uP 2.x wanes Interest in continuing to develop uP 2.x wanes Because there’s something better to work on Because there’s something better to work on And now, for uPortal 3 roadmap… And now, for uPortal 3 roadmap… 2.6.0

35 uPortal 3.0.0 What’s next in portal technology 3.0.0

36 uPortal 3.0: Overview Terminology and paradigm change: Channels replaced by Portlets Terminology and paradigm change: Channels replaced by Portlets Componentization of framework Componentization of framework Modular rendering pipeline Modular rendering pipeline Clean separation of business logic and persistence layer Clean separation of business logic and persistence layer Full support for uPortal 2 Channels Full support for uPortal 2 Channels Upgrade tools Upgrade tools 3.0.0

37 Portlet Domain Objects Portlet Application & Portlet Deployment Portlet Application & Portlet Deployment Information from portlet.xml Information from portlet.xml Generated from deployed applications Generated from deployed applications Portlet Application & Portlet Definition Portlet Application & Portlet Definition Deployment + Configuration Deployment + Configuration Maps application idioms to uPortal idioms Maps application idioms to uPortal idioms 3.0.0

38 Portlet Domain Objects Portlet Application & Portlet Entity Portlet Application & Portlet Entity Definition + Configuration Definition + Configuration Synonymous with channel publishing Synonymous with channel publishing Portlet Window Portlet Window Portlet Entities painted on the screen Portlet Entities painted on the screen Tracks the state of the portlet Tracks the state of the portlet Referenced by portal layout Referenced by portal layout 3.0.0

39 Domain Object Architecture Database DAO’s Registries DAO Implementations e.g. Spring JDBC Caching uPortal Framework Domain objects Transfer objects Domain Object Factories

40 WSRP Consumer and Producer Consumer Consumer WSRP4J consumer proxy portlet WSRP4J consumer proxy portlet Producer Producer Implementation of WSRP4J producer Implementation of WSRP4J producer Currently using Java Data Objects (JDO) Currently using Java Data Objects (JDO) Missing DAO layer consistent with uPortal 3 Missing DAO layer consistent with uPortal 3 3.0.0

41 Rendering Architecture Context X Context A … Context Resolver Default Context Parameter processing Rendering pipeline Layout generator Transformer … Filter Serializer Parses request URL and initiates actions on portlets Generates abstract user layout Chain of transformers and filters compiles presentation markup. Selects context to process incoming request Produces final markup, i.e. HTML, WML

42 Security Acegi features Acegi features Has analog to uPortal 2 security providers Has analog to uPortal 2 security providers Designed with Spring Framework in mind Designed with Spring Framework in mind URL protection URL protection Bean method-level protection Bean method-level protection Support for Yale CAS Support for Yale CAS HTTP BASIC Authentication HTTP BASIC Authentication 3.0.0

43 Groups and Permissions Port of groups and permissions from uPortal 2 Port of groups and permissions from uPortal 2 Separate module within uPortal 3.0 Separate module within uPortal 3.0 Configured using Spring Configured using Spring Build process to produce separate jar files Build process to produce separate jar files Allows groups/permissions to be used in applications outside of uPortal Allows groups/permissions to be used in applications outside of uPortal 3.0.0

44 Person Directory Person Directory has already been refactored in uPortal 2 Person Directory has already been refactored in uPortal 2 Separate module within uPortal 3 Separate module within uPortal 3 Build process to produce separate jar files Build process to produce separate jar files Allows person directory to be used in applications outside of uPortal Allows person directory to be used in applications outside of uPortal 3.0.0

45 Portlet Publishing First publish the portlet application First publish the portlet application Map custom PortletModes and WindowStates Map custom PortletModes and WindowStates Map user attributes from uPortal to the portlet Map user attributes from uPortal to the portlet Second publish portlets from the app Second publish portlets from the app Description Description Configuration Configuration Groups and Permissions Groups and Permissions 3.0.0

46 Utilities Design to be configured as beans Design to be configured as beans Command line interface is a wrapper around the bean Command line interface is a wrapper around the bean Allows utilities to be run from portal code Allows utilities to be run from portal code DbLoader DbLoader Now supports constraints Now supports constraints Portlet Deployer Portlet Deployer 3.0.0

47 Milestones and Beta Milestone builds Milestone builds Render a layout based on an XML layout file Render a layout based on an XML layout file Render a layout based on data from database and ability to interact with portlets Render a layout based on data from database and ability to interact with portlets Remaining features minus upgrade tools and instructions Remaining features minus upgrade tools and instructions Beta release Beta release uPortal 2 feature set complete uPortal 2 feature set complete Channels and CAR files work Channels and CAR files work Upgrade tools and instructions available Upgrade tools and instructions available 3.0.0

48 uPortal 3.0: Help Needed Testing Testing Move uPortal 2 Concurrency changes to 3.0 Move uPortal 2 Concurrency changes to 3.0 Move uPortal 2 XML API changes to 3.0 Move uPortal 2 XML API changes to 3.0 Move Person Directory into a stand-alone JAR Move Person Directory into a stand-alone JAR Create WSRP DAOs and provide Spring JDBC implementation Create WSRP DAOs and provide Spring JDBC implementation 3.0.0


Download ppt "UPortal Roadmap Patches, evolution, and revolution Andrew Petro, Yale University Eric Dalquist, Unicon."

Similar presentations


Ads by Google