В 1991 году
Международная организация по стандартизации (ISO) инициировала работу по созданию единого
стандарта оценки программных процессов. Стандарт получил имя
SPICE (сокращение от Software Process Improvement and Capability determination – определение возможностей и улучшение процесса создания
программного обеспечения). Официально стандарт называется "ISO/IEC 15504: Information Technology – Software Process Assessment" и на данный момент существует в качестве рабочей версии, последний выпуск который состоялся в мае 1998 года.
Задачей SPICE является создание международного стандарта, в котором был бы учтен весь накопленный опыт в области
разработки ПО. На рис. 1 показаны наиболее значительные стандарты, идеи которых были использованы при создании SPICE.
Рис. 1. Предшественники стандарта SPICE
Итак, стандарт SPICE унаследовал многие черты более ранних стандартов, в том числе и ISO 9001 и
CMM. Для этого пришлось прибегнуть к повышению уровня детализации стандарта. Следствием такого основательного подхода является большой объем стандарта: документация к нему содержит около 500 страниц!
Больше всего SPICE напоминает CMM. Точно так же, как и в CMM, основной задачей организации является постоянное улучшение процесса разработки ПО. Кроме того, в SPICE тоже используется схема с различными уровнями возможностей (в SPICE определено 6 различных уровней), но эти уровни применяются не только к организации в целом, но и к отдельно взятым процессам. В табл. 1 приведены список уровней способностей модели SPICE и характерные для них процедуры управления. Отметим, что на данный момент не существует русского перевода стандарта SPICE, поэтому использованные термины не являются общепринятыми или официально зарегистрированными.
Уровни способностей процесса в стандарте SPICE
Таблица 1
Уровни | Название |
Уровень 0 | Процесс не выполняется |
Уровень 1 | Выполняемый процесс |
1.1 | Измерение производительности процесса |
Уровень 2 | Управляемый процесс |
2.1 | Управление производительностью |
2.2 | Управление созданием продуктов |
Уровень 3 | Установленный процесс |
3.1 | Документирование процесса |
3.2 | Отслеживание ресурсов процесса |
Уровень 4 | Предсказуемый процесс |
4.1 | Измерение процесса |
4.2 | Управление процессом |
Уровень 5 | Оптимизирующий процесс |
5.1 | Изменение процесса |
5.2 | Постоянное совершенствование |
Таким образом, процессы в модели SPICE могут быть представлены следующим образом (рис. 2).
Рис. 2. Упрощённая модель оценки процессов в стандарте SPICE
Поэтому иногда говорят, что модель SPICE является двухмерной – на одной оси откладываются процессы, а на другой оси – достигнутый уровень возможностей для этих процессов.
Во время оценки и улучшения качества процессов выполняются следующие задачи (рис. 3):
Рис. 3. Основные элементы стандарта SPICE
- Оценка процесса – происходит путем сравнения процесса разработка ПО, существующего в данной организации, с описанной в стандарте моделью. Анализ результатов, полученных на этом этапе, помогает определить сильные и слабые стороны процесса, а также внутренние риски, присущие данному процессу. Это помогает оценить эффективность процессов, определить причины ухудшения качества и связанные с этим издержки во времени или стоимости.
- Определение возможностей процесса – позволяет оценить возможности улучшения данного процесса. Очень часто определение возможностей процесса производится компанией-поставщиком, чтобы убедить существующих или потенциальных заказчиков в своей способности достичь заданных показателей.
- В результате предыдущих шагов в организации может появиться понимание необходимости улучшения того или иного процесса. К этому моменту цели совершенствования процесса уже четко сформулированы и остается только техническая реализация поставленных задач. После этого весь цикл работ начинается сначала.
Скажем несколько строк о структуре
документации по стандарту SPICE. Набор документов по SPICE состоит из 9 частей. Первая часть "Введение и основные концепции" и девятая часть "Словарь" носят чисто информационный характер. Самым важным элементом SPICE является наибольшая часть документов, а именно: части со второй по шестую. Например, вторая часть стандарта содержит так называемую эталонную модель (reference model), которая описывает процессы. Практически, это модель процессов из ISO 12297, хотя, к сожалению, эти модели не полностью идентичны. Результаты оценки процессов с помощью SPICE выглядят достаточно сложно и потому требуют некоторого упрощения для понимания неподготовленным человеком (например, такое упрощение было проделано при создании рис. 2).
Остальные части стандарта – седьмая и восьмая – посвящены соответственно, улучшению процесса и определению возможностей процесса.
Одним из важных достоинств SPICE является его открытость и свободное распространение. В отличие от большинства прочих стандартов, полный текст SPICE можно получить на официальном сайте SPICE:
http://www.sqi.gu.edu.au/spice.
В табл. 2 кратко сформулированы преимущества SPICE по сравнению с ISO 9001.
Сравнение стандартов SPICE и ISO 9001
Таблица 2
SPICE | ISO 9001 |
Объемный и подробный документ | Краткий документ |
Детальная модель | Абстрактная модель |
Улучшение процесса и определение возможностей | Только сертификация |
Шесть уровней возможностей процесса | Сертификация/отказ |
Требования к оценке процесса, руководство по применению | Только модель |
Дополняет ISO 9001 | Может быть детализирован с помощью SPICE |
SPICE предоставляет более полный набор средств по обеспечению качества и улучшению процессов, чем ISO 9001. Поэтому для обеспечения качества процессов разработки ПО мы рекомендуем использовать именно SPICE. Это поможет организации заметно улучшить существующие процессы, а затем при необходимости получить и сертификат ISO 9001. Накопленный опыт решения проблемы качества по такой схеме отражен в статье (в частности, в ней сформулирован набор минимальных требований к различным процессам в организации согласно модели SPICE, достаточный для получения сертификата ISO 9001).
Использовать SPICE можно и в небольших компаниях – об этом свидетельствуют результаты работы проекта SPIRE, в рамках которого проводилось внедрение процессов улучшения качества в малых (менее 50 человек) компаниях из различных стран Европы. Как показал опыт, и при небольших денежных вложениях в мелких компаниях можно добиться существенного увеличения производительности труда и улучшения качества производственных продуктов. Результаты исследований, проведенных в рамках проекта SPIRE, можно найти по адресу:
http://www.cse.dsu.ie/spire.
В связи со своей открытостью стандарт SPICE популярен и по нему существует много свободно доступных материалов. Например, на официальном сайте SPICE любая организация может зарегистрироваться для участия в SPICE Trials (пробных применениях). На сайте группы пользователей SPICE (см.
http://www.iese.fhg.de/SPICE) собрано большое количество информации о самом стандарте, доступных ресурсах и его применении на практике. С августа 1999 года выходит журнал SPICE.World, целиком посвященный SPICE (существует электронная версия этого журнала – см.
http://www.spiceworld.htm).
В России стандарт SPICE пока еще делает только самые первые шаги. В октябре 1997 года в Санкт-Петербурге состоялся первый семинар, посвященный SPICE. Его организатором выступили финские компании SEC Oy и STTF Oy. С тех пор семинары по SPICE в Санкт-Петербурге проводятся этими компаниями не реже двух раз в год.