Portal Technology Feasibility Study Kangaroo Software Jon Ferry Chris Helmeset Greg McGraw Jonathan...
-
Upload
sullivan-witting -
Category
Documents
-
view
217 -
download
3
Transcript of Portal Technology Feasibility Study Kangaroo Software Jon Ferry Chris Helmeset Greg McGraw Jonathan...
Portal Technology Portal Technology Feasibility StudyFeasibility Study
Kangaroo SoftwareKangaroo SoftwareJon FerryJon Ferry
Chris HelmesetChris Helmeset
Greg McGrawGreg McGraw
Jonathan PefferJonathan Peffer
AgendaAgenda
► IntroductionIntroduction►MotivationMotivation►ObjectivesObjectives►Process and PlanningProcess and Planning►FindingsFindings►DeliverablesDeliverables►ReflectionReflection►ConclusionConclusion
IntroductionIntroduction
►SponsorSponsor Excellus BlueCross BlueShieldExcellus BlueCross BlueShield Mike Cardillo, Robert D’Alimonte, Chris Mike Cardillo, Robert D’Alimonte, Chris
RyanRyan
►Customer LiaisonCustomer Liaison Dr. Jeff LaskyDr. Jeff Lasky
►Faculty CoachesFaculty Coaches Dr. Swaminathan NatarajanDr. Swaminathan Natarajan Dr. J Fernando NavedaDr. J Fernando Naveda
MotivationMotivation
►Excellus BlueCross BlueShieldExcellus BlueCross BlueShield 450 CSRs answer 30,000 calls daily450 CSRs answer 30,000 calls daily ExampleExample
►TIGRESSTIGRESS Visual Basic 6Visual Basic 6 Mainframe CoreMainframe Core Legacy SoftwareLegacy Software
►Need for Modular DesignNeed for Modular Design►AdaptabilityAdaptability
Motivation Cont.Motivation Cont.
► jTIGRESSjTIGRESS JAVA based solutionJAVA based solution Modular ApproachModular Approach
► User InterfaceUser Interface► ObjectsObjects► Heterogeneous Systems and DatabasesHeterogeneous Systems and Databases
► Our ScopeOur Scope Presentation Layer of jTIGRESSPresentation Layer of jTIGRESS Provide a Proof-of-Concept of IBM WebSphere Provide a Proof-of-Concept of IBM WebSphere
Portal TechnologyPortal Technology Findings Feed into New ArchitectureFindings Feed into New Architecture
Objectives (Requirements)Objectives (Requirements)
► Is Portal technology a feasible solution Is Portal technology a feasible solution for the proposed jTIGRESS application?for the proposed jTIGRESS application?
►Phase 1 (Winter Quarter)Phase 1 (Winter Quarter) Familiarity with WebSphereFamiliarity with WebSphere Discover Feasibility of inter-Portlet Discover Feasibility of inter-Portlet
CommunicationCommunication
Objectives Cont.Objectives Cont.
►Phase 2 (Spring Quarter)Phase 2 (Spring Quarter) Application DesignApplication Design
►Inter-Portlet Communication capabilities and Inter-Portlet Communication capabilities and limitationslimitations
Enterprise-Wide Authentication Enterprise-Wide Authentication ►Single Sign-On (SSO)Single Sign-On (SSO)►Lightweight Directory Access Protocol (LDAP)Lightweight Directory Access Protocol (LDAP)
Family of PortletsFamily of Portlets Interface DesignInterface Design
Phase 1 ProcessPhase 1 Process► Software/Hardware Software/Hardware
ConfigurationConfiguration WebSphere Portal ServerWebSphere Portal Server WebSphere Application WebSphere Application
ServerServer WebSphere Application WebSphere Application
DeveloperDeveloper WebSphere Portal ToolkitWebSphere Portal Toolkit
► Technology ResearchTechnology Research JAVA Portal Standard JAVA Portal Standard
(JSR168)(JSR168) WebSphere Portal WebSphere Portal
DevelopmentDevelopment► DocumentationDocumentation► PrototypePrototype
Inter-Portlet CommunicationInter-Portlet Communication
Software Configuration
Proof of Concept Prototype
Portal TechnologyResearch
WebSphere Technology
Documentation
Phase 2 ProcessPhase 2 Process
► Agile MethodologyAgile Methodology Prototyping Lifecycle Model (3 iterations)Prototyping Lifecycle Model (3 iterations) Emphasis on FeedbackEmphasis on Feedback
1. Iteration Objectives
2. Planning and Design
3. Implementationand Research
4. Release
5. Feedback
PlanningPlanning
FindingsFindings
Project StatusProject Status
Familiarity with WebSphere and PortletsFamiliarity with WebSphere and Portlets Application DesignApplication Design
Inter-Portlet CommunicationInter-Portlet Communication Database ConnectivityDatabase Connectivity
Enterprise-Wide Authentication Enterprise-Wide Authentication Single Sign-On (SSO)Single Sign-On (SSO) Lightweight Directory Access Protocol (LDAP)Lightweight Directory Access Protocol (LDAP)
Interface Design – CustomizationInterface Design – Customization Basic layout aspectsBasic layout aspects
Family of Portlets – PersonalizationFamily of Portlets – Personalization
Portal TechnologyPortal Technology
►What are Portals?What are Portals? Presentation Layer Presentation Layer
to Info Systemsto Info Systems Contains PortletsContains Portlets
►What are Portlets?What are Portlets? ““Pluggable” Pluggable”
ComponentsComponents ModesModes StatesStates
Portal ArchitecturePortal Architecture
► J2EE J2EE Application Application DesignDesign
► Portlet Portlet Application Application DesignDesign
XML
JSP
HTML
...
HTML
Portlet Application
Beans
Portlet (Servlet)
To database, files, ...
Application / WebServer
Portal
Inter-Portlet CommunicationInter-Portlet Communication
► Types of Portlets: Types of Portlets: Portlets that do not communicate Portlets that do not communicate Source Portlets Source Portlets Target Portlets Target Portlets Hybrid PortletsHybrid Portlets
Portal ServerPortlet A Portlet B
message
action update
WebUser
One Way CommunicationOne Way Communication
Member IDPortlet
(ActionListener)
Member InfoPortlet
(MessageListener)
Sends ID‘Lookup’Pressed
Sends Form Info.
Two Way CommunicationTwo Way Communication
Claim SearchPortlet
(ActionListener,MessageListener)
Claim Info Portlet(ActionListener,
MessageListener)Sends ID
Claim IDClicked
Sends Form Info.
Send New ID
‘Next claim’ClickedSends Form Info.
PersonalizationPersonalization
►Personalization provides the ability to Personalization provides the ability to restrict content displayed within restrict content displayed within portletsportlets
►TypesTypes User Profile-BasedUser Profile-Based Rules-BasedRules-Based Collaborative FilteringCollaborative Filtering
►Used to achieve Family of PortletsUsed to achieve Family of Portlets
Rules PersonalizationRules Personalization
► ClassifiersClassifiers
► ActionsActions
► BindingBinding
UserClearance is Confidential when
current Personnel.ROLE is equal to Manager or current Personnel.ROLE is equal to Executive
Otherwise Regular
Select Content Whose News.CONFIDENTIAL is equal to Y
When UserClearance is Confidential
do GetConfidentialNews Always
GetSiteNews order as is show all items
CustomizationCustomization
►Support multiple user configurations Support multiple user configurations Internet Explorer and Netscape, as well as Internet Explorer and Netscape, as well as
supporting localization issues supporting localization issues
►Look and Feel Look and Feel Themes and Skins Themes and Skins Pages and PortletsPages and Portlets
ThemesThemes
SkinsSkins
Single Sign-On (SSO)Single Sign-On (SSO)
►What is SSO?What is SSO? SSO technology provides the capability for SSO technology provides the capability for
a user to authenticate once while a user to authenticate once while simultaneously gaining access to multiple simultaneously gaining access to multiple secure applications.secure applications.
►WebSphere Models of AuthenticationWebSphere Models of Authentication Web SSOWeb SSO Extended SSOExtended SSO
Web SSOWeb SSO
►Centralized Authentication ModelCentralized Authentication Model Once authenticated to the first application Once authenticated to the first application
you are authenticated to allyou are authenticated to all
►Web SSO allows a user to log-in to one Web SSO allows a user to log-in to one application, the application then application, the application then generates a token with the aid of some generates a token with the aid of some LTPA authentication proxy. LTPA authentication proxy.
Extended SSOExtended SSO
►User Level AuthenticationUser Level Authentication Secrets stored at user level across PortletsSecrets stored at user level across Portlets
►System Level AuthenticationSystem Level Authentication Secrets shared across all users Secrets shared across all users
►Setting this up is a complex task that Setting this up is a complex task that involves possibly modifying the involves possibly modifying the applications which require SSO access.applications which require SSO access.
Credential VaultCredential Vault► The Vault is broken into Vault SegmentsThe Vault is broken into Vault Segments
Vault Segments are broken into Vault SlotsVault Segments are broken into Vault Slots Vault Slots contain a Credential ObjectVault Slots contain a Credential Object
LDAPLDAP
►Types of Connection:Types of Connection: UnsecuredUnsecured Secured (extension using SSL)Secured (extension using SSL)
►Supports:Supports: IBM Directory Server, IBM Secure Way for IBM Directory Server, IBM Secure Way for
IBM Directory Server, iPlanet Directory IBM Directory Server, iPlanet Directory Server, MS Active Directory, Lotus DominoServer, MS Active Directory, Lotus Domino
►Other LDAP directories can be usedOther LDAP directories can be used
DeliverablesDeliverables
►Primary DeliverablePrimary Deliverable Portlet Technology Research ReportPortlet Technology Research Report Excellus WorkshopExcellus Workshop
►Supplemental DeliverablesSupplemental Deliverables Prototypes (w/ source code)Prototypes (w/ source code)
ReflectionsReflections
What Worked Well?What Worked Well?
►Adapted to R&D Style ProjectAdapted to R&D Style Project►Process SelectionProcess Selection►Client IterationClient Iteration
Timely FeedbackTimely Feedback Effective FeedbackEffective Feedback
►Well Defined ScopeWell Defined Scope ObjectivesObjectives ChallengingChallenging
What Didn’t Work Well?What Didn’t Work Well?
►WebSphere Installation and WebSphere Installation and ConfigurationConfiguration
►WebSphere DocumentationWebSphere Documentation Hard to FindHard to Find
►Version MismatchVersion Mismatch►TutorialsTutorials
……Leads to Trial and ErrorLeads to Trial and Error
►Ramp-up TimesRamp-up Times Domain Knowledge RequirementsDomain Knowledge Requirements Phase 2 ElicitationPhase 2 Elicitation
Areas for ImprovementAreas for Improvement
►Written Objectives for Phase 1Written Objectives for Phase 1► Internal ReviewsInternal Reviews
ResearchResearch PrototypesPrototypes DocumentationDocumentation
AcknowledgementsAcknowledgements
►Excellus StaffExcellus Staff►Customer LiaisonCustomer Liaison
Dr. Jeff LaskyDr. Jeff Lasky
►Software Engineering Faculty Software Engineering Faculty Dr. Swaminathan NatarajanDr. Swaminathan Natarajan Kurt MosiejczukKurt Mosiejczuk All other RIT Faculty/StaffAll other RIT Faculty/Staff
ConclusionConclusion
► IntroductionIntroduction► MotivationMotivation► ObjectivesObjectives► Process and PlanningProcess and Planning► FindingsFindings► DeliverablesDeliverables► ReflectionReflection
► Questions?Questions?