Portal Deployment Best Practices | IBM Portal Excellence Conference 2009


Published on

Michael Porter, Principal, Portal and Collaboration Solutions at Perficient, presented at the IBM Portal Excellence Conference, Tuesday, October 13, 2009.

Successful portal projects depend on aligning your business needs to the technology and then using common best practices to run a successful project. In this session we will discuss how to align your business needs to create a portal solution and
then running a successful project by taking a holistic approach to portal. Topics will include solution roadmap, portal
governance, common technologies to include, and project management best practices that will make your project a success from a business and technical perspective.

Published in: Technology, Business

Portal Deployment Best Practices | IBM Portal Excellence Conference 2009

  1. 1. Session B05 Managing the Portal Deployment Best Practices Speaker(s): Michael Porter, Principal
  2. 2. Agenda <ul><li>Aspects of a successful portal deployment </li></ul><ul><li>Holistic approach to portal </li></ul><ul><li>Vision and Alignment </li></ul><ul><li>Governance </li></ul><ul><li>Training </li></ul><ul><li>Methodology </li></ul><ul><li>PM Best Practices </li></ul><ul><li>Installation and Config </li></ul><ul><li>Development </li></ul><ul><li>Testing </li></ul><ul><li>Deployment </li></ul>
  3. 3. Aspects of a Successful Deployment <ul><li>Does it meet the end user’s goals? </li></ul><ul><li>Is it well used? </li></ul><ul><li>Can you prove that you saved money? </li></ul><ul><li>Can you prove that you increased revenue? </li></ul><ul><li>Does your company or organization view it as a success? </li></ul><ul><li>The Portal is a tool that gets you to the end goal. </li></ul>It’s the end result that matters!
  4. 4. Vision and Alignment <ul><li>Meet with Leaders </li></ul><ul><li>Figure out their business needs </li></ul><ul><li>Give them “Portal 101” </li></ul><ul><li>Align portal to the business </li></ul><ul><li>Prioritize the alignment </li></ul><ul><ul><li>By audience </li></ul></ul><ul><ul><li>By what it will do </li></ul></ul>
  5. 5. Sample Vision <ul><li>Customers </li></ul><ul><ul><li>Prospects </li></ul></ul><ul><ul><li>New Customers </li></ul></ul><ul><ul><li>Existing Customers </li></ul></ul><ul><li>Partners </li></ul><ul><li>Suppliers </li></ul><ul><li>Employees </li></ul><ul><li>The portal will drive sales </li></ul><ul><ul><li>Web Channel for SMB (sales, care, service) </li></ul></ul><ul><li>The portal will decrease costs through automation and access to information </li></ul><ul><ul><li>Customer, Partner, Employee </li></ul></ul><ul><li>The portal will improve and automate premium services </li></ul><ul><ul><li>Company A service differentiation </li></ul></ul><ul><ul><li>Improved services to help encourage adoption of self service for elite customer </li></ul></ul><ul><li>The place for customers and partners to conveniently interact with Company A . </li></ul><ul><ul><li>Not the only place </li></ul></ul><ul><ul><li>Will provide a positive customer & partner experience </li></ul></ul>Constituents Strategies
  6. 6. Follow Through: Complete the Alignment <ul><li>Interactive workshops with the client </li></ul><ul><li>Engages Line of Business and IT Mgmt. </li></ul><ul><li>Identifies value in the context of the client’s business challenges </li></ul><ul><li>Provides a high-level plan on where to begin and what can be delivered over a period of time. </li></ul><ul><li>Define Priorities and Dependencies </li></ul><ul><li>Three questions: </li></ul><ul><ul><li>Complexity </li></ul></ul><ul><ul><li>Business Value </li></ul></ul><ul><ul><li>Organizational Readiness </li></ul></ul><ul><li>Define the dependencies </li></ul><ul><ul><li>Project, Organization, Technology </li></ul></ul><ul><li>Create a roadmap </li></ul>
  7. 7. Sample Roadmap and Dependencies <ul><li>Timeline takes into consideration the client priorities, complexities, and critical Dependencies </li></ul><ul><li>Roadmap is a living document that is continually reviewed and updated. </li></ul>
  8. 8. Governance <ul><li>Organizations must understand the roles they fill </li></ul><ul><li>Key standards need to be set </li></ul><ul><li>Projects should not start from scratch </li></ul><ul><ul><li>Give them lines of communication </li></ul></ul><ul><ul><li>A Foundation of standards and tools </li></ul></ul><ul><ul><li>A knowledge store </li></ul></ul><ul><ul><li>A place to interact with the project </li></ul></ul><ul><li>Give business and IT a way to interact </li></ul><ul><li>Levels of Governance </li></ul><ul><ul><li>Strategic </li></ul></ul><ul><ul><li>Tactical </li></ul></ul><ul><ul><li>Operational </li></ul></ul><ul><ul><li>Business Administration </li></ul></ul>
  9. 9. Sample Governance: Strategic
  10. 10. Training <ul><li>You cannot just give them a tool and let them go </li></ul><ul><li>Groups to train </li></ul><ul><ul><li>Administrators </li></ul></ul><ul><ul><li>Application Developers </li></ul></ul><ul><ul><li>Content Developers </li></ul></ul><ul><ul><li>Leadership </li></ul></ul><ul><ul><li>Business Users </li></ul></ul><ul><li>Type of training </li></ul><ul><ul><li>IBM’s Portal Curriculum </li></ul></ul><ul><ul><li>Portal 101 </li></ul></ul><ul><ul><li>End User Content and Portal Admin </li></ul></ul><ul><ul><li>Mentoring </li></ul></ul>
  11. 11. Methodology <ul><li>Portal is a loosely coupled, highly scalable technology </li></ul><ul><li>Portal has many different pieces and parts </li></ul><ul><li>It works best with iterations and “baby steps” </li></ul><ul><li>It works best with frequent reviews and re-prioritizations </li></ul><ul><li>Consider any iterative type methodology </li></ul><ul><li>RUP </li></ul><ul><li>UML </li></ul><ul><li>SCRUM </li></ul><ul><li>XP </li></ul><ul><li>Crystal </li></ul>
  12. 12. Project Management: How to Fail <ul><li>How to fail when managing a portal project </li></ul><ul><li>My job definition is to get a report and summarize it in another report </li></ul><ul><li>My job is to make a list of all the risks and put them on a piece of paper </li></ul><ul><li>My job is to make a list of issues and put them on a piece of paper </li></ul><ul><li>My job is to hold a weekly meeting and present my pieces of paper </li></ul><ul><li>My job is to have a developer tell me of an issue on Thursday and assign someone to address it when I create my status report on Monday </li></ul><ul><li>I’m a Project Manager, it’s the process rather than the end goal or the technology that’s important. </li></ul><ul><li>Aside from some spiffy PM tools and a cool certificate on the wall, a good admin could do my job……………………….. </li></ul>
  13. 13. Project Management Different Philosophy <ul><li>A good project manager is worth his or her weight in gold: pay accordingly </li></ul><ul><li>A good project manager </li></ul><ul><ul><li>Sits with architects and developers over lunch </li></ul></ul><ul><ul><li>Understands the technology well enough to understand the dependencies </li></ul></ul><ul><ul><ul><li>Can you create a page on the portal? </li></ul></ul></ul><ul><ul><ul><li>Can you set security? </li></ul></ul></ul><ul><ul><ul><li>Can you place portlets? </li></ul></ul></ul><ul><ul><ul><li>Do you know the general approach to integration? </li></ul></ul></ul><ul><ul><ul><li>Do you know the general approach to content management? </li></ul></ul></ul><ul><ul><li>Acts immediately on issues with dependencies </li></ul></ul><ul><ul><li>Is forward looking and ensures deliverables and key technology is ready before developers start working on them. </li></ul></ul><ul><ul><li>Can translate a developer issue to a business language </li></ul></ul><ul><ul><li>Isn’t afraid to act like a Business Analyst if the need is there </li></ul></ul><ul><ul><li>Uses the collaboration tools, project spaces, etc. to their best advantage </li></ul></ul>
  14. 14. Project Management Tools <ul><li>Team Space </li></ul><ul><ul><li>Use it religiously </li></ul></ul><ul><ul><li>Give it some structure </li></ul></ul><ul><ul><li>IT and Business need access </li></ul></ul><ul><ul><li>Consider newer collab tools that are more agile </li></ul></ul><ul><li>Project Work Plan </li></ul><ul><ul><li>Update it </li></ul></ul><ul><ul><li>Use it to get in front of issues </li></ul></ul><ul><li>Risks and Issues </li></ul><ul><ul><li>Jira, spreadsheets, part of team space </li></ul></ul><ul><ul><li>Great tools but only to give the PM something to do </li></ul></ul><ul><li>Reports </li></ul><ul><ul><li>Important but only as part of the end result </li></ul></ul><ul><ul><li>A PM Cannot spend all of his or her time creating reports. </li></ul></ul>Remember: the tools are only used to get you to the end result
  15. 15. User Experience <ul><li>Objective testing to make sure your UI works </li></ul><ul><li>Consider Visualization </li></ul><ul><ul><li>IBM’s Portal Experience Modeler </li></ul></ul><ul><ul><li>iRise </li></ul></ul><ul><ul><li>Let users see the solution early </li></ul></ul><ul><ul><li>Capture requirements in that context </li></ul></ul><ul><li>User experience type testing can user iterations like portal development </li></ul><ul><li>Make it part of the project and not some separate activity that has nothing to do with the project </li></ul><ul><ul><li>More easily cut from the project (not a good thing if you are focused on the end result and not just launching a portal) </li></ul></ul><ul><ul><li>More expensive </li></ul></ul><ul><ul><li>Worse results </li></ul></ul>Embed UX in your process. Involve the users early and often
  16. 16. Development: Foundation and Standards <ul><li>Follow the Enterprise Standards </li></ul><ul><ul><li>If they don’t exist, then set them </li></ul></ul><ul><li>Development tools </li></ul><ul><ul><li>Eclipse </li></ul></ul><ul><ul><li>RAD </li></ul></ul><ul><ul><li>Portlet Factory </li></ul></ul><ul><li>MVC (Struts, JSF, Spring) </li></ul><ul><ul><li>Simple portlets don’t need an MVC </li></ul></ul><ul><li>Other standards and scenarios </li></ul><ul><ul><li>Caching </li></ul></ul><ul><ul><li>DB access </li></ul></ul><ul><ul><li>UI standards (based on those User Experience best practices) </li></ul></ul><ul><li>Bottom line is that developers are more productive when you’ve defined the tool set and use them on multiple projects </li></ul>
  17. 17. Development: Developer Types <ul><li>Visual Designer </li></ul><ul><ul><li>Don’t spin wheels having other developers do this </li></ul></ul><ul><li>Content Developer </li></ul><ul><ul><li>Simple programming like jsp’s and javascript </li></ul></ul><ul><ul><li>Templating </li></ul></ul><ul><ul><li>Configuration </li></ul></ul><ul><li>Portlet Developer </li></ul><ul><ul><li>Front end, not as deep as the integration or application developer </li></ul></ul><ul><ul><li>Must be familiar with MVC for more complex portlets </li></ul></ul><ul><li>Integration Developer </li></ul><ul><ul><li>Creates integration services to back end </li></ul></ul><ul><ul><li>Usually the most experienced </li></ul></ul>
  18. 18. Development: Estimation <ul><li>Rule of Thumb: Take whatever the architect or developer gave you and double it. </li></ul><ul><ul><li>If you use the really good ones to estimate, they forget they are probably 50-75% more efficient than your average developer </li></ul></ul><ul><li>Use a ranking system: Low, Medium, High </li></ul><ul><ul><li>Nothing EVER takes less than 4 hours </li></ul></ul><ul><li>After you get the development estimate, then add in everything around it </li></ul><ul><ul><li>Requirements </li></ul></ul><ul><ul><li>Design (if developer didn’t take that into account) </li></ul></ul><ul><ul><li>All kinds of testing (more on that later) </li></ul></ul><ul><ul><li>Deployment and launch </li></ul></ul><ul><ul><li>Time to migrate or create the content </li></ul></ul>
  19. 19. Administration <ul><li>Allocate Portal and System Admin time </li></ul><ul><ul><li>They help developers resolve issues </li></ul></ul><ul><ul><li>They get the environments up and running </li></ul></ul><ul><ul><li>They prep for post launch monitoring </li></ul></ul><ul><li>Do not forget Release Management </li></ul><ul><ul><li>If not setup correctly, this leads to disaster and a lot of wasted time </li></ul></ul><ul><li>DBA Allocation </li></ul><ul><ul><li>Light for just the portal </li></ul></ul><ul><ul><li>Heavier when creating custom apps surfaced on the portal </li></ul></ul>The more complex your project(s), the more important Administration
  20. 20. Testing <ul><li>Good architecture the first step in the process </li></ul><ul><ul><li>Define load and critical applications </li></ul></ul><ul><ul><li>If Prod is clustered then Test must be clustered </li></ul></ul><ul><li>Don’t cut the testing because you are behind </li></ul><ul><li>Involve QA team early </li></ul><ul><li>Types of Testing </li></ul><ul><ul><li>Unit: Developers must do it </li></ul></ul><ul><ul><li>System: How does everything work together </li></ul></ul><ul><ul><li>User Acceptance: important but it better not be the first time users see it </li></ul></ul><ul><ul><li>Load or Stress: extremely important. Do baseline and then keep doing it. </li></ul></ul><ul><ul><ul><li>Hit it hard </li></ul></ul></ul><ul><ul><ul><li>Hit it over an extended period </li></ul></ul></ul><ul><ul><ul><li>Hit it with different users </li></ul></ul></ul><ul><ul><ul><li>Use multiple scenarios </li></ul></ul></ul><ul><ul><ul><ul><li>Content, application, search, login, etc </li></ul></ul></ul></ul>A portal has many moving parts. One part cannot take down the portal
  21. 21. Deployment <ul><li>Portal Installation </li></ul><ul><ul><li>All environments setup and running </li></ul></ul><ul><li>Portal </li></ul><ul><ul><li>Themes and Skins </li></ul></ul><ul><ul><li>Portal Configuration </li></ul></ul><ul><ul><li>Portlets </li></ul></ul><ul><li>Content </li></ul><ul><ul><li>Templates </li></ul></ul><ul><ul><li>Migrate the actual content </li></ul></ul><ul><ul><li>Rules </li></ul></ul><ul><ul><li>Workflow </li></ul></ul><ul><li>Database </li></ul><ul><ul><li>Setup tables and base data </li></ul></ul><ul><li>Services layer </li></ul><ul><ul><li>ESB, EAI, App Servers </li></ul></ul><ul><ul><li>Connectors </li></ul></ul><ul><li>Search Servers </li></ul><ul><li>LDAP Servers </li></ul><ul><ul><li>Setup users </li></ul></ul><ul><ul><li>Setup security </li></ul></ul><ul><li>Identity and Authorization Management </li></ul><ul><ul><li>TIM/TAM, OIM/OAM, Siteminder </li></ul></ul><ul><li>Legacy Systems </li></ul><ul><ul><li>Code changes </li></ul></ul><ul><ul><li>Config changes </li></ul></ul>Again, Portal has many moving parts, deploying means you have to prep all those parts………………
  22. 22. Deployment <ul><li>Identify all the systems that need to be launched or that have modifications </li></ul><ul><li>Identify all the people in charge of it </li></ul><ul><li>Identify who’s on site and who’s on call </li></ul><ul><li>Important: Do whatever you can before launch </li></ul><ul><ul><li>Migrate themes and skins </li></ul></ul><ul><ul><li>Run database scripts and setup db’s </li></ul></ul><ul><ul><li>Create rules for workflow engines </li></ul></ul><ul><ul><li>Etc </li></ul></ul><ul><li>Setup back out procedures </li></ul><ul><ul><li>If the worst happens, can I return to my previous product ready state? </li></ul></ul><ul><li>6 weeks before launch, start weekly planning meetings </li></ul><ul><ul><li>Remember that a PM’s job is to get in front of it. DBA’s, Sys Admins, Architects, and developers will let it slide if you do. Push them more than once a week in a meeting </li></ul></ul>
  23. 23. Post Launch Success <ul><li>Setup a help desk </li></ul><ul><ul><li>Train them on identifying the issue </li></ul></ul><ul><ul><li>“ The portal is down” is the most common error but usually it’s not the portal but some back end system </li></ul></ul><ul><li>Setup monitoring </li></ul><ul><ul><li>Server </li></ul></ul><ul><ul><li>System </li></ul></ul><ul><ul><li>Process </li></ul></ul><ul><ul><li>The actual portal itself </li></ul></ul><ul><li>Allocate time for your developers to be a level of support until help desk and other support processes are in place </li></ul><ul><li>Create a feedback portlet and act on feedback </li></ul><ul><ul><li>Make it part of the governance process </li></ul></ul>Once a portal is launched, you have to maintain it
  24. 24. Additional Information and Resources <ul><li>WebSphere Portal – IBM Site </li></ul><ul><li> http://www-3.ibm.com/software/genservers/portal/ </li></ul><ul><li>WebSphere Portal Business Solutions Catalog </li></ul><ul><li>http://catalog.lotus.com/wps/portal/portal </li></ul><ul><li>Websphere Portal Developer’s Zone </li></ul><ul><li>http://www-106.ibm.com/developerworks/websphere/zones/portal/ </li></ul><ul><li>Product Documentation and WebSphere Portal Wiki </li></ul><ul><li> http://www-3.ibm.com/software/genservers/portal/library/ </li></ul><ul><li> http://www-10.lotus.com/ldd/portalwiki.nsf </li></ul><ul><li>Education </li></ul><ul><li> http://www-01.ibm.com/software/lotus/training/portalofferings.html </li></ul><ul><li>WebSphere Portal Blog </li></ul><ul><li>https://www.ibm.com/developerworks/mydeveloperworks/blogs/WebSpherePortal/ </li></ul>
  25. 25. Please take a few minutes to fill out the session survey. Thank you Session ID: B05 Session: Managing the Portal Deployment Project: Best Practices Presenter(s): Michael Porter
  26. 26. <ul><li>© IBM Corporation 2009 All Rights Reserved. </li></ul><ul><li>The information contained in this publication is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained in this publication, it is provided AS IS without warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. </li></ul><ul><li>References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results. </li></ul><ul><li>All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer. </li></ul><ul><li>IBM, the IBM logo, WebSphere, Lotus , Lotus Notes , Domino , Quickplace, Sametime , Workplace and Quickr are trademarks of International Business Machines Corporation in the United States, other countries, or both. </li></ul><ul><li>Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both. </li></ul><ul><li>Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both. </li></ul><ul><li>Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both. </li></ul><ul><li>Other company, product, or service names may be trademarks or service marks of others. </li></ul><ul><li>All references to Renovations Inc. refer to a fictitious company and are used for illustration purposes only. </li></ul>