Projekt
Końcowy projekt wymagania:
Stworzenie aplikacji serwerowej oraz niezależnego klienta wykorzystujących REST API.
Aplikacja serwerowa powinna udostępniać utworzony wcześniej model danych w zakresie : dodawania, usuwania, edytowania, wyszukiwania (wylistowania) obiektów z bazy danych. Wszelkie założenia co do modelu danych opisanych dla przyrostu II obowiązują nadal. - 10 pkt
Dodatkowo aplikacja powinna posiadać endpointy udostępniające dla każdej tabeli jedną prostą statystykę : liczbę elementów, zbiór kategorii (jeżeli ma sens), średnią (jeżeli ma sens), najlepszy zespół (jeżeli ma sens) etc. - 10 pkt
Aplikacja serwerowa musi korzystać z silnika bazy danych takiego jak PostgreSQL, MySQL, MSSQL czy podobne. Komunikacja pomiędzy serwerem a frontendem musi odbywać się poprzez REST API. - 25 pkt
Aplikacja frontend musi mieć możliwość niezależnego uruchomienia (w odłączeniu od aplikacji serwerowej). Aplikacja frontend ma umożliwiać edycję, dodawanie, usuwanie danych z bazy danych oraz wyświetlać je w postaci tabeli, dodatkowo ogólny widok tabeli powinien być stronnicowany. - 25 pkt
The backend application should be launched on an independent application server (eg Tomcat) - 10 points
Dodatkowo aplikacja powinna być rozszerzona o pojedynczy aspekt nie omawiany na zajęciach taki jak : dodanie obłsugi "sesji użytkownika", integracja obsługi bazy danych w postaci Liquibase, integracja Springa z inną biblioteką, dodanie na froncie elementów raportów (wykresów, podsumowań), dodanie testów do aplikacji, dodanie testów obciążeniowych, partycjonowanie bazy danych, dodanie load balancera do Tomcata, każde inne wymyślone przez autora. Student sam wybiera, który aspekt aplikacji chciałby rozszerzyć i w jakim zakresie. - 20 pkt
Spóźnienie w oddaniu aplikacji - utrata 25% za każdy tydzień opóźnienia.
W przypadku nie uzyskania łącznie 50% punktów, student zobowiązany jest jako "Projekt poprawkowy" do:
Uzupełnienia (oddania) nieoddanych projektów.Przygotowanie materiału do wybranych zajęć w oparciu o inne technologie (inny język programowania, edytor, program etc.)