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