- •Письменные лекции по дисциплине «Разработка и анализ требований»
- •Лекция 1. Основы работы с требованиями к по
- •1.1. Что такое требования
- •1.2. Классификация программного обеспечения
- •1.3. Разработка требований в модели жизненного цикла по
- •1.4. Участники разработки требований
- •1.4.1. Аналитик требований
- •1.5. Типы требований
- •1.6. Этапы сбора и анализа требований с точки зрения rup
- •1.7. Процесс разработки требований
- •1.7. Разработка концепции продукта
- •1.13. Обзор конкурентов
- •1.13.1. Пример списка возможностей конкурентов
- •1.14. Документ о концепции и границах проекта
- •1.14.1. Положение о концепции
- •1.15. Бизнес-риски
- •1.16. Ограничения проекта и их выявление
- •1.17. Профили заинтересованных лиц
- •1.18. Пример бизнес-требований разных групп пользователей
- •1.19. Приоритеты проекта
- •Лекция 2. Методы выявления требований к по
- •2.1. Сбор требований пользователей
- •2.2. Определение классов пользователей
- •2.3. Характеристики классов пользователей
- •2.4. Представление системных событий и реакции на них
- •2.5.1. Пример crc-карточки
- •2.6. Прототипы (макеты) по
- •2.7. Представление требований пользователя на основе варианта использования
- •2.8. Процессы обработки данных варианта использования
- •2.9. Нефункциональные требования
- •2.10. Уточнение нефункциональных требований
- •2.11. Стандарты практичности (usability)
- •2.12. Бизнес-правила
- •2.12.1. Примеры бизнес-правил
- •Лекция 3. Анализ и моделирование требований к по
- •3.1. Атрибуты качества требований
- •3.2. Статус требования
- •3.3. Полный набор требований по
- •3.4. Представление вводов и выводов по
- •3.5. Полнота нефункциональных требований
- •3.6. Пример трассировки требований.
- •3.6.1. Дочерние требования
- •3.10.1. Оценки разработчиков возможности проверки требований
- •3.11. Определение приоритетов
- •4.3. Диаграммы uml (uml 2.5)
- •4.8. Предметы поведения uml
- •4.9. Отношения uml
- •4.10. Диаграмма Use Case
- •4.11. Диаграмма Use Case (2)
- •4.12. Диаграмма (видов) деятельности
- •5.5. Методики моделирования бизнес-процессов
- •5.6. Программное обеспечение для моделирования бизнес-процессов
- •5.7. Построение модели бизнес-процесса на основе вариантов использования
- •3) Используемые средства
- •5.8. Пример построения спецификации требований
- •5.9. Заинтересованные лица
- •5.10. Эксперты
- •5.11. Словарь (глоссарий)
- •5.12. Бизнес-процессы
- •5.13. Бизнес-правила
- •5.19. Класс Личное дело
- •Лекция 6. Методы структурного анализа требований к по
- •6.1. Средства структурного анализа
- •6.2. Методология sadt
- •6.3.1. Стандартизация методик моделирования в Российской Федерации
- •6.3.2. Диаграмма idef3
- •6.4. Диаграммы потоков данных dfd
- •7.2.2. Спецификация требований к по
- •7.3. Техническое задание (еспд. Гост 19.201-78)
- •7.4. Техническое задание (Информационные технологии гост 34.602-87)
- •7.5. Разработка требований к по встроенных систем
- •7.7. Спецификация требований к интерфейсам
- •7.8. Работа с требованиями в проектах гибкой разработки
- •Лекция 8. Управление требованиями к по
- •8.1. Управление требованиями
- •8.1.8. Атрибуты запроса на изменение
- •8.2. Программные средства управления требованиями
- •8.2.1. Сравнительная характеристика систем управления требованиями
- •8.2.3. Сравнение систем управления требованиями
2.3. Характеристики классов пользователей
Название класса пользователей.
Привилегированный и непривилегированный. Непривилегированный - нежелательный пользователь, например примеру, хакер.
Численность пользователей. Помогает расставить приоритеты для функций.
Описание типичного представителя класса пользователей:
— поведение,
— выполняемые операции, решаемые задачи,
— квалификация в предметной области,
— опыт и навыки работы с информационной системой,
— предпочтения. Оказывает влияние на нефункциональные требования,
— раздражающие факторы. Оказывает влияние на нефункциональные требования.
2.4. Представление системных событий и реакции на них
ID |
Событие |
Исходное состояние |
Реакция системы |
1 |
Нажать на кнопку Вкл. |
Кондиционер включен, пульт в состоянии «включен» |
Кондиционер выключится |
2 |
Нажать на кнопку Вкл. |
Кондиционер выключен, пульт в состоянии «выключен» |
Кондиционер включится |
3 |
Нажать на кнопку Вкл. |
Кондиционер выключен, пульт в состоянии «включен» |
Кондиционер в прежнем состоянии |
4 |
Нажать на кнопку Вкл. |
Кондиционер включен, пульт в состоянии «выключен» |
Кондиционер в прежнем состоянии |
2.5. CRC-карточки
CRC: Class — Responsibility — Collaboration
(Класс — обязанность — взаимодействие)
Основное внимание в этом методе уделяется внешнему поведению объекта. Классы должны реагировать адекватно.
Итог: выявление ошибочных или отсутствующих требований.
2.5.1. Пример crc-карточки
2.6. Прототипы (макеты) по
Делает для того, чтобы программисты правильно все поняли.
Задачи:
— уточнение формулировки требования,
— исследование альтернативных решений,
— создание готового программного продукта.
Варианты прототипов:
— горизонтальные (интерфейсы пользователя),
— вертикальные (структура ПО, временнЫе характеристики, алгоритмы, структура БД).
Прототипы одноразовые и эволюционные.
2.7. Представление требований пользователя на основе варианта использования
Идентификатор;
Имя (глагол+объект);
Источник (автор);
Дата создания;
Основное действующее лицо;
Дополнительно действующее лицо;
Триггер (действие, инициирующее вариант использования);
Предварительные условия (начальное состояние);
Выходные условия;
Нормальное и альтернативное направление варианта использования;
Исключения;
Приоритет;
Частота использования;
Бизнес-правила;
Специальные требования (Другая информация);
Предположения.
2.8. Процессы обработки данных варианта использования
Этим занимается системный аналитик.
Составить список функциональных требований должен быть параллельно продублирован со списком тестов. Сколько функц. требований столько (как минимум) и тестов.
Составить предварительный список моделей анализа. Анализируются данные и алгоритмы (как минимум), будут представлены в виде диаграмм.
Составить словарь данных. Термины предметной области должны быть понятны программистам. В результате будет сформулирован список функциональных требований.
2.9. Нефункциональные требования
нефункциональные = эксплуатационные (качественные). С точки зрения ПП. Каждое требование также имеется детализация.
функциональная пригодность (functional suitability),
уровень производительности (performance efficiency),
аппаратная и программная совместимость (compatibility),
удобство использования, практичность (usability),
надежность (reliability),
защищенность (security),
сопровождаемость (maintainability),
переносимость (portability).
ГОСТ Р ИСО/МЭК 25010-2015 Требования и оценка качества систем и программного обеспечения (SQuaRE). Модели качества систем и программных продуктов.