Ответственный за этап: [[Руководитель проекта]] Участники этапа: Представитель заказчика, конечные пользователи, консультанты. Цели этапа: Конкретно сформулировать цели и требования проекта, убедившись в том, что они достижимы.
Цель проекта — это желаемое состояние или набор состояний, которые должны быть достигнуты в определенный период функционирования продукта.
Цели должны соответствовать SMART:
- Specific (определенная) — Цель должна быть сформулирована так, чтобы каждый понимал её одинаково и не пришлось углубляться в детали. Для этого цель или задача по SMART должны:
- Содержать точный ответ на вопрос «Что делать?» — например, повысить средний чек при заказе через сайт.
- Подразумевать один конкретный результат, а не несколько разных: например, повысить средний чек — это одна цель, а повысить средний чек и увеличить продажи — две разные цели.
- Measurable (измеримая) — Результат должен быть измеримым. Для этого существуют ключевые факторы успеха. Например, увеличить средний чек на 30%. Если чек вырастет на 30%, то задача выполнена на 100%, а если на 15% — то лишь наполовину.
- Achievable (достижимая) — Цели должны быть одновременно достижимы и амбициозны.
- Relevant (значимая) — Цель должна соответствовать глобальной стратегии и миссии компании. Вопросы, которые стоит себе задать:
- Для чего нам нужен этот результат?
- Соответствует ли эта цель стратегическим целям и миссии компании?
- Не противоречит ли эта цель другим задачам?
- Time-bound (определенная во времени) — Должен быть установлен конечный срок для промежуточных и для конечных итогов, по истечению которого будет ясно, насколько мы близки к запланированному.
Требования программного проекта — это функции и ограничения, которым должен соответствовать конечный продукт. Другими словами, требования определяют, что должно делать программное обеспечение, как оно должно выглядеть и какие условия должны быть соблюдены, чтобы его можно было считать успешным.
- Проведение сбора информации и анализ потребностей.
- Определение функциональных требований:
- Идентификация основных функций и возможностей, которые должны быть реализованы в программном обеспечении.
- Составление списка функций и их приоритизация в соответствии с потребностями заказчика и пользователей
- Определение нефункциональных требований:
- Определение требований к производительности, надежности, безопасности и удобству использования программного обеспечения.
- Установление стандартов и правил, которые должны быть соблюдены при разработке и внедрении продукта.
- Определение технический требований:
- Определение стека — технологий, платформ и инструментов, которые будут использоваться при разработке и внедрении программного обеспечения.
- Оценка возможных технических рисков и способов их минимизации.
- Документирование требований:
- Составление и документирование всех выявленных требований в форме технического задания и спецификации требований к проекту.
- Получение согласования и утверждения требований от заказчика и заинтересованных сторон.