Запуск корпоративной программы по работе с открытым исходным кодом

🖊️
это перевод текста "Building an Open Source Program Office (OSPO)" редакционной группы FOSSA

Организации создают программы по работе с открытым исходным кодом (“OSPO”) для контроля за управлением программным обеспечением с открытым исходным кодом и стратегией его разработки. Это часто включает в себя контроль за выбором библиотек с открытым исходным кодом, используемых в организации, соблюдение рабочих процессов лицензирования, взаимодействие с более широким сообществом разработчиков программного обеспечения с открытым исходным кодом (OSS) и многое другое.

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

Конечно, управление использованием программного обеспечения с открытым исходным кодом сильно отличается от управления с проприетарным исходным кодом. Пользователям открытого исходного кода часто не хватает наглядности и контроля над планом разработки выбранной библиотеки. Кроме того, к открытому исходному коду предъявляются различные лицензионные требования, некоторые из которых могут быть запутанными и даже обременительными.

Программа по работе с исходным кодом может помочь организациям внедрить комплексную стратегию для решения этих проблем и максимизировать ценность, которую они получают от открытого исходного кода. Здесь мы рассмотрим, что необходимо для создания успешной такой программы – например, подбор персонала, стратегию и многое другое.

Скачать: Появление программы по работе с открытым исходным кодом: Руководство по началу работы

Элементы программы по работе с открытым исходным кодом

Microsoft, Google, Twitter и Netflix – это лишь несколько примеров глобальных компаний, имеющих программы по работе с открытым исходным кодом. И хотя каждая организация — и каждая программа по работе с открытым исходным кодом — работает по-разному, многие такие программы придерживаются двух стратегических принципов: соблюдать требования и вносить свой вклад (контрибьюты).

Вот краткий обзор каждого из них.

Соответствие требованиям: программное обеспечение с открытым исходным кодом является бесплатным для использования, но налагает важную ответственность: соблюдение лицензионных требований. Учитывая количество и разнообразие лицензий, не говоря уже о сложности выявления глубоких зависимостей, иногда это легче сказать, чем сделать. Кроме того, организации, которые не соблюдают лицензионные требования, могут подвергнуться риску судебного разбирательства или репутационного ущерба.

Участникам программ по работе с открытым исходным кодом часто поручают разработку и внедрение процессов, регулирующих соблюдение лицензионных требований. Это может включать в себя всё – от определения того, какие лицензии можно использовать в тех или иных проектах, до контроля за тем, как команды отслеживают используемые ими компоненты и зависимости с открытым исходным кодом, и многое другое. Участники также могут отвечать за оценку инструментов анализа состава программного обеспечения, которые могут упростить рабочие процессы по обеспечению соответствия требованиям.

Контрибьюты: одна из главных причин, по которой открытый исходный код процветает в последние годы, – это значительное сообщество, которое его поддерживает. Как видно из приведенной ниже диаграммы, сотни тысяч активных разработчиков ПО с открытым исходным кодом работают над самыми разнообразными проектами.

Существуют тысячи разработчиков операционных систем в различных областях

Сообщество открытого ПО – это разнообразная группа, в которую входят все, от индивидуальных разработчиков до крупных предприятий, спонсирующих различные проекты. Кроме того, внесение контрибьютов – это основной принцип мышления сообщества сторонников открытого исходного кода. Важной частью этого компонента является разработка процессов, позволяющих инженерам вносить свои контрибьюты в проекты с открытым исходным кодом. Это происходит по двум основным причинам:

  • Вашей команде инженеров может потребоваться внести свои контрибьюты или адаптировать проекты с открытым исходным кодом для их успешной интеграции в проприетарное программное обеспечение. Внесение контрибьютов – это также способ помочь вам в принятии решения об использовании определенных компонентов с открытым исходным кодом в будущем.
  • Лучшие инженерные таланты привлекаются в компании с мощными корпоративными программами по работе с открытым исходным кодом. Умных разработчиков привлекает умный код, который виден, если он открыт.

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

Кадровые вопросы программы по работе с открытым исходным кодом

Количество и тип сотрудников, входящих в состав подразделения, работающего по вопросам открытого исходного кода, часто варьируются в зависимости от размера и приоритетов организации. Однако, как правило, в таких подразделения есть следующие роли и функции:

  • Менеджер программы
  • Юридическая поддержка / комплаенс-контроль
  • Ответственный за интересы разработчиков / координатор разработчиков
  • Исполнительный спонсор

Менеджер программы: как следует из названия, менеджер такой программы, как правило, отвечает за надзор за программными инициативами, ресурсы и управление стратегией организации в вопросах открытого исходного кода. Этот специалист должен быть особенно внимателен к тому, как такая стратегия соотносится с более широкими бизнес-целями организации, включая целевые показатели по доходам, усилия по подбору персонала, узнаваемость бренда и инженерное совершенство.

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

Защитник интересов разработчиков / координатор: роль, которую продукт и инженерное дело играют в открытом ПО, варьируется от компании к компании. Но независимо от специфики, эти команды будут играть важную роль в успешной программе открытого ПО. Это верно по многим причинам. Например, менеджер программы может стремиться внедрить новые инструменты и процессы, которые непосредственно влияют на рабочие процессы разработки. Менеджеру программы необходимо будет работать рука об руку с разработчиками продукта и инженерными подразделениями, чтобы связать рабочие процессы и обеспечить внедрение политик и инструментов удобным для разработчиков способом. Таким образом, перед командами разработчиков стоит задача фактически вносить изменения и обновления в код, которые вытекают из инициатив по обеспечению соответствия требованиям открытого ПО / безопасности, поэтому крайне важно, чтобы существовала прямая связь между менеджером программы / юристом и разработчиком.

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

Дополнительные ресурсы

Для получения дополнительной информации о создании программы по вопросам работы с открытым исходным кодом ознакомьтесь со следующими ресурсами:

Вебинар: Что такое программа по работе с открытым исходным кодом? Появление программы по работе с открытым исходным кодом

Описание: этот 35-минутный вебинар объясняет, как такая программа может помочь компаниям разработать целостные стратегии открытого ПО, которые будут служить интересам всех заинтересованных сторон.


Технический документ: Развитие программы по работе с открытым исходным кодом: Руководство по началу работы

Описание: узнайте, “кто”, “почему” и “как” запускает программу по работе с открытым исходным кодом в вашей организации.


Блог: Выводы из стандарта ISO/IEC DIS 5230: Спецификация OpenChain

Описание: недавно опубликованный ISO/IEC 5230 — это международный стандарт, в котором изложены элементы успешной программы соблюдения лицензионных требований с открытым исходным кодом, и, как вы могли бы ожидать, он во многом совпадает с миссией программы по работе с открытым исходным кодом.

OpenChain Specification 2.0 in Russian (draft)
Good news for OpenChain community in Russia. As you can remember, I have translated OpenChain Specification 1.2. in 2018. Time is going, and The OpenChain Project was announced version 2.0 of the specification for open source compliance in the supply chain. The time has come, and I was

Читайте здесь про мой перевод спецификации OpenChain на русский язык