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.
Usługi:
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.
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.