Transcript Slide 1
Claims Service-Oriented Architecture Performance Prototype Team Hooloovoo Team Information • Team Members – – – – Jaden Bruun Jason Cavett Justin Glaser Erik Raisanen • Sponsor – Eric Stephens • Advisor – Robert Bubacz Project Description • Project Background – Claims Processing – Performance vs. Modifiability – New Solution Required • Investigate Performance – Develop Prototype – Investigate Performance Improvements Process • Baseline Development • Three Iterations – Caching – Threading – Distributed Services Metrics • Performance – Processing Time – Memory Usage – CPU Usage • Effort – Man Hours – Function Points Baseline • Processing Claims – Validate the Claim – Retrieve Claim History – Determine Member Eligibility – Provider Validation Baseline ClaimProcessingService +processClaim() ClaimValidationService +validateClaim() ClaimSearchService +getClaim() +getClaimHistory() MemberEligibilityService +determineEligibility() ProductSearchService +getProductBenefitDetail() ProviderSearchService +getProvider() MemberSearchService +getMember() Iteration 1: Caching • Java Caching System (JCS) • Aspect-Oriented Programming – Spring Framework • Dynamic vs. Static Caching Iteration 1: Caching ClaimsProcessingService +processClaims() Caching Aspect ProviderSearchService Iteration 1: Caching Iteration 1: Caching Iteration 2: Threading • EJB Specification v2.1 – “The enterprise bean must not attempt to manage threads.” • New Solution – Remove EJBs – Thread per Service Iteration 2: Threading ClaimsProcessingService +processClaim() ProviderSearchService MemberSearchService ClaimsValidationService MemberElegibility Iteration 2: Threading Iteration 3: Distributed Services • Replication of the Baseline • Load Balancing – Assigns Work to Machines Iteration 3: Distributed Services LoadBalancer +processClaims() LoadBuffer LoadBuffer LoadBuffer +bufferClaim() +getBufferSize() +bufferClaim() +getBufferSize() +bufferClaim() +getBufferSize() ClaimProcessingService ClaimProcessingService ClaimProcessingService +processClaim() +processClaim() +processClaim() Iteration 3: Distributed Services Final Results Recommendations Project Assessment: Problem Areas • Distractions • Poster Presentation • Threading – Specification Restriction – No Mitigation Plan Project Assessment: Working Well • Solid Team • Sponsor Communication – Bi-Weekly Conference Call • Working Sessions • Dual Core iMac The Project’s Future • Service Initiative – Implementation of Core Services – Provider and Product in Production • CSOAPP Saves Excellus Time – 6 Months of Work • Value with Use Questions