Составление спецификации программного обеспечения (SRS)
Контекст задачи
Вы выполнили три ключевые задачи по инженерии требований:
- Концепция проекта — определили проблему, целевую аудиторию, конкурентов и позиционирование
- Моделирование пользовательских требований — выделили роли, построили use case и сценарии
- Систематизация требований — построили матрицу классификации и диаграмму Венна для выявления пересечений
Теперь настало время собрать все результаты в единый документ — Спецификацию требований к программному обеспечению (SRS). SRS — это основной артефакт, который передаётся команде разработки и служит основой для:
- оценки стоимости и сроков разработки;
- планирования итераций и спринтов;
- проектирования архитектуры;
- тестирования и приёмки.
Формулировка
Составьте итоговую спецификацию требований к программному обеспечению (SRS), интегрируя результаты Задач 1, 2 и 3. Документ должен соответствовать структуре IEEE 830 / ISO 29148.
Теория и/или примеры
- Шаблон SRS по IEEE 830
- Пример нефункциональных требований
- Рекомендации IEEE 830
- ISO/IEC/IEEE 29148:2018
Что откуда берётся в SRS
| Раздел SRS | Откуда берём | Источник (задача) |
|---|---|---|
| 1.1 Цель | Проблема и выгоды | Задача 1 (Вигерс) |
| 1.2 Область применения | Целевая аудитория, контекстная диаграмма | Задача 1 |
| 1.3 Определения | Ключевые термины из всех задач | Задачи 1, 2, 3 |
| 2.1 Продукт | концепция ПО, контекстная диаграмма | Задача 1 |
| 2.2 Целевая аудитория | Роли пользователей | Задача 2 |
| 2.3 Ограничения | Из SWOT (слабые стороны, угрозы) | Задача 1 |
| 3. Функциональные требования | Use case → сценарии → матрица классификации | Задачи 2 и 3 |
| 4. Нефункциональные требования | Анализ конкурентов, SWOT | Задача 1 |
| 5. Внешние интерфейсы | Контекстная диаграмма, внешние сущности | Задача 1 |
| 6. Критерии приемки | Приоритеты (MoSCoW), функциональные требования | Задачи 1, 2, 3 |
Структура SRS по IEEE 830
| Раздел | Содержание | Откуда |
|---|---|---|
| 1. Введение | Цель, область, определения, ссылки | Задача 1 |
| 2. Общее описание | Продукт, пользователи, ограничения, допущения | Задачи 1, 2 |
| 3. Функциональные требования | Что система должна делать (с приоритетами) | Задачи 2, 3 |
| 4. Нефункциональные требования | Производительность, безопасность, надёжность, удобство | Задача 1 |
| 5. Внешние интерфейсы | UI, API, БД, коммуникации | Задача 1 |
| 6. Критерии приемки | Условия готовности продукта | Все задачи |
Результаты
Полная спецификация требований к программному обеспечению (SRS), содержащая:
- Введение и общее описание (из Задачи 1)
- Функциональные требования (из Задач 2 и 3)
- Нефункциональные требования (из Задачи 1)
- Описание внешних интерфейсов (из Задачи 1)
- Критерии приемки (из всех задач)
по шаблону