Reliability is key for a core banking platform. In this post I will give you some learnings and insights into a successful core banking performance engineering strategy.
- Clarify defect tracking process and responsibilities upfront
- Agree on deployment slots for your test environment
- Data sets can have massive impact on end to end response times. Make sure that data volumes, roles and permissions are in line with current production.
- Carefully check response time, throughput and data volume requirements.
- Non-functional requirements are key for a successful load and performance test. Focus your efforts on NFRs and once they are approved start with production like load and performance test execution.
- Weekly status reports are a must. Make sure that content is aligned with other streams and report overall status, defects, test execution progress and blocking issues regularly.
Fundamental performance engineering approach
- Conduct Performance Risk Assessment to identify the scope
- Specify performance requirements
- Document test approach
- Real browser based end-to-end use cases
- API based web service requests
- Manage test data, permissions and infrastructure constraints
- Synthetic Requests
- Benchmarking of Base Stack Infrastructure
- Single application tests
- Combined tests to simulate production load on all apps at the same time
- Actual and future growth patterns
- Create test reports in lightweight wiki pages
- Focus on key performance metrics
- Agreed on defect assignment rules
- Use tags for your defects tracking
- Created reporting dashboards
- Bi-weekly defect review sessions
- Performance Testing – Silk Performer, SilkCentral
- Performance Monitoring – dynatrace
- Synthetic Monitoring – Silk Performance Manager
- Defect Tracking – Jira
- Reporting – Confluence and Sharepoint
- Test Management – Spira
This full list of learnings and advices will help you in your next performance engineering project to identify hotspots quickly without jumping in too many pitfalls.