kangaroo software use of portlet technology for dynamic generation of user interfaces jon ferry...

25
Kangaroo Software Kangaroo Software Use of Portlet Technology Use of Portlet Technology for Dynamic Generation of for Dynamic Generation of User Interfaces User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer Jonathan Peffer

Post on 19-Dec-2015

216 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

Kangaroo SoftwareKangaroo Software

Use of Portlet Technology for Use of Portlet Technology for Dynamic Generation of User Dynamic Generation of User

InterfacesInterfaces

Jon Ferry Chris Helmeset Greg McGraw Jonathan Jon Ferry Chris Helmeset Greg McGraw Jonathan PefferPeffer

Page 2: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

OutlineOutline

► IntroductionIntroduction► Process / PlanProcess / Plan► AccomplishmentsAccomplishments► FindingsFindings► PitfallsPitfalls► DemosDemos► Objectives RevisitedObjectives Revisited► Future GoalsFuture Goals► ConclusionConclusion

Page 3: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

IntroductionIntroduction

► Excellus Blue Cross Blue ShieldExcellus Blue Cross Blue Shield 450 CSRs answer 30,000 calls daily450 CSRs answer 30,000 calls daily Example: Customer Makes ClaimExample: Customer Makes Claim

► Membership ValidationMembership Validation► Edit ClaimEdit Claim► EvaluationEvaluation► Pay/DenyPay/Deny

► TIGRESSTIGRESS Visual Basic 6Visual Basic 6 Mainframe CoreMainframe Core Legacy SoftwareLegacy Software

► Need for Modular DesignNeed for Modular Design► AdaptabilityAdaptability

Page 4: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

IntroductionIntroduction

► 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 Portal TechnologyProvide a Proof-of-Concept of Portal Technology

► IBM WebSphere SoftwareIBM WebSphere Software Findings Feed into New ArchitectureFindings Feed into New Architecture

Page 5: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

Process / PlanProcess / Plan

►Our ApproachOur Approach 2 Phases of Technology Feasibility 2 Phases of Technology Feasibility

ExplorationExploration

►Phase 1 ObjectivesPhase 1 Objectives Defined at the beginning of Winter quarterDefined at the beginning of Winter quarter

►Phase 2 ObjectivesPhase 2 Objectives To be defined by the beginning of Spring To be defined by the beginning of Spring

quarterquarter

Page 6: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

Process / PlanProcess / Plan

► Phase 1 ObjectivesPhase 1 Objectives Is portal technology a feasible solution?Is portal technology a feasible solution?

► ComplexityComplexity Inter-portlet communicationInter-portlet communication User based roles (permissions)User based roles (permissions) Compatibility with existing databasesCompatibility with existing databases

► LDAPLDAP► PerformancePerformance► EfficiencyEfficiency► KnowledgeKnowledge

Tool SupportTool Support ProceduresProcedures Learning CurveLearning Curve

Page 7: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

Process / PlanProcess / Plan

►Phase 1 (Winter Quarter) ActivitiesPhase 1 (Winter Quarter) Activities WebSphere SoftwareWebSphere Software

►InstallationInstallation►ConfigurationConfiguration

Portlet DevelopmentPortlet Development►Research (Proof-of-Concept)Research (Proof-of-Concept)►Prototype developmentPrototype development

TIGRESS ResearchTIGRESS Research►Source inspectionSource inspection

Page 8: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

Process / PlanProcess / Plan

► RolesRoles Team / Project Manager – Jon FerryTeam / Project Manager – Jon Ferry

► Plan, Track, and Manage ActivitiesPlan, Track, and Manage Activities► Interface with ClientInterface with Client

Technical Manager – Greg McGrawTechnical Manager – Greg McGraw► Configuration and Support SpecialistConfiguration and Support Specialist

Research Documentation Manager – Jonathan Research Documentation Manager – Jonathan PefferPeffer

► Manage Main DeliverableManage Main Deliverable► Ensure CohesivenessEnsure Cohesiveness

Development Manager – Chris HelmesetDevelopment Manager – Chris Helmeset► Ensure High Quality Designs and ApplicationsEnsure High Quality Designs and Applications

Page 9: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

Process / PlanProcess / Plan

► Excellus ContactsExcellus Contacts Mr. Mike CardilloMr. Mike Cardillo

► Head, Architecture GroupHead, Architecture Group Mr. Robert D’AlimonteMr. Robert D’Alimonte

► ArchitectArchitect► Project ContactProject Contact

Dr. Jeff LaskyDr. Jeff Lasky► Excellus LiaisonExcellus Liaison► Project ContactProject Contact

► Faculty AdvisorsFaculty Advisors Dr. Swaminathan NatarajanDr. Swaminathan Natarajan

► Primary AdvisorPrimary Advisor Dr. J Fernando NavedaDr. J Fernando Naveda

► Secondary AdvisorSecondary Advisor

Page 10: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

Process / PlanProcess / Plan► Projected PlanProjected Plan

Page 11: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

Process / PlanProcess / Plan

► Actual ProgressActual Progress

Page 12: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

Process / PlanProcess / Plan

► Phase 1 DeliverablesPhase 1 Deliverables Portlet Technology Analysis ReportPortlet Technology Analysis Report

► Overview of TechnologyOverview of Technology► Learning CurveLearning Curve► Reference InformationReference Information► Click HereClick Here

PrototypesPrototypes► Deployment FilesDeployment Files► Source FilesSource Files► Click HereClick Here

Project WebsiteProject Website► Availability of All DocumentationAvailability of All Documentation► Click HereClick Here

Page 13: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

AccomplishmentsAccomplishments

►WebSphere Environment Installed & WebSphere Environment Installed & ConfiguredConfigured

