MySQL projekt bazy danych do zarządzania szkołą (dziennik internetowy).

Odpowiedz Nowy wątek
2018-08-04 20:23
0

Cześć.
Potrzebuję pomocy przy projekcie bazy danych.
Projekt jest niekomercyjny. Będzie to moja praca inżynierska.
Będę wdzięczny za wszystkie rady i wskazówki.

Co chciałbym osiągnąć:(oczywiście nie wszystko jeśli coś będzie bardzo kłopotliwe do wykonania mogę zrezygnować)
-funkcję tradycyjnego dziennika (oceny, frekwencja, uwagi itp)
-dostęp do planu zajęć dla danej grupy z uwzględnieniem sprawdzianów i testów w prowadzonych wcześniej przez nauczyciela

Różne dostępy dla ucznia, rodzica, nauczyciela, wychowawcę, dyrektora.
Uczeń:
-dostęp do własnych ocen frekwencji uwag
-dostęp do planu

Rodzic
-to wszystko co uczeń
-możliwość wymiany informacji z nauczycielem(wiadomości)

Nauczyciel
-wprowadzenie ocen z prowadzonego przemiotu
-ustalanie wag ocen
-wprowadzenie uwag
-wymiana informacji z rodzicami
-generowanie listy ocen z prowadzonego przemiotu
-generowanie frekwencji z danego przemiotu
-dostęp do danych kontaktowych ucznia i rodzica

Wychowawca
-wszystko co nauczyciel (jako nauczyciel z przedmiotu lekcja wychowawcza)
-generowanie ogólnej frekwencji dla danego ucznia
-generowanie listy ocen dla danego ucznia
-możłiwość edycji danych kontaktowych uczniów

Dyrektor
-statystyki ocen i frekwencji dla (szkoły, uczniów, klas, przedmiotów)
-dodawanie usuwanie uczniów

Zależy mi na porządnym projekcie bazy danych aby uniknąć problemów na dalszych etapach pracy.
W załączniku przesyłam schemat EER (jest to powiedzmy punkt wyjścia)
Mam totalny mętlik w głowie jak powinna wyglądać taka baza danych.
Proszę o ocenę mojego schematu i wszelkie sugestie co powinienem pozmieniać co robi się inaczej itp.
Konkretne pytanie; Czy relacje mogę tworzyć tak aby na schemacie układały się w zamknięte "koła" czy jest to redundancja danych np czy jeśli na moim schemacie dodam relację między tabelą group a grade będzie to błąd?

Dodam jeszcze żę projekt będę pisał w Javie z użyciem springa. Front end zrobię z użyciem thymeleaf.

Pozdrawiam i z góry dziękuję za pomoc.

Pozostało 580 znaków

2018-08-04 20:34
0

Czy sądzisz, że faktycznie te tabele będę potrzebne?
student_grade
student_parent

Wydaje mi się, że raczej nie, ale mogę się mylić.

Proponował bym zmienić nazwę tabeli lesson na subject na przykład.

Pozostało 580 znaków

2018-08-04 21:41
0

Przez pomyłkę moją wypowiedź z dwoma komentarzami. To chyba przez ten upał.

Pozostało 580 znaków

2018-08-05 10:47
0
  1. Żaden użytkownik nie może się zalogować do systemu.
  2. Skoro między student, a parent mamy związek wiele do wielu to po co w parent atrybut id_student, a w student atrybut id_parent ?
  3. Nie istnieje relacja subject, do której odnoszą się atrybuty w kilku relacjach.
  4. Trochę bez sensu w grade atrybuty grade i grade_mark czyli co mamy ocene liczbową i tekstową ? To samo w group.
  5. Jak będe chciał dodać nowy rodzaj testu to słabo będzie to dodawać do enuma w tabeli test.
  6. Nie jestem w stanie z systemu stwierdzić, który nauczyciel uczy jakiego przedmiotu.
  7. Nie jestem w stanie stwierdzić, która ocena jest oceną końcową.
  8. Nie jestem w stanie stwierdzić w którym miesiącu odbyła się dana lekcja.
    9.Nie jestem w stanie stwierdzić czy uczniowie byli na lekcji jeżeli mamy sprawdzać frekwencje.
  9. Nie mogę wymienić informacji pomiędzy rodzicem, a nauczycielem

I pewnie jeszcze by się znalazło. Ogólnie rzecz ujmując co do Twoich wymagań to baza ich nie spełni w takiej formie.

edytowany 1x, ostatnio: mariano901229, 2018-08-05 10:47
Dzięki za podpowiedź. Nie znam się na projektowaniu baz a muszę się z tym uporać. - Konrad84 2018-08-05 15:16
Przemyśle Twoje sugestie, doczytam w internecie i pokaże jak to wygląda po zmianie. - Konrad84 2018-08-05 15:19

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0