Обложка канала

Блог программиста S0ER. Мысли, ранний доступ к видео, фоточки, короткие посты. Ничего конкретного, но что-то будет полезным.

SOER

3 года назад
Открыть в
Требования на разработку ПО Существует классическое разделение на три уровня требований: - Бизнес требования - Пользовательские требования - Проектные требования Эти требования обрабатывает бизнес-аналитик, для этого он должен напрямую общаться с пользователями и заказчиками софта. Бизнес требования Это требования, которые бизнес хочет удовлетворить в результате разработки программного обеспечения. Обычно эти требования выражаются в виде "задач" и "целей" (вспоминаем про тактическое и стратегическое планирование). Не видел программистов, которые бы вникали в бизнес требования, с ними в основном работают аналитики и архитекторы. И это та еще головная боль, потому что сильно оторвана от технической стороны вопроса. Пользовательские требования Это то что от системы хотят получить пользователи. Они выражаются в вариантах использования и пользовательских историях. Тут надо не путать с "вариантами использования", которые есть в чистой архитектуре Роберта Мартина, там это чисто технические решения, здесь это описание взаимодействия действующего лица и системы. Пользовательские истории в обязательном порядке доводятся до программистов, так как это способствует погружению в задачу и обеспечивает лучшее понимание проблемы. Проектные требования Это те самые функциональные и нефункциональные требования, которые предъявляются непосредственно к разрабатываемому софту. Чтобы не запутаться нужно помнить, что функциональные требования - это требования, которые описывают поведение системы и обычно начинаются со слова "должен" или "должна". Нефункциональные требования описывают свойства системы, и обычно их называют "-илити свойства" (contrability, scalability и т.д.). Так же функциональные и нефункциональные требования могут быть сделаны на уровне "частных решений", которые разрабатывают архитекторы, работающие на уровне кода или сами программисты. Там немного другие особенности, так к нефункциональным требованиям удобно относить инфраструктурные зависимости, которые неудобно содержать в функциональной части, так как это нарушает уровни абстракции, использующиеся в проектировании. #мысли #теория