- •Т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 Требуемые ресурсы.
2)Некоторые типичные проблемные ситуации процесса формирования и оценки требований
2.1 )Двусмысленность требований
Двусмысленность является наиболее критичным фактором риска проекта, закладываемого в фазе формирования требований.
Требование, сформулированное двусмысленным образом, может привести к различным его интерпретациям представителями Разработчика и Заказчика. Разработчик, руководствуясь своей интерпретацией, определит на ее основе архитектурную основу, создаст аналитические и проектные модели и в конечном итоге создаст программный код.
Если не заложить средства на проверку требований на предмет двусмысленности в момент их формирования - существует риск непринятия готовой системы в момент приемо-сдаточных испытаний, т.к. каждая из сторон будет придерживаться своей версией интерпретации требований, что ведет к убыткам, судебным процессам и т.п.
2.2) "Золочение" продукта
Под "золочением" понимают такие ситуации, когда разработчики добавляют функции, которых нет в спецификации, но им кажется, что это понравится пользователям.
Зачастую же клиентам не нужны такие избыточные возможности, получается, что время, отведенное на реализацию, тратится впустую.
Эта ситуация возникает в случае, когда
-в коллективе Разработчика присутствуют творческие личности (ведь далеко не всякая команда станет проявлять инициативу и делать сверх того, о чем ее просили);
-существует разрыв в прохождении информации от Заказчика к Разработчику.
Инициативный разработчик "золотит" продукт из самых лучших побуждений, но, возможно, он плохо знаком с бизнес-процессом Заказчика и заложенные им возможности попросту не будут востребованы.
Другая сторона "золочения" заключается в том, что группа представителей Заказчика неоднородна по своей структуре и может возникнуть ситуация, когда представитель Заказчика, формулирующий "дорогие" требования, не обладает соответствующими полномочиями.
2.3) Минимальная спецификация
Можно создавать полную документацию требований в соответствии с вышеизложенными принципами, или ограничиться наброском требований на 2-3 страницы, т.е. создать минимальную документацию. Однако следует отдавать себе отчет в выгодах и рисках этого выбора.
Для работы "не по правилам", во-первых, должны быть объективные предпосылки. Минимальная спецификация уместна, если имеет место наличие одновременно трех обстоятельств (объединение по "И"):
а) цена контракта и размеры проекта таковы, что разработка развернутого ТЗ экономически нецелесообразна;
б) коллектив Разработчика обладает достаточной степенью профессионализма и опыта выполнения проектов в смежных областях, чтобы уметь создавать по краткой спецификации продукт, который пройдет приемку Заказчиком;
в) между Заказчиком и Разработчиком существуют конструктивные отношения и обе стороны понимают и принимают риски мини-спецификации.
Другой вариант работы по мини-спецификации: Заказчик и Разработчик понимают, что создание развернутой спецификации оттягивает окончание выпуска готового продукта, что главная цель проекта - продукт, а не документация и готовы к плотному сотрудничеству в процессе его создания.
Это - путь так называемых agile-методологий разработки ПО.
Основной риск применения мини-спецификации заключаются в том, что они базируются на человеческом факторе.
Хорошие и конструктивные отношения между сторонами "на берегу" должны сохраниться на всем протяжении проекта.
В противном случае у сторон возникнут существенные проблемы в формальном доказательстве того - что должна делать программа, т.к. мини-спецификация для этого недостаточно полна.
