Модель зрелости процессов разработки программного обеспечения
Шрифт:
Уточнение этих фраз требует от организации учета общего контекста их использования. При этом встает вопрос соответствия конкретной интерпретации одной или нескольких фраз целям группы ключевых процессов. Ответ на этот вопрос можно дать лишь с помощью профессиональной оценки.
Интерпретация ключевых практик и их значения для целей группы ключевых процессов также должна проводиться путем профессиональной оценки. Как правило, группа ключевых процессов описывает фундаментальный набор действий, которые должны выполняться любыми разрабатывающими организациями вне зависимости от их размера или их продукции. Однако ключевые практики СММ должны интерпретироваться в контексте
Применение профессиональной оценки ведет к вопросу об адекватном качестве производственного процесса. Модель СММ не выдвигает требований к такой адекватности, хотя ею устанавливаются минимальные критерии для «рационального» процесса во многих средах разработки ПО. Цель управления процессами заключается в установлении процессов, способных стать фундаментом для систематического усовершенствования на основе бизнес-потребностей организации.
Каковы же критерии «рационального» производственного процесса? Рациональный процесс должен эффективно наращивать производственный потенциал организации и удовлетворять большинству требований к определенному процессу. Более конкретно — он должен быть проверен на практике, документирован, обязателен, изучен, количественно оценен и иметь возможности для усовершенствования.
Может ли считаться рациональным установленный организацией процесс оценки, основанный на выборе случайных значений? Конечно, этот процесс можно документировать, а затем строго ему следовать. Некоторые могут даже утверждать, что он способен быть таким же реалистичным, как и многие другие методы оценки. Однако большинство профессиональных разработчиков не приемлет «кидание костей» в качестве рационального процесса оценки. Поскольку этот метод подчиняется лишь законам теории вероятностей, его нельзя усовершенствовать.
Насколько далеко ушло от способа «кидания костей» документирование процесса по методу «пойти и спросить Михалыча»? Этот метод может быть очень хорош для оценки. Он может быть даже последователен и воспроизводим, пока Михалыч рядом. Однако он не удовлетворяет нашим критериям, поскольку его не могут изучить другие сотрудники. Этот процесс ориентирован на личность и не может быть воспроизведен без Михалыча, поэтому он не способствует развитию производственного потенциала организации.
Выполнение оценки с использованием каких-либо вариантов метода Дельфи (метода, в котором эксперты в соответствующей области обсуждают поставленные проблемы и вырабатывают согласованные рекомендации по их решению) обычно считается рациональным процессом. Несмотря на то, что метод Дельфи ориентирован на личности, основанная на нем оценка объема удовлетворяет критериям рационального и эффективного процесса, а такая структурированная методика способствует развитию потенциала организации.
Основной смысл профессиональной оценки состоит в выявлении подобных различий. Формальное соответствие целям и адекватное качество бывает трудно отличить друг от друга. Цели подытоживают ключевые практики, которые, в свою очередь, описывают рациональный производственный процесс. Однако рациональность процесса не гарантирует его эффективности
Атрибуты адекватности могут интерпретироваться лишь в контексте бизнес-среды и конкретных условий проекта и организации. Подобные оценки адекватности могут выполняться организацией только как часть ее цикла непрерывного усовершенствования производственного процесса. При этом нельзя достичь совершенства, а непрерывное усовершенствование процесса никогда не завершается.
ГЛАВА 8. УРОВЕНЬ 2: ПОВТОРЯЕМЫЙ УРОВЕНЬ
8.1. Управление требованиями
Группа ключевых процессов для уровня 2: повторяемый уровень.
Цель управления требованиями состоит в том, чтобы заказчик и разработчики смогли полностью согласовать требования, выдвигаемые к проекту разработки ПО.
Управление требованиями включает в себя достижение и поддержку соглашения с заказчиком по требованиям к проекту разработки. Это соглашение носит название «системных требований, установленных для ПО». Под «заказчиком» может подразумеваться группа системного проектирования, группа маркетинга, какая-либо другая внутренняя организация или внешний заказчик. Данное соглашение охватывает как технические, так и прочие требования (например, сроки поставки). Это соглашение формирует основу для оценки затрат, планирования, выполнения и отслеживания производства работ по проекту в течение всего жизненного цикла ПО.
Отнесение системных требований к ПО, оборудованию и другим компонентам системы (например, людям) может выполняться группой, внешней по отношению к группе разработки (например, группой системного проектирования), причем разработчики не должны непосредственно контролировать это распределение. Группа разработки предпринимает в рамках проекта соответствующие шаги, обеспечивающие контроль над теми требованиями, которые попадают в сферу ответственности разработчиков, а также их документирование.
Чтобы обеспечить этот контроль, группа разработки рассматривает исходные и переработанные системные требования к ПО и пытается решить возможные проблемы до того, как требования будут внедрены в проект разработки. Любое изменение системных требований сопровождается изменениями затронутых планов разработки, промежуточных продуктов и операций в целях их согласования с обновленными требованиями.
Цели
Цель 1
Установление контроля над системными требованиями к ПО в целях формирования базовой линии, используемой разработчиками ПО и руководством проекта.
Цель 2 Поддержка согласованности планов разработки, продуктов и операций с системными требованиями, отнесенными к ПО.
Обязательства по выполнению
Обязательство 1 Проект следует документу организационной политики управления системными требованиями, отнесенными к ПО.
В рамках этих практик системные требования, отнесенные к ПО, называются «установленными требованиями».
Установленные требования являются подмножеством системных требований, которые должны быть реализованы в программных компонентах системы. Установленные требования являются основной входной информацией для плана разработки ПО. Анализ требований к ПО позволяет конкретизировать, уточнить и документировать установленные требования.