8.8 KiB
Dokument wymagań projektu
Nazwa projektu: Niezbędnik Studenta
Autorzy: Adrian Pacholak, Ania Śniadek, Malwina Chudzińska, Phillip Ławniczak
Data: 28.10.2020
0. Wersja dokumentu
1.1 - 28.10.2020 - dostosowanie do nowego szablonu
1.2 - 16.11.2020 - naniesienie poprawek wedłgu uwag promotora
1. Elementy składowe projektu (produkty projektu)
Aplikacja webowa
-
Zintegrowana z REST API - pobiera dane użytkowników, dane zawarte w aplikacji
-
Dostępna dla użytkowników posiadających konto w systemie USOS
-
Zarządzana przez zespół administratorów składający się z wybranych, zainteresowanych studentów
-
Umożliwia zalogowanym użytkownikom
-
korzystanie z forum
-
dostęp do materiałów zamieszczanych przez użytkowników
-
udostępnianie plików
-
pozyskiwanie informacji dotyczących studiów
-
-
Dokumentacja dotycząca oprogramowania aplikacji webowej
-
Technologie:
-
JavaScript
-
React
-
HTML5
-
SASS
-
CSS3
-
webpack
-
node.js
-
-
Publikacja aplikacji:
-
Dostęp do aplikacji na stronie internetowej
-
Dostęp do repozytorium oraz dokumentacji aplikacji na serwisie GitHub
-
Aplikacja serwerowa - REST API
-
Udostępnia serwisy REST
-
Służy do pobierania oraz zarządzania informacjami na temat przedmiotów, prowadzących, wydarzeniach
-
Służy do pobierania i dodawania materiałów naukowych
-
Służy do zamieszczania postów i komentarzy na forum
-
Używa relacyjnej bazy danych do przechowywania informacji o użytkownikach, przedmiotach, prowadzących, ogłoszeniach, wydarzeniach, postach oraz materiałów naukowych
-
Zintegrowane z Systemem Usos w celu autoryzacji oraz pobierania informacji o użytkownikach
-
Dokumentacja dotycząca oprogramowania REST API
-
Technologie: Java, Spring, Hibernate
Relacyjna baza danych:
-
Baza stworzona na potrzeby przechowywania informacji o użytkownikach, przedmiotach, prowadzących, wydarzeniach
-
Technologie:
- Azure SQL
Repozytorium zawierające kod aplikacji
- GitHub
Elementy nieprogramistyczne
-
Tablica projektowa - Jira:
-
Historia wymagań funkcjonalności (user stories)
-
Historia zadań
-
-
Prototyp aplikacji webowej
-
Dokumentacja dotycząca oprogramowania REST API
-
Dokumentacja dotycząca oprogramowania aplikacji webowej
-
Dokumentacja architektury wykorzystanej w projekcie
2. Granice projektu
-
Produkty nie zawarte:
-
Aplikacja mobilna
-
Aplikacja desktopowa
-
-
Funkcjonalności nie zawarte:
-
Rejestracja użytkowników
-
Dostęp dla użytkowników nie posiadających konta w systemie USOS
-
Chat dla użytkowników aplikacji
-
Możliwość edycji danych użytkownika
-
3. Lista wymagań funkcjonalnych
-
Aplikacja webowa:
-
Autentykacja i autoryzacja użytkowników przez system
-
Dostęp do informacji na temat przedmiotów i prowadzących
-
Możliwość dołączania i opuszczania grup przedmiotowych
-
Możliwość dodawania postów stanowiących ogłoszenia, oferty pracy i oferty korepetycji na tablicy ogłoszeń
-
Możliwość dodawania postów na forum dyskusyjnym, możliwość komentowania postów i zamieszczania rozwiązań do zadań
-
Możliwość udostępniania plików innym użytkownikom
-
Możliwość inicjowania wydarzeń i dołączania do wydarzeń
-
Możliwość dostosowania powiadomień przez użytkownika
-
Możliwość dodawania przedmiotów, prowadzących, przydatnych linków przez użytkowników z uprawnieniami administratora
-
Możliwość zarządzania ogłoszeniami, postami, komentarzami użytkowników przez administratorów
-
Możliwość dawania użytkownikom uprawnień administratora przez administratorów
-
-
Aplikacja serwerowa:
-
Zintegrowana z Systemem USOS w celu autoryzacji oraz pobierania informacji o użytkownikach
-
Pobieranie oraz zarządzanie informacjami na temat przedmiotów, prowadzących, wydarzeń, postów i komentarzy na forum
-
Pobieranie i dodawanie materiałów naukowych
-
Połączona z relacyjną bazą danych zawierającą dane oraz pliki
-
4. Lista wymagań niefunkcjonalnych
-
Dokumentacja dotyczącą oprogramowania aplikacji webowej i REST API
-
Dostęp do repozytorium kodu
-
Aplikacja dostępna dla komputerów i urządzeń mobilnych
-
Użyte biblioteki na licencji open-source
5. Mierzalne wskaźniki wdrożenia
-
Akceptacja funkcjonalna:
-
Ukończenie zdefiniowanych funkcjonalności aplikacji webowej
-
Dostęp do aplikacji dla wszystkich użytkowników systemu Usos
-
Brak błędów utrudniających korzystanie z aplikacji
-
-
Akceptacja jakościowa:
-
Zawieranie testów jednostkowe i sprawdzenie, czy spełniają swoje zadanie
-
Deploy wersji alpha aplikacji na serwer 30.11.2020, przeprowadzenie testów, sporządzenie raportu i naniesienie poprawek na jego podstawie
-
Deploy wersji beta aplikacji 07.01.2021 na serwer, przeprowadzenie testów, sporządzenie raportu i naniesienie poprawek na jego podstawie
-
Aplikacja posiada 40 aktywnych użytkowników
-
6. Kryteria akceptacji projektu dla I semestru prac
-
Dostarczenie prototypu projektu
-
Aplikacja webowa zintegrowana z REST API oferująca funkcjonalności:
-
logowanie do serwisu
-
podstawowy interfejs startowy użytkownika
-
lista przedmiotów (grup przedmiotowych)
-
możliwość dołączenia do grup przedmiotowych
-
udział w forum
-
-
Dokumentacja aplikacji webowej i serwerowej
7. Kryteria akceptacji projektu dla II semestru prac
-
Aplikacja webowa zintegrowana z REST API uzupełniona o funkcjonalności:
-
udostępnianie i pobieranie materiałów w postaci plików
-
tworzenie i dołączanie do wydarzeń
-
dodawanie ogłoszeń
-
powiadomienia i customizacja powiadomień
-
edycja zawartości strony przez admistratorów
-
zarządzanie treścią i użytkownikami przez administratorów
-
-
Anglojęzyczna wersja aplikacji
-
Dokumentacja aplikacji webowej i serwerowej
-
System pozytywnie przeszedł testy obciążeniowe, testy alpha i beta
8. Organizacja pracy zespołu
-
Strona klienta:
- Studenci wydziału Matematyki i Informatyki na kierunku Matematyka i Informatyka
-
Strona zespołu projektowego
-
Malwina Chudzińska
-
Product Owner
-
Implementacja aplikacji webowej
-
Tworzenie prototypu interfejsu aplikacji
-
-
Anna Śniadek
-
Implementacja aplikacji webowej
-
Projekt szaty graficznej aplikacji
-
Scrum Master
-
-
Adrian Pacholak
-
Implementacja serwisów REST dla aplikacji
-
Projektowanie bazy danych
-
-
Phillip Ławniczak
-
Tworzenie prototypu interfejsu aplikacji
-
Implementacja aplikacji webowej
-
-
9. Ryzyka projektowe
-
Odejście członka implementującego aplikację webową lub stronę serwerową - trudności w ukończeniu aplikacji
-
Określone ramy czasowe, semestry, na stworzenie produktu - ryzyko nieukończenia w czasie
-
Nieporozumienia w zespole dotyczące rozwiązań implementacyjnych, architektury, funkcjonalności lub używanych technologii
-
Konieczność poświęcenia czasu na dopełnienie wiedzy dotyczącej stosowanych technologii
-
Brak odpowiedniego zaangażowania w projekcie ze strony zespołu lub wybranych członków zespołu
-
Przechowywanie danych o użytkownikach
-
Brak zainteresowania aplikacją ze strony użytkowników
-
Brak chętnych do pełnienia roli administratora
-
Zarządzanie nieodpowiednimi treściami
-
Problemy techniczne po stronie systemu Usos
10. Kamienie milowe
-
Logowanie przez cas.amu.edu.pl
-
Dostarczenie użytkownikowi funkcjonalności dołączania do grup przedmiotowych
-
Dostarczenie użytkownikowi funkcjonalności dodawania kontentu do portalu
-
Wdrożenie aplikacji serwerowej na serwerze
-
Aplikacja posiadająca dokumentację
-
Aplikacja dostępna na stronie internetowej
-
Aplikacja posiadająca użytkowników
-
Aplikacja uzupełniona danymi dotyczącymi przedmiotów, prowadzących, materiałami naukowymi