В более широком смысле требования являются основополагающим компонентом
рациональной модели проектирования (Rational Model of Design) [8–10] — доминирующего взгляда на то, как специалисты подходят к разработке программного обеспечения и информационных систем.
Тем не менее, применение хороших практик работы с требованиями не обязательно является необходимым и/или достаточным условием для достижения успеха проекта [11, 12].
Предположение о том, что у программных проектов есть обнаруживаемые и документируемые требования, послужило основанием для появления разнообразной литературы по
инженерии требований (ИнжТр, RE) — процессу выявления, анализа, моделирования, верификации и управления требованиями. Основной вклад вносят подходы к инженерии требований, такие как
целе-ориентированная инженерия требований (goal-oriented RE) [13],
инженерия требований, ориентированная на пользователя (user-centered RE) [14] и типы требований — например, нефункциональные требования [15], ранние требования [16].
Однако, по крайней мере, в трёх проектах разработки программного обеспечения, которые я наблюдал или в которых участвовал, не было создано ни одного содержательного требования. Несмотря на то, что в этих проектах создавались утверждения, обозначенные как требования, при ближайшем рассмотрении оказывалось, что это нечто иное: цели, проектные решения, элементы списков задач или пожеланий. Поэтому цель данной статьи — исследовать возможность существования программных проектов с незначительными или иллюзорными требованиями.