- •______________________________________________________
- •Технология разработки программного обеспечения. Разработка и анализ требований
- •Виды, взаимосвязь и свойства требований
- •Что такое «требование»?
- •Виды требований
- •Функциональные требования
- •Нефункциональные требования
- •Нефункциональные требования к продукту
- •Нефункциональные требования к процессу
- •Вопросы для самоконтроля
- •Определение образа и границ проекта
- •Анализ предметной области
- •Анализ осуществимости
- •Определение целей и области действия
- •Документирование образа и границ проекта
- •Вопросы для самоконтроля
- •Выявление требований
- •Определение способа сбора и анализа требований
- •Источники возникновения требований
- •Заинтересованные в проекте лица
- •Опрос (интервью)
- •Подготовка
- •Проведение опроса
- •Определение последующих действий
- •Совместные семинары
- •”Мозговой штурм”
- •Роли во время сеансов
- •Правила проведения сеанса
- •Подготовка к сеансу
- •Проведение сеанса
- •Обработка результатов сеанса
- •Сценарии
- •Сценарии событий
- •Варианты использования
- •Применение модели msc uml
- •Выявление требований на основе различных точек зрения. Метод vord
- •Идентификация точек зрения
- •Структурирование точек зрения
- •Документирование и отображение системы точек зрения
- •Этнографический подход
- •Вопросы для самоконтроля
- •Разработка системных требований
- •Детализация требований пользователей
- •Системные модели
- •Модели потоков данных
- •Модели конечных автоматов
- •Модели данных
- •Прототипы
- •Роль прототипов при разработке требований
- •Виды прототипов
- •Разработка прототипов
- •Экспериментальное прототипирование
- •Эволюционное прототипирование
- •Риски прототипирования
- •Системные требования
- •Структурированный естественный язык
- •Языки описания программ
- •Графические нотации
- •Документирование системных требований
- •Вопросы для самоконтроля
- •Документирование требований
- •Спецификация требований
- •Состав спецификации требований
- •Рекомендации по разработке требований
- •Стандартные шаблоны спецификации
- •Вопросы для самоконтроля
- •Анализ спецификации требований
- •Оценка качества спецификации требований
- •Характеристики качества спецификации
- •Аттестация требований
- •Экспертиза спецификации
- •Прототипирование
- •Автоматизированный анализ
- •Тестирование требований
- •Вопросы для самоконтроля
- •Управление требованиями
- •Причины изменений требований
- •Принципы управления требованиями
- •Управление изменениями
- •Управление версиями
- •Управление связями требований
- •Риски, связанные с требованиями
- •Риски этапа выявления требований
- •Риски этапа анализа и спецификации требований
- •Риски управления требованиями
- •Вопросы для самоконтроля
- •Case-средства для управления требованиями
- •Выбор case-средств для управления требованиями
- •Уровень зрелости и используемые инструменты
- •Моделирование требований
- •Трассировка требований
- •Управление версиями
- •Возможности case-средств управления требованиями
- •Средства idf-моделирования
- •Средства uml
- •Вопросы для самоконтроля
- •Список литературы
- •Карта памяти к разделу 1
Определение целей и области действия
Бизнес-требования определяются целями и политикой организации их, как правило, высказывают те, кто финансирует проект разработки программной системы. Бизнес-требования определяют цели, которые организация намерена достичь с помощью этой системы. Пользовательские и функциональные требования должны соответствовать бизнес-требованиям в противном случае их не следует включать в проект.
Участники проекта, лица в нем заинтересованные должны иметь четкие и согласованные бизнес-цели и приоритеты в противном случае, решая разные противоположные задачи, они приведет проект к неминуемому краху.
Бизнес-требования– это вся та информация, которая описывает финансовые, рыночные и другие коммерческие преимущества, которые пользователи (и разработчики) хотят получить от использования продукта.
Бизнес-правила– это множество корпоративных политик, законов и стандартов, которые контролируют бизнес организации.
Такие правила не связаны, с какой либо конкретной программной системой, но являются одним из основных источников функциональных требований, т.к. определяют возможности, которыми должна обладать программная система для выполнения бизнес-правил. Некоторые бизнес-требования также могут определяться бизнес-правилами (например, законами государства).
Образ продукта(productvision) описывает продукт во времени. В нем указывается, как продукт будет изменяться (эволюционировать) от текущего состояния при развитии или изменении бизнес-целей.Границы проекта(project scope) относятся к определенной итерации проекта или версии продукта.
Образ, иликонцепция продукта– это определение стратегического образа системы, позволяющей выполнять бизнес-задачи. Образ будет основой принятия решений в течение всего жизненного цикла продукта, т.к. содержит описание долгосрочных целей и назначения продукта, которое удовлетворяет различных заинтересованных лиц, основано на существующих (или прогнозируемых) рыночных факторах, учитывает структуру и стратегию развития организации.
Документирование образа и границ проекта
Сведения об образе и границах проекта могут быть оформлены в виде отдельного документа [4], владельцамикоторого являются лица, финансирующие проект. Этот документ должен содержать следующую информацию.
Бизнес-требования.
Обоснование и содержание нового продукта, причины, по которым было принято решение о создании продукта. Описание ситуации на рынке, где продукту придется конкурировать с другими продуктами. Для корпоративной системы приводится описание бизнес-проблемы, которую решает продукт, среды, в которой он будет использован, сравнительная оценка продукта и его конкурентов, преимущества продукта. Описание бизнес-целей и критерии оценки их достижения в количественном и измеряемом виде, рисков, возможных потерь от них и способов минимизации рисков.
Положение об образе проекта.
Положение об образе проекта должно содержать описание:
целевой аудитории пользователей, их потребности или возможности;
имени, категории и ключевого преимущества – основы для использования;
отличий от конкурентов или текущего бизнес-процесса, описание основного отличия и преимущества продукта.
основных функций и возможностей продукта, предоставляемых пользователю. Функции и возможности должны быть идентифицированы, а те из них, которые отличают продукт от конкурентов – подчеркнуты.
предположений и зависимостей. Перечисляются зависимости проекта от внешних факторов, документируются все предположение сделанные заинтересованными лицами при разработке данного документа.
Масштабы и ограничения проекта.
Описывается объем первоначальной версии, куда включают наиболее важные для широкой аудитории функции, которые можно реализовать как можно раньше и объемы последующих версий продукта. Здесь же перечисляются те возможности и характеристики продукта, которых могут ожидать заинтересованные лица, но включение, которых не предусмотрено в продукт или определенную версию не предусмотрено.
Бизнес-контекст.
Описываются профили заинтересованных лиц, которые (профили) включают данные об основной ценности или преимуществе, которое принесет продукт, о вероятном отношении к продукту, наиболее интересные функции и характеристики и т.д.
Приоритеты проекта.
Перечисляются приоритеты факторов, которыми может оперировать менеджер проекта для достижения успеха. Например, каждый проект имеет пять измеряемых параметров [4, 10]: объем (функции), качество, график, затраты и кадры. Каждый из параметров может относиться к одной из категорий: ограничение (лимитирующий фактор, в рамках которого должен оперировать менеджер), ключевой фактор (важный фактор успеха, ограниченно гибкий при изменениях) и степень свободы (фактор, который можно в некоторой степени изменять). Тогда расстановка приоритетов – это соотнесение параметров и категорий параметров.
Операционная среда.
Приводится описание среды, в которой будет использоваться система, и определяются требования к доступности, надежности, производительности и целостности.
Документ об образе и границе проекта определяет границу и связи системы с остальным миром. Использование в документе контекстной диаграммыпозволяет графически иллюстрировать эту границу, описывая внешние сущности (расположенные вне системы), а также потоки данных, управляющие и материальные потоки, протекающие между системой и внешним миром. Диаграммы могут помочь уточнить взаимодействие между заинтересованными в проекте лицами.