- •Т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 Требуемые ресурсы.
Тема13: Современные методы совершенствования процессов работы с требованиями
1) Требования в гибких методологиях
С точки зрения современных терминов все рассмотренные выше методологи, включающие работы по построению, сопровождению и модификации требований с упором на их моделирование и анализ носят название «прогнозирующие».
Качество и надежность таких методологий достигается достаточно большим объемом трудозатрат.
В противовес прогнозирующим методологиям создания программного обеспечения, относительно недавно сформировалась парадигма гибких (agile) методологий.
В феврале 2001 г. инициативная группа из 17 специалистов объединилась в Альянс гибкой разработки программного обеспечения.
Эта группа разработала и приняла Манифест гибкой разработки, включая 12 пунктов.
Среди них имеются:
-Индивидуальности и взаимодействия ВЫШЕ процессов и инструментов
- Работающее программное обеспечение ВЫШЕ всесторонней документации
- Сотрудничество с клиентами ВЫШЕ переговоров по контракту
- Реакция на изменения ВЫШЕ следования плану и тд.
В определенной степени члены Альянса ставят под сомнение необходимость всестороннего моделирования и документирования требований и даже посягают на святое святых - планы и контракты.
На сегодня "быть гибким" стало модным.
Т.о. и методологии, изложенные выше, включая RUP, переходят на «гибкие рельсы».
Так, например
-опубликованы как минимум два варианта гибкой трансформации для RUP;
- MSF опубликовало нотацию agile MSF.
Возникли и чисто гибкие методологии, например, методология XP.
2) Артефакты для работы с требованиями в гибких методологиях
С позиций работы с требованиями основными средствами, которыми оперируют гибкие методологии, являются:
-карты представления системы,
-истории пользователей,
-приемочные тесты,
-CRC-карты.
Поясним их детальнее.
Карта представления в определенной степени напоминает документы "видения". Это текст размером в 20-30 слов, умещающийся на небольшой (размером с визитную) карточке.
Истории пользователей (user story) очень сильно напоминают краткие описания вариантов использования. Особенности историй пользователя - в том, что они
- во-первых, должны быть действительно краткими (также умещаться на карточке),
- во-вторых - в том, что это - действительно истории пользователей, т.е. рассказы о том, как они планируют использовать систему.
Использование историй пользователя исключает ситуацию, когда аналитик что-то придумал (домыслил) за пользователя, т.к. эти артефакты создают сами пользователи.
Истории пользователя должны иметь осмысленные наименования и номера.
Приемочные тесты обычно пишут на обратной стороне карты с соответствующей историей пользователя. Шаблон, используемый в методологии XP, содержит 3 предложения:
- Установка (контекст; инициирующее событие),
- Операция (функция с количественными характеристиками),
- Подтверждение (результаты исполнения функции).
CRC-карты (Класс-Ответственность-Кооперация) можно было бы назвать аналогом прототипа.
Как и предыдущие 3 артефакта, представляют собой небольшие карточки, в заголовке которых представлено название класса, а ниже - таблица в две колонки.
В левой колонке перечислены ответственности (т.е. высокоуровневый взгляд на его методы) класса.
В правой - классы, состоящие в кооперации с рассматриваемым классом.
