You are currently browsing the tag archive for the ‘Performance Test’ tag.

Comprehensive Application Performance Management extends the scope of traditional Performance Tests, which usually get involved at QA/Testing phase, to cover the full application life cycle.

In this new approach, Performance Engineers will engage in each phase of the application life cycle, from requirements gathering to application optimization, examining the application architecture design, development and configurations from performance management point of view.

The performance engineers will team up with analysts, developers, function testers, deployment teams, operational teams, monitoring teams and capacity planning teams to

  • Test, monitor and tune the performance of the applications
  • Resolve production availability and performance issues as soon as possible
  • Ensure enough capacity to support business growth

Application Lifecycle Engagements

clip_image002

Here are the proposed performance management engagements for each phase:

1. Requirement Phase: Define the Service Level Agreement (SLA) or Non Functional Requirements

  • Work with the analyst and business partners to explicitly define
    • Critical Business Transactions
    • The SLA for each of those business critical transactions, e.g. what’s the acceptable response time to login
  • Promote the best practices/standards in defining performance/availability related non-functional specifications.

2. Prototype Phase: Help pick the right technology/solution

  • Review each of the new technologies/solutions to identify potential performance issues
  • Stress test different alternative technology/solution in meaningful ADP business scenarios to define the performance, extensibility, resource utilization characteristics/implications.
  • Test the performance of the POC (Proof of Concept). Identify potential performance bottlenecks and suggestion remediation.

3. Development Phase: Detect and fix performance issues before mass development takes off

  • Review architecture design from performance management point of view.
  • Performance test early versions of the solution. Ping down any potential performance issues before the same problem is put into mass development.
  • Design and implement the performance monitor strategy in DEV/DIT environment, which will be propagated from DEV to QA, eventually to Production environment.

4. Test Phase: Understand the performance characteristics of the system

  • Traditional performance tests phase to validate the new release
    • How the system will behave under peak load. Can it satisfy Service Level Agreement (SLA)/Non-functional Requirements under expected peak load? Can it support projected sales growth?
    • What’s the maximum load the system can sustain without performance degradation?
    • Identify and remove the performance bottlenecks
  • Baseline comparison
    • Define the performance baseline for critical business transactions, either from the performance testing results of the previous release, or from actual Production performance data
    • Compare the performance result of the new release with the baseline. Determine the change of the performance characteristics.
      • Performance under peak load improves or deteriorates
      • Maximum capacity increases or decreases

5. Operational Phase: Monitor the Production performance and Resolve Production Performance/Availability Issues

  • Design and implement the Performance Monitoring Strategy for the system
    • Dashboard
    • Alert
    • Report
  • Resolve Production Performance/Availability related issues
    • Examine the Production Monitoring Metrics to identify the root cause of the issue
    • Resolve the issue by attempting to recreate the issue in Performance Testing Environment
      • Recreate the issue in Performance Testing environment(s)
      • Identify the bottlenecks
      • Suggest remediation

6. Optimization Phase: Continuous Performance Tuning

  • Identify performance bottlenecks. Work with development team to resolve those bottlenecks.
  • Promote Performance Best Practices among development and deployment teams, e.g. the fastest approach to make web service calls
  • Propose new architecture design to save operational costs, e.g. reduce number of servers used or consolidation

Key Advantages

Comparing to the traditional performance testing involvements, comprehensive application performance management approach has the following advantages:

  • Standard overall performance management strategy across all the applications
  • Consistent performance monitoring strategy across the full application lifecycle
  • More efficient and targeted performance testing and tuning, equipped with the knowledge of critical business transactions, production performance statistics and information of historical production performance issues.
  • Eliminate performance issues from the early phases, long before they reach Production.
  • Avoid costly re-factory work by picking the right solution from the beginning
July 2017
M T W T F S S
« Dec    
 12
3456789
10111213141516
17181920212223
24252627282930
31  

Blog Stats

  • 59,708 hits