Модернизация приложений

menu icon

Модернизация приложений

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

Что такое модернизация приложений?

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

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

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

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

Узнайте, как IBM может помочь вам успешно провести модернизацию приложений.

Зачем модернизировать устаревшие приложения?

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

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

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

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

В следующем видеоролике более подробно описываются архитектуры микросервисов:

Что такое микросервисы (06:37)

Начните модернизацию с оценки приложений

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

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

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

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

Сценарии модернизации приложений

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

От монолитных приложений до микросервисов

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

Переход от монолитных приложений к архитектуре микросервисов

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

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

Переход в облако

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

За более подробной информацией о переходе в облако обратитесь к публикации «Переход в облако: основная информация» и посмотрите следующее видео:

Что такое переход в облако (04:46)

Предоставление доступа к функциям с помощью API

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

Ключевые технологии модернизации приложений

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

Частные, гибридные и многооблачные среды

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

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

Контейнеры и Kubernetes

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

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

О контейнеризации понятным языком (08:08)

Модернизация приложений и IBM Cloud

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

Работая с IBM, вы получите доступ к оснащенным искусственным интеллектом средствам автоматизации IBM Cloud Pak for Automation, в том числе и к готовым процессам, которые помогут ускорить внедрение инноваций за счет интеллектуальной составляющей.

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

Сделайте следующий шаг:

  • Воспользуйтесь деревом решений IBM, чтобы определить, какие именно приложения следует модернизировать в первую очередь.
  • Независимо от того, требуется ли вам помощь со стратегией, процессами или функциями либо полный спектр услуг, узнайте, как IBM может помочь вам с успехом провести модернизацию приложений.
  • Начните с контейнеризованного промежуточного программного обеспечения, которое можно развернуть в любом облаке — воспользуйтесь решением IBM Cloud Pak for Automation.
  • С легкостью перенесите существующие приложения VMWare в общедоступное облако с помощью IBM Cloud for VMware Solutions.
  • Разработайте и выполните стратегии модернизации приложений в рамках текущей программы цифровой трансформации с помощью услуг IBM по модернизации приложений.
  • Получите Справочное руководство IBM по модернизации приложений и узнайте, как ускорить модернизацию, повысить продуктивность работы разработчиков, а также улучшить операционную эффективность и стандартизацию.
  • Ознакомьтесь с публикацией в блоге, посвященной продукту IBM WebSphere® Hybrid Edition, который позволяет реализовать поэтапный подход к цифровой трансформации.
  • Ознакомьтесь с отчетом HFS Research, чтобы узнать о пяти основных составляющих успешной автоматизации (внешняя ссылка).

Начните работать с учетной записью IBM Cloud уже сегодня.