►2 Portlet Prototypes Operational:2 Portlet Prototypes Operational: Simple Form HandlingSimple Form Handling Inter-portlet message passingInter-portlet message passing

► Interim Portlet Technology Analysis Interim Portlet Technology Analysis ReportReport

Page 14: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

FindingsFindings

►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

Page 15: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

FindingsFindings

► 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

Page 16: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

FindingsFindings

► ArchitectureArchitecture PortletsPortlets ContainerContainer PortalPortal

Page 17: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

FindingsFindings► WebSphere ConfigurationWebSphere Configuration

ClientClient► Intel Pentium 4 running at Intel Pentium 4 running at

1.8GHz1.8GHz► 768Mb of RAM768Mb of RAM► Microsoft Windows XP Microsoft Windows XP

Professional, Service Pack 1Professional, Service Pack 1► Studio Application Studio Application

Developer, V.5.1Developer, V.5.1► Portal Toolkit, V.5.0.2Portal Toolkit, V.5.0.2

ServerServer► Intel Pentium 4 running at Intel Pentium 4 running at

1.8GHz1.8GHz► 1024Mb of RAM1024Mb of RAM► Microsoft Windows 2000 Microsoft Windows 2000

Server Edition, Service Pack Server Edition, Service Pack 44

► Application Server Application Server Enterprise Edition, V.5.0Enterprise Edition, V.5.0

► Portal Server Express, V.5.0Portal Server Express, V.5.0► DB2 V.8.1DB2 V.8.1

Websphere Application ServerWebspere Portal Server

Websphere Studio Application DeveloperWebsphere Portal Toolkit

Database(s)

LDAP

Accesses

Accesses

Deploys

Page 18: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

FindingsFindings

►Application DeveloperApplication Developer In-line Error CheckingIn-line Error Checking Type CheckingType Checking Application Templates & WizardsApplication Templates & Wizards

►Straightforward Application CreationStraightforward Application Creation Server IntegrationServer Integration Debugging & Test EnvironmentDebugging & Test Environment Enhanced User InterfaceEnhanced User Interface

►XML, HTML, JSPXML, HTML, JSP

Page 19: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

FindingsFindings

►Toolkit AnalysisToolkit Analysis Ease of DevelopmentEase of Development

►Create Default Portlet ApplicationCreate Default Portlet Application►Tune to Our ApplicationTune to Our Application►Edit JSPs, Servlets, JavaBeans, etc.Edit JSPs, Servlets, JavaBeans, etc.►Export to .warExport to .war

►Portal Console AnalysisPortal Console Analysis Ease of Deployment (Portal Server)Ease of Deployment (Portal Server)

►Install .warInstall .war►Add to PageAdd to Page

Page 20: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

PitfallsPitfalls

►WebSphere ConfigurationWebSphere Configuration Resolved:Resolved:

►Difficulty Meeting Hardware RequirementsDifficulty Meeting Hardware Requirements Server - 1024Mb of RAMServer - 1024Mb of RAM

►SE Systems Administrator TransitionSE Systems Administrator Transition►IBM license agreement recreatedIBM license agreement recreated

Open:Open:►Client’s Local Test EnvironmentClient’s Local Test Environment

Lack of Technical DocumentationLack of Technical Documentation Contact IBM Technical Rep.Contact IBM Technical Rep.

Page 21: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

DemosDemos

►Simple Portlet ApplicationSimple Portlet Application Goal:Goal:

►Create and deploy simple portlet to serverCreate and deploy simple portlet to server

Technologies:Technologies:►Portlet ServletsPortlet Servlets►Java Server Pages (JSP)Java Server Pages (JSP)►Java BeansJava Beans

View:View:►EMailerPortletEMailerPortlet

Page 22: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

DemosDemos

►Messaging Portlet ApplicationMessaging Portlet Application Goal:Goal:

►Communicate between portlets via message Communicate between portlets via message passingpassing

Technologies:Technologies:►Portlet Servlets w/ EventsPortlet Servlets w/ Events►Java Server Pages (JSP)Java Server Pages (JSP)►Java BeansJava Beans

View:View:►MessageSenderPortletMessageSenderPortlet

Page 23: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

Objectives RevisitedObjectives Revisited

► Phase 1 ObjectivesPhase 1 Objectives Is portal technology a feasible solution?Is portal technology a feasible solution?

► ComplexityComplexity Inter-portlet communication – Message Passing!Inter-portlet communication – Message Passing! User based roles (permissions) – Featured In Portal User based roles (permissions) – Featured In Portal

Server!Server! Compatibility with existing databasesCompatibility with existing databases

► LDAPLDAP► PerformancePerformance► EfficiencyEfficiency► Knowledge – Conceptual Overview, TutorialsKnowledge – Conceptual Overview, Tutorials

Tool SupportTool Support ProceduresProcedures Learning CurveLearning Curve

Page 24: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

Future PlansFuture Plans

►Continued Objectives:Continued Objectives: ComplexityComplexity

►Inter-portlet communicationInter-portlet communication

Performance AnalysisPerformance Analysis KnowledgeKnowledge

►Learning CurveLearning Curve

►New Objectives:New Objectives: Excellus Architectural PrototypeExcellus Architectural Prototype

►Exploring Key ConcernsExploring Key Concerns

Page 25: Kangaroo Software Use of Portlet Technology for Dynamic Generation of User Interfaces Jon Ferry Chris Helmeset Greg McGraw Jonathan Peffer

ConclusionConclusion

► IntroductionIntroduction► Process / PlanProcess / Plan► AccomplishmentsAccomplishments► FindingsFindings► PitfallsPitfalls► DemosDemos► Objectives RevisitedObjectives Revisited► Future GoalsFuture Goals► Questions?Questions?