Re: vicnik
Системная инженерия требует как раз
а) активно мучиться с требованиями с самого начала, а не под конец проекта. Это основной посыл: сдвиг главнейших решений ближе к началу проекта.
б) продолжать мучиться с требованиями до самого конца, не замораживая их навечно в начале (т.е. пересмотров-заморозок проходит несколько в ходе проекта).
Так что ответ на ваш вопрос не "или", а "и".
Обращу также внимание, что по факту "требованиями" тут является непрерывно развивающаяся модель (а с учетом "развилок" -- набор моделей), с приписанными к ним статусами долженствования (деонтическими операторами) и трассировкой к заинтересованным сторонам и их интересам. То есть "требования" и "архитектура/проект" не существуют отдельно. Развивается (уточняется) архитектура -- развиваются (уточняются) требования, хотя многие высокоуровневые принципы/элементы архитектурной модели при этом сохраняются, и тем самым сохраняются высокоуровневые требования.