> Есть такой класс проприетарного ПО - заказное. И открывать код такого ПО нет ни смысла, ни возможности, ни необходимости. Почему?
Например. Отраслевая компания заказывает ПО для автоматического учёта ресурсов. Для себя.
Ваш вариант закрытости (причём, даже скажу больше - пример будет основанным на реальных событиях):
Отраслевая компания заказывает ПО у сторонней компании. Сторонняя компания пишет закрытое ПО. Отдаёт это ПО заказчику (за хорошие деньги). Контракт выполнен, деньги выплачены. В процессе эксплуатации выясняется, что в ПО море ошибок... Нужно править... Опять идут к тому же разработчику на поклон. Причём подобные задачи стоят перед множеством компаний этой отрасли. И все изобретают свой уникальный велосипед. Однако обмен данными между этими велосипедами нужно проводить. А они даже считают по-разному. Данные не сходятся. Бардак. Препирательства чиновников. На местах уже всем понятно, что нужно выкидывать этот "свой велосипед", брать хотя бы соседний, но... Но ввалены большие деньги и руководство "не может" отказаться от велосипеда. Такое сплошь и рядом.
Вариант 2:
Компания заказывает ПО у сторонней компании. Платятся хорошие деньги. Заказывается изначально GPL-ный софт (без завязки на закрытые технологии и с возможностью использования в проекте GPL-ного кода). Продукт написан и получен. Находятся в нём баги. Ищется сопровождающий. А вот после этого начинается самое интересное. Т.к. это GPL изначально, то его (проект) можно дать и сторонним организациям, чтобы и они его использовали, дорабатывали и правили ошибки. Нет проблемы с зоопарком велосипедов (миграция данных, логика расчётов и т.п.), уменьшение затрат на исправление ошибок и доработку. Все довольны. Система развивается.
Более того в последнем случае, если система набирает вес в определённой отрасли, то она становится "стандартом де-факто", и количество специалистов, разбирающихся в ней (благо код открыт) увеличивается, соответственно проблемы с выбором сопровождающего систему уменьшаются.