Модернизация на софтуер стъпка по стъпка.

Обновяваме старите системи, от които зависи бизнесът ви: програми на Access, Delphi, Visual Basic, стар PHP или .NET Framework. Подменяме ги част по част, докато всичко продължава да работи. Така не спирате нито ден, а правилата, вградени в стария код, не се губят.

Пример: стара система от осем модула се подменя на етапи. Фасада пред нея насочва всяка заявка към старата или към новата част, така че работата не спира нито ден. Изберете етап, за да видите кои модули вече са подменени.

ПримерСтара система, подменена на етапи

Потребителите работят както предиРаботата не спира
  • Отчети: Нов модул
  • Клиенти: Нов модул
  • Поръчки: Нов модул
  • Цени: Нов модул
  • Доставки: Нов модул
  • Склад: Стар код
  • Фактури: Стар код
  • Потребители: Стар код

5 от 8 модула са подменени

Повечето работа вече минава през новата система. Старата поема само останалото.

Етап на модернизацията

Пренаписване или ремонт: как решаваме

Старата система обикновено не е лоша. Работила е години и в нея са вградени правилата на бизнеса ви. Проблемът е, че всяка промяна става все по-скъпа, знанието е в главата на един човек или технологията вече не получава обновления за сигурност.

Пълното пренаписване наведнъж е най-рисковият път: месеци без видим резултат и един голям ден на превключване. Затова предпочитаме постепенната подмяна. Новата система расте около старата и поема функциите ѝ една по една, докато старата може да бъде изключена спокойно. Понякога правилният отговор е друг: само поддръжка и обновяване на най-рисковите части. Ще ви кажем кой е вашият случай.

Кога ни търсят

Четирите ситуации, в които модернизацията носи най-голяма полза.

  1. 01

    Одит на стара система

    Преглеждаме кода, данните и инфраструктурата и ви казваме откровено в какво състояние са: какво е рисковано, какво може да почака и колко ще струва всеки вариант.

  2. 02

    Миграция към съвременна технология

    От настолни програми на Access, Delphi или Visual Basic към уеб или съвременно десктоп приложение, от .NET Framework към актуален .NET, с пренасяне и проверка на всички данни.

  3. 03

    Спасяване на проект в беда

    Проект, който закъснява, е изоставен от предишния изпълнител или никой не смее да го пипне: поемаме го, стабилизираме го и го връщаме в ред.

  4. 04

    Поддръжка на стара система

    Когато пълната модернизация не е оправдана, поддържаме системата сигурна и работеща, обновяваме зависимостите ѝ и подменяме най-проблемните части по план.

Как подменяме, без да спира работата

Новата система расте около старата и поема функциите ѝ една по една, а потребителите работят както преди.

  1. 01

    Одит

    Код, данни, инфраструктура и хората, които работят със системата. Как работи наистина, а не как е описана.

  2. 02

    Предпазна мрежа

    Автоматични тестове, които записват днешното поведение на системата. Всяка промяна се проверява срещу тях.

  3. 03

    Фасада

    Слой пред старата система, който насочва всяка заявка към старата или към новата част. Потребителите не усещат разликата.

  4. 04

    Подмяна модул по модул

    Започваме от частта с най-голяма полза или най-голям риск. Всеки етап работи, преди да започне следващият.

  5. 05

    Изключване на старото

    Когато и последният модул е подменен и данните са сверени, старата система се изключва. Спокойно и по план.

Какво получавате

  • Технически одит и план по приоритети
  • Автоматични тестове около критичните функции
  • Пренесени и сверени данни
  • Нова система, пусната на етапи
  • Документация, каквато старата никога не е имала
  • Обучение на екипа ви и поддръжка

От какво и към какво

Четем стария код, за да извадим правилата, вградени в него, и ги пренасяме в технологии с дълъг живот.

Стари технологии
  • Access
  • Delphi
  • Visual Basic 6
  • Стар PHP
  • .NET Framework

Технологиите, на които са написани много от системите, които работят и днес.

Съвременни технологии
  • .NET
  • TypeScript
  • React
  • Python
  • PostgreSQL

Активно поддържани технологии с голяма общност, за да не се повтори проблемът след десет години.

Методи
  • Постепенна подмяна
  • Автоматични тестове
  • Сверка на данни
  • Функционални флагове

Функционалният флаг включва нова функция за част от потребителите и я изключва с едно действие, ако нещо не е наред.

Инфраструктура
  • Docker
  • Azure
  • AWS
  • Linux

Новата система може да остане на вашите сървъри или да се премести в облака, когато е готова.

Въпроси за модернизацията

По-добре ли е да пренапишем всичко от нулата?

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

Колко време отнема модернизацията?

Одитът обикновено отнема една до две седмици. Самата модернизация върви на етапи от по няколко седмици, всеки с работещ резултат. Общата продължителност зависи от размера на системата и я виждате в плана след одита.

Какво става с данните ни?

Пренасяме ги с автоматични скриптове и ги сверяваме: брой записи, суми и контролни проверки. Старите данни остават достъпни, докато не сте сигурни в новите.

Програмистът ни напусна и никой не познава системата. Можете ли да помогнете?

Да, това е често срещана ситуация. Започваме с одит, документираме как работи системата и поставяме автоматични тестове около най-важните ѝ функции. След това поддръжката и промените отново са безопасни.

Ще трябва ли екипът ни да учи нова система?

Запазваме познатите работни процеси там, където работят, и подобряваме тези, които пречат. Промените идват постепенно, с обучение на всеки етап, а не всички в един ден.

Можете ли само да поддържате старата система?

Да. Когато модернизацията още не е оправдана, поддържаме системата сигурна и работеща, обновяваме това, което може да бъде обновено, и ви казваме навреме, когато поддръжката започне да струва повече от подмяната.

Да започнем с одит.

Поискайте одит на системата

Предпочитате разговор?

Говорете с инженер, не с търговец.

+359 884 139 349пон.-пет., 9:00-18:00 ч.
Обадете сеЗапочнете проект