КИС
Вопрос не в том, следует ли использовать на предприятии программы с открытым кодом, а в том, в каких случаях это даст наибольший эффект
В 1999 г., готовя к публикации статью о ядре Linux 2.2, мы испытывали большие сомнения относительно заголовка. “Linux: корпоративная готовность” - не слишком ли смело это будет звучать?
В конце концов мы еще тогда решили, что этой операционной системе корпоративные масштабы вполне по плечу, а за прошедшие с тех пор годы ассортимент программ с открытым исходным кодом заметно расширился. Сегодня, по существу, вопрос не в том, есть ли на предприятиях место для открытого кода, а в том, для чего и как подобные продукты лучше использовать.
По оценкам аналитика фирмы Forrester Research (Кеймбридж, шт. Массачусетс) Карла Хоу, около 75% компаний по крайней мере пытались применять программы с открытым кодом. При этом самыми популярными в настоящее время являются Web-серверы и серверные ОС.
Приложения с открытым кодом: разная степень зрелости ПО с открытым кодом можно
использовать повсюду, однако пока оно лучше всего справляется с сетевыми задачами.
Технический директор eWeek Labs на Западном побережье Тимоти Дик считает, что эта оценка занижена. Если не сбрасывать со счетов небольшие утилиты, полагает он, то едва ли найдется хотя бы одна компания, которая бы не прибегала к помощи ПО с открытым кодом.
Но вернемся к Хоу. Он признает, что подобные программы зачастую проникают на предприятия, что называется, через черный ход (некий служащий, например, устанавливает на своей рабочей станции Linux), однако игнорировать их уже нельзя. Более того, к 2004 г. до 20% доходов от продаж лицензий будет приходиться на продукты этой категории.
Аналитики eWeek Labs выделяют в информационной системе предприятия функциональные блоки и дают рекомендации, где и как могут и должны применяться программы с открытым кодом. Анализируя самые разные ниши - от ОС для карманных устройств до систем планирования ресурсов предприятия, наш тестовый центр дает сравнительную оценку зрелости, функциональности, рентабельности и риска использования ПО с открытым кодом и традиционных коммерческих приложений.
Открытый код - это исходный текст прикладной программы, который разрешается анализировать, изменять и распространять. Такой подход превращает разработку приложения в эволюционный процесс и значительно расширяет возможности совершенствования и заказной модернизации.
Программы с открытым кодом получили широкое распространение в мире мэйнфреймов, были они очень популярны и на заре развития Unix. Позже такое ПО проникло и на платформы ПК, чему способствовало два события. Во-первых, фонд Free Software Foundation сформулировал правила лицензирования GNU General Public License, а во-вторых, Линус Торвальдс в сентябре 1991-го воспользовался этой лицензией и вывел в свет первую версию ядра Linux.
Затем началось постепенное проникновение программ с открытым кодом и в корпоративную среду. Этому в немалой степени содействовали менеджеры вычислительных центров, которые быстро поняли истинную ценность недорогих и гибких продуктов для реализации специализированных серверов. На сегодняшний день в число наиболее популярных программ с открытым кодом входят операционная система Linux и два приложения для нее - Web-сервер Apache и Samba.
Впрочем, за последнюю пару лет такая концепция нашла поддержку не только в корпоративных ИТ-подразделениях, но и у таких поставщиков базовых технологий, как IBM, Oracle, Sun Microsystems и Apple Computer.
В приведенном выше списке отсутствует Microsoft, но, если вспомнить традиционную склонность корпорации к закрытым решениям, это никого и не удивляет. Microsoft сделала несколько шагов к раскрытию своих исходных текстов, нарушив, однако, главный принцип сообщества открытых кодов. “Вам не разрешается использовать так называемый общедоступный код Microsoft в коммерческих целях. То же ограничение относится и ко всем вносимым в него изменениям, - констатирует Дик. - В результате он годится только для академических исследований и диагностики”.
Снижение затрат
Вероятно, важнейшим стимулом перехода на ПО с открытым кодом для многих компаний является цена или, точнее, возможность ее снижения. Даже если за такую программу придется что-то заплатить, долгосрочные расходы окажутся намного меньше, так как здесь отсутствует плата за лицензии. Совокупная стоимость владения, правда, будет сильно зависеть от самого приложения и уровня подготовленности компании к работе с ним.
Приложения с открытым кодом - особенно серверные - сулят большую экономию. Во-первых, их легко конфигурировать, благодаря чему организация может развертывать и сопровождать только те модули, которые ей необходимы, а во-вторых, допускается многократное использование исходных текстов.
Выгоден открытый код и с точки зрения стоимости искоренения ошибок в приложениях. А ведь чем меньше таких ошибок - или, по крайней мере, чем больше людей и организаций участвуют в их поиске и устранении, - тем лучше для корпоративных служб ИТ. В недавнем исследовании Национального института стандартов и технологий США (NIST) говорится, что в масштабе всей страны неадекватность инфраструктуры тестирования ПО ежегодно обходится потребителям в 59,5 млрд. долл. Любые средства, помогающие снизить эту цифру, просто не могут не привлекать внимания корпоративных ИТ-менеджеров.
Публикация исходного текста, считает Дик, способна как помогать, так и вредить защищенности продукта. Тем не менее в тех проектах, где уделяется большое внимание вопросам безопасности, предпочитают всегда открывать исходные тексты. “Именно так поступают разработчики программ шифрования, - напоминает Дик, - да и сама Microsoft пошла по этому пути, чтобы обеспечить базовые функции защиты в рамках своего проекта Palladium, призванного повысить уровень безопасности ИС”.
Правда, модель открытых кодов предполагает частые изменения продукта, которые вносятся в процессе устранения ошибок или расширения его функциональности. А это вполне может оттолкнуть отдельных корпоративных заказчиков, особенно в нынешних экономических условиях, когда ресурсы крайне ограниченны.
Впрочем, с подобным положением приходится считаться и при выборе традиционных приложений. Как подчеркивает Хоу из Forrester, ИТ-менеджерам стоит иметь в виду, что частые изменения происходят и здесь. “Мне кажется очень важным признать, что сегодня нелегко сопровождать и обычное ПО, для которого постоянно появляются обновления или новые сервисные пакеты, - говорит он. - В сообществе же приверженцев открытых кодов решение таких проблем уже налажено, и это полностью отвечает интересам многих организаций”.
Капризы поддержки
Еще одна серьезная проблема, вызывающая тревогу корпоративных пользователей, связана с поддержкой открытых кодов. Многие компании не имеют особых претензий к традиционной платной поддержке, а иногда и целиком удовлетворены ею.
Некоторые, правда, утверждают, что в сообществе открытых кодов поддержка оказывается более эффективно и к тому же быстрее, чем в службах технического сопровождения производителей обычных приложений.
В крупнейших проектах с открытым кодом наподобие Apache и Linux техническая поддержка бесплатна и широко доступна. На сайтах www.apache.org и www.linux.org, например, информация документирована и систематизирована ничуть не хуже, чем на Web-узле какой-нибудь крупной фирмы-разработчика.
Если организация подумывает о развертывании приложения с открытым кодом, ей прежде всего стоит поискать сформировавшееся вокруг него сообщество, убедиться, что в нем участвует достаточное количество разработчиков и пользователей и они способны оперативно оказывать поддержку на приемлемом уровне.
По опыту eWeek Labs, впрочем, можно смело утверждать, что хорошую поддержку способны оказывать даже очень маленькие группы.
Старший аналитик нашего центра тестирования Камерон Стардевант, скажем, обращался за помощью на множество сайтов, посвященных программам с открытым исходным текстом, и обычно находил там вполне удовлетворительную поддержку. “OpenNMS - продукт не слишком-то известный, но меня просто поражала оперативность и глубина ответов на все мои вопросы, - рассказал он. - Здесь всегда готовы поделиться опытом работы с продуктом”.
Более того, по оценке Стардеванта, хорошо поддерживается даже утилита системного мониторинга Mon, разработанная одним-единственным программистом. “Замечательно, - подчеркивает он, - что столь миниатюрное программное изделие сопровождается непосредственно тем человеком, который его создал”.
В поисках помощи прежде всего стоит посетить раздел часто задаваемых вопросов (FAQ) сайта, посвященного соответствующему проекту. Второй эшелон поддержки проходит через архив списков рассылки, содержащий, как правило, богатейшие информационные залежи. Ну а третий, самый многообещающий метод - задать свой вопрос напрямую участникам списка рассылки.
Здесь нужно сделать одно замечание. Если персонал служб сопровождения производителей относится (или, по крайней мере, должен относиться) очень терпимо даже к простейшим вопросам, то участники списков рассылки демонстрируют, как бы помягче выразиться, снисходительное презрение к тем, кто задает вопросы, не имея заметных технических познаний.
Как избежать подобных ситуаций, подсказывает Дик из eWeek Labs: “Покажите, что вы хорошо продумали свой вопрос. Выставляя его на всеобщее обозрение, вы должны как можно полнее описать проблему, предоставить самую подробную информацию о сложившейся ситуации и задать вопрос так, чтобы он звучал как можно интереснее для других”.
Барьеры
На сегодняшний день одна из главных проблем приложений с открытым кодом состоит в том, что они в большинстве случаев недостаточно хорошо работают под Windows. “Отчасти это объясняется инертностью, отчасти - политическими мотивами, отчасти - практическими соображениями, - считает Дик. - Конечно, некоторые пакеты программ, в том числе MySQL или OpenOffice, славятся своей совместимостью с Windows, но это скорее исключения из общего правила. ИТ-подразделения могли бы чаще полагаться на приложения с открытым кодом, если бы те хорошо работали в развернутой на предприятии операционной среде”.
Еще один барьер на пути к широкому корпоративному применению программ с открытым кодом, особенно на настольных системах, связан с относительной сложностью их использования: подобные программы разрабатывались отнюдь не в расчете на среднего сотрудника. А затраты на обучение персонала могут свести к нулю всю экономию, связанную с бесплатностью лицензий.
Сейчас предпринимаются серьезные шаги к улучшению пользовательских интерфейсов, с тем чтобы менеджеры воспринимали их как знакомую и привычную среду. В качестве удачных примеров в этой области можно назвать OpenOffice и последнюю версию GNU Network Object Model Environment.
Как специалисты eWeek, так и другие аналитики убеждены, что по мере решения вышеупомянутых проблем программы с открытым кодом будут получать все большее распространение.
“Мне кажется, что к таким программам относятся все уважительнее, - отмечает Хоу из Forrester. - Открытые коды вот-вот перестанут считаться знаком контркультуры. Подобные приложения будут восприниматься как обычный инструмент, и люди приступят к их практическому использованию”.
С исполнительным редактором Деброй Донстон можно связаться по адресу: debra_donston@ziffdavis.com.