Летать по-новому

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

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

1 мая 1922 года начались полеты по первой международной авиалинии Москва — Кенигсберг (тогда территория Германии). Позже эта линия была продлена до Берлина. Любопытно, что лишь примерно год спустя, в июле 1923 года, была открыта первая регулярная внутренняя линия Москва — Нижний Новгород.

В 30-е годы авиастроение страны уже представляло собой большой и сложный комплекс производственных предприятий, конструкторских бюро и научно-исследовательских институтов. Самолеты конструкции А. Н. Туполева, С. В. Илюшина, О. К. Антонова вошли в историю мирового самолетостроения. В феврале 1932 года было образовано Главное управление Гражданского воздушного флота (ГУ ГВФ) и официально введено сокращенное наименование гражданской авиации страны — Аэрофлот. Однако официальным днем рождения Гражданского воздушного флота России считается 9 февраля 1923 года, когда Совет Труда и Обороны принял постановление "О возложении технического надзора за воздушными линиями на Главное управление воздушного флота и об организации Совета по гражданской авиации".

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

В 1991 году, после распада Советского Союза, в бывших союзных республиках и регионах России начали образовываться собственные авиакомпании. Правопреемником наименования "Аэрофлот" и торговой марки международного перевозчика бывшего СССР стало производственно-коммерческое объединение "Аэрофлот — советские авиалинии", которое в июле 1992 года было преобразовано в ОАО "Аэрофлот — российские международные авиалинии". Тогда же в авиакомпании началась эксплуатация зарубежной техники. Но это было далеко не единственное новшество в новых экономических условиях, в которых оказалась компания и вся страна.

Профиль клиента

Компания
ОАО "Аэрофлот — российские авиалинии"

Местонахождение:
Москва

Число сотрудников:
около 15 тыс.

Проблема:
Разработка и внедрение информационной автоматизированной системы расчета затрат на выполнение рейса авиакомпании и динамического формирования и предоставления корпоративных отчетов.

Профиль партнера

Компания
Epsylon Technologies

Местонахождение:
Зеленоград

Решение:
Поставка программной технологии TAXXI-Baikonur и адаптация ее к требованиям заказчика.

Думать по-новому

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

Однако при кажущейся простоте эта задача оказалась отнюдь не простой. К тому времени в структуре Аэрофлота существовало 6-7 департаментов, которые занимались полетами по своим направлениям: Азия, Америка, Африка, Европа, СНГ, Россия, и все они считали себестоимость рейсов по своим методикам. Причем были случаи, когда различные методики давали совершенно противоположные результаты при расчете затрат для одного и того же рейса.

Но не стоит относить эти курьезные истории на счет чиновничьей несогласованности различных департаментов. Аэрофлот — настолько многопрофильная система, что очень непросто выделить затраты и распределить их по статьям. Рассчитать себестоимость на производстве намного легче.

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

Стоимость же рейса напрямую зависит от конкретного вылета, т. е. при одинаковых нормативно-справочных данных каждый вылет специфичен за счет постоянно меняющихся производственных показателей. Например, количество топлива может зависеть и от пассажирской загрузки, и от отклонений от стандартного маршрута, и от направления и силы ветра. Сборы в портах и бортпитание зависят от количества пассажиров на борту. Лайнеры Аэрофлота летают в более 300 аэропортов мира. И в каждом из них существует около 25 только постоянных сборов, которые необходимо учесть. Эти сборы, во-первых, зависят от типа самолета, во-вторых, на их размер может влиять день недели или праздник, а где-то ночные тарифы могут отличаться от дневных.

Попытки руководства Аэрофлота в 1998 году решить эту проблему директивными методами, а именно принять ту или иную методику расчета затрат на рейс, ощутимого результата не дали. “Принять единую методику — это значит дать единую систему расчетов, а ее-то как раз и не было, — пояснила Вера Дубинина. — Но в конечном счете дело не в одной только методике. Помимо того, что были разные методики расчетов, в них использовались разные исходные данные. В компании отсутствовала единая корпоративная база данных”.

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

