новости
статьи
.решения

опыт успешной разработки коммерческого проекта на базе решений open source

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

введение

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

мотивация использования Open Source

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

разработка с нуля

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

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

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

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

С одной стороны это упростит разработку, ускорит ее темпы, и даже не собьет однородность развития, так как изменения интерфейса в оплаченном продукте могут серьезно сказаться на имидже компании-разработчика.

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

использование ПО с открытым исходным кодом

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

- низкая стоимость вложения в разработку базы;

- независимость от действий со стороны разработчика.

Но тем не менее, существуют и недостатки такого подхода. Так, например, наблюдается неравномерный процесс работы над различными составляющими системы. В частности, нам пришлось столкнуться с серьезными изменениями, связанными с изменением некоторых интерфейсов подсистемы HAL; переход от версии PyGame 1.6.x к 1.7.x привнес некоторые изменения API и так далее.

окончательный выбор

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

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

обратная связь

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

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

Так, в частности, благодаря нашей команде в проект ALSA было выслано более десяти заплаток для поддержки и корректирования работы драйверов с некоторыми кодеками и звуковыми платами.

Дополнительно, в сердце системы, в ядро Linux были добавлены некоторые опции, корректирующие работу ACPI-подсистемы.

Проект v4l получил также поддержку некоторых тюнеров благодаря нашему проекту.

сумма сказанного

Стоимость владения и вложенные средства в разработку минимизированы из-за использования базы в виде Open Source.

Невзирая на неоднородность развития некоторых подсистем в целом, скорость разработки и поддержки системы up-to-date не пострадала.

В тоже время коммерческие проекты - это не всегда зло для Open Source. В зависимости от области соприкосновения коммерческого и открытого ПО могут возникать различные способы взаимовыгодного сотрудничества.



Андрей Шевченко, ООО “АСПЛинукс Плюс”
обсудить статью
© сетевые решения
.
.