Стратегия развития IT-компаний во многом связана с выбором платформы разработки. Как компании делают этот сложный выбор? Как извлекают из возможностей платформ преимущества для своих клиентов и ресурс для роста собственного бизнеса?
О новой платформе разработки бизнес-приложений Xafari рассказывает аналитик департамента перспективных проектов компании «Топ Софт» Александр Крахотко.
«Мы решили работать на опережение рынка»
– Александр Валерьевич, расскажите, пожалуйста, как создавалась платформа Xafari?
– У «Топ Софта» есть еще одна собственная платформа разработки, на которой мы развиваем тиражную систему «Галактика ERP» и ряд других программных продуктов. Это мощное и надежное решение, позволяющее создавать эффективные и конкурентоспособные информационные системы. Но сегодня для разработчиков важными факторами стало время и возможность быстро собирать из готовых «кирпичиков» необходимые заказчику решения. Этот тренд в компании «Топ Софт» уловили еще в конце 1990-х. Тогда и было принято решение создавать новую платформу разработки, основанную на самых передовых технологиях. Была поставлена цель обеспечить быструю, качественную и эффективную разработку бизнес-приложений корпоративного уровня, включающих десятки и сотни программных модулей, способных обрабатывать миллионы документов и обеспечивать работу тысяч пользователей одновременно.
– Почему в качестве каркаса новой платформы вы выбрали .NET Framework из множества существующих в мире фреймворков?
– На самом деле, вначале выбор пал на платформу Java. Логика заключалась в том, что проекты Open Source в тот момент находились в зачаточном состоянии, а все имеющиеся серверы бизнес-приложений стоили немалых денег, были слабо распространены в России и применялись только на крупных предприятиях. Java была на тот момент самым доступным и не требующим высоких трудозатрат вариантом развития собственных бизнес-приложений. Однако вскоре компания Microsoft выпустила на рынок первую версию платформы .NET. Мы провели сравнение обеих технологий и пришли к выводу: у второй платформы на рынке бизнес-приложений перспектив больше. Даже в первой версии .NET превосходила платформу Java по рядку функциональных возможностей. Так с 2001 года мы переориентировались на .NET как на основу для создания собственной современной платформы разработки.
– Не жалеете сегодня об этом решении?
– Нет. Казалось бы, за прошедшее десятилетие ситуация сильно изменилась: появилось множество надежных, производительных, масштабируемых проектов для разработчиков, в т.ч. Open Source. Однако время показало, что ставка на .NET обеспечила нашей платформе высокий уровень конкурентоспособности. А также – оставляла возможность для корректировок курса при изменении ситуации на рынке.
– Вы воспользовались такой возможностью?
– Да – во второй половине «нулевых» годов. В тот момент уже на базе самой технологии .NET был создан ряд платформ и высококлассных компонент. Это вновь поставило компанию «Топ Софт» перед выбором. Первый вариант – продолжать разработку собственной полномасштабной коммерческой платформы (тогда она называлась «Галактика Ranet»). Второй вариант – включиться в развитие одного из Open Source решений на базе .NET. Плюсы и минусы обоих вариантов очевидны. В развитии платформ opensource – создании, тестировании, доработке кода, разработке дополнений и т.д. – участвуют большие сообщества разработчиков, и это безусловный плюс. Однако в тот момент мы не имели опыта Open Source проектов. В то же время у нас уже был колоссальный опыт построения «Атлантиса». Поэтому на первом этапе было решено продолжить развитие собственной платформы «Галактика Ranet». Но и этот выбор не был последним!
– Как развивались события дальше?
– Запуск первой версии платформы «Галактика Ranet» состоялся в конце 2007 года. Практически одновременно компания Microsoft представила свою библиотеку Business Framework, на которой предполагала выпускать семейство продуктов Dynamics для автоматизации бизнеса. Сравнение обоих решений показало: платформа «Галактика Ranet» вполне конкурентоспособна, а по определенным параметрам – обладает преимуществами. Например, у нас уже был свой workflow-сервер, а у Microsoft – отсутствовал (Windows Workflow Foundation появится позже). Подобные различия и помогли нам понять важный факт: да, компания «Топ Софт» вложила существенные инвестиции в проектирование, разработку, сопровождение, развитие собственной проприетарной платформы – но это очень дорогой путь даже для таких гигантов, как Microsoft! Некоторые компании создают весь инструментарий своими силами, тратят на это колоссальные финансовые и трудовые ресурсы и, самое главное, время. Когда же на рынке появляется новая передовая технология – они вновь вынуждены, в силу закрытости своей платформы, тратить ресурсы на создание аналогичной возможности.
– Что стало итогом вашего анализа?
– Решение сконцентрироваться на разработке лучших в своем классе приложений. Наличие собственной бизнес-платформы для нас вторично: мы не делаем акцент на ее продаже и популяризации. Чего мы хотим – так это создавать и продвигать качественные бизнес-приложения. И лишь попутно – отдельные сервисы для разработчиков, не имеющие аналогов на рынке, которые облегчат и ускорят на определенных этапах создание бизнес-приложений, обеспечат их теми или иными уникальными функциями. После того, как сформировалось новое видение будущего компании, мы занялись исследованием доступных технологий и на практике поработали с рядом компаний-поставщиков промежуточного ПО – компонентов для решений на .NET.
– Какой выбор вы сделали?
– В итоге мы пришли к выводу, что наиболее полный набор необходимых нам компонентов содержит фреймворк eXpressApp Framework (XAF), который выпускает компания Devexpress. Соответственно, мы рассчитывали, что сотрудничество с Devexpress позволит нам освободить максимум своих ресурсов для развития бизнес-сервисов. Devexpress пользуется уважением и доверием на мировом рынке. А XAF — одна из лучших платформ на .NET, развитие которой опирается на мощное сообщество разработчиков. Тысячи разработчиков по всему миру создают на XAF бизнес-приложения – от простых решений до систем класса ERP. Кроме того, основной вектор развития XAF – это HTML5. И компания «Топ Софт» также нацелена на развитие портальных и мобильных решений. Поэтому все мы надеемся, что очень долго нам будет по пути.
Как работает платформа
– Насколько хорош XAF как инструмент разработки? И зачем вам понадобилось создавать Xafari?
– Более-менее опытный разработчик может очень быстро создавать с помощью XAF прототипы будущих решений либо относительно простые информационные системы. В этом качестве XAF можно считать улучшенной заменой Microsoft Access для C# разработчиков. Не прилагая значительных усилий, владея азами Visual Studio и зачастую не зная C#, можно быстро получить работающее приложение. Однако при разработке приложений корпоративного уровня, обслуживающих более 50 пользователей, платформе XAF недостает эргономики и производительности. Поэтому в компании «Топ Софт» был создан специальный отдел, который занимается разработкой общих модулей и бизнес-компонентов, оптимизирующих работу платформы XAF. Таким образом, Xafari – это набор специализированных модулей и методик разработки бизнес-приложений, который является расширением XAF. Мы создаем модули Xafari по точкам расширения, задекларированным разработчиками XAF. Точно так же и сама платформа XAF является расширением Microsoft .NET. Платформа Xafari в целом помогает нам в построении мета-модели и бизнес-логики будущего приложения, а входящие в нее модули – ускоряют разработку бизнес-функций приложения.
– Расскажите, пожалуйста, о бизнес-компонентах Xafari.
– Это, например, сервер отчетности, который обеспечивает публикацию и хранилище отчетов, их повторную генерацию, просмотр и т.д. Это и необходимые для крупной компании элементы документооборота. Это и модули экспорта-импорта, интеграции с различными форматами данных и другими системами. Это и компоненты, улучшающие юзабилити XAF-приложений. Важно, что все бизнес-компоненты Xafari ориентированы на потоковый ввод данных и обеспечивают работу с их большими объемами: например, со справочниками или списками документов, содержащими миллионы записей. В свою очередь, отлично продуманная открытая архитектура XAF позволяет нам быстро и удобно встраивать в платформу как мелкие улучшения, так и достаточно объемные доработки для эффективного решения самых разных бизнес-задач. Наши платформы стыкуются настолько гармонично, что сторонние разработчики не видят границы между XAF и нашими прикладными расширениями. Разумеется, появление Xafari стало большим подспорьем для разработчиков самого «Топ Софта», создающих конечные бизнес-приложения.
– Если сам XAF взять за 100 процентов – насколько увеличивается его функциональность благодаря дополнениям Xafari?
– В количественном отношении – примерно на 20 процентов. Но для решения определенных задач эти 20 процентов критически важны. Речь, прежде всего, о разработке веб-приложений, а также сложных систем, содержащих не десятки, а сотни бизнес-объектов и визуальных форм.
– Насколько активно компания «Топ Софт» использует Xafari?
– Проекты на этой платформе сегодня ведутся на десятках крупных предприятий стран СНГ. Что особенно важно? Во-первых, все успешные проектные и программные решения мы объединяем в библиотеке повторно используемых компонентов Xafari. Xafari уже содержит большое количество модулей, готовых к повторному использованию. Сейчас большинство из них имеют системный характер. А в будущем платформа будет пополняться все более высокоуровневыми компонентами для решения разнообразных прикладных задач. Во-вторых, мы стремимся гарантировать единую логику построения всех систем на платформе Xafari и их успешную совместную работу у одного заказчика. Мы работаем над тем, чтобы две различные системы на Xafari, созданные сейчас или в будущем, всегда работали «без швов», в едином интерфейсе, как единая интегрированная система – но при этом могли разрабатываться независимо.
– Какие тиражные системы «Топ Софт» развивает на платформе Xafari?
– В список уже входит несколько крупных решений. Это система управления активами предприятия «Галактика EAM», комплексное решение по управлению производственными процессами на промышленных предприятиях «Галактика AMM», эффективный инструмент для управления учебным процессом и финансово-хозяйственной деятельностью «Галактика Управление вузом», система «Галактика Управление персоналом» и ряд других. В 2014 году мы планируем ориентироваться на выпуск веб-решений, в т.ч. – работающих в «облаках».
– Как вы решаете подобные задачи?
– В приложениях на Windows-платформе они решались с помощью мелких доработок или настроек самого XAF. Но обеспечить высокую скорость работы веб-приложения гораздо сложнее. Мы используем для этого весь свой опыт работы с ASP, html5, Silverlight, накопленный за годы развития комплекса поддержки принятия управленческих решений «Галактика BI». Часть веб-элементов платформы XAF переписываем с нуля, часть – адаптируем, а также создаем новые элементы, необходимые для успешной работы информационных систем предприятий-заказчиков. Несколько наших новых систем, таких как комплексное решение для формирования консолидированной отчетности «Галактика CnP» и система управления инвестиционной программой «Галактика СУИП», выпускаются только с веб-интефейсом.
– Как часто вы обновляете Xafari?
– Глобальные обновления XAF выходят дважды в год. При выпуске новой версии Devexpress XAF мы выпускаем новую версию Xafari (для удобства пользователей мы синхронизировали и нумерацию версий). Добавлю, что в Devexpress работают высококвалифицированные разработчики и архитекторы. И если мы видим, что они запланировали добавить в следующей версии XAF функционал, о котором мы сами задумывались – то спокойно переключаемся на другие задачи.
– Есть ли у «Топ Софта» планы по продвижению платформы?
– Буквально в конце 2013 года мы начали программу продвижения разработанных нами модулей расширения платформы Xafari. Во-первых, мы уже их продвигаем вместе с ПО в виде средств администрирования и программирования для отделов АСУ предприятий-заказчиков. Например, при покупке системы «Галактика EAM» заказчик получает инструменты, позволяющие адаптировать и развивать это и другие наши IT-решения, используя Xafari, Devexpress XAF, Microsoft Visual Studio и С#. Добавлю, что инструменты XAF/Xafari позволяют очень быстро и практически полностью перенастроить уже внедренную систему без ее перекодирования. Во-вторых, аналогично XAF, библиотека расширений Xafari будет распространяться свободно, а платные подписчики получат гарантированное техническое сопровождение. С этой целью мы открыли англоязычный сайт, на котором вся техническая документация также будет размещаться на английском языке. Язык не станет проблемой для русскоязычных программистов: ведь XAF также продвигается на английском. Зато мы всерьез рассчитываем на продвижение Xafari на мировом рынке.
– Кстати, у «Топ Софта» уже есть успешный опыт работы за рубежом: имею в виду продвижение библиотеки Ranet OLAP, предназначенная для создания эффективных аналитических приложений класса Business Intelligence…
– Да, в последний год библиотека Ranet OLAP имела серьезный успех на международном рынке: ее приобрело множество компаний-разработчиков, в т.ч. крупных, из США, Великобритании, Германии, Франции, Австралии, Индии, Китая и др. И это не случайно. В отличие от многих других разработчиков Open Source, «Топ Софт» обладает колоссальным опытом создания именно корпоративных приложений. Приступая к разработке, мы четко понимаем, что нужно конечным пользователям – крупным и средним предприятиям. А после внедрения системы – быстро получаем от них обратную связь. Разработчик, не имеющий опыта работы на корпоративном рынке, может быстро, буквально за месяц, создать и внедрить работающее бизнес-приложение. Но затем может обнаружиться нехватка определенных сервисов, недостатки эргономики, проблемы с производительностью при подключении большого количества пользователей… Поэтому я надеюсь, что для многих разработчиков на XAF окажутся очень полезны опубликованные нами дополнения Xafari.