“Эта задача, помимо утилитарных целей, могла стать двигателем для решения организационных вопросов, — призналась Вера Дубинина. — Расчет затрат по единой методике накладывает определенные дисциплинирующие требования на службы, поставляющие информацию в базы данных. Они вынуждены с этим считаться, что в конечном счете улучшает качество подготавливаемых данных и повышает ответственность пользователей-поставщиков информации за ее целостность и полноту”.

Решать по-новому

Весной 1998 года было принято решение построить автоматизированную систему расчетов затрат на рейс. К работе над проектом были привлечены сотрудники вычислительного центра и специалисты Центра управления коммерческой загрузки.

“Примерно к лету 1998 года была окончательно сформирована методика расчетов, определен набор необходимых справочников и разработаны принципы использования уже существующих баз данных по производственным показателям рейсов и доходам от их выполнения, — рассказывает Вера Дубинина. — Особенно важной для нас в тот момент стала проблема выбора программных средств. Самым очевидным казался стандартный клиент-серверный подход и его реализация на базе Delphi. Но наличие большого числа пользователей на различных площадках заставляло искать решение в разряде трехзвенных структур”.

На тот момент в Аэрофлоте уже была корпоративная сеть, которая объединяла здание главного офиса, два здания в аэропортах Шереметьево-1 и Шереметьево-2 и здание на Петровке. В недрах этой локальной сети были две основные базы данных. Одна наполнялась производственными показателями фактически выполненных рейсов, а вторая хранила информацию о полученных доходах по этим рейсам. Первая находилась в Шереметьево, а вторая — на Петровке. Кроме того, в процессе разработки к ним добавилась третья база данных, которая хранила нормативно-справочную информацию (ставки в аэропортах, цены на топливо, ставки за пролет над территорией и т. д.).

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

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

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

Это очень хорошо понимал Михаил Шунин, директор по прикладным разработкам компании Epsylon Technologies, работавший в то время начальником отдела программирования в вычислительном центре Аэрофлота в аэропорту Шереметьево-1. “Было очевидно, что если я поставлю, скажем, на десять компьютеров клиентскую часть, то я же потом должен буду поехать и ее обновить. Колоссальное количество времени и усилий придется тратить на администрирование системы”.

Таким образом, рабочие места в разрабатываемой системе должны были представлять собой тонкого клиента с минимальным администрированием, т. е. не требовать каких-либо настроек при установке универсальных клиентских частей. А это означает использование Интернет-технологий и Web-интерфейса системы. Уже в 1998 году стало очевидно, что без применения Web-технологий такая система была бы бесперспективна. В системе же с тонким клиентом достаточно изменять версию системы только на сервере, обеспечивая тем самым пользователю всегда актуальную ее версию.

Кроме того, исторически в компании «Аэрофлот» среда программирования Borland Delphi рассматривалась как корпоративный стандарт. Поэтому необходимо было выбрать технологию, которая могла бы по максимуму использовать уже имеющиеся наработки. В то время уже были технологии, позволявшие строить html-интерфейсы; широко распространена была технология CGI (Common Gateway Interface), которая позволяла динамически создавать html-страницы. Начинали появляться другие методы и средства, но, чтобы использовать их, необходимы были специалисты с достаточно специфическими знаниями (в частности, предполагалось разрабатывать CGI-приложения невизуальными средствами).

“Средство, которое мы искали, должно было отвечать нескольким критериям, — подытоживает Михаил Шунин. — Первое — это должна была быть Интернет-технология, второе — надо было максимально задействовать наработки, которые существовали в Аэрофлоте к тому времени, и третье — мы хотели использовать визуальную разработку приложений. И тогда, в 1998 году, проанализировав возможности использования других, доступных на рынке технологий построения приложений с удаленным Web-доступом к данным, я пришел к выводу, что технологии сервера приложений Baikonur компании Epsylon Technologies для наших целей наиболее удобны как при создании продукта, так и при его модернизации и развитии”.

