Nazwa projektu

Poprawa produktywności systemu poprzez refaktoryzację

Branża

edukacyjna

Klient

Education First jest ogólnoświatowym liderem z branży edukacyjnej, który od ponad 50 lat oferuje przełomowe możliwości w zakresie nauki języków obcych dla osób w każdym wieku, różnych narodowości i środowisk. Firma posiada ponad 600 biur w ponad 60 krajach na wszystkich kontynentach.

layout docs

Wyzwania

Bardzo często, w systemach informatycznych, wraz ze wzrostem ilości funkcjonalności rośnie także trudność dodawania nowych. System staje się coraz cięższy w utrzymaniu i rozwoju, a koszty utrzymania zaczynają przekraczać koszty wprowadzania nowych funkcjonalności.

Tego typu sytuacje najczęściej są bardzo złym znakiem wskazującym na duże problemy w systemie. Jedynym ze sposobów podnoszenia produktywności jest wprowadzenie do zakresu projektu fazy refaktoryzacji - czyli iteracyjnej modyfikacji kodu, która nie powoduje zmian funkcjonalnych. Celem procesu refaktoryzacji jest poprawienie atrybutów jakościowych systemu, takich jak łatwość utrzymania, rozszerzalność, wydajność, skalowalność, obserwowalność oraz elastyczność.

Rozwiązania

Wysokie wymagania wymuszały szeroki zakres zmian w architekturze systemu.

Do procesu wytwarzania wprowadzono standardy kodowania, wymóg pisania dobrej jakości testów jednostkowych, proces statycznej analizy kodu oraz peer review.

Przygotowano plan priorytetyzujący te zadania, które wymagały najmniejszej ilości pracy dając jednocześnie najlepsze rezultaty. W każdym sprincie wprowadzano od 10 do 30% zadań technicznych w taki sposób, aby nie kolidowały z implementacją nowych wymagań biznesowych.

Efekty

Szybkość i wydajność systemu
Zbudowano moduł ułatwiający optymalizowanie wykonywania funkcjonalności oraz redukujący ilość operacji bazodanowych. Zredukowano ilość cyklicznych zależności w logice oraz przeniesiono większość funkcjonalności z wolnych Process Builderów do kodu w triggerach.

Skalowalność
Wprowadzono moduł naśladujący działanie Messaging Queues oparty o Salesforce Platform Events, który umożliwia kolejkowanie zadań oraz ich ponowne przetwarzanie w przypadku wystąpienia błędów. Zastosowano także generyczny mechanizm wywołań asynchronicznych kodu, umożliwiający dynamiczny dobór odpowiedniej strategii w zależności od kontekstu wywołania (np. kod wykonywany podczas pracy użytkownika systemu wykonywany jest synchronicznie, ale te same funkcjonalności dla procesów integracyjnych wykonywane są asynchronicznie).

Obserwowalność
Wprowadzono mechanizmy logowania błędów oraz śledzenia ilości i szybkości wywołań asynchronicznych, stanu kolejek systemowych, limitów platformy i stanu głównych procesów automatycznych w systemie. Pojawiła się możliwość tworzenia raportów i dashboardów pokazujących co aktualnie dzieje się w systemie od strony technicznej. Zastosowano także notyfikacje mailowe na temat niepoprawnego działania systemu.

Rozszerzalność i elastyczność
Podczas procesu refaktoryzacji większość kodu została rozbita na małe, proste klasy, przy jednoczesnej dbałości o utrzymanie odpowiednich zależności i zakresu odpowiedzialności. Wiele konfiguracji wyniesiono do Custom Settings oraz Custom Metadata. Stosując wzorzec Feature Toggle, Britenet sprawił, że praktycznie każda funkcjonalność może zostać dezaktywowana z poziomu administratora.

Łatwość utrzymania
Zwiększono liczbę testów jednostkowych (z 200 do 1700). W efekcie zbudowano dobrze przetestowane i stabilne narzędzia, na których oparto logikę biznesową. Poprawiono jakość kodu redukując dług techniczny wskazany przez narzędzie statycznej analizy kodu (z 22k do 3k). Znacząco zmniejszono zużycie limitów platformy (np, daily async apex limit z około 800k do 100k, daily api calls limit z około 1 500k do 600k).

Nowa odsłona systemu do rezerwacji

Umożliwiliśmy przeniesienie procesu dokonywania rezerwacji ze starego systemu na platformę Salesforce, przy zachowaniu wszystkich elementów interfejsu i poprawie jego użyteczności.

EducationSalesforceUX
Zobacz więcej

Autorski system CRM dla firmy zielona-energia.com

Wdrożyliśmy CRM w firmie zielona-energia.com, który usprawnia pracę całego zespołu oraz komunikację, zwiększa jakość przesyłanych informacji oraz umożliwia zarządzanie sprzedażą.

EnergeticsJavaSystem Development
Zobacz więcej

Wyższy poziom w zarządzaniu dzięki wdrożeniu Salesforce

Wdrożyliśmy Salesforce Nonprofit Success Pack CRM dla Instytutu Humanites, dzięki któremu klient wszedł na wyższy poziom w zarządzaniu danymi kontrahentów, projektów i finansów.

OPPSalesforceSystem Development
Zobacz więcej
  • Nowa odsłona systemu do rezerwacji

    Umożliwiliśmy przeniesienie procesu dokonywania rezerwacji ze starego systemu na platformę Salesforce, przy zachowaniu wszystkich elementów interfejsu i poprawie jego użyteczności.

    EducationSalesforceUX
    Zobacz więcej
  • Autorski system CRM dla firmy zielona-energia.com

    Wdrożyliśmy CRM w firmie zielona-energia.com, który usprawnia pracę całego zespołu oraz komunikację, zwiększa jakość przesyłanych informacji oraz umożliwia zarządzanie sprzedażą.

    EnergeticsJavaSystem Development
    Zobacz więcej
  • Wyższy poziom w zarządzaniu dzięki wdrożeniu Salesforce

    Wdrożyliśmy Salesforce Nonprofit Success Pack CRM dla Instytutu Humanites, dzięki któremu klient wszedł na wyższy poziom w zarządzaniu danymi kontrahentów, projektów i finansów.

    OPPSalesforceSystem Development
    Zobacz więcej
  • Nowa odsłona systemu do rezerwacji

    Umożliwiliśmy przeniesienie procesu dokonywania rezerwacji ze starego systemu na platformę Salesforce, przy zachowaniu wszystkich elementów interfejsu i poprawie jego użyteczności.

    EducationSalesforceUX
    Zobacz więcej
  • Autorski system CRM dla firmy zielona-energia.com

    Wdrożyliśmy CRM w firmie zielona-energia.com, który usprawnia pracę całego zespołu oraz komunikację, zwiększa jakość przesyłanych informacji oraz umożliwia zarządzanie sprzedażą.

    EnergeticsJavaSystem Development
    Zobacz więcej
  • Wyższy poziom w zarządzaniu dzięki wdrożeniu Salesforce

    Wdrożyliśmy Salesforce Nonprofit Success Pack CRM dla Instytutu Humanites, dzięki któremu klient wszedł na wyższy poziom w zarządzaniu danymi kontrahentów, projektów i finansów.

    OPPSalesforceSystem Development
    Zobacz więcej
  • Nowa odsłona systemu do rezerwacji

    Umożliwiliśmy przeniesienie procesu dokonywania rezerwacji ze starego systemu na platformę Salesforce, przy zachowaniu wszystkich elementów interfejsu i poprawie jego użyteczności.

    EducationSalesforceUX
    Zobacz więcej
  • Autorski system CRM dla firmy zielona-energia.com

    Wdrożyliśmy CRM w firmie zielona-energia.com, który usprawnia pracę całego zespołu oraz komunikację, zwiększa jakość przesyłanych informacji oraz umożliwia zarządzanie sprzedażą.

    EnergeticsJavaSystem Development
    Zobacz więcej
  • Wyższy poziom w zarządzaniu dzięki wdrożeniu Salesforce

    Wdrożyliśmy Salesforce Nonprofit Success Pack CRM dla Instytutu Humanites, dzięki któremu klient wszedł na wyższy poziom w zarządzaniu danymi kontrahentów, projektów i finansów.

    OPPSalesforceSystem Development
    Zobacz więcej
  • Nowa odsłona systemu do rezerwacji

    Umożliwiliśmy przeniesienie procesu dokonywania rezerwacji ze starego systemu na platformę Salesforce, przy zachowaniu wszystkich elementów interfejsu i poprawie jego użyteczności.

    EducationSalesforceUX
    Zobacz więcej
  • Autorski system CRM dla firmy zielona-energia.com

    Wdrożyliśmy CRM w firmie zielona-energia.com, który usprawnia pracę całego zespołu oraz komunikację, zwiększa jakość przesyłanych informacji oraz umożliwia zarządzanie sprzedażą.

    EnergeticsJavaSystem Development
    Zobacz więcej
  • Wyższy poziom w zarządzaniu dzięki wdrożeniu Salesforce

    Wdrożyliśmy Salesforce Nonprofit Success Pack CRM dla Instytutu Humanites, dzięki któremu klient wszedł na wyższy poziom w zarządzaniu danymi kontrahentów, projektów i finansów.

    OPPSalesforceSystem Development
    Zobacz więcej
  • Nowa odsłona systemu do rezerwacji

    Umożliwiliśmy przeniesienie procesu dokonywania rezerwacji ze starego systemu na platformę Salesforce, przy zachowaniu wszystkich elementów interfejsu i poprawie jego użyteczności.

    EducationSalesforceUX
    Zobacz więcej
  • Autorski system CRM dla firmy zielona-energia.com

    Wdrożyliśmy CRM w firmie zielona-energia.com, który usprawnia pracę całego zespołu oraz komunikację, zwiększa jakość przesyłanych informacji oraz umożliwia zarządzanie sprzedażą.

    EnergeticsJavaSystem Development
    Zobacz więcej
  • Wyższy poziom w zarządzaniu dzięki wdrożeniu Salesforce

    Wdrożyliśmy Salesforce Nonprofit Success Pack CRM dla Instytutu Humanites, dzięki któremu klient wszedł na wyższy poziom w zarządzaniu danymi kontrahentów, projektów i finansów.

    OPPSalesforceSystem Development
    Zobacz więcej
  • Nowa odsłona systemu do rezerwacji

    Umożliwiliśmy przeniesienie procesu dokonywania rezerwacji ze starego systemu na platformę Salesforce, przy zachowaniu wszystkich elementów interfejsu i poprawie jego użyteczności.

    EducationSalesforceUX
    Zobacz więcej
  • Autorski system CRM dla firmy zielona-energia.com

    Wdrożyliśmy CRM w firmie zielona-energia.com, który usprawnia pracę całego zespołu oraz komunikację, zwiększa jakość przesyłanych informacji oraz umożliwia zarządzanie sprzedażą.

    EnergeticsJavaSystem Development
    Zobacz więcej
  • Wyższy poziom w zarządzaniu dzięki wdrożeniu Salesforce

    Wdrożyliśmy Salesforce Nonprofit Success Pack CRM dla Instytutu Humanites, dzięki któremu klient wszedł na wyższy poziom w zarządzaniu danymi kontrahentów, projektów i finansów.

    OPPSalesforceSystem Development
    Zobacz więcej
  • Nowa odsłona systemu do rezerwacji

    Umożliwiliśmy przeniesienie procesu dokonywania rezerwacji ze starego systemu na platformę Salesforce, przy zachowaniu wszystkich elementów interfejsu i poprawie jego użyteczności.

    EducationSalesforceUX
    Zobacz więcej
  • Autorski system CRM dla firmy zielona-energia.com

    Wdrożyliśmy CRM w firmie zielona-energia.com, który usprawnia pracę całego zespołu oraz komunikację, zwiększa jakość przesyłanych informacji oraz umożliwia zarządzanie sprzedażą.

    EnergeticsJavaSystem Development
    Zobacz więcej
  • Wyższy poziom w zarządzaniu dzięki wdrożeniu Salesforce

    Wdrożyliśmy Salesforce Nonprofit Success Pack CRM dla Instytutu Humanites, dzięki któremu klient wszedł na wyższy poziom w zarządzaniu danymi kontrahentów, projektów i finansów.

    OPPSalesforceSystem Development
    Zobacz więcej
Ta strona korzysta z plików cookies w celach statystycznych, reklamowych oraz funkcjonalnych. Dalsze korzystanie ze strony oznacza zgodę na ich użycie.
Akceptuję