17 августа 2012, 16:17
Количество просмотров 661

Новая разработка компании Compass Plus: инновационная платформа розничных банковских приложений TranzAxis

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

Несмотря на динамичное развитие информационных технологий, в том числе в сегменте банковской розницы, появление на рынке по-настоящему прорывных решений, как это, впрочем, и должно быть, по-прежнему остается достаточно редким событием в индустрии. Одним из наиболее свежих примеров здесь может послужить инновационная платформа розничных банковских приложений Tranz-Axis, продвигаемая сегодня компанией Compass Plus. Чтобы из первых рук ознакомить читателя «ПЛАС» с тем, что представляет собой этот комплексный продукт и в чем именно заключается его революционность, мы взяли интервью у Юрия Колякина, генерального директора Compass Plus. Поскольку, как это всегда бывает в случае с принципиально новым решением, вопросов оказалось достаточно много, а ответы на них столь подробны и интересны, мы приняли решение разделить итоги нашей беседы на две логические публикации, первую из которых предлагаем вашему вниманию сегодня, а со второй вы сможете ознакомиться в октябрьском номере журнала.

ПЛАС: Создание любого нового продукта на рынке платежных решений вызывается, как правило, значительными изменениями самого рынка; сменой или модификацией задач, которые стоят перед банком или иными операторами рынка; изменениями требований к платежным решениям самого вендора или его конкурентов и т. д. Каковы основные причины, которые легли в основу создания инновационной системы розничных банковских приложений TranzAxis? 

Ю. Колякин: Общеизвестно, что индустрия информационных технологий – одна из самых интенсивно развивающихся сфер человеческой деятельности. Технологические достижения в этой области оказывают непосредственное влияние практически на все отрасли современного производства, во многом изменяют сам стиль жизни человека в постиндустриальном обществе. Для компании, работающей в отрасли, связанной с информационными технологиями фундаментальным образом (а таковой отраслью, очевидно, является электронное денежное обращение), крайне важно своевременно использовать новейшие технологические достижения для упрочения и расширения своих конкурентных позиций. Наш многолетний опыт свидетельствует о том, что наиболее эффективным способом применения новейших информационных технологий в сложных корпоративных решениях, на производстве которых в основном и специализируется Compass Plus, является системное обобщение этих технологий в форме специальных технологических платформ. Разработка таких платформ предшествует и является основой последующей реализации прикладных программных продуктов. Собственно, требование такого рода развития и лежит в основе ключевой корпоративной парадигмы Compass Plus, кратко сформулированной во фразе «упреждающее системное удовлетворение потребностей…» Именно упреждающее системное удовлетворение потребностей клиентов – основной смысл тезиса о миссии нашей компании и прямое основание для новых исследований и разработок. 

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

Специализированные средства разработки, в том числе специально спроектированные в процессе создания сложных программных продуктов, широко применяются и во многих других областях. Примеров можно привести множество. Самые известные из современных средств разработки такого типа, так называемые «движки», – поисковые, вики, браузерные, графические, голосовые и игровые платформы, а также системы управления контентом (CMS), средства для создания интернет-магазинов, интернет-форумов, шахматных программ и т. д. и т. п. В известном смысле даже СУБД можно отнести к таким «движкам». 

Новая разработка компании Compass Plus: инновационная платформа розничных банковских приложений TranzAxis - рис.1

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

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

В Compass Plus с момента создания компании и на протяжении уже более 20 лет уделялось особое внимание разработкам системного характера, результатом которых становились «движки» – технологические средства, платформы и системы, на базе которых и реализовывались впоследствии прикладные продукты. Так, еще в самом начале 1990-х годов была разработана SCADA-система RCS (Remote Control System), на базе которой был успешно реализован ряд систем управления технологическими процессами. 

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

Вся последующая история компании убедительно показала правильность выбора стратегии развития, в основе которой лежит упреждающая системная разработка средств разработки. И сегодня более 120 клиентов компании по всему миру используют продукты, созданные и исполняемые в среде Флоры. 

Но как бы ни была хороша Флора «в самом расцвете сил» (сегодня используется уже 3-я версия системы) и как бы ни был успешен проект TranzWare, несколько лет назад было принято решение о создании нового инструментального комплекса для разработки сложных корпоративных приложений – RadixWare (на сленге разработчиков – Радикс). При проектировании этого программного комплекса перед разработчиками была поставлена задача создания открытой, подчеркиваю – именно открытой технологической платформы с использованием опыта разработки и практического использования Флоры, с одной стороны, и наиболее перспективных идей, методов, средств и технологий современных открытых разработок – с другой. На втором этапе проекта на основе Радикса планировалась разработка прикладной платформы и системы интегрированных прикладных продуктов нового поколения, получившей впоследствии название TranzAxis и предназначавшейся для решения более широкого круга задач автоматизации розничной банковской деятельности, чем это было архитектурно и концептуально предусмотрено в TranzWare. 

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

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

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

Я уже отмечал в одном из интервью, что завершение разработки и начало продаж TranzWare совпали с экономическим кризисом в России в 1998 году. По странному стечению обстоятельств, Compass Plus снова выходит на рынок с новыми технологиями и продуктами в период экономического кризиса, надеясь повторить успех. 

ПЛАС: Что представляет собой технологическая платформа RadixWare, предназначенная для создания и сопровождения систем корпоративного уровня? Какова ее роль в создании системы TranzAxis? 

