Разработка требований ( RE ) - это процесс определения, документирования и сопровождения требований в процессе инженерного проектирования. Это обычная роль в системной инженерии и разработке программного обеспечения.
Впервые термин «разработка требований» был использован, вероятно, в 1964 году в документе конференции «Техническое обслуживание, ремонтопригодность и разработка системных требований», но он не вошел в широкое употребление до конца 1990-х годов, когда в марте был опубликован учебник IEEE Computer Society. 1997 г. и учреждение серии конференций по разработке требований, которая превратилась в Международную конференцию по разработке требований.
В каскадной модели инженерия требований представлена как первая фаза процесса разработки. Более поздние методы разработки, включая Rational Unified Process (RUP) для программного обеспечения, предполагают, что разработка требований продолжается на протяжении всего жизненного цикла системы.
Управление требованиями, которое является подфункцией практики системной инженерии, также индексируется в руководствах Международного совета по системной инженерии (INCOSE).
Действия, связанные с разработкой требований, широко варьируются в зависимости от типа разрабатываемой системы и конкретных практик организации. Они могут включать:
Иногда они представлены в виде хронологических этапов, хотя на практике эти действия значительно чередуются.
Было доказано, что разработка требований способствует успеху программных проектов.
Одно ограниченное исследование, проведенное в Германии, представило возможные проблемы при внедрении инженерии требований и спросило респондентов, согласны ли они с тем, что это действительно проблемы. Результаты не были представлены как обобщаемые, но предполагали, что основными воспринимаемыми проблемами были неполные требования, движущиеся цели и временные рамки, а меньшими проблемами были недостатки связи, отсутствие прослеживаемости, терминологические проблемы и нечеткие обязанности.
Было высказано предположение, что структурирование проблемы, ключевой аспект разработки требований, снижает эффективность проектирования. Некоторые исследования показывают, что это возможно, если есть недостатки в процессе разработки требований, приводящие к ситуации, когда требования не существуют, требования к программному обеспечению могут быть созданы независимо от того, что является иллюзией, искажающей проектные решения как требования.