官术网_书友最值得收藏!

Performance engineering

Performance engineering is the structure behind the goal to succeed in respecting all the nonfunctional requirements that a software development team should respect.

In a structured software house (or enterprise), the performance engineering is within system engineering, with specific roles, skills, tools, and protocols.

The goal here is not only to ensure the availability of the expected performance requirements during the development stage, but also how these requirements evolve when the application evolves, and its lifecycle up to the production environment, when continuous monitoring of the current performance against the initial requirements gives us a direct and long-range analysis of the system running.

We live in a time when an IT team is definitely an asset for most companies. Although there are still some companies that don't completely understand the definition of IT and think of it as an unnecessary cost, they will at least see the importance of performance and security as the most easily recognizable indicators of a well-made application.

Performance engineering has objectives that cover the easy goal of how to write a fast application. Let's take a look at some of these objectives, as follows:

  1. Reducing software maintenance costs.
  2. Increasing business revenue.
  3. Reducing hardware acquisition costs.
  4. Reducing system rework for performance issues.

Here, the focus is on all aspects of software development that good performance engineering may optimize. It is obvious that a more powerful application leads to lesser hardware requirements, although it is still obvious that a well-made application needs less reworks for performance issues. The focus is not on the time or money saved, but the importance of thinking about performance from the beginning of the development project up to the production stage. Writing a performing piece of code is an easy task compared to a complete software development project, with performance in mind. I know that coding is loved by any developer, but as a professional, we have to do something more.

Reducing the work to fix issues and the cost of having developers working on performance optimization or system tuning after an application is deployed in the production stage enforces the contract with the client/buyer who commissioned the software development. This respects the performance requisites and builds trust with the customer as well as leading to a sensible reduction in maintenance costs.

In performance engineering, a formal performance requisite is coded at the beginning of the development stage, together with software and system architects. Multiple tests are then executed during the development lifecycle in order to satisfy requisites (first) and maintain the level of success at the time. At the end of the production stage, the performance test analysis will act as proof of the work done in programming, testing, releasing, and maintaining of the software, as well as an indicator for various kind of issues not related directly to performance (a disk failure, a DoS instance, a network issue, and so on).

主站蜘蛛池模板: 永嘉县| 安宁市| 武汉市| 遵化市| 金沙县| 嘉定区| 五华县| 巴楚县| 万全县| 明溪县| 随州市| 平塘县| 丰台区| 太湖县| 天门市| 新丰县| 洪江市| 华坪县| 黄大仙区| 昌黎县| 红河县| 广昌县| 古田县| 佛学| 宾阳县| 双城市| 鹤峰县| 开原市| 义马市| 保德县| 乐山市| 潢川县| 肥东县| 江华| 荥经县| 左云县| 东阿县| 会宁县| 江陵县| 宣威市| 卢龙县|