В былые времена, когда примитивные инженеры долбили бинарные деревья каменными топорами, существовал только один путь написания требований. Это был путь, по которому требования писали их праотцы, а до этого писали праотцы праотцов, и так до самых истоков цивилизации. Этот священный метод наименования требований был таков. ТРЕБОВАНИЯ: 1. Система должна делать X. 2. Система должна делать Y. 3. Система должна делать Z, если происходит событие A... Это было довольно просто для маленьких проектов. Но по мере того, как проект становился всё больше и больше, в этой схеме начинали возникать проблемы. Например, что произойдет, если требование станет нерелевантным? Тогда возникнут "пропавшие" требования; в списке требований могут быть разделы 1, 2, 5, 7, 12 и т. д. Наоборот, что если нужно добавить требования к программе? Если нумерация списка требований возрастает линейно, эти новые требования должны быть размещены в конце или втиснуты между существующими (требование 1.5). Другой проблемой была