Updated on 2025-05-22 GMT+08:00

PERF01-01 Managing Performance Throughout the Lifecycle

Performance activities are integrated into regular stages of the software lifecycle, including requirements, design, development, testing, and maintenance.

  • Risk level

    High

  • Key strategies

    Set performance targets

    Set specific, quantitative, measurable performance targets for each scenario. Understand the service requirements and expected quality before setting targets. Collaborate with stakeholders to fulfill function experience requirements instead of only focusing on technical metrics. Define clear performance requirements so you can quantitatively determine if the software achieves the targets accurately. The requirements include:

    • Define clear performance targets.
    • Avoid using qualitative or vague performance targets.
    • Define one or more targets for each performance scenario.
    • Define the appropriate level of granularity for performance metrics.

    Implement adequate functions

    Simplify the function design for components/modules/methods/classes and avoid making inclusive design in the early process. Do not invoke excessive functions or functions that have great impact on performance. Select appropriate cloud service types and specifications to take advantage of cloud elasticity. Designing overly complex components is either for general purposes or a poor practice. Avoid over-design when creating your own functions or invoking existing ones.

    Monitor performance

    During development and maintenance, take consistent measures (for example, insert code and detectors at key points) to test and analyze load scenarios, resource requirements, and performance targets. Use monitoring tools to analyze historical trends and identify dominant data flows and code implementation paths. Test performance metrics with commercial tools or consider their testability during design. The data to be tested includes response time, processing capacity, and the frequency of invoking functions and modules.

    Optimize performance for efficiency

    Update your targets as the business grows to meet new challenges and opportunities. Understand how the system works, evolves, and adapts as platforms or technologies change. Allocate enough time for ongoing performance optimization. Foster a culture focused on performance optimization to empower team members to actively monitor performance data. Utilize metric-driven new design patterns and technologies to enhance the system architecture.

    Figure 1 Performance optimization maturity model