
- •Т1 Введение в курс
- •1 Определение Информационной системы.
- •Т2 Понятие требования классификация требований
- •1 Методология и стандарты, регламентирующие работу с требованиями.
- •2 Определение понятия требования
- •3 Классификация требований.
- •3.1 Требования к продукту и процессу
- •3.2 Уровни требований
- •3.3 Системные требования и требования к по
- •3.4 Функциональные, нефункциональные требования и характеристики продукта
- •3.5 Классификация rup
- •Т3 выявление требований
- •1 Источники требований
- •2 Стратегии выявления требований
- •2.4 Самостоятельное описание требований
- •2.5 Совместные семинары
- •Т4 формирование видения
- •Видения продукта и границы проекта.
- •Видение в rup
- •Т5 свойства требований
- •Полнота
- •Ясность (недвусмысленность, определенность, однозначность спецификаций).
- •Корректность и согласованность (непротиворечивость)
- •Верифицируемость (пригодность к проверке).
- •Необходимость и полезность
- •Осуществимость (выполнимость)
- •Упорядоченность по важности и стабильности.
- •Наличие количественной метрики.
- •Каких требований не должно быть.
- •Тема6: Классификация и специфицирование требований
- •1. Глоссарий.
- •2. Актеры и варианты использования.
- •3. Спецификация вариантов использования.
- •3.1 Свободный формат.
- •3.2 Шаблон полного описания вариантов использования.
- •3.3 Табличные представления варианта использования.
- •3.4 Шаблон варианта использования rup.
- •3.5 Выбор формы описания варианта использования.
- •3.6 Спецификация нефункциональных требований.
- •3.7 Атрибуты требований.
- •Тема7: Расширенный анализ требований. Моделирование
- •Цели моделирования
- •Модели uml, поясняющие функциональность системы
- •Диаграмма вариантов использования
- •Диаграмма действий
- •2.3. Диаграмма состояний
- •Диаграммы uml, поясняющие внутреннее устройство системы
- •3.1. Диаграмма классов.
- •Тема8: Расширенный анализ требований. Прототипирование
- •Цели прототипирования.
- •1)Неясные требования.
- •2)Разные варианты решения.
- •3) Анализ осуществимости.
- •Классификация прототипов.
- •Тема9: Документирование требований
- •Документирование требований в соответствие в гост
- •Структура в соответствии с гост 34.602-89
- •Описание требований к системе в соответствии с гост
- •2. Документирование требований на основе ieee Standard 830-1998
- •Тема10: Введение в управление требованиями
- •Определение понятия «управление требованиями»
- •2) Принципы и приемы управления требованиями
- •2.1) Базовая версия требований
- •2.2) Процедуры управления требованиями
- •2.3) Контроль версий
- •2.4) Атрибуты требований
- •2.5) Контроль статуса требований
- •2.6) Измерение трудозатрат, необходимых для управления требованиями
- •3) Управление изменениями
- •3.1) Управление незапланированным ростом объема
- •3.2) Процесс контроля изменений
- •3.3) Анализ влияния изменения
- •3.4) Трассируемость требований
- •Тема11: Проверка требований
- •1)Верификация и валидация
- •2)Некоторые типичные проблемные ситуации процесса формирования и оценки требований
- •2.1 )Двусмысленность требований
- •2.2) "Золочение" продукта
- •2.3) Минимальная спецификация
- •2.4) Пропуск типов пользователей
- •3) Методы и средства проверки требований
- •3.1) Неофициальные просмотры требований
- •3.2) Инспекции
- •3.3) Разработка тестов
- •3.4) Определение критериев приемлемости
- •Тема12 :Анализ требований и управление рисками
- •Тема13: Современные методы совершенствования процессов работы с требованиями
- •1) Требования в гибких методологиях
- •2) Артефакты для работы с требованиями в гибких методологиях
- •3)Планирование на основе требований на примере xp
- •3.1) Оценивание
- •3.2) Планирование версий и итераций
- •Тема14: Применение методов анализа требований при приобретении стандартного программного обеспечения
- •1. Современные тенденции в развитии аис и технологий их создания
- •2. Покупное или заказное по - критерии выбора
- •3. Стратегии выбора решения
- •3.1 Анализ требований
- •3.1.1 Рамки проекта.
- •3.1.2 Широта анализа требований.
- •3.1.3 Глубина проработки требований.
- •3.1.4 Требуемые ресурсы.
3.3) Разработка тестов
Механизм вариантов использования (uses cases), рассмотренный в лекции 8, позволяет ответить на вопрос: как будет использоваться система.
Чтобы проверить систему, используется аналогичный механизм: тестовых сценариев (test cases).
Тестовые сценарии (ТС) рекомендуется создавать уже на ранних стадиях работы с требованиями, в идеале - после получения запросов совладельцев, параллельно с разработкой вариантов использования.
Тестовые сценарии, как и варианты использования, могут поддерживать разные уровни абстракции. Различаются концептуальные и детальные ТС. Концептуальный уровень предполагает проработку процедуры тестирования, инвариантную к конкретной реализации вариантов использования.
Предлагается следующая процедура использования тестовых сценариев:
1.Построить матрицу, где по вертикали отмечены функциональные требования, а по горизонтали - тестовые сценарии.
2.Убедиться, что каждый из ТС осуществим на существующем наборе требований.
3.Убедиться, что для каждого требования представлен как минимум один ТС.
4.Прочертить "путь" каждого из ТС на карте диалогов. Это позволит: обнаружить некорректные или пропущенные требования, исправить ошибки на карте диалогов и отшлифовать варианты тестирования.
Процедура анализа требований считается выполненной только тогда, когда все требования, включенные в спецификацию, обладают методами оценки соответствия им создаваемого программного продукта. Т.о. так же необходимо выполнить тестирование нефункциональных требований. В этом случае они должны быть измеримы.
Для того, чтобы нефункциональные требования были измеримы, каждому из них в идеале необходимо сопоставить количественную метрику. Если это не удается - возможно, требование следует переформулировать, либо детализировать.
3.4) Определение критериев приемлемости
При формальной приемке продукта существуют две типовые процедуры:
-демонстрация продукта Разработчиком на тестовых сценариях
- проверка продукта Заказчиком.
Однако для Заказчика важнее даже не количество выявленных дефектов, а возможность проверки - годится ли разработанная АИС для решения поставленных им задач.
Крайне важно, наряду с формированием требований, вовлечь Заказчика на ранних стадиях создания продукта в процесс формирования критериев приемлемости.
Критерии приемлемости (acceptance criteria) должны отразить точку зрения Заказчика на то, что он считает правильной системой.
Т. о. выполняется делегирование разработки тестов на приемлемость пользователя.
Такая стратегия эффективна, т.к. позволяет уже на этапе сбора информации перейти
- от формулировки вопроса с "Что вам нужно делать с помощью системы?"
- к "Как вы делаете вывод о том, что система удовлетворяет вашим потребностям?".
Если клиент не может описать, как он оценит, что конкретное требование удовлетворено системой, значит, требование сформулировано недостаточно ясно.
Раннее формирование тестов для проверки приемлемости позволяет обнаружить дефекты в требованиях.
Проверка приемлемости базируется на ключевых (существенных) вариантах использования. При этом следует абстрагироваться от альтернативных сценариев и исключений и сосредоточить внимание на основном потоке событий. Необходимо учесть также и нефункциональные требования, такие, как производительность, легкость и простота использования.