Это может быть слишком поздно для вас, поскольку вы, возможно, уже договорились сделать это по контракту, и вы могли бы договориться о взаимно несовместимых условиях с различными клиентами.
Вы можете предоставить своим клиентам исходный код двумя способами. Право собственности на авторское и лицензированное.
Некоторые клиенты захотят владеть исходным кодом. Это означает, что в конце процесса они заплатят вам деньги, а вы в обмен передадите им авторские права на код, который вы для них создаете. Одна из причин этого заключается в том, что они видят значительный потенциал интеллектуальной собственности в исходном коде и могут захотеть оценить это в балансе своей компании. В этом случае у вас не будет права на дальнейшее использование этого исходного кода для других проектов, если только вы не получите лицензию от своего клиента, дающую вам это право.
Если ваш клиент покупает «готовый» продукт у вас, он будет ожидать получения лицензии на использование программного обеспечения, а не владения исходным кодом. Они должны ожидать, что вы продаете то же самое (или подобное) программное обеспечение многим другим организациям, и что они надеются получить выгоду от более низкой стоимости покупки из-за более широкой клиентской базы.
Однако ситуация в этом вопросе - путаница из двух.
Вот что я хотел бы сделать. Я бы предоставил вашему клиенту лицензию на использование (и изменение) вашего общего кода. В случае опроса клиента, я хотел бы указать, что это общий код, который вы уже использовали в нескольких проектах, и у вас есть текущие ставки для будущей работы, основанные на том, что вы продолжаете использовать эту работу. Отметьте, что это привело к сокращению затрат времени на этот проект для ваших клиентов и в результате они заплатили более низкую цену. Как и другие совместно используемые библиотеки кода, используемого проектом, у них есть лицензия на использование этого кода, а также разрешение другим командам разработчиков разрабатывать этот и другие проекты на основе этой библиотеки. Однако, если они предпочитают владеть всем кодом, вы готовы создать замену, но это будет за дополнительную плату.
В зависимости от того, к чему вы уже посвятили себя, вам может потребоваться написать заменяющий функционал бесплатно или отдать свой исходный код.
Помните, что есть разные типы библиотек. Стандартная библиотека шаблонов в C ++ является хорошим примером библиотеки, которая включена на уровне исходного кода и скомпилирована в исполняемый файл проекта, который может быть очень похож на то, как вы использовали свой общий код.