Методика APDEX – стандарт оценки производительности корпоративных приложений

Apdex (Application Performance Index) — индекс производительности приложений. Открытый международный стандарт, разработанный с целью формирования объективной оценки показателей производительности корпоративных информационных систем.

Преимущества методики

  • Методика Apdex предоставляет готовый алгоритм, приводящий к простому значению разнородные факторы и множество статистических данных о производительности. Главное преимущество методики — в простом результате, для быстрой оценки состояния производительности ИС.
  • Методика бизнес ориентирована, отслеживаемые операции ранжируются по приоритетности с точки зрения бизнеса. Это позволяет правильно акцентировать внимание при мониторинге и оптимизации большого количества операций.
  • Интервалы значений Apdex имеют логическое соответствие простым критериям оценки «хорошо», «плохо», «неприемлемо», которые понятны всем.
  • Индекс строится на основании фактических данных, полученных при работе всех пользователей приложения. Результирующая оценка производительности по методике Apdex является общей, фактической и объективной.
  • При проведении работ по ускорению (оптимизации) операций, целевые значения Apdex могут являться предметом договора. Apdex может служить объективным критерием для оценки работ по повышению производительности.
  • Компания «1С» всем корпоративным клиентам, использующим приложения на платформе «1С:Предприятие 8», рекомендует производить постоянный мониторинг производительности по методике Apdex.

Методика Apdex

Apdex является числовой мерой удовлетворенности пользователей производительностью приложений. Для расчета Apdex собирается множество статистических данных о времени исполнения операций приложением. Далее производится компоновка данных, с учетом факторов влияния, и математическое преобразование, которое приводит все эти данные к значению в интервале от «0» до «1» («0» = все пользователи разочарованы, никто не может дождаться ответа от приложения, «1» = все пользователи довольны, приложение у всех работает очень быстро).

Мониторинг Apdex проводится в разрезе операций. Результирующий Apdex по приложению в целом рассчитывается на основании значений Apdex по операциям. Т.е. для применения методики Apdex, прежде всего, необходимо подготовить список критичных для бизнеса операций, подлежащих мониторингу — перечень ключевых операцийЧто является ключевой операцией: например, покупатель в магазине не будет долго ждать когда информационная система продавца учтёт его покупку. Т.е. скорость создания/формирования, проведения и печати «Чека» критичны для данного бизнеса, соответственно эти операции являются ключевыми. Также при оптимизации системы в список ключевых операций добавляют «проблемные» медленно исполняющиеся операции, которые необходимо ускорить.

Основным фактором влияния на значение Apdex является целевое время отклика. Время отклика — это время прошедшее между моментом, когда пользователь что-то делает (клик мыши по «кнопке», факт ввода или открытия формы и т.д.), и когда система (клиент, сеть, серверы) реагирует таким образом, что пользователь может приступить к дальнейшему процессу. Целевое время отклика — это требуемая длительность исполнения каждой операции из перечня ключевых операций. Целевое время в алгоритме Apdex является назначаемой величиной. Целевое время определяется на основании требований бизнеса к скорости исполнения той или иной операции.

Целевое время отклика, как правило, задается до начала замера фактических времен исполнения, но может быть определено (уточнено, скорректировано) бизнесом после первичных замеров.

В зависимости от вариации алгоритма Apdex, важным фактором влияния на расчет может быть приоритет операций с точки зрения бизнеса. В большинстве алгоритмов приоритет операции используется для ранжирования операций, но в некоторых алгоритмах приоритет операции может в значительной степени влиять на результирующий Apdex по приложению в целом. Например, отслеживается 20 операций, все отслеживаемые операции за последние сутки исполнялись очень быстро на уровне «отлично», кроме одной с наивысшим приоритетом, которая многократно исполнялась «неприемлемо» медленно. В этом случае, у алгоритма учитывающего приоритет для итогового расчета, Apdex по приложению в целом будет в районе уровня «плохо».

Обобщая — для мониторинга производительности по методике Apdex необходимо:

  • Подготовить перечень ключевых операций, подлежащих мониторингу
  • Для каждой операции из перечня указать целевое время исполнения
  • Указать приоритет для наиболее значимых операций
  • Установить/включить программные счетчики замера производительности на все ключевые операции, для накопления статистики.

Расчет Apdex

Для расчета Apdex используются статистические данные с программных счетчиков содержащие: наименование операций, когда каждая из них инициирована, и длительность исполнения каждой операции приложением. Далее эти данные за период (например, сутки) компонуются по наименованию/операции, затем для каждой операции: производится компоновка всех значений длительности исполнения этой операции, относительно целевого времени, на три зоны «отзывчивости» по отношению к пользователю:

a1c

  • Довольны – пользователи, при выполнении операции приложением, каких-либо задержек с ответом со стороны системы не ощутили. (Время исполнения операции приложением меньше или равно целевому времени T)
  • Удовлетворены – пользователи заметили, что ответ от системы пришлось ждать, но пользователи дожидались ответа от приложения. (Время исполнения операции приложением больше целевого времени T, но меньше или равно времени F. Чаще всего время F принимают равным 4*T, но в некоторых случаях коэффициент может быть изменен в большую или меньшую сторону).
  • Разочарованы – пользователи не дожидались ответа от приложения и прервали процесс исполнения операции приложением. (Время исполнения операции приложением больше времени F)

После этого производится расчет Apdex по формуле:

Зададим представления составляющим формулы, пусть:

  • N = Общее кол-во операций;
  • NS = Кол-во операций из зоны «Довольны» (количество операций с временем исполнения от 0 до Т);
  • NT = Кол-во операций из зоны «Удовлетворены» (количество операций с временем исполнения от T до F);

Тогда формула примет вид:

, т.е.

Индекс производительности рассчитывается как соотношение количества операций, которые выполнены с «приемлемой» скоростью, к общему количеству операций. При этом, под операциями с «приемлемой» скоростью принимается сумма: количество операций, которые выполнены с целевой скоростью Т и быстрее, и половина количества операций, которые выполнены со скоростью до четырех раз медленнее целевой скорости исполнения (время исполнения которых от T до F=4T).

Из формулы очевидно, что Apdex всегда будет принимать значения в интервале от 0 до 1. При ранжировании и в формуле, явным образом не учитывается количество операций выполненных со скоростью больше F при желании, эту цифру всегда можно оценить путём вычитания количества операций выполненных с «приемлемой скоростью» из общего количества операций.

У формулы есть объективное условие, влияющее на достоверность результата Apdex – количество одноименных операций за период (по которым производится расчет Apdex) должно быть более 10, иначе значение Apdex будет занижено.

Пример ранжирования, компоновки данных и результатов расчета Apdex приведен в табл. 1:

 Ранжирование результатов Apdex по приоритету операции с точки зрения бизнеса

Таб.1 Ранжирование результатов Apdex по приоритету операции с точки зрения бизнеса

Интерпретация результатов Apdex. Шкала Apdex.

Рис.2 Шкала Apdex

Интервал значений, принимаемых индексом производительности, принято отображать в виде «шкалы Apdex» (рис. 2). К интервалам значений Apdex привязаны критерии оценки по шкале «хорошо-плохо» (табл. 2).

По шкале APDEX «1» — это идеал, а «0» — полностью неприемлемый результат, промежуточные критерии оценки выглядят следующим образом (табл. 2):

Интерпретация интервалов значений Apdex

Таб.2 Интерпретация интервалов значений Apdex

Итоговый пример ранжирования, расчета Apdex с последующей интерпретацией результатов представлены на рис.3, и в демонстрационном интерфейсе нашего онлайн сервиса (для авторизации выберите из списка учетную запись «Work», пароль не установлен).

Перейти к описанию сервиса>>

Результаты мониторинга в сервисе "Apdex 1C"

Рис.3 Результаты мониторинга в сервисе «Apdex 1C»