Сейчас есть и другие компании, предлагающие технологии построения Web-интерфейсов, в том числе и визуальными средствами, но в 1998 году это была только Epsylon Technologies.

Epsylon Technologies
http://www.epsylontech.com, http://www.taxxi.com
Компания существует с 1989 года. До 1995 -- 1996 годов занималась продажей лицензионного ПО, будучи главным партнером Borland в России. С 1995 года занимается собственными программными разработками. Это сервер приложений Baikonur, который был представлен в 1996 году, и появившаяся в 1999 году технология TAXXI. Компания имеет отделения в Нью-Йорке и Лос-Анджелесе, а также партнеров в Австралии, Гонконге, Германии. С середины 2001 года технология TAXXI активно продвигается на международный рынок.

Появление TAXXI

После того как в Аэрофлоте остановились на технологии, предлагаемой компанией Epsylon Technologies, был приобретен программный продукт Baikonur Application Server. Он выполнял функции Web-сервера и сервера приложений и предоставлял все возможности для разработки, функционируя при этом под управлением ОС Microsoft Windows NT.

Разработка системы велась силами специалистов Аэрофлота. “Epsylon Technologies выступала в роли поставщика технологии, — рассказывает Михаил Шунин. — Но все вопросы, которые возникали в процессе работы, всегда встречали понимание, и разработчики получали очень скорый ответ”. Демонстрация первой версии системы состоялась уже в ноябре 1998 года.

Кризисное и послекризисное время так или иначе сказалось на многом. Система расчетов затрат Аэрофлота примерно полгода существовала во вполне пригодном html-варианте, но не внедрялась. Однако разработка на месте не стояла. “В конце 1998 года в компании Epsylon Technologies появилась бета-версия технологии TAXXI, — рассказывает Михаил Шунин. — Мы ее опробовали и пришли к выводу, что и разрабатывать, и эксплуатировать систему на технологии TAXXI на порядок проще. Решение об использовании технологии, находящейся еще в состоянии бета-версии, было непростым. Но мы рискнули и не ошиблись. На первых порах взаимодействие с сотрудниками Epsylon Technologies было очень тесным, поскольку возникающие у нас требования к возможностям технологии требовали от них быстрой реакции. Мы получали реализацию новых компонентов так быстро, как это было возможно”.

Технологии Epsylon основаны на парадигме объектной поверхности. Идея ее в том, что любое приложение с точки зрения пользовательского интерфейса — это набор компонентов, объектов, которые составляют визуальную часть приложения (кнопки, списки, таблицы и т. д.). Сервер приложений Baikonur при запуске приложения составляет описание этой объектной поверхности в виде HTML- или XML-кода. XML-описание текущего внешнего вида приложения отправляется пользователю на клиентское место. Там стоит специальный XML-браузер — TAXXI Communicator, который воспроизводит внешний вид приложения на клиентском месте. (При этом пользовательский интерфейс приложения на клиенте точно такой же, как и у обычного Windows-приложения.)

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

Таким образом, несмотря на то, что технология TAXXI-Baikonur во многом похожа на технологию, в которой в качестве клиента используется HTML-браузер, она свободна от ряда ограничений, накладываемых стандартом HTML. В частности, в ней реализована техника drag&drop. Очень важна также двунаправленность связи (обновления при возникновении событий пересылаются как от клиента к серверному приложению, так и в обратном направлении). Вся “логика” приложений, все вычисления выполняются на сервере, поэтому уменьшаются требования как к мощности клиентской машины, так и к каналу, позволяя пользователю работать с центральной системой из самых казалось бы неприспособленных для этого мест.

“Сама технология TAXXI в Epsylon Technologies росла вместе с нашей системой, — вспоминает Вера Дубинина. — Увеличивалось число компонентов, поддерживаемых TAXXI-технологией. Рост числа этих компонентов позволил сделать систему более гибкой”.

X-files

Как уже говорилось, «Аэрофлот» считается крупной компанией даже по европейским меркам, поэтому при выборе технологии не последнее место занимали вопросы обеспечения надлежащего уровня информационной безопасности. В системе Baikonur Application Server заложено три основных принципа, на которые обращалось особое внимание.

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

