UJEDNOLICONA BAZA SZCZEPÓW BAKTERII

Oprogramowanie przetwarzające dane biologiczne

System informatyczny będący wewnętrzną bazą instytutu, centralizujący bazę danych o szczepach bakterii np. lekowrażliwość, danych statystycznych czy typowaniach genetycznych. Program pozwala na walidację wprowadzanych danych, szukanie, raportowanie, ograniczanie dostępu, import z .xls, czy integrację z zewnętrznymi systemami typowania genetycznego.

ZADANIE

Zaprojektowanie i stworzenie rozwiązania, które utworzy bazę bakterii przetwarzanych o obrębie instytutu:

  1. centralizacja bazy z wielu pofragmentowanych źródeł
  2. automatyzacja wszystkich powtarzalnych czynności
  3. zaawansowany system szukania oparty o predefiniowane filtry
  4. pełna historia wszystkich zmian w danych
  5. ograniczenia dostępu zależne od roli użytkownika i statusu przetwarzania wpisu
  6. integracja z zewnętrznymi bazami typowania genetycznego
  7. import danych do i z pliku .xslx
  8. zaawansowany model walidacyjny, chroniący spójność danych

ROZWIĄZANIE

Opracowaliśmy system informatyczny typu CRM, zaprojektowane do użycia w sieci lokalnej, przez pracowników instytutu. Użytkownicy uzyskują dostęp do systemu poprzez przeglądarkę internetową, logując się na lokalny serwer.

 

Oprogramowanie służy do przechowywania danych bakterii, w jednej centralnej bazie. Pozwala na wygodne dodawanie wpisów, wyszukiwanie, import/eksport. Aplikacja dba o spójność danych, zgodność z danymi z systemów typowania genetycznego i chroni wpisy przed nieautoryzowanym dostępem i zmianą.

ROLE

Aplikacja posiada następujące role:

  1. Administrator
  2. Lider zespołu
  3. Pracownik

które mają różne funkcję i dostępy do danych w zależności od potrzeb.

 

Pracownicy lub lider dodają wpisy dotyczące szczepów bakterii. System weryfikuje spójność, generuje standardowe wartości i ściąga najnowsze dane z systemów typowania genetycznego. Do bazy dodawany jest nowy wpis, który może być wielokrotnie uzupełniany. Po zatwierdzeniu kompletności danych wpis jest zatwierdzany i tylko lider lub administrator są w stanie go zmienić jeśli nastąpi taka konieczność.

 

Dane są dostępne na żądanie poprzez wykorzystanie wieloparametrowych filtrów, pozwalających na dowolne szukanie i sortowanie danych, co pozwala na wydajną i wygodną pracę.

PROCES

Projekt jest wykonany w technologiach opartych na języku Java. Użyte technologie Java 7, JEE, Maven, Junit, Vaadin, Hibernate, PostgreSQL, Apache POI. Do hostowania projektu została użyta usługa Git Lab, na której znajduje się repozytorium kodu, project management i system continuous integration. Instancja produkcyjna umieszczona jest na serwerze wewnętrznym instytutu.

 

Po każdej zmianie w kodzie aplikacja testowana jest automatycznie testami jednostkowymi i E2E. Ponadto wykonywana jest zautomatyzowana migracja bazy danych środowisk deweloperskich i produkcyjnego, backup bazy produkcyjnej i update stanu budowania do ogólnego wglądu. System continuous integration jest zaprojektowany z myślą o minimalizacji czasu turn-around.

WYNIK