
- •Управление требованиями
- •Виды требований по уровням
- •Виды требований по характеру
- •Источники требований
- •Проверка требований
- •Анализ требований
- •Документирование требований
- •Уровень 1. Документация требований
- •Уровень 2. Организация требований
- •Уровень 3. Структурирование требований
- •Уровень 3.1. Моделирование требований
- •Уровень 4. Трассировка требований
- •Уровень 5. Интеграция требований
Л. 9
Процесс управления требованиями
Введение
В условиях современной экономики выигрывает тот, кто производит больше с меньшими затратами. Сокращение затрат возможно как с использованием более дешевого сырья и материалов, дешевой рабочей силы, оптимизации процессов, так и их автоматизации. Автоматизация не ведет к стопроцентному сокращению затрат, но позволяет обрабатывать большее количество информации с меньшими затратами. Основным инструментом автоматизации деятельности являются информационные системы. Информационная система — это совокупность информационного, математического, лингвистического, технического программного и другого обеспечения, а также персонала для оперативной подготовки информации для лиц, принимающих решения. КИС поставляются как в коробочном варианте, который предлагает стандартные решения для автоматизации задач, так и позволяют создать необходимый набор функций самостоятельно в режиме конструктора. Кроме того, многие разработчики корпоративных систем предлагают услуги по адаптации коробочных решений к нуждам конкретного предприятия — услуги кастомизации. Корпоративные системы являются продуктом интеллектуального труда, что позволяет им без больших материальных затрат легко тиражироваться и передаваться по каналам связи, в отличие от продуктов материального производства. Информационные продукты имеют гораздо большую возможность адаптации под нужные конкретного производства, в связи с чем встает задача получения исходной информации для разработки или адаптации информационной системы. Разработка большой и сложной системы не может быть завершена за один подход — итерацию. Это может быть связано как с большой сложностью самой системы, так и со сложностью ее адаптации. Тем не менее, возможно уменьшить объем работы для разработчиков за счет повторного использования кода из одного проекта в другом. Для того, чтобы выявить возможность повторного использования кода необходимо найти требования, которые данный код реализуют. Такие требования очень часто встречаются в продуктах, автоматизирующих одну и ту же предметную область на разных организациях, например, бухгалтерский учет или документооборот. Задача повторного использования требований является одной из задач решаемых управлением требований. Управление требованиями, выработка требований и определение требований — краеугольные камни успеха любого IT-проекта. По данным исследования, проведенного IBM в области IT, 60% затрат времени организации-разработчики программного обеспечения несут в результате неэффективного подхода к управлению требованиями. В организациях, не располагающих достаточными возможностями бизнес-анализа, проекты в три раза чаще заканчиваются неудачей, чем успехом. При правильном определении требований и управлении ими перерасходы по проекту можно снизить на 20% благодаря сокращению числа неточных, неполных и упущенных требований.
Вероятность ошибки в процессе разработки ПО
По данным исследовательской организации Standish Group, наибольшее количество ошибок происходит на этапе сбора, анализа и документирования требований. Доля ошибок в различных артефактах при разработке ПО представлена на рисунке 1.
Рисунок
1. Доля ошибок в различных артефактах
при разработке ПО
Вследствие ошибок на разных этапах разработки ПО приходится затрачивать 30–50% средств от общего бюджета проекта на их исправление. Причем 70–85% от общего числа исправлений связанно именно с ошибками, допущенными на этапе сбора, анализа и документирования требований.
Наибольшее количество ошибок в требованиях происходит из-за следующих факторов:
Не выявлены требования Не четко сформулированы требования Изменения требований
12,8% |
12,3% |
11,8% |
Резюмируя сказанное выше в данном разделе, можно сделать вывод, что ошибка, допущенная в самом начале проекта (на этапе сбора, анализа и документирования требований), обходится в 200 раз дороже при внедрении и сдаче ПО. Следовательно, руководители организаций должны очень тщательно относиться к одному из основополагающих процессов разработки ПО – сбору, анализу и документированию требований, усовершенствуя данный процесс внутри организации.
Управление требованиями
Перед тем, как управлять требованиями разберемся, что такое требование и что такое управление требованиями и зачем это нужно. Управление требованиями — процесс, включающий идентификацию, выявление, документацию, анализ, отслеживание, приоретизацию требований, достижение соглашений по требованиям и затем управление изменениями и уведомление заинтересованных лиц. Управление требованиями — непрерывный процесс на протяжении всего жизненного цикла продукта. Требование — это любое условие, которому должна соответствовать разрабатываемая система или программное средство. Требованием может быть возможность, которой система должна обладать и ограничение, которому система должна удовлетворять. В соответствии с Глоссарием терминов программной инженерии IEEE, являющимся общепринятым международным стандартным глоссарием, требование это:
-
Условия или возможности, необходимые пользователю для решения проблем или достижения целей;
-
Условия или возможности, которыми должна обладать система или системные компоненты, чтобы выполнить контракт или удовлетворять стандартам, спецификациям или другим формальным документам;
-
Документированное представление условий или возможностей для пунктов 1 и 2.
В соответствии со стандартом разработки требований ISO/IEC 29148, требование — это утверждение, которое идентифицирует эксплуатационные, функциональные параметры, характеристики или ограничения проектирования продукта или процесса, которое однозначно, проверяемо и измеримо. Необходимо для приемки продукта или процесса (потребителем или внутренним руководящим принципом обеспечения качества) Так же глоссарий ITILv3 определяет такое понятие, как набор требований — документ, содержащий все требования к продукту, а также к новой или измененной ИТ-услуге.
Требования могут выражаться в виде текстовых утверждений и графических моделей.
В классическом техническом подходе совокупность требований используется на стадии проектирования ПО. Требования также используются в процессе проверки ПО, так как тесты основываются на определённых требованиях.
Этапу разработки требований, возможно, предшествовало технико-экономическое обоснование, или концептуальная фаза анализа проекта. Фаза разработки требований может быть разбита на выявление требований (сбор, понимание, рассмотрение и выяснение потребностей заинтересованных лиц), анализ (проверка целостности и законченности), спецификация (документирование требований) и проверка правильности.
|
Виды требований по уровням
-
Бизнес-требования — определяют назначение ПО, описываются в документе о видении (vision) и границах проекта (scope).
-
Пользовательские требования — определяют набор пользовательских задач, которые должна решать программа, а также способы (сценарии) их решения в системе. Пользовательские требования могут выражаться в виде фраз утверждений, в виде способов применения (use case), пользовательских историй (user story), сценариев взаимодействия (scenario).
-
Функциональные требования — охватывают предполагаемое поведение системы, определяя действия, которые система способна выполнять
-
Описывается в системной спецификации ( system requirement specification, SRS).