claims service-oriented architecture performance prototype
Post on 03-Feb-2016
28 Views
Preview:
DESCRIPTION
TRANSCRIPT
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+processClaim()
ClaimProcessingService
+validateClaim()
ClaimValidationService
+getClaim()+getClaimHistory()
ClaimSearchService
+getMember()
MemberSearchService
+getProductBenefitDetail()
ProductSearchService
+determineEligibility()
MemberEligibilityService
+getProvider()
ProviderSearchService
Iteration 1: Caching• Java Caching System (JCS)• Aspect-Oriented Programming
– Spring Framework• Dynamic vs. Static Caching
Iteration 1: Caching+processClaims()
ClaimsProcessingService
ProviderSearchService
Caching Aspect
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
+processClaim()
ClaimsProcessingService
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
+processClaims()
LoadBalancer
+bufferClaim()+getBufferSize()
LoadBuffer
+processClaim()
ClaimProcessingService
+processClaim()
ClaimProcessingService
+processClaim()
ClaimProcessingService
+bufferClaim()+getBufferSize()
LoadBuffer
+bufferClaim()+getBufferSize()
LoadBuffer
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
top related