Импортозамещение аналитических систем остаётся одной из наиболее трудоемких задач в корпоративной ИТ-среде. Особенно когда речь идёт о платформах уровня SAP BW/4 HANA: больших объемах данных, сложной архитектуре, множестве отчетов и строгих нефункциональных требованиях. В подобных проектах важны не только выбор стека и корректная миграция хранилища, но и организационные решения, планирование и работа с пользователями.
Всем привет! Меня зовут Михаил Синельников, я лидер кластера импортозамещения аналитической отчетности в ВТБ. Вместе с моим коллегой Владимиром Ведяковым, ИТ-лидером проекта со стороны компании «Сапиенс Солюшнс», мы описали в этой статье перенос системы аналитической отчетности SAP BW/4 HANA на импортонезависимый стек.
В этом материале представлен наш практический опыт: ключевые решения, подходы к планированию, особенности реализации и выводы, которые могут быть полезны командам, работающим с аналогичными задачами.
SAP BW/4 HANA – это единая платформа для сбора и преобразования данных из различных источников. Она легко интегрируется с другими продуктами SAP и используется для подготовки аналитической отчетности и дэшбордов. Кроме того, решение поддерживает интегрированное планирование для облегчения разработки приложений, требующих ручного ввода. Долгое время выбор этой импортной платформы в качестве технологического решения для систем аналитической отчетности был очень распространенным.
Таким образом, задача импортозамещения системы аналитической отчетности, построенной на SAP BW/4 HANA сложна и амбициозна.
Тем не менее, ряд важных предпосылок потребовали решения этой задачи. Среди них:
На целевой стек требуется мигрировать систему, содержащую 293 отчета (193 аналитических отчета, 66 форм ввода и 28 дэшбордов). Данные загружаются из 14 исходных систем, при этом ключевыми исходными системами являются SAP S/4 (модули FI-FM, FI-AA, MM, RE, CO) и SAP HCM (PA, PP). Хранилище данных для отчетности состоит из ~1000 ADSO, ~1500 CV, ~1600 трансформаций и построено с применением архитектурного подхода LSA++.
LSA++ (Layered Scalable Architecture++) – расширенная версия многоуровневой масштабируемой архитектуры. Хранилища, построенные таким образом, логически делятся на уровни, среди которых можно выделить уровень сбора данных, уровень распространения, уровень отчетных витрин, уровень виртуализации и т.д. Во время загрузки данные копируются с уровня на уровень, постепенно трансформируясь к оптимальному для использования в отчетах виду.
a. Выбор компонентов целевого импортонезависимого решения
При выборе технологического стека мы руководствовались следующими предпосылками:
Учитывая это, мы отдали предпочтение специализированным компонентам, а не универсальному платформенному решению. Итоговый стек получился таким:
Рисунок 1. Архитектура AS IS и TO BE
Лайфхак: Использование специализированных (в т.ч. Open source) компонентов оправдано в том случае, если нет универсального платформенного решения, удовлетворяющего всем требованиям. Компоненты с открытым кодом можно самостоятельно доработать командой проекта с учетом требований к целевому решению и без оглядки на дорожную карту той или иной проприетарной платформы.
b. Планирование сроков
Самый простой для изложения пункт и самый сложный для выполнения: сроки определены верхнеуровневыми дедлайнами. Основным и самым амбициозным из таких дедлайнов являлся отказ от продуктов Microsoft (Windows и Excel).
В проекте предполагалось, что пользователи системы увидят отчеты на целевом стеке гораздо раньше окончания работ по миграции хранилища данных для этих отчетов. Абсурд и утопия или скрытая возможность сделать лучше? Разберемся далее.
c. Планирование объема работ
На фазе подготовки проекта мы сделали небольшой пилот, в рамках которого перевели несколько объектов каждого типа на целевой стек. Результатом этого пилота стали два знания:
После этого осталось лишь посчитать количество активных объектов каждого типа в импортозамещаемой системе и общую трудоемкость миграции:
Tобщ = K1*Q1 + K2*Q2 + … + Kn*Qn
где:
Q1 – Qn – количество объектов, подлежащих импортозамещению по типам;K1 – Kn – коэффициент пересчета каждого объекта в трудодни, полученный в результате пилотирования.Лайфхак: При планировании объема важно учитывать ключевую особенность проектов импортозамещения – нам уже известно то, что должно получиться в конце. Функциональные и нефункциональные бизнес-требования определены. Для системы отчетности определена требуемая структура отчетных витрин и поля отчетов. Это знание можно и нужно использовать при планировании и проведении работ.
d. Организация команды
При планировании команды мы думали о том, что:
Для внедрения «с нуля» задача сделать отчеты раньше хранилища была бы нерешаемой, но в нашем случае мы знали, что должно получиться в конце. Кроме того, исходное хранилище строго разделено по слоям (LSA++). Учитывая это, мы условно разделили хранилище на две части: от источника до уровня распределения и от уровня распределения до отчета, и сконфигурировали команды проекта таким образом, что они отвечали за свою «половину» хранилища.
Рисунок 2. Организация команды
Такая конфигурация позволила каждой команде заниматься разработкой в рамках своих компонентов, а общая длительность проекта сократилась вдвое в сравнении с классическим внедрением от источника до отчета. Еще одним важным следствием стало то, что мы смогли уложиться в дедлайн, связанный с отказом от Excel, а пользователи системы увидели целевые отчеты задолго до окончания проекта. Это в свою очередь, обеспечило длительную стабилизацию.
Примечание: вдумчивый читатель спросит о том, как же в целевых отчетах оказались данные, если хранилище еще не готово. Ответом на этот вопрос стала временная архитектура системы. В промежуточном решении все интеграции были настроены в SAP BW/4 HANA, там же остались все преобразования от источника до уровня распределения, связанные с очисткой и гомогенизацией.
А данные из витрин уровня распределения и мастер-данные загружались в Arenadata DB с помощью PXF (Platform Extension Framework) – фреймворка, обеспечивающего параллельный высокопроизводительный доступ к данным из внешних источников.
Рисунок 3. Промежуточная архитектура
После определения сроков, скоупа и команды мы составили дорожную карту проекта.
Рисунок 4. Дорожная карта импортозамещения
Команды последовательно приступают к работам:
Второй фактор, влияющий на приоритет, – наличие активных задач доработки в исходной системе – если импортозамещаемый отчет дорабатывается, то мы вынуждены будем догонять те разработки, которые команда сопровождения внесет, таким образом бэклог импортозамещения должен быть соотнесен с бэклогом третьей линии поддержки с целью минимизации повторных доработок отчетов.
Каждая фаза разработки фич Superset и каждая фаза разработки отчетности должна заканчиваться приемо-сдаточными испытаниями.
В проект была заложена длительная стабилизация как для фич Superset, так и для отчетов.
По нашему убеждению, длительная стабилизация в таких проектах – необходимый элемент для достижения результата, так как в независимости от качества работ проектной команды, новизна решения и кардинально изменившийся пользовательский опыт неизбежно приведут к серьезному сопротивлению конечных пользователей. Это сопротивление непреодолимо в том случае, если пользователи увидят новые отчеты незадолго до завершения проектных работ. Напротив, длительная стабилизация позволяет:
Рисунок 5. Дорожная карта импортозамещения - vs Стадии горевания
f. План коммуникаций с заказчиком
В этом месте уместно написать несколько слов о коммуникациях с бизнес-заказчиком. Наш опыт говорит о том, что крайние позиции команды проекта по отношению к бизнес-пользователям («закрыться в бункере и выйти из него к дедлайну» или «максимально вовлекать бизнес-заказчика во все процессы») содержат риски.
В первом случае риск связан с неприятием и непринятием конечного результата, «упавшего» на заказчика «как снег на голову». Во втором – с утратой автономности команды и ее отвлечения от первичной задачи на понятные бизнесу задачи по кастомизации формы стрелочек на графике или перекрашивания элементов интерфейса.
Мы привлекали заказчика для:
Мы не привлекали заказчика для:
Лайфхак: для проекта импортозамещения при планировании коммуникаций важно учитывать, что он одновременно и технологический, и бизнес-ориентированный. В таких проектах пространство решений для хорошей коммуникации находится между «закрытым» и «открытым» полюсами. Вовлечение заказчика должно быть необходимым и достаточным для выполнения целей проекта. При этом для прозрачности необходимо составлять и согласовывать план коммуникации.
Мы добились поставленных результатов, завершив проект. Весь скоуп проекта выполнен с соблюдением первоначально определенных параметров по срокам и бюджету.
Результатом проекта стала импортонезависимая система, включающая:
В новой системе обеспечена поддержка ключевых бизнес-процессов формирования управленческой отчетности для внутрихозяйственной деятельности ВТБ, включая отчеты по расходам Сети банка, ИТ, а также отчетности для департамента по работе с персоналом. Обеспечен бесшовный переход на новый стек для 750+ пользователей отчетности.
Завершая статью, авторы хотели бы поблагодарить команду проекта и всех его стейкхолдеров. Это было славное путешествие и для нас было честью двигаться вместе с вами.
Источник: оригинальная статья на Habr.
Импортозамещение аналитических систем остаётся одной из наиболее трудоемких задач в корпоративной ИТ-среде. Особенно когда речь идёт о платформах уровня SAP BW/4 HANA: больших объемах данных, сложной архитектуре, множестве отчетов и строгих нефункциональных требованиях. В подобных проектах важны не только выбор стека и корректная миграция хранилища, но и организационные решения, планирование и работа с пользователями.
Всем привет! Меня зовут Михаил Синельников, я лидер кластера импортозамещения аналитической отчетности в ВТБ. Вместе с моим коллегой Владимиром Ведяковым, ИТ-лидером проекта со стороны компании «Сапиенс Солюшнс», мы описали в этой статье перенос системы аналитической отчетности SAP BW/4 HANA на импортонезависимый стек.
В этом материале представлен наш практический опыт: ключевые решения, подходы к планированию, особенности реализации и выводы, которые могут быть полезны командам, работающим с аналогичными задачами.
SAP BW/4 HANA – это единая платформа для сбора и преобразования данных из различных источников. Она легко интегрируется с другими продуктами SAP и используется для подготовки аналитической отчетности и дэшбордов. Кроме того, решение поддерживает интегрированное планирование для облегчения разработки приложений, требующих ручного ввода. Долгое время выбор этой импортной платформы в качестве технологического решения для систем аналитической отчетности был очень распространенным.
Таким образом, задача импортозамещения системы аналитической отчетности, построенной на SAP BW/4 HANA сложна и амбициозна.
Тем не менее, ряд важных предпосылок потребовали решения этой задачи. Среди них:
На целевой стек требуется мигрировать систему, содержащую 293 отчета (193 аналитических отчета, 66 форм ввода и 28 дэшбордов). Данные загружаются из 14 исходных систем, при этом ключевыми исходными системами являются SAP S/4 (модули FI-FM, FI-AA, MM, RE, CO) и SAP HCM (PA, PP). Хранилище данных для отчетности состоит из ~1000 ADSO, ~1500 CV, ~1600 трансформаций и построено с применением архитектурного подхода LSA++.
LSA++ (Layered Scalable Architecture++) – расширенная версия многоуровневой масштабируемой архитектуры. Хранилища, построенные таким образом, логически делятся на уровни, среди которых можно выделить уровень сбора данных, уровень распространения, уровень отчетных витрин, уровень виртуализации и т.д. Во время загрузки данные копируются с уровня на уровень, постепенно трансформируясь к оптимальному для использования в отчетах виду.
a. Выбор компонентов целевого импортонезависимого решения
При выборе технологического стека мы руководствовались следующими предпосылками:
Учитывая это, мы отдали предпочтение специализированным компонентам, а не универсальному платформенному решению. Итоговый стек получился таким:
Рисунок 1. Архитектура AS IS и TO BE
Лайфхак: Использование специализированных (в т.ч. Open source) компонентов оправдано в том случае, если нет универсального платформенного решения, удовлетворяющего всем требованиям. Компоненты с открытым кодом можно самостоятельно доработать командой проекта с учетом требований к целевому решению и без оглядки на дорожную карту той или иной проприетарной платформы.
b. Планирование сроков
Самый простой для изложения пункт и самый сложный для выполнения: сроки определены верхнеуровневыми дедлайнами. Основным и самым амбициозным из таких дедлайнов являлся отказ от продуктов Microsoft (Windows и Excel).
В проекте предполагалось, что пользователи системы увидят отчеты на целевом стеке гораздо раньше окончания работ по миграции хранилища данных для этих отчетов. Абсурд и утопия или скрытая возможность сделать лучше? Разберемся далее.
c. Планирование объема работ
На фазе подготовки проекта мы сделали небольшой пилот, в рамках которого перевели несколько объектов каждого типа на целевой стек. Результатом этого пилота стали два знания:
После этого осталось лишь посчитать количество активных объектов каждого типа в импортозамещаемой системе и общую трудоемкость миграции:
Tобщ = K1*Q1 + K2*Q2 + … + Kn*Qn
где:
Q1 – Qn – количество объектов, подлежащих импортозамещению по типам;K1 – Kn – коэффициент пересчета каждого объекта в трудодни, полученный в результате пилотирования.Лайфхак: При планировании объема важно учитывать ключевую особенность проектов импортозамещения – нам уже известно то, что должно получиться в конце. Функциональные и нефункциональные бизнес-требования определены. Для системы отчетности определена требуемая структура отчетных витрин и поля отчетов. Это знание можно и нужно использовать при планировании и проведении работ.
d. Организация команды
При планировании команды мы думали о том, что:
Для внедрения «с нуля» задача сделать отчеты раньше хранилища была бы нерешаемой, но в нашем случае мы знали, что должно получиться в конце. Кроме того, исходное хранилище строго разделено по слоям (LSA++). Учитывая это, мы условно разделили хранилище на две части: от источника до уровня распределения и от уровня распределения до отчета, и сконфигурировали команды проекта таким образом, что они отвечали за свою «половину» хранилища.
Рисунок 2. Организация команды
Такая конфигурация позволила каждой команде заниматься разработкой в рамках своих компонентов, а общая длительность проекта сократилась вдвое в сравнении с классическим внедрением от источника до отчета. Еще одним важным следствием стало то, что мы смогли уложиться в дедлайн, связанный с отказом от Excel, а пользователи системы увидели целевые отчеты задолго до окончания проекта. Это в свою очередь, обеспечило длительную стабилизацию.
Примечание: вдумчивый читатель спросит о том, как же в целевых отчетах оказались данные, если хранилище еще не готово. Ответом на этот вопрос стала временная архитектура системы. В промежуточном решении все интеграции были настроены в SAP BW/4 HANA, там же остались все преобразования от источника до уровня распределения, связанные с очисткой и гомогенизацией.
А данные из витрин уровня распределения и мастер-данные загружались в Arenadata DB с помощью PXF (Platform Extension Framework) – фреймворка, обеспечивающего параллельный высокопроизводительный доступ к данным из внешних источников.
Рисунок 3. Промежуточная архитектура
После определения сроков, скоупа и команды мы составили дорожную карту проекта.
Рисунок 4. Дорожная карта импортозамещения
Команды последовательно приступают к работам:
Второй фактор, влияющий на приоритет, – наличие активных задач доработки в исходной системе – если импортозамещаемый отчет дорабатывается, то мы вынуждены будем догонять те разработки, которые команда сопровождения внесет, таким образом бэклог импортозамещения должен быть соотнесен с бэклогом третьей линии поддержки с целью минимизации повторных доработок отчетов.
Каждая фаза разработки фич Superset и каждая фаза разработки отчетности должна заканчиваться приемо-сдаточными испытаниями.
В проект была заложена длительная стабилизация как для фич Superset, так и для отчетов.
По нашему убеждению, длительная стабилизация в таких проектах – необходимый элемент для достижения результата, так как в независимости от качества работ проектной команды, новизна решения и кардинально изменившийся пользовательский опыт неизбежно приведут к серьезному сопротивлению конечных пользователей. Это сопротивление непреодолимо в том случае, если пользователи увидят новые отчеты незадолго до завершения проектных работ. Напротив, длительная стабилизация позволяет:
Рисунок 5. Дорожная карта импортозамещения - vs Стадии горевания
f. План коммуникаций с заказчиком
В этом месте уместно написать несколько слов о коммуникациях с бизнес-заказчиком. Наш опыт говорит о том, что крайние позиции команды проекта по отношению к бизнес-пользователям («закрыться в бункере и выйти из него к дедлайну» или «максимально вовлекать бизнес-заказчика во все процессы») содержат риски.
В первом случае риск связан с неприятием и непринятием конечного результата, «упавшего» на заказчика «как снег на голову». Во втором – с утратой автономности команды и ее отвлечения от первичной задачи на понятные бизнесу задачи по кастомизации формы стрелочек на графике или перекрашивания элементов интерфейса.
Мы привлекали заказчика для:
Мы не привлекали заказчика для:
Лайфхак: для проекта импортозамещения при планировании коммуникаций важно учитывать, что он одновременно и технологический, и бизнес-ориентированный. В таких проектах пространство решений для хорошей коммуникации находится между «закрытым» и «открытым» полюсами. Вовлечение заказчика должно быть необходимым и достаточным для выполнения целей проекта. При этом для прозрачности необходимо составлять и согласовывать план коммуникации.
Мы добились поставленных результатов, завершив проект. Весь скоуп проекта выполнен с соблюдением первоначально определенных параметров по срокам и бюджету.
Результатом проекта стала импортонезависимая система, включающая:
В новой системе обеспечена поддержка ключевых бизнес-процессов формирования управленческой отчетности для внутрихозяйственной деятельности ВТБ, включая отчеты по расходам Сети банка, ИТ, а также отчетности для департамента по работе с персоналом. Обеспечен бесшовный переход на новый стек для 750+ пользователей отчетности.
Завершая статью, авторы хотели бы поблагодарить команду проекта и всех его стейкхолдеров. Это было славное путешествие и для нас было честью двигаться вместе с вами.
Источник: оригинальная статья на Habr.