Ю. Колякин: Действительно, RadixWare проектировалась для разработки приложений корпоративного уровня. Однако следует оговориться, что мы недостаточно хорошо знакомы c проблематикой разработки систем и приложений других типов, чтобы утверждать, что потенциальная область эффективного применения платформы RadixWare ограничивается указанным классом систем или же, наоборот, что она содержит необходимый и достаточный для практического применения набор средств разработки корпоративных систем. RadixWare – открытая, постоянно развивающаяся платформа. Планируется продолжение ее развития в форме проекта с открытыми исходными кодами с созданием всех сопутствующих такому роду проектов институтов, включая сообщество разработчиков. Тем не менее уже сейчас можно достаточно уверенно утверждать, что технологические возможности RadixWare вполне покрывают потребности разработчиков и пользователей таких корпоративных систем, какими являются процессинговые, фронтальные и операционные банковские системы, а также системы типа ERP, MES, CRM и другие. 

В основе комплексной интегрированной объектно-ориентированной среды разработки RadixWare лежит оригинальная реализация технологии объектно-реляционного отображения (Object-Re-lational Mapping), обеспечивающая представление структуры данных приложений и реляционной базы в виде единой объектной модели. К оригинальным особенностям RadixWare следует также отнести: поддержку трехзвенной архитектуры приложений, многослойность приложений, генерацию приложений на основе единого описания (модели), декларативное и императивное определение презентационной и бизнес-логики, логики хранения данных, полный набор средств разработки, наличие средств поддержки полного жизненного цикла приложений (проектирование, кодирование, отладка, тестирование, выпуск «релизов», изготовление «патчей» и т. д.), архитектурную поддержку непрерывности работы приложений (включая возможность установки обновлений «на лету»), готовые технологические компоненты (инфраструктура SOA, разграничение доступа, аудит, документооборот, каналы персональных коммуникаций, планировщик заданий, дизайнеры, генератор отчетов, средства описания протоколов, генерации и контроля лицензий) и многое, многое другое. Понимание основных концептуальных идей RadixWare, заложенных в этом продукте, можно почерпнуть из текста доклада для научно-практической конференции «Разработка ПО 2009/ Software Engineering Conference (Russia)», которая проходила 27–28 октября 2009 года в Москве ). 

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

ПЛАС: Несколько слов о специфике системы розничных банковских приложений TranzAxis. Какие возможности специализированной технологической платформы нового поколения заслуживают особого внимания? 

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

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

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

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

Новая разработка компании Compass Plus: инновационная платформа розничных банковских приложений TranzAxis - рис.2

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

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

Необходимо заметить, что это не первая наша попытка создания открытых инструментов адаптации приложений. В частности, в TranzWare предусмотрен ряд средств, предоставляемых в распоряжение конечным пользователям, и среди них такие эффективные и популярные, как Algorithmix Processor, H2H Software Development Kit, Report Generator, встроенные API и другие. Безусловно, все эти и другие подобные разработки, реализованные в TranzWare, также легли в основу новой технологической платформы. 

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

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

Вторую часть интервью генерального директора компании Compass Plus Юрия Колякина, посвященную принципиальным отличиям TranzAxis от других систем, представленных на рынке, а также результатам первого промышленного испытания системы в Банке Нейва (г. Екатеринбург), читайте в следующем номере журнала «ПЛАС».

*Проприетарное программное обеспечение (proprietary software; от proprietary — частное, патентованное) — программное обеспечение, являющееся частной собственностью авторов или правообладателей и не удовлетворяющее критериям свободного ПО (наличия открытого программного кода недостаточно). Правообладатель проприетарного ПО сохраняет за собой монополию на его использование, копирование и модификацию, полностью или в существенных моментах.

Технологическая платформа RadixWare*

«Современные корпоративные системы, такие как ERP, MES, CRM, процессинговые и бэк-офисные системы банков, биллинговые системы операторов связи и т. п., – это огромные программные комплексы, на разработку и развитие которых тратятся тысячи человеко-лет. Системы такой сложности и объема невозможно создать без использования специальных технологических средств, так же как невозможно сделать современный самолет, используя лишь молоток, пилу и напильник. По-видимому, все профессиональные разработчики систем корпоративного уровня используют то, что мы называем технологической платформой. Развитая технологическая платформа обычно включает средства разработки, тестирования, отладки и сопровождения, повторно используемые компоненты, библиотеки, методологии разработки, шаблоны проектной документации и бизнес-процессов и многое другое. 

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

Современные корпоративные системы весьма разнообразны по функциям, архитектуре, способу построения, сопровождения, кастомизации и т. д. Поэтому вряд ли можно найти или создать такую технологическую платформу, которая с равной эффективностью подойдет для построения любой корпоративной системы. Некоторые из существующих технологических платформ нацелены на максимально широкую область применения (например, Java EE, .NET), другие (например, 1C «Предприятие») – на максимально полное решение более узкого класса задач. 

При проектировании платформы RadixWare мы не пытались «объять необъятное». Мы постарались четко ограничить область применения RadixWare, но сделать ее максимально эффективной в этой области. 

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

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

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

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


*Фрагмент доклада на конференции «Разработка ПО 2009»

Рубрика:
{}
Теги:
#

PLUSworld в соцсетях:
telegram
vk
dzen
youtube