Medycyna Dania

Audyt aplikacji z planem migracji i sugestiami ulepszeń w architekturze oprogramowania

Podsumowanie

Wyzwanie: Elderlearn chciał zaprojektować architekturę aplikacji odpowiednią dla swojego projektu i potrzebował ulepszyć istniejący kod, aby umożliwić jego dalszy rozwój.

Podejście: Przeanalizowaliśmy kod źródłowy i dokonaliśmy przeglądu głównych procesów biznesowych, integracji systemów zewnętrznych, problemów i planów przyszłych zmian oraz zebraliśmy wymagania niefunkcjonalne.

Rezultat: Klient otrzymał specjalistyczną pomoc w zaprojektowaniu odpowiedniej architektury aplikacji dla projektu, planu migracji oraz raport z audytu. Nasze wnioski przedstawiliśmy w raporcie końcowym.

Spis treści

O kliencie

Elderlearn to usługa, która łączy ze sobą osoby starsze oraz imigrantów. System Elderlearn ułatwia działania pracowników asystujących seniorom przy spotkaniach z imigrantami, które są jednocześnie lekcjami języka duńskiego.

Elderlearn wspiera integrację dwóch coraz liczniejszych grup: osoby starsze pełnią rolę nauczycieli języka duńskiego, a imigranci uczą się od nich tego języka. Projekt ten przynosi ogromne korzyści społeczne i pomaga ludziom w potrzebie. Relacje, które powstają dzięki Elderlearn, mają istotny wpływ na zdrowie psychiczne i fizyczne uczestników.

Elderlearn wzmacnia więzi międzyludzkie i pomaga pokonać samotność wśród osób starszych, dzięki czemu przynosi również długofalowe korzyści: zmniejsza koszty publiczne; zapobiega tysiącom wystąpień zaburzeń somatycznych oraz setkom wystąpień zaburzeń psychicznych.

O produkcie

Twórcy Elderlearn szukali wykonawcy, który zaprojektuje odpowiednią architekturę dla aplikacji (w tym zdefiniuje warstwy i moduły), pokaże, jak istniejące funkcje można przenieść do nowej struktury w sposób bezpieczny i sprzyjający działaniom biznesowym, a także pomoże określić odpowiednie obszary graniczne.

Koniecznością okazało się poprawienie istniejącego kodu w celu jego dalszego rozwoju.

725 000

przewidywana liczba imigrantów w Danii w 2030 r

45%

przewidywany wzrost liczby osób starszych w Danii do 2060 r.

Nasza rola

Dokonaliśmy przeglądu głównych procesów biznesowych, integracji z systemami zewnętrznymi, aktualnych wyzwań (słabych punktów) i planów na kolejne zmiany. Zapoznaliśmy się też z wymaganiami niefunkcjonalnymi (np. skalowalność, wydajność i dostępność).

Analiza kodu źródłowego polegała na sprawdzeniu statusów i zależności, określeniu najczęściej modyfikowanych plików, zbadaniu struktury danych oraz wskazaniu obszarów, którymi należy zająć się w pierwszej kolejności.

Nasze odkrycia i wnioski przedstawiliśmy w raporcie końcowym, opartym na przeglądzie kodu, analizie dokumentacji oraz telekonferencjach z członkami zespołu klienta. Przygotowali oni listę zaleceń zawierającą punkty kontrolne, która pomogła nam we wdrożeniu ulepszeń i ich weryfikacji. Wszystkie te działania przeprowadziliśmy zgodnie z dobrymi praktykami tworzenia oprogramowania, by kod był zrozumiały i kompleksowy.

Audyt przeprowadzony został w pozytywnej atmosferze po obu stronach projektu, którym przyświecała wiara w społeczną wartość analizowanej aplikacji.

Współpraca z Future Processing przebiegała niezwykle gładko. Podczas tworzenia naszej aplikacji .NET współpracowaliśmy z wieloma różnymi firmami – Future Processing okazała się bez wątpienia tą najbardziej profesjonalną. Profesjonalizm Future Processing nie ograniczał się jednak do etapu przetargu i sprzedaży, ale objawiał się podczas wszystkich naszych wspólnych działań.

Pracownicy Future Processing to osoby, z którymi bezproblemowo się współpracuje –świetni, otwarci ludzie. Jesteśmy bardzo zadowoleni z rezultatów projektu i bez wahania polecamy usługi Future Processing.

Andreas Reventlow
Co-founder, Elderlearn

Główne korzyści naszej współpracy

  • Specjalistyczna pomoc w zaprojektowaniu odpowiedniej architektury aplikacji oraz udzielenie informacji na temat tego, jak dopasować istniejące funkcje do nowej struktury w bezpieczny sposób
  • Raport z audytu oparty na analizie jakości istniejącego rozwiązania oraz na przeglądzie kodu i dokumentacji, a także telekonferencjach z członkami zespołu klienta
  • Wskazówki na temat tego, co można poprawić w istniejącej architekturze i jakie zmiany wprowadzić w istniejących procesach
  • Plan migracji, sugestie dotyczące planowanej architektury, przykłady użycia zapytań w pseudokodzie (uzyskiwanie danych) oraz wykorzystania poleceń w pseudokodzie (przechowywanie danych)
  • Współpraca z naszymi doświadczonymi inżynierami i wymiana wiedzy
  • Szczegółowy audyt przeprowadzony zgodnie z harmonogramem i dopasowany do potrzeb klienta

Nasza współpraca przebiegała w miłej, przyjaznej atmosferze, na wysokim poziomie technicznym. Wszystkie pytania, które nasunęły mi się podczas audytu, znalazły szybko odpowiedzi, dzięki czemu mogłem wykonywać swoje zadania rzetelnie i bez opóźnień.
Fragmenty dokumentacji, które wymagały wyjaśnień lub poprawy, zostały przez klienta wskazane i opatrzone notatkami dotyczącymi zalecanych zmian.

Przemysław Liszka
Senior Software Developer, Future Processing

Technologie użyte w projekcie