Некоторые из атрибутов качества, перечисленных в этой главе, являются неполными или неспециализированными — очень трудно выразить их одной-двумя короткими фразами. Вам не удастся оценить, отвечает ли продукт неточно сформулированным требованиям к качеству или нет. Кроме того, упрощенные задачи, связанные с качеством илипроизводительностью, могут оказаться невыполнимыми. Максимальное время отклика, равное двум секундам для запроса к БД, замечательно работает при несложном поиске в локальной БД, но абсолютно невыполнимо при соединении шести связанных таблиц, размещенных на серверах, которые расположены в разных местах.
Для решения проблемы неявных и неполных нефункциональных требований консультант Tom Gilb (1988; 1997) разработал Planguage, язык планирования с большим набором ключевых слов, который позволяет точно устанавливать атрибуты качества и другие задачи проекта (Simmons, 2001). Далее показано, как выразить требование к производительности с помощью всего лишь нескольких из множества ключевых слов Planguage. Этот пример является версией требований на языке Planguage к производительности из главы 10: «95% запросов БД каталога должны быть выполнены в течение 3 секунд на однопользовательском компьютере Intel Pentium 4, 1,1 ГГц под управлением Microsoft Windows XP, когда доступны как минимум 60% системных ресурсов».
TAG. Производительность. Время отклика на запрос.
AMBITION. Быстрый отклик на запросы БД на пользовательской платформе.
SCALE. Время (в секундах) между нажатием клавиши Enter и щелчком ОК для отправки запроса и началом отображения результатов запроса.
METER. Тестирование с использованием секундомера, выполненное на 250 тестовых запросах, представляющих определенный операционный профиль использования.
|
MUST. He более 10 секунд на 98% запросов <— Специалист выездной службы поддержки.
PLAN. He более 3 секунд для запросов 1-ой категории, 8 секунд для всех остальных запросов.
WISH. He более двух секунд для всех запросов.
Основная пользовательская платформа DEFINED. Процессор Intel Pentium 4 1,1 ГГц, оперативная память 128 Мб, под управлением ОС Microsoft Windows XP с установленным пакетом QueryGen версии 3.3, однопользовательский компьютер, свободно как минимум 60% системных ресурсов, другие приложения не выполняются.
В каждом требовании присутствует уникальный тэг (tag), или метка. Цель (ambition) устанавливает цель или задачу для системы, которая порождает данное требование. Масштаб (scale) определяет единицы измерения, а счетчик (meter) описывает точно, как выполнить измерения. Все заинтересованные стороны должны одинаково хорошо понимать, каким образом измеряется производительность. Предположим, пользователь проще воспринимает систему измерений, которая основана на времени от нажатия клавиши «Enter» до вывода всех результатов запроса, чем до начала отображения результатов, как указано в примере, Разработчик может заявить, что требование удовлетворено, а пользователь будет утверждать обратное. Точно выраженные требования к качеству и системе измерений помогут предотвратить такого рода недоразумения.
Вы можете указать несколько желаемых количественных величин, которые необходимо измерять. Критерий must (обязательство) определяет наименьший достижимый уровень. Требование не удовлетворено до тех пор, пока не будут удовлетворены все условия must, таким образом, это условие должно быть обосновано в бизнес-терминах. Можно указать требование must другим способом. Для этого нужно определить условие fait (неудача) (еще одно ключевое слов языка Planguage), например: «Более 10 секунд ожидания для более 2% всех запросов». Величина plan (план) указывает номинальное значение, а wish (пожелание) представляет собой идеальный результат. Кроме того, покажите источник требуемой производительности, например, упомянутое выше условие must (обязательство) указал специалист выездной службы поддержки. Для облегчения чтения любые специализированные термины, используемые в операторах языке Planguage, заданы как defined (определяемые).
|
Planguage определяет множество дополнительных ключевых слов, с помощью которых удается добиться более гибкой и точной спецификации требований. Так как язык Planguage, его словарь и синтаксис еще развиваются, рекомендую обратиться за свежей информацией на Web-сайт https://www.gilb.com. Planguage представляет собой мощное средство для точной формулировки атрибутов качества и требований к производительности. Указав несколько уровней для ожидаемого результата, вы получите более широкое представление о требованиях к качеству, чем с помощью простых конструкций, таких, как «черное-белое» и «да-нет»,