zoukankan      html  css  js  c++  java
  • Performance engineering introduction

    1.Performance

    Software performance is one of software quality attributes,  it  equal to efficiency which define in latest ISO 9126 standard :

    Efficiency 

    This characteristic is concerned with the system resources used when providing the required functionality. The amount of disk space, memory, network etc. provides a good indication of this characteristic. As with a number of these characteristics, there are overlaps. For example the usability of a system is influenced by the system's Performance, in that if a system takes 3 hours to respond the system would not be easy to use although the essential issue is a performance or efficiency characteristic. 

     

    In the standard 1061 of IEEE, the performance also described as efficiency and has the similar description. These are two most general and authoritative definition about performance in software, but as the evolving of software engineering , the people call it as performance more often other than efficiency.

    No matter it been called performance or efficiency , it include three important factors  at least and  they should be constant  :

    1.the speed

    Or say the latency , means the software run how fast within the limit HW configuration.

    2.throughput

    In different types of systems , throughput can be explained these three kinds of metrics:

    Transactions 

    Often used in opening system , which be measured by the arrival rate

    Bytes

    often used in network system ,it is also a metric about network throughput which can indicate the usage of network bandwidth in other types of system

    Concurrent users

    Often used in terminal system, means how many users and their activities can be done in a quite small timeframe  

    3.capacity

    How many resources be consumed per user or per transaction and how many left room for current HW, also predict how many resources to be devoted as business growing.

    2.Performance engineering

    The DR .Connie Smith is the founder of performance engineering, she defined the terminology as :

    Software Performance Engineering (SPE) is a systematic, quantitative approach to the cost-effective development of software systems to meet performance requirements. SPE is a software-oriented approach that focuses on architecture, design, and implementation choices.

     

    Totally , performance engineering is a series of activities to meet performance requirements ,  that is the reason why the performance be engineered . Also performance engineering is a part of software engineering  whether in waterfall or iteration models. And at the same time , Subtasks of performance engineering can be integrated into the whole software project lifecycle:

    The SPE process begins early in the software development life cycle and uses quantitative methods to identify satisfactory designs and to eliminate those that are likely to have unacceptable performance before developers invest significant time in implementation. SPE continues through the detailed design, coding and performance and load testing phases to predict and manage the performance of the evolving software as well as monitor and report actual performance versus specifications and predictions. SPE methods encompass: performance data collection; quantitative performance analysis techniques; prediction strategies; management of uncertainties; data presentation and tracking; performance testing, stress and load testing, model verification and validation; critical success factors; and performance design principles, patterns and antipatterns

    This section give us the performance engineering  not only in testing , but even in design and architecture, the following figure shows my understanding and thinking for this:

     

    More SPE details info  you can access the Smith's company website :

    http://www.perfeng.com/speis.htm

     

    3.let's build a professional performance engineering forum in China

     

    性能工程的概念在国内还很少被提及, 但我相信应该有不少公司都有这个意识或者已经成立性能团队而不仅仅局限于测试。希望能跟志同道合的朋友们一起讨论下这方面的内容,或者我们可以建立一个论坛专门讨论下相关问题。

     

    Thanks

    Yonger

  • 相关阅读:
    dubbo No provider available for the service com.alibaba.dubbo.monitor.MonitorService from registry
    mvn install
    centos mysql 数据存储目录安装位置
    maven项目依赖被改为文件夹时如何改回lib
    Oracle 用户权限分配说明
    PowerDesigner中创建Oracle表全过程记录
    Oracle创建表时涉及的参数解析
    PowerDesigner使用技巧
    关于Web服务器域名设置相关知识积累
    【转载】错误:ORA-28002: the password will expire within 7 days 解决方法
  • 原文地址:https://www.cnblogs.com/hundredsofyears/p/3370068.html
Copyright © 2011-2022 走看看