Чтобы эффективно выполнять свои функции, спецификации контрольных точек должны определять пользовательские сценарии, обязательные характеристики которых должны быть выдержаны по завершении контрольной точки, средства, разработка которых к этому моменту должна быть доведена до уровня "окончательного кода", а также набор конкретных показателей производительности, достижение которых является необходимым условием завершением данного контрольной точки. Вхождение в контрольную точку обычно не представляет особых сложностей; это та стадия, когда команда разработчиков (или лично вы, если речь идет о вашем индивидуальном проекте) пишет программный код, необходимый для того, чтобы заработали все элементы проекта, фигурирующие в списке целей контрольной точки. Вся реальная работа направлена на то, чтобы успешно "покинуть контрольную точку"; именно тогда и возникают разногласия и споры, в том числе и те, результатом которых является достижение неудачных компромиссов. В самом деле, написанный код может в основном гарантировать работоспособность сценария, но соответствует ли он в духу контрольной точки в целом? Не может ли быть так, что код просто-напросто "слеплен" из отдельных кусков и в нем так много "натяжек", что его вряд ли можно считать завершенным? Обеспечивает ли код достаточно высокую производительность, чтобы можно было утверждать, что он доведен до "товарного" вида. На все эти ключевые вопросы необходимо дать ответ. При этом особенно актуальными становятся моменты, связанные с лидерством и дисциплиной в группе, от которых зависит принятие правильного решения относительно того, действительно ли данную контрольную точку разработки можно считать выполненной, и сделан ли еще один значительный шаг в направлении успешного завершения проекта в целом.