• Save
Bestpractices Portal Projects
Upcoming SlideShare
Loading in...5
×
 

Bestpractices Portal Projects

on

  • 4,387 views

Portal development best practices

Portal development best practices

Statistics

Views

Total Views
4,387
Views on SlideShare
4,366
Embed Views
21

Actions

Likes
27
Downloads
0
Comments
1

2 Embeds 21

http://www.slideshare.net 20
http://wildfire.gigya.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • cool
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Bestpractices Portal Projects Bestpractices Portal Projects Presentation Transcript

  • Portal Proof Of Concept Lars-Olof Allerhed lollo@se.ibm.com © 2005 IBM Corporation Innovation that Matters
  • May 25 Portals can look like any web site… Slide 2 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Portal Principle  Combines application user interfaces together into one unified presentation  Delivers a highly personalized experience, considering – User’s job role – Security settings Slide 3 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Portlet Principle  Each portlet represents a separate application  Developed independently; can be placed anywhere on the page  A single portlet can support multiple devices – unique views for each device – portlet’s business logic can be shared Slide 4 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Delivery of web-based services based on role, process, context and personalization prevents Information Overflow. Consequences for structure Sender Centric User Centric Slide 5 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Enabling portlet interaction require developers to think in new waysUser Driven Process Integration about how to design and build applications Information and application conforms to the users role and access, allowing related information to be presented from various sources in the users context. The portal increase the usability by levering messaging at the screen level to fetch relevant content from all involved systems Today Redefining the Application Concept Application built up from data Functions assembles to presentation in single to applications at the instance, no distinct interfaces screen level, based on defined between presentation, the users role and the business logic and data model. context they are presented in. Componentization Virtualization of applications into functional components that can be reused with or without GUI. Slide 6 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Stages of Portal Development Very little functionality Migrate legacy applications built in portal. Most or build new code work is in connecting with the more to old systems. The Sweet Spot flexible portal framework. Just Connect to 80/20 Build or Migrate Portlet Legacy Applications Rule Applications Rebuild the most useful 20% of application Functionality in portal. Link to the rest. Slide 7 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Basic Best Practices  WP is not a simple plug and play application. It is a horizontal portal framework. Treat it like a complex infrastructure project.  Start small. Build from the base components first. Install added functionality later. (Plan 4 months minimum for first pilot release)  Traditional requirements processes break down with portal. UML and large requirements documents are bad in the beginning. Consider using a visual methodology including screenshots, wireframes, prototypeing etc. to jumpstart the process.  You will have to do load testing. This is not a negotiable item. Your portal WILL fail in production if you do not do adequate stress testing before release. Test to failure. Fix problems. Repeat and Rinse.  You will need WebSphere/J2EE skills. Training on portal is not enough.  Development is easy in portal. Integration and configuration are hard. Plan your project accordingly.  Plan an Architectural Workshop. This will save you. Make sure all stakeholders attend portions. Slide 8 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Basic Best Practices  Everything is now your fault! Sorry.  Portal if done properly will eventually front end everything in the enterprise. This means you will be blamed for all IT issues.  LDAP is the most critical component in your organization. Spend a painful amount of time working with your LDAP folks.  If you are an Oracle shop, 90% of install failures in WPS 5.0 are due to Oracle DBA’s. They typically set permissions on the portal id too low to perform install tasks. Pull your DBA aside and tell them to give the portal id ALL permissions during install. They can and should lower these permissions after install. After talking to your DBA, talk to your DBA again. Finally, talk to them a third time.   Plan time to do caching. This will take about a month of time. Use normal portlet caching, learn dynacache and do advanced caching too for some portlets, finally learn the Command Cache and use it to store data for multiple portlets (use this instead of HTTPSession) Slide 9 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Best Practices  Good news: Most of the Java, J2EE and WebSphere Best Practices you know can be applied to Portlet development  Bad news: There are more best practices you will have to learn  Portlet Development Best Practices can be categorized based on layers of an application: Use J2EE Best Practices & Client Presentation Layer more Server Presentation Layer Business Object Layer Use J2EE Best Practices Data Access Layer Enterprise Data Source Layer Slide 10 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Portal Best Practices – View  JSPs should generate well-formed HTML fragments only – Should not contain tags such as <HTML>, <HEAD> and <BODY>  Don’t be a page hog, share it with other portlets – Portlet views should be designed to take advantage of different possibilities in screen resolutions and portal layout configurations. Slide 11 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Starting your Project – First Release  A process that works… – Have an Architecture and Design Session – Describe your portal Slide 12 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 White Boarding Session Sametime CEO’s Message Quicklinks buddies Page One Newsflash Alerts Stock Ticker Slide 13 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Source the portlets Newsflash •Is this a custom portlet? •Is this a web interaction portlet? •Model One vs. Model Two? •Is this a candidate for WPAI? •Where am I getting my data from? •Do I have an agreement with the backend provider? •Does this portlet have a reliance on specific portlet subsystems? (PZN, WPCP, Collaboration, etc.) Slide 14 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Page Home Page Custom? Yes Catalog Item N/A Web? No Model 1? N/A Newsflash PAI? No User Roles who see? Hidden to guests. All others see. Backend Provider? Content Services Organization Provider Agreement? Not Yet…Sally said it would be done February 28th. Portal Subsystems? PZN Interface Model Wizard Marked Elements? C2A – NO ; People Awareness - Author NOTES This portlet should show targeted content. Managers see Mgr. News. Show 5 items and a more link. Slide 15 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 How do you connect to your data? Existing Web Interface API Your Applications Java & Web Services Portlet Trans – Connector + BAPI Levels code Existing Web Interface or Web Clipping Content XML & XSL Interfaces Your Content •Sametime Awareness •Menu Services Web Services •Document Actions •Integration with other Apps Content Mgmt APIs Slide 16 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Application Integration Alternatives  Hyperlink – Create a link from portal to web application  Screen Scraping  Web Page Portlet (iFrame) Slide 17 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Where Do Portlets Come From?  There are many portlets provided ‘in the box’ with WebSphere Portal – Email, Calendaring, Doc viewers, Application Builders, etc. – … and you can configure them to suit your needs  You can download others from the WebSphere Portlet Catalog Slide 18 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Hyperlinks  Collects access to all information in a single bookmark portlet  Bookmark portlet can be extended by adding authentication functionality  Construct URL with the needed parameters using the Credential Vault or JAAS Slide 19 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Screen Scraping  WebSphere Host Access Transformation Server  Web to Host HTML emulator  Rules transformation engine  Converts green screens to GUIs in real time Slide 20 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Web Page Portlet (iFrame)   Controller Presentation Layer   Business Layer Data Layer Client Portal Server Back-end Slide 21 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Web Page Portlet Scorecard  Key points – Extremely easy – No limitations on the content (javascript,…) Slide 22 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 How to address SSO using the iFrame option  Web Page portlet can be extended by adding authentication functionality  Construct URL with the needed parameters using the Credential Vault or JAAS <iframe src="<%=iFrameEditBean.getSrcURL()%>“ name=“<%=iFrameEditBean.getName()%>” height=<%=iFrameEditBean.getHeight()%> width=<%=iFrameEditBean.getWidth()%> </iframe> Slide 23 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Web Clipping Portlet  Clipping Editor Portlet – Identifies and extracts specific portions of a URL – Specifies the authentication settings, URL rewriting rules, firewall parameters Slide 24 of 42 Innovation that matters © 2005 IBM Corporation – Provides a graphic step-based approach
  • May 25 Web Clipping : Authentication  HTTP Based : the realm identifies a protected space on the target server that the user wants to access  Form Based : a URL request is redirected to a login page that contains an HTML form where the user must enter userid and password Slide 25 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Web Clipping Portlet  Presentation Layer Controller    Business Layer Data Layer Client Portal Server Back-end Slide 26 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Web Clipping Portlet Scorecard  Key points – Easy to implement – Selection of the content Slide 27 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 WPAI Design Goals  A set of customizable portlets implementing common patterns of user interactions  Portal-based tools for rapidly and easily creating new portlets  WebSphere Studio based tools for generating and customizing new portlets  WebSphere Studio based tools that can be used to extend and customize the Portal-based tools Slide 28 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 WPAI Task Patterns  A task pattern is a sequence of steps a user takes to perform a well defined task when working with structured data  “Search-and-browse” task pattern – Search/browse instances of a particular type – Example: searching and browsing items from a sales catalog or contacts list Slide 29 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 WPAI Portlets Search and Browse BO Adapter Siebel config UI Template BO Adapter PeopleSoft Requestor UI Template BO Adapter config SAP BO Adapter Accumulator JDBC UI Template config BO Adapter MyApplication MyApplication Slide 30 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 WPAI Portlets Controller C Presentation Layer  A o   d n  View a n Business Layer pt e  e c rs to rs Data Layer Client Portal Server Back-end Slide 31 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 WPAI Portlet Scorecard  Key points – Rapid and easy to develop without Java skills – User Interface flexibility Slide 32 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 API Based Portlet  Portlet written to native APIs provided by back-ends – Developed with portlets wizards in WebSphere Studio – Each portlet application contains a specific controller (portlet class) and a specific view (jsp) Slide 33 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 API Based Portlets Controller C Presentation Layer  o   n  View n Business Layer e  c to rs Data Layer Client Portal Server Back-end Slide 34 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 WebServices Portlets Presentation Layer Controller    P r  View  o Business Layer x y Data Layer Client Portal Server Back-end Slide 35 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 API Based Portlets Scorecard  Key points – Full flexibility and integration of user interface – Requires Java skills for development Slide 36 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Summary SSO UI Cooperation Build effort Web Page - Web Page ‘Extended’  ++ Web Clipping   - WPAI    ++ API Based Portlets    ++++ Slide 37 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Portlet Development - Best Practices  USE WSAD!, Portlets should be simple! Do not try to create an UBER- portlet. Use inheritance to reduce cut and paste. But don’t mix control flows. This is what Struts is for. Remember XP philosophy  Be prepared for JSF. JSF will radically alter portal development. Think about your renderkit.  Do not rely on JSP portlets for everything. These should have little or NO control logic. (scriptlets) Code in JSP’s is hard to maintain, more difficult to test, and makes it difficult for UI Developers to do their job.  Read the infocenter, WSDD, DeveloperWorks thoroughly. It has very good information.  Caching should be considered early. Portals are very dynamic beasts. You will have poor performance if you don’t cache properly. We have a number of API’s and frameworks to enable different kinds of cacheing. That doesn’t mean implement cacheing early. Remember optimize later! Slide 38 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 communicates with Portal Artifact Development Roles produces Business Analyst Solution User Experience Architect Designer Site Topology Portal Application Portal Site Technical Design Portal Site Mockup Architecture Portal Application Portal UI Developer Developer Portal Application Services, Transformations, etc. Themes, Skins, etc. Portlet Application Portlet UI Developer Developer Portlets JSPs Portlet Application Slide 39 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Portlet Development • Create Input or Output field • Create page data on Faces page • Drop data onto Faces page • Create Data Object • Specify appropriate Input/Output Component • Bind field to object • Components bind directly to Data Slide 40 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 SAS Portal RFP There is a number of dependencies both between the portal sub- projects and to other projects Portal Subprojects Operation & Migration Maintenance Technical Standard & New Infrastructure Guidelines Application Server HW Security Directory Infrastructure Setup Slide 41 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 You can please some of the people some of the time… But you can’t please all of the people all of the time. Slide 42 of 42 Innovation that matters © 2005 IBM Corporation
  • May 25 Slide 43 of 42 Innovation that matters © 2005 IBM Corporation