Александр Любушкин, технический директор компании "ФОРС Телеком"
© ComNews
22.11.2017

О том, что сейчас происходит на рынке программных средств коллективной разработки интерфейсов прикладных систем, какие тренды и проблемы на нем наблюдаются, а также о решении, не имеющем аналогов на рынке, корреспонденту ComNews рассказал технический директор компании "ФОРС Телеком" (ГК "ФОРС") Александр Любушкин. В беседе также принял участие Рустам Абдрахимов, ведущий эксперт компании - автор идеи нового средства разработки интерфейса.

- По вашим наблюдениям, что сейчас происходит на рынке программных средств коллективной разработки?

- Программные инструменты для разработки экранных форм (интерфейсов) прикладных систем можно разделить на три основные группы: библиотеки, редакторы макетов и генераторы. Это те компоненты, которые в разных пропорциях "смешаны" в инструментах разработки пользовательского интерфейса.

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

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

- Какие вы наблюдаете тренды и какие проблемы существуют на рынке?

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

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

К сожалению, в нынешних условиях ИТ-рынок отражает общий вектор "общества потребления", который главенствует в мире.

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

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

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

Если же говорить о современных средствах настоящей коллективной разработки, то мы видим только одно решение - созданный нами LUI.

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

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

- Недавно ФОРС представила новый программный продукт - интероперабельное инструментальное средство для коллективной разработки экранных форм прикладных систем, которое будет продвигаться под брендом Live Universal Interface (LUI). Как возникла идея создания LUI?

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

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

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

- Каковы потенциальные пользователи вашего продукта, какие задачи он позволяет решать? На чем основано ваше утверждение о том, что аналогов LUI на рынке не существует?

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

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

Наш продукт нацелен на сегменты В2В, В2G и G2C и предназначен для использования в системах, которые нужны для управления финансами, учета и контроля производства и т.д. Мы даем инструмент для создания серьезных учетных систем, интерфейс которых должен решать в первую очередь функциональные задачи, а не способствовать достижению побочных, например, маркетинговых целей. Для такого интерфейса многие избыточные элементы не требуются. Их отсутствие делает наш продукт максимально удобным для использования в госорганах или у корпоративных заказчиков.

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

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

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

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

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

- Как вы оцениваете экономический эффект в результате перехода на новый продукт?

- Об экономической эффективности мы можем судить по опыту использования LUI в рамках нашего основного продукта. Как уже отмечалось, изначально LUI мы применяли для решения задач, необходимых для развития системы Fastcom. Этот продукт большой и весьма сложный, он содержит порядка 1000 таблиц и 2000 форм. И если раньше наши временные затраты на разработку интерфейса составляли 80%, то после перехода на LUI мы стали тратить на это только 40% времени. Таким образом, производительность разработки прикладной бизнес-логики увеличилась в три раза, с 20% до 60%, и это далеко не предел!

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

- Каковы ваши планы по развитию и продвижению LUI?

- Уже этой зимой станет доступна версия для построения интерфейса мобильных приложений. Весной следующего года появится новая версия продукта, которая будет работать на любой СУБД, поддерживающей SQL, а не только СУБД Oracle, как сейчас.  LUI станет более универсальным.

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

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

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