Rambler's Top100
Реклама
 
Статьи ИКС № 10 2014
Владимир РУБАНОВ  Станислав ФОМИН  07 октября 2014

Open source плюс собственные разработки

О роли средств collaboration в организации работы распределенных команд  рассказывают Станислав ФОМИН, директор по технологиям, и Владимир РУБАНОВ, президент и генеральный конструктор «НТЦ ИТ РОСА».

Станислав ФОМИН, директор по технологиям «НТЦ ИТ РОСА»  Владимир РУБАНОВ, президент и генеральный конструктор «НТЦ ИТ РОСА» 

«НТЦ ИТ РОСА» – разработчик и поставщик защищенных отечественных операционных систем и системного ПО. Объем и сложность таких проектов требуют «не изобретать велосипед», а интегрировать множество компонентов с открытым исходным кодом (open source, свободное ПО), над которым работает распределенная международная команда – штатных специалистов, подрядчиков, сотрудников компаний-партнеров, участников open source-проектов и волонтеров. При организации такого сложного высокотехнологичного производства использование эффективных средств совместной работы становится ключевым фактором, но специфика компании требует независимости от любых иностранных продуктов, и тем более сервисов. Поэтому мы используем комбинацию самостоятельно разработанных продуктов и доработанных систем с открытым кодом.

Корневой инфраструктурой производства компании является система распределенной разработки и сборки многокомпонентных программных продуктов. Такую систему ввиду важности и сложности процесса распределенной разработки системного ПО мы были вынуждены создать сами. Наша ROSA Automatic Build Farm (ABF) позволяет автоматизировать процессы разработки, тестирования, интеграции и сборки с участием распределенных команд и отдельных специалистов с различными уровнями полномочий. ABF обеспечивает:

  • совместную разработку с поддержкой средств групповой работы – управление версиями, конфигурациями, задачами, документирование;

  • масштабируемую сборку входящего в дистрибутивы программного обеспечения под x86- и ARM-платформы;

  • создание ISO-образов дистрибутивов.

Кстати, в ядро ABF включена open source-система управления версиями Git, к которой ABF предоставляет удобный веб-интерфейс. Код самой ABF мы также сделали открытым.

Не менее важны системы коммуникаций и управления знаниями, причем спецификой компании является плотное взаимодействие с разноязычными и географически распределенными группами сотрудников, пользователей и волонтеров. И тут не обойтись единой, универсальной системой решения всех проблем. В ИT, как известно, не стоит искать несуществующую «серебряную пулю», а нужно использовать комбинацию систем, оптимально подходящую для поставленных задач. На их выбор влияют и исторические традиции, и сложившиеся привычки пользователей, и околоиндустриальные стандарты. Мы остановились на популярных open source-системах, поскольку их концепции и интерфейс уже известны большинству потенциальных пользователей, а развитие идет в соответствии с потребностями широкого сообщества. Открытость же кода позволяет реализовать специфические требования и интегрировать их с друг с другом и другими системами компании.

Так, взаимодействие с опытным сообществом у нас осуществляется с помощью известной open source-системы управления ошибками Bugzilla, которая несмотря на некоторую сложность интерфейса стала стандартом для разработчиков Linux-дистрибутивов. Для регистрации проблем клиентов используется специализированная helpdesk-система GLPI. А для пользователей бесплатных дистрибутивов развернут простой и привычный любому интернет-пользователю форум на базе PHPBB, где они часто самостоятельно решают свои проблемы.

Внутри компании ряд проектных команд используют RedMine – еще одну open source-систему управления задачами.

Классическая офисная коммуникация в компании (почта/календари/система мгновенных сообщений Jabber) построена на базе Zimbra Office Suite, а для коммуникации с сообществом пользователей служат IRC-каналы и email-рассылки.

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

Поскольку у нас географически распределенная команда, то очень важны средства мгновенной видеоголосовой коммуникации, дающие максимальную скорость информационного обмена, но с фиксированием полученных результатов, чтобы избежать ловушки «бесплодных совещаний». Как среду для видео-конференций – обсуждения технических вопросов, регулярных демонстраций командами разработанных продуктов – мы используем Apache OpenMeeting в сочетании с мгновенными блокнотами Etherpad для фиксирования принятых решений/замечаний и Etherdraw – для совместного рисования прототипов. Кстати, видеозаписи важных совещаний и демонстраций, сделанные с помощью Open Broadcaster Software, вместе с записанными в Etherpad замечаниями и решениями публикуются во внутренней базе знаний на основе MediaWiki.

* * *

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

Заметили неточность или опечатку в тексте? Выделите её мышкой и нажмите: Ctrl + Enter. Спасибо!