Проект IBM Сан-Франциско
В конце 1990-х годов IBM выступила с амбициозным планом написать программу, которая решит все задачи бизнеса, и писать больше ничего не придется. Команда разработчиков приступила к проектированию набора повторно используемых бизнес-компонентов, написанных на языке того поколения Java, которое могло инкапсулировать всю бизнес-функциональность в широкие категории: книгу учета бухгалтерии, товарные запасы, продажи и т.п. В какой-то момент компания IBM заявила, что этот проект представляет собой крупнейший Java-проект на Земле (http://www.drdobbs.com/ibms-san-francisco-project/184415597). Проект предоставил первые несколько модулей ядра, и разработчики начали использовать фреймворк, который привел к его кончине. Многие функции оказались ненужными, а много важных функций при этом отсутствовали.
Проект Сан-Франциско демонстрирует завышенную самооценку разработчиков, которые пытались следовать своим инстинктам для категоризации и классификации всего на свете. Некоторые беспорядочные события реального мира нарушают изящные решения, включая все бизнес-процессы!
Проект Сан-Франциско, в итоге, провалился, потому что его разработчики постепенно осознали отрезвляющий факт — неважно, насколько сильно старались разработчики, потому что они никогда не смогут очистить все до достаточно детализированных свойств, часть проблемы бесконечного регресса: серии предложений, которые продолжают опираться на другие предложения, идущие в бесконечность. В программном обеспечении постоянный регресс проявляется как попытка уточнить все на свете на конечном уровне детализации, но всегда есть другой уровень детализации, находящийся ниже любой существующей детали.