Безопасность передачи данных. Этот вопрос для современной информационной системы постепенно перерастает из дополнения в необходимость. «Боевой запас» компьютерных пиратов непрерывно растет, и теперь не нужно просиживать ночами за компьютером, разбирая мегабайты трафика tcpdump в поисках заветной фразы “password:”. Соответствующие программы-снифферы без усилий за короткое время выбирают из сетевых пакетов всю аутентификационную информацию.

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

В Baikonur Application Server версий 2.0 и выше существует полнофункциональная поддержка протокола SSL/TLS. Протокол реализован в виде внешнего встраиваемого (plug-in) модуля в рамках транспортной подсистемы и может быть использован для шифрования трафика по любым протоколам высокого уровня — HTTP, FTP, FINGER и т. д. Криптозащита канала происходит абсолютно прозрачно для пользователя, защищаемого протокола и передаваемых по нему данных.

Безопасность клиента системы. Необходимо обеспечить пользователю системы безопасность от вредоносного кода и разного рода вирусов. В системе TAXXI — Baikonur все приложения системы находятся на сервере, а на компьютере клиента работает только одна универсальная программа — TAXXI-коммуникатор, по сути XML-браузер. Серверное приложение передает TAXXI-коммуникатору пассивный XML-скрипт, а котором содержится текстовое описание объектов пользовательского интерфейса, которые должны быть отображены на компьютере клиента, либо описания изменений в этих объектах. Иными словами, в отличие от классических клиент-серверных систем на компьютер клиента не приходит никакого кода, который должен исполняться, поэтому нет даже теоретической возможности передачи на него вредоносной программы.

Новейшая история проекта

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

Расчет себестоимости и доступ к информации — это задачи примерно одного масштаба. В процессе их решения в архитектуре TAXXI стало возможным формирование отчетов в динамическом режиме. Если раньше отчеты получались раз в месяц, в соответствии со строго определенной формой, то теперь это происходит тогда, когда действительно необходимо, и с такими входными параметрами, которые действительно интересуют пользователя. Все отчеты, которые генерирует система, можно конвертировать в различные электронные форматы (Microsoft Word, Excel и т. д.) для дальнейшей обработки.

Но, несмотря на успехи, с 1999 до 2000 года система развивалась только за счет личного энтузиазма специалистов Аэрофлота. “Мы просто видели, что она обязательно понадобится компании, — вспоминает Михаил Шунин. — Не может такая компания, как «Аэрофлот», не иметь единой системы расчета затрат”. Любые коммерческие программы, оптимизирующие производственную и коммерческую деятельность компании или подобные им, базируются на том, что стоимость единицы продукции, т. е. себестоимость рейса, уже известна. Кстати, сейчас результаты работы системы расчета затрат используются в качестве исходной информации для функционирования системы APM компании Sabre.

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

ОАО "Аэрофлот — российские авиалинии"
http://www.aeroflot.ru
Открытое акционерное общество "Аэрофлот — российские международные авиалинии" создано в июле 1992 года. Учредителю ОАО — Правительству РФ — принадлежит 51% акций, а 49% — трудовому коллективу и другим юридическим лицам. ОАО "Аэрофлот" выполняет 68% всех международных перевозок из России (рейсы в 108 пунктов 54 стран мира) и более 10% на внутреннем рынке (рейсы в 33 пункта России и СНГ). В компании работает около 15 тыс. человек, в том числе около 2 тыс. летных специалистов. Аэрофлот располагает крупнейшим в Восточной Европе Центром управления полетами. Весь процесс управления полетами воздушных судов автоматизирован в масштабе реального времени, что позволяет обеспечивать высокую безопасность полетов (99,94%) и соответствовать уровню наиболее надежных авиакомпаний мира. Начато строительство собственного терминала Шереметьево-3. 24 июня 2000 года авиакомпания переименована в ОАО "Аэрофлот — российские авиалинии"