Платформа для разработки кластера сервлетов

Проблема

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

Стандартный и самый на первый взгляд очевидный подход к решению этих задач, внести изменения в существующую систему, но на стадии его реализации возникают следующие препятствия:

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

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

Решение

В своих разработках, если возникает ситуация необходимости нового функционала для 1-ого пользователя из 100, мы отказались от модели постоянного обновления «большой» системы. Мы перешли на новую модель, когда под потребности этого пользователя создаётся отдельное компактное приложение. Для масштабных ERP систем группа пользователей таких приложений может доходить до сотен и даже тысяч участников. Для более точного отражения сущности и так как вся разработка базируется на Java Platform Enterprise Edition, мы предпочитаем для обозначения этого класса приложений использовать термин сервлет. Целевым критерием определяющим архитектуру разрабатываемого сервлета является в максимально короткие сроки решить поставленную задачу и обеспечить наиболее эффективный доступ к данным «большой» системы. Если, в силу сложности решаемой задачи, удаётся удовлетворить потребности пользователя только на 99%, то стоит задуматься, что для оставшегося 1% уже требуется внести изменения в «большую» систему.

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

  • мобильные интерфейсы для оперативного просмотра, ввода и обновления данных;
  • построение аналитических отчётов и графиков;
  • работа с консолидированными данными из нескольких не связанных друг с другом систем.

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

Результат

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

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

Готовая к развёртыванию у конечного заказчика платформа может предлагаться со следующим перечнем сопутствующих услуг:

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

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *