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

Открытый исходный код, Программное обеспечение с открытым исходным кодом

Открытый исходный код (en. Open Source) обычно относится к программному обеспечению, которое можно модифицировать, делиться и повторно использовать, потому что его дизайн или «исходный код» общедоступны.

Программное обеспечение с открытым исходным кодом (en. Open Source Software, OSS) — это программное обеспечение, выпущенное по лицензии, в которой правообладатель предоставляет пользователям права на использование, изучение, изменение и распространение программного обеспечения и его исходного кода кому угодно и для любых целей.

Чтобы программное обеспечение с открытым исходным кодом было признано цифровым общественным благом, оно должно продемонстрировать использование утвержденной открытой лицензии.

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

Разработка программного обеспечения с открытым исходным кодом может привести к разнообразным перспективам, выходящим за рамки одной компании.

Открытый исходный код может использоваться для изучения и позволяет способным конечным пользователям адаптировать программное обеспечение к своим личным потребностям аналогично тому, как пользовательские сценарии (en. User script, web development) и настраиваемые таблицы стилей (en Style sheet, web development) позволяют веб-сайтам, и в конечном итоге публиковать модификацию в виде ответвления / вилки (ru, Github) (en. Fork, Github) для пользователей с аналогичными предпочтениями и напрямую отправлять возможные улучшения в виде запросов на включение изменений (ru, GitHub) (en.Creating a Pull Request, GitHub).

Преимущества использования открытого исходного кода

Как сделать проект с открытым исходным кодом

Монетизация Софта с открытым исходным кодом

 


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

Функциональность и соответствие. Очень важно убедиться, что программное обеспечение разработано для этой цели и может справиться с предполагаемой рабочей нагрузкой. Если программное обеспечение не соответствует всем требованиям, но близко к нему, открытый исходный код дает возможность модифицировать программное обеспечение. В таких случаях участие в проекте может быть отличным вариантом. Ответвление также является вариантом.

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

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

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

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

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

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

Лицензии. Условия лицензирования использования программного обеспечения с открытым исходным кодом очень просты. Ограничений на количество рабочих мест и пользователей не существует. Копии можно создавать, устанавливать и использовать без ограничений, поэтому нет необходимости вести документацию о том, сколько лицензий или копий программного обеспечения используется. Внутренняя разработка также не требует лицензирования. Распространение программного обеспечения может повлечь за собой некоторые требования к тому, как это делается (например, сохранение уведомлений об авторских правах, предоставление доступа к исходному коду), а распространение модифицированных версий также может вызывать определенные требования.