Научная статья на тему 'Использование sapui5 при разработке приложения по анализу технико-экономических показателей на базе SAP Hana'

Использование sapui5 при разработке приложения по анализу технико-экономических показателей на базе SAP Hana Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
651
269
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Использование sapui5 при разработке приложения по анализу технико-экономических показателей на базе SAP Hana»

Павел Васильевич Ковалишин

Я Ведущий инженер отдела инновационных проектов управления информационных технологий ОАО «Сургут-

Дмитрий Игоревич Буслов

Ведущий консультант,

ЗАО «БДО Юникон Бизнес Солюшнс»

ИСПОЛЬЗОВАНИЕ SAPUI5 ПРИ РАЗРАБОТКЕ ПРИЛОЖЕНИЯ ПО АНАЛИЗУ ТЕХНИКО-ЭКОНОМИЧЕСКИХ ПОКАЗАТЕЛЕЙ НА БАЗЕ SAP HANA

Управление жизненным циклом информационных бизнес-систем. Real-Time Enterprise 2.0

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

Бизнес-аналитика требуется в различных сферах деятельности компании — не стало исключением и управление персоналом. В настоящее время в ОАО «Сургутнефтегаз» в целях планирования расстановки численности по всем структурным подразделениям разработан программный комплекс для формирования лимитов численности. Данное программное обеспечение позволяет формировать различные варианты плана лимитов численности по всем организационным единицам всех структурных подразделений (далее по тексту — СП).

Процесс формирования лимитов численности можно в очень упрощенном виде представить следующим образом:

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

2. Далее вариант плана попадает на рассмотрение к ответственному специалисту аппарата управления ОАО «Сургутнефтегаз» (управление организации и оплаты труда), который проверяет вариант плана и либо утверждает его, либо возвращает в СП на доработку. В случае утверждения вариант плана блокируется от изменений.

3. Далее специалисты формируют сводные проекты лимитов численности, технико-экономических и оценочных показателей по ОАО «Сургутнефтегаз» в целом и в разрезе СП и предоставляют их на рассмотрение Научно-технического совета ОАО на заседании секции «Экономика, организация труда, управление производством и нормирование труда».

4. Далее утвержденный пакет документов по каждому СП передается на рассмотрение Центральной комиссии ОАО.

5. Центральная комиссия рассматривает пакет документов и выносит решение по утверждению годового лимита численности и переходящего лимита на следующий планируемый год.

В течение всего вышеописанного процесса в систему BW поступают данные для анализа по всем организационным единицам по различным версиям плана, в том числе и фактические данные (рис. 1). В итоге все полученные данные можно разбить на три группы: объемные показатели, оценочные показатели, показатели ССЧ (среднесписочной численности). Структура хранения данных в системе BW разработана с учетом интеграции с Библиотекой показателей.

Большинство крупных ИТ-проектов, реализуемых в настоящее время в информационной системе ОАО «Сургутнефтегаз» на базе систем SAP, разрабатываются с учетом интеграции с Библиотекой показателей (рис. 2).

П.В. Ковалишин, Д.И. Буслов. Использование SAPUI5 при разработке приложения У по анализу технико-экономических показателей на базе SAP HANA 'Х

Рис. 1. Поток данных в программном комплексе по формированию лимитов численности

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

Если реализация ИТ-решения предполагается на базе Библиотеки, то помимо ключевых оценочных показателей создаются также все показатели, необходимые для их расчета. Ведение Библиотеки показателей осуществляется через портальное приложение (Portal CE) с хранением данных на уровне плоских таблиц в системе SAP BW.

BW / Portal CE

Проект

Лимиты

численности

ч.

Рис. 2. Связь проекта по формированию лимитов численности с Библиотекой показателей

Управление жизненным циклом информационных бизнес-систем. Real-Time Enterprise 2.0

Библиотека показателей обеспечивает:

■ Единый центр хранения метаданных по показателям, структурирование показателей по различным параметрам: видам деятельности, логическим классам и пр.

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

■ Закрепление ответственности за конкретными должностями (ролями) по ведению (алгоритмы расчета и источники данных) и наполнению показателей данными.

■ Синхронизацию и сопоставимость данных в хранилище данных.

■ Унификацию использования показателей. Создает основу для разработки систем управления, например применение технологии BSC.

В процессе формирования и согласования лимитов численности структурных подразделений ОАО «Сургутнефтегаз» специалистам аппарата управления требуется проводить анализ значений технико-экономических показателей (далее по тексту — ТЭП) по лимитам численности в различных ракурсах (периоды, бизнессферы, версии плана и т. п.), в том числе с возможностью анализа по атрибутам показателей. Можно выделить следующие основные задачи «от бизнеса»:

■ выверка данных;

■ сравнение фактических и плановых значений показателей;

■ сравнение плановых версий;

■ анализ на основе данных библиотеки показателей;

■ поддержка принятия решения.

А также требования к ПО, реализация которых позволит выполнить требуемый анализ данных:

■ каскадная фильтрация;

■ анализ больших массивов данных (~10 млн записей);

■ графическое и табличное отображение данных;

■ сравнение фактических и плановых значений показателей;

■ иерархическое представление данных;

■ нечеткий поиск;

■ каскадная фильтрация (каждый фильтр влияет на все последующие);

■ быстрая и стабильная работа приложения;

■ удобный интуитивно-понятный интерфейс.

В процессе проектирования приложения для анализа ТЭП лимитов численности были рассмотрены различные аналитические продукты от компании SAP. Стоит более подробно остановиться на некоторых из них.

BusinessObjects Webi

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

П.В. Ковалишин, Д.И. Буслов. Использование SAPUI5 при разработке приложения У по анализу технико-экономических показателей на базе SAP HANA 'V

Web Intelligence прежде всего ориентирован на бизнес-пользователей и не требует специальных навыков (программирования, знания SQL, структуры баз данных, СУБД) при построении аналитических запросов или отчетов. Однообразие терминов и возможность использования их без участия ИТ-специалистов достигается за счет определения семантического слоя (юниверса) между пользователями и базой данных. Технология составляет основу для конечных пользователей при построении запросов и анализе данных, она сконцентрирована на бизнес-среде и позволяет использовать понятные, одинаковые для всех объекты.

BusinessObjects Explorer

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

Lumira

SAP Lumira — это программное обеспечение, предназначенное для визуализации и управления данными и поддерживающее режим point-and-click. Оно позволяет пользователям анализировать данные с помощью создания и совместного использования графической визуализации данных из нескольких источников без написания кода.

Design Studio

SAP BusinessObjects Design Studio представляет собой инструмент, помогающий создавать мобильные дашборды и другие приложения, используя HTML5. Design Studio позволяет быстро разрабатывать аналитические приложения и мониторы для веб-браузеров и мобильных устройств. Обладает обширным набором компонентов, а также простым для понимания скриптовым языком, позволяющим гибко определять взаимодействие между компонентами.

В табл. 1 приведено сравнение некоторых возможностей указанных выше продуктов на момент написания статьи.

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

Управление жизненным циклом информационных бизнес-систем. Real-Time Enterprise 2.0

Поддержка

иерархий

Поиск в фильтрах

Скорость разработки

Мобильные

устройства

Ввод данных

Кастомизация

Запуск приложения

Каскадные

фильтры

Табл. 1. Сравнение продуктов SAP

BO Webi BO Explorer Lumira Design Studio

есть (без воз- есть (только

есть (для BW) нет можности выбо- на этапе раз-

ра иерархии) работки)

есть есть (только точный) есть есть

быстро очень быстро очень быстро быстро

экспорт в BO for экспорт в BO for экспорт в BO for есть

mobile mobile mobile

нет нет есть (в HANA) только 1 запись

возможность

нет нет разработки сво- SDK (beta)

их диаграмм

с портала BO с портала BO клиент (online/ offline) с портала BO или Net Weaver

нет есть есть есть (не работа-

ют с HANA)

HANA позволяет:

■ производить обработку сложных запросов за считанные секунды;

■ параллельно выполнять несколько запросов без ущерба для производительности;

■ разрабатывать сложные прогнозные модели для нужд предприятия.

Предпосылками для разработки приложения по анализу ТЭП лимитов численности на SAP HANA стали:

■ большой объем данных (~50 млн записей);

■ сложные запросы к данным;

■ получение результатов в режиме онлайн.

Отдельное внимание стоит уделить пользовательскому

интерфейсу (User Interface, или UI). Он представляет собой совокупность элементов и компонентов программы, которые способны оказывать влияние на взаимодействие пользователя с программным обеспечением. К этим элементам можно отнести:

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

■ инструменты управления;

■ инструменты навигации;

■ визуальный дизайн экранов;

■ устройства и технологии ввода данных;

■ обратную связь (всплывающие окна, подсказки) и др.

П.В. Ковалишин, Д.И. Буслов. Использование SAPUI5 при разработке приложения S по анализу технико-экономических показателей на базе SAP HANA 'V

|Дп13270~1.140 - ihsap3 |147.204.123.5) НИЕ|

Network Edit Colors Fonts Options TermType Help

Рис. 3. R/2: Terminal Screens

Интерфейсы постоянно развиваются и совершенствуются. На рис. 3-10 представлена «историческая лестница» пользовательских интерфейсов от SAP.

SAPUI5 обеспечивает универсальность, доступность с любого устройства без дополнительной установки клиента, гибкость, скорость, возможность использовать современные стили и менять их под Brandbook (регламентированное стилевое оформление) компании — всё это уже реальность, которую привнесли веб-технологии. HTML5 и JavaScript — вот основа, на которой базируется данная библиотека.

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

Рис. 4. R/3 Version 1.0, 1.1

108

Управление жизненным циклом информационных бизнес-систем. Real-Time Enterprise 2.0

Рис. 5. R/3 Version 2, 2.1

ЕЗ ObeiFlachengestaltung: Eifassungsbild

ВВЕ

Bilder Elemente Dynamik Menugsslallung System Hills

¥■ W _ Ы 4i I 4- & X IgptJlH I О P Д e [и Ш I ?_________________________________________________________

a a a____________________________________^______________________________________________________________

Kreditor |»»712

Hnschnfti = Anrede ||

Nane I 1 1 1 Suchbegriff |

StraAe | Postfach |

Ort | Ortsteil | Postleitzahl |

Ort-Postfach | PLZ-Postfach |

Land | Region |

Sprache | Telexnumner |

Telefon-1 | Telefaxnumner |

Telefon-2 | Teletexnuminef |

Telebox | Datenleitung |

Рис. 6. R/3 Version 3, 3.1

П.В. Ковалишин, Д.И. Буслов. Использование SAPUI5 при разработке приложения по анализу технико-экономических показателей на базе SAP HANA

109

Рис. 7. R/3 Version 4

Рис. 8. R/3 Version 4.6

110 ^

Управление жизненным циклом информационных бизнес-систем. Real-Time Enterprise 2.0

Рис. 9. SAP NetWeaver Business Client

Рис. 10. SAPUI5

ствия, например, управление голосом. На конференции Google IO 2013 голосовой поиск выделялся как одно из перспективных направлений развития.

На базе стандартных компонентов, расширенных возможностями браузера Google Chrome или Chrome frame (в случае использования Internet Explorer), считываются и распознаются голосовые команды (Google API). Далее, с использованием нечеткого поиска (fuzzy search) в SAP HANA, обнаруживается наиболее «близкая» команда; после подтверждения от пользователя она выполняется. (Таким образом могут заполняться стандартные фильтры приложения.)

П.В. Ковалишин, Д.И. Буслов. Использование SAPUI5 при разработке приложения У по анализу технико-экономических показателей на базе SAP HANA 'V

То есть, если распознавание голоса от Google дополнено возможностями нечеткого поиска SAP HANA, вероятность достоверного восприятия команды существенно возрастает. Точность соответствия указывается с помощью весового коэффициента, рассчитываемого по формуле:

score = bestMatchingTokenWeight ■ max(tokenScores) + (1 — bestMatchingTokenWeight) ■

■ ^(I(tokenScorez) / (matchedTokenCount + excessTokenCount x excessTokenWeight))

Данная схема представлена как сценарий перспективного развития пользовательского интерфейса.

АРХИТЕКТУРА ПРИЛОЖЕНИЯ

Приложение для анализа показателей хозяйственной деятельности состоит из следующих компонентов:

■ Shell — оболочка веб-приложения, основной компонент;

■ FilterDialog — панель фильтров;

■ FilterBArea — фильтр бизнес-сферы;

■ FilterDFromTo — фильтр даты;

■ FilterGroup — фильтр группы наименований;

■ FilterOrgUnit — фильтр оргединиц;

■ FilterTask — фильтр задач;

■ FilterVersion — фильтр версий;

■ FilterMeasure — фильтр показателей;

■ DisplayFilters — панель выбранных фильтров;

■ Presentation — панель представления данных (таблица, графика);

■ Chart — график;

■ Table — таблица.

Shell.view

FilterDialog.view

FiLterBArea.view

FiLterOrgUnit.view

FiLterTask.view

FiLterBundLe.view

FiLterGroup.view

FilterDFromTo.view

FiLterVersion.view

/ FilterMeasure.view\/ DispLayFiLtsrs.visw\

Presentation.view

/ Chart.view \/ Table.view \

Рис. 11. Визуальное отображение

Управление жизненным циклом информационных бизнес-систем. Real-Time Enterprise 2.0

OData сервис Клиент XSJS сервисы

I_________________________________ I____

инициализация / j

I I

I Все значения фильтров,показателей i

■---------------------------------»

■_________________________________I_____I

I I

I I t______

| выбор значения фильтра"/

I I

I I Значения выбранных фильтров

1 J Актуальные значения признаков * 1 1

г* 1

1 1

выбор значения показателя / 1 1

1 1 Значения выбранных фильтров 1 1 S,

1 - Список доступных показателей 1 1

rs 1

1 1

актуализация данных графика j 1 1

1 Значения выбранных фильтров, показателей, J выбранные столбцы 1 1 1 у

1 Данные графика, таблицы 1

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

.

экспорт в Excel j 1

Значения выбранных фильтров, показателей, i выбранные столбцы 1 1 V

1 Файл Excel L* /1 1

Л 1

OData сервис Клиент XSJS сервисы

Рис. 12. Клиент-сер- Визуальное отображение интерфейса представлено

верная часть на рис. 11.

Взаимодействие клиентской и серверной части представлено на рис. 12.

В платформу SAP HANA помимо базы данных также встроен сервер приложений — HANA Extended Application Services (сокращенно HANA XS), который обеспечивает возможность создания приложений, используя фронт-энд HTML5, JavaScript, SAPUI5 (пользовательский интерфейс) и бэк-энд OData, JavaScript, XMLA, напрямую извлекая данные из HANA с использованием SQL/SQLScript.

П.В. Ковалишин, Д.И. Буслов. Использование SAPUI5 при разработке приложения У по анализу технико-экономических показателей на базе SAP HANA 'V

Рис. 13. MVC

Чтобы все приложения с использованием SAPUI5 были максимально унифицированы, понятны, удобны для разработки и поддержки, SAP рекомендует проектировать новые приложения с использованием паттерна MVC (Model-View-Controller, или Модель — Вид — Контроллер) (рис. 13).

Модель

■ Связь отображения (Вида) с данными приложения.

■ Принимает запросы от Вида и обрабатывает данные.

■ Не зависит от третьих элементов.

Вид

■ Отражает информацию на экране.

■ Зависит от Модели.

Контроллер

■ Получает информацию и связывает Модель/Вид для выполнения необходимых действий.

■ Зависит от Модели.

Унификация (возможность доступа с любого устройства), веб-доступ с использованием протокола HTTPS (удаленный безопасный доступ), новые возможности (HTML5, CSS3 и т. д.), постоянное появление и расширение уже существующих элементов управления — основные преимущества новой платформы. Поэтому использование таких платформ как SAPUI5 будет одним из ключевых направлений развития пользовательских интерфейсов, в особенности для новых систем, построенных на технологии in-memory.

Управление жизненным циклом информационных бизнес-систем. Real-Time Enterprise 2.0

ЛИТЕРАТУРА

1. SAPUI5 Developer Guide [Электронный документ]. — https://sapui5.netweaver. ondemand.com/sdk/#docs/guide/95d113be50ae40d5b0b562b84d715227.html.

2. Официальный блог Google Россия [Электронный документ]. — http:// googlerussiablog.blogspot.ru/.

3. SAP HANA Developer Guide (SP7).

4. История интерфейсов R/3 [Электронный документ]. — http://www. sapdesignguild.org/goodies/r3_history.asp.

i Надоели баннеры? Вы всегда можете отключить рекламу.