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

← Всички проекти

Социално осигуряване (държава от ЕС, държавна програма)

Пренаписване на 30-годишна платформа за социално осигуряване

Възстановяване на бизнес правила от тридесетгодишен код и изграждането им наново като тествана система на .NET 10 и Blazor, с слой за достъп до базата, 5–10 пъти по-бърз на оптимизираните операции.

Роля
Full-stack инженер
Екип
Екип от шестима разработчици
Период
Около 2,5–3 години от шестгодишна програма
.NET 10EF CoreSQLBlazorAzureАвтоматизирани тестове4GL (изходна система)

Резултат: бизнес правила, които съществуваха само в десетилетия стар код, бяха изградени наново като структурирана кодова база с автоматизирани тестове, а операциите с базата, които оптимизирах, станаха 5–10 пъти по-бързи.

Контекст

Платформа за социално осигуряване на държава от ЕС, изградена преди около тридесет години на 4GL (език от четвърто поколение, често срещан в по-стари бизнес системи), се нуждаеше от цялостно пренаписване и нов дизайн. Програмата беше планирана за шест години. Бях част от екипа от шестима разработчици около две и половина до три от тях.

Предизвикателството

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

Какво направих

  • Работих full-stack: фронтенд с Blazor, бекенд на .NET 10 с EF Core и SQL, върху Azure услуги.
  • Помагах за възстановяването на бизнес правила от стария код и за повторната им имплементация в нова, структурирана кодова база.
  • Писах автоматизирани тестове заедно с имплементацията. Заедно с ранното тестване от клиента те бяха начинът да проверим, че новата система се държи като старата.
  • Преработих слоя за достъп до базата: оптимизирах индекси и EF Core заявки, като оптимизираните операции станаха 5–10 пъти по-бързи.

Какво научих

Когато единствената спецификация е стар код, тестовете са спецификацията. Ранното тестване от клиента и автоматизираните проверки превърнаха неписаните правила в нещо, което целият екип може да провери.