Univerzitet u Beogradu Fakultet organizacionih nauka Laboratorija za softversko inženjerstvo Seminarski rad iz predmeta Projektovanje softvera Tema: Softverski sistem za praćenje rada učenika u srednjoj školi Profesor: dr Siniša Vlajić Student: Srđan Tajdić
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Univerzitet u BeograduFakultet organizacionih nauka
Laboratorija za softversko inženjerstvo
Seminarski rad iz predmeta
Projektovanje softvera
Tema: Softverski sistem za praćenje rada učenika u srednjoj školi
Potrebno je napraviti aplikaciju koja omogućava da se efikasno izvršava evidencija podataka o učeniku, o njegovim ocenama i izostancima. Korisnik sistema je službenik u školskoj upravi (korisnik).
Sistem treba da omogući unošenje podataka o učenicima i predmetima, kao i pretraživanje, izmenu i brisanje ocena. Pored ovih zahteva potrebno je omogućiti i da korisnik može da unese rezultate predmeta. Da bi korisnik mogao da vrši promene nad podacima u sistemu mora da bude prijavljen na sistem (ulogovan).
1.2. Slučajevi korišćenja
U konkretnom slučaju evidentirani su sledeći slučajevi korišćenja koji su prikazani na slici 1:
1) Unos učenika u sistem2) Brisanje učenika iz sistema3) Pretraga učenika4) Izmena podataka o učeniku5) Unos izostanaka učenika6) Izmena izostanaka učenika7) Unos predmeta8) Unošenje ocene9) Izmena ocene10)Prijava korisnika na sistem
Slika 1. Dijagram slučajeva korišćenja
SK1: Slučaj korišćenja- Unos učenika u sistem
Naziv SK Kreiranje novog učenika
Aktori SK Korisnik (službenik)
Učesnici SK Korisnik isistem(program)
Preduslov: Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za rad sa učenicima.
Osnovni scenario SK
1. Korisnik poziva sistem da kreira novog učenika. (APSO) 2. Sistem kreira novog učenika. (SO) 3. Sistem prikazuje korisniku novog učenika i poruku: “Sistem je kreirao novog učenika”. (IA) 4. Korisnik unosi podatke o novom učeniku. (APUSO) 5. Korisnik kontroliše da li je korektno uneo podatke o novom učeniku. (ANSO) 6. Korisnik poziva sistem da zapamti podatke o novom učeniku. (APSO)
7. Sistem pamti podatke o novom učeniku. (SO) 8. Sistem prikazuje korisniku poruku: “Sistem je zapamtio učenika”. (IA)
Alternativna scenarija
3.1 Ukoliko sistem ne može da kreira novog učenikaon prikazuje korisniku poruku: “Sistem ne može da kreira novog učenika”. Prekida se izvršenje scenarija. (IA)
8.1 Ukoliko sistem ne može da zapamti podatke o novom učenikuon prikazuje korisniku poruku “Sistem ne može da zapamti novog učenika”.
SK2: Slučaj korišćenja – Brisanje učenika iz sistema
Naziv SK Brisanje učenika
Aktori SK Korisnik
Učesnici SK Korisnik i sistem (program)
Preduslov: Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za rad za brisanje učenika.
Osnovni scenario SK
1. Korisnik unosi vrednost po kojoj pretražuje učenika. (APUSO) 2. Korisnik poziva sistem da nađe učenika po zadatoj vrednosti. (APSO) 3. Sistem traži učenika po zadatoj vrednosti. (SO) 4. Sistem prikazuje korisniku pronađenog učenika. (IA) 5. Korisnik poziva sistem da obriše učenika. (APSO)6. Sistem briše učenika. (SO)7. Sistem prikazuje korisniku poruku: “Sistem je obrisao učenika.” (IA)
Alternativna scenarija
4.1 Ukoliko sistem ne može da nađe učenike on prikazuje korisniku poruku: “Sistem ne može da nađe učenika po zadatoj vrednosti”. Prekida se izvršavanje scenarija (IA)
7.1 Ukoliko sistem ne može da obriše učenika on prikazuje korisniku poruku: “Sistemne može da obriše učenika”. (IA)
SK 3: Slučaj korišćenja – Pretraga učenika
Naziv SKPretraga učenika
Aktori SKKorisnik
Učesnici SKKorisnik i sistem (program)
Preduslov:Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za pretragu učenika.
Osnovni scenario SK
1. Korisnik unosi vrednosti po kojima pretražuje učenika. (APUSO)2. Korisnik poziva sistem da nađe učenika po zadatim vrednostima. (APSO)3. Sistem traži učenika po zadatim vrednostima. (SO)4. Sistem prikazuje korisniku nađenog učenika. (IA)
Alternativna scenarija
4.1. Ukoliko sistem ne može da nađe učenike on prikazuje korisniku poruku: “Sistem ne može da nađe učenika po zadatim vrednostima”. Prekida se izvršenje scenarija. (IA)
SK 4: Slučaj korišćenja – Izmena podataka o učeniku
Naziv SKIzmena podataka o učeniku
Aktori SKKorisnik
Učesnici SKKorisnik i sistem (program)
Preduslov:Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za izmenu podataka.
Osnovni scenario SK
1. Korisnik unosi vrednosti po kojima pretražuje učenika. (APUSO)2. Korisnik poziva sistem da nađe učenika po zadatim vrednostima. (APSO)3. Sistem traži učenika po zadatim vrednostima. (SO)4. Sistem prikazuje korisniku nađenog učenika. (IA)5. Korisnik unosi (menja) podatke o učeniku. (APUSO)6. Korisnik kontroliše da li je korektno uneo podatke o učeniku. (ANSO)7. Korisnik poziva sistem da zapamti podatke o učeniku. (APSO)8. Sistem pamti podatke o učeniku. (SO)9. Sistem prikazuje korisniku poruku: “Sistem je zapamtio učenika.” (IA)
Alternativna scenarija:
4.1. Ukoliko sistem ne može da nađe učenike on prikazuje korisniku poruku: “Sistem ne može da nađe učenika po zadatim vrednostima”. Prekida se izvršenje scenarija. (IA)9.1. Ukoliko sistem ne može da zapamti podatke o učeniku on prikazuje korisniku poruku: “Sistem ne može da zapamti učenika”. (IA)
SK 5: Slučaj korišćenja – Unos izostanaka učenika
Naziv SKUnos izostanaka učenika
Aktori SKKorisnik
Učesnici SKKorisnik i sistem (program)
Preduslov:Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za rad sa izostankom učenika, učitani su svi predmeti.
Osnovni scenario SK
1. Korisnik unosi vrednost po kojoj pretražuje učenika. (APUSO) 2. Korisnik poziva sistem da nađe učenika po zadatoj vrednosti. (APSO) 3. Sistem traži učenika po zadatoj vrednosti. (SO) 4. Sistem prikazuje korisniku pronađenog učenika. (IA) 5. Korisnik bira učenika .(APUSO) 6. Korisnik poziva sistem da kreira nov izostanak učenika. (APSO)7. Sistem kreira nov izostanak učenika. (SO)8. Sistem prikazuje korisnikunov izostanak učenika. (IA)9. Korisnik unosi podatke o novomizostanku učenika. (APUSO)
10. Korisnik kontroliše da li je korektno uneo podatke o novom izostanku učenika. (ANSO)11. Korisnik poziva sistem da zapamti podatke o novom izostanku učenika. (APSO)12. Sistem pamti podatke o novom izostanku učenika. (SO)13. Sistem prikazuje korisniku poruku:”Sistem je zapamtio nov izostanak”. (IA)
Alternativna scenarija
4.1. Ukoliko sistem ne može da pronađe učenikeon prikazuje korisniku poruku: “Sistem ne može da pronađe učenika po zadatoj vrednosti”. Prekida se izvršenje scenarija. (IA)
8.1. Ukoliko sistem ne može da kreira izostanak učenika on prikazuje korisniku poruku: “Sistem ne može da kreira izostanak učenika”. Prekida se izvršenje scenarija. (IA)
13.1. Ukoliko sistem ne može da zapamti podatke o novom izostanku on prikazuje korisniku poruku “Sistem ne može da zapamti nov izostanak”. (IA)
SK 6: Slučaj korišćenja – Izmena izostanaka učenika
Naziv SKEvidencija izostanaka učenika
Aktori SKKorisnik
Učesnici SKKorisnik i sistem (program)
Preduslov:Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za izostankeučenika.
Osnovni scenario SK
scenario SK
1. Korisnik unosi podatke o uceniku cije izostanke zeli da prikaze. (APUSO)2. Korisnik poziva sistem da nađe izostanke izabranog učenika (APSO)3. Sistem traži izostanke učenika po zadatim vrednostima. (SO)4. Sistem prikazuje korisniku nađenu evidenciju izostanaka. (IA)5. Korisnik biraizostanank koje želi da izmeni. (APUSO)
6. Korisnik poziva sistem da opravda izostanku. (APSO)7. Sistem pamti podatke o izostanku. (SO)8. Sistem prikazuje korisniku poruku: “Sistem je opravdao izostanak.” (IA)
Alternativna scenarija
4.1. Ukoliko sistem ne može da nađe evidenciju izostanaka on prikazuje korisniku poruku: “Sistem ne može da nađe evidenciju izostanaka”. Prekida se izvršenje scenarija. (IA)
8.1. Ukoliko sistem ne može da zapamti podatke o izostanku on prikazuje korisniku poruku: “Sistem ne može da opravda izostanak”. (IA)
SK7: Slučaj korišćenja – Unošenje predmeta
Naziv SK Kreiranje novog predmeta
Aktori SK Korisnik (službenik)
Učesnici SK Korisnik isistem(program)
Preduslov: Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za rad sa predmetima.
Osnovni scenario SK
1. Korisnik poziva sistem da kreira nov predmet. (APSO) 2. Sistem kreira nov predmet. (SO) 3. Sistem prikazuje korisniku nov predmet i poruku: “Sistem je kreirao nov predmet”. (IA) 4. Korisnik unosi podatke o novom predmetu. (APUSO) 5. Korisnik kontroliše da li je korektno uneo podatke o novom predmetu. (ANSO) 6. Korisnik poziva sistem da zapamti podatke o novom predmetu. (APSO) 7. Sistem pamti podatke o novom predmetu. (SO) 8. Sistem prikazuje korisniku poruku: “Sistem je zapamtio predmet”. (IA)
Alternativna scenarija
3.1 Ukoliko sistem ne može da kreira nov predmeton prikazuje korisniku poruku: “Sistem ne može da kreira nov predmet”. Prekida se izvršenje scenarija. (IA)
8.1 Ukoliko sistem ne može da zapamti podatke o novom predmetuon prikazuje korisniku poruku “Sistem ne može da zapamti nov predmet”.
SK8: Slučaj korišćenja – Unošenje ocene
Naziv SKUnošenje ocene
Aktori SKKorisnik
Učesnici SKKorisnik i sistem (program)
Preduslov:Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za unošenje ocene, učitani su svi predmeti.
Osnovni scenario SK
scenario SK
1. Korisnik unosi vrednost po kojoj pretražuje učenike. (APUSO) 2. Korisnik poziva sistem da nađe učenike po zadatoj vrednosti. (APSO) 3. Sistem traži učenike po zadatoj vrednosti. (SO) 4. Sistem prikazuje korisniku pronađenog učenika. (IA) 5. Korisnik unosi podatke o novim ocenama učenika. (APUSO)6. Korisnik kontroliše da li je korektno uneo podatke o novim unešenim ocenama.
(ANSO)7. Korisnik poziva sistem da zapamti podatke o unešenim ocenama. (APSO)8. Sistem pamti podatke o novim unešenim ocenama. (SO)9. Sistem prikazuje korisniku poruku:”Sistem je zapamtio unešene ocene”. (IA)
Alternativna scenarija
4.1. Ukoliko sistem ne može da pronađe učenike on prikazuje korisniku poruku: “Sistem ne može da pronađe učenike”. Prekida se izvršenje scenarija. (IA)
9.1. Ukoliko sistem ne može da kreira nov unos ocene on prikazuje korisniku poruku: “Sistem ne može da kreira nov unos ocene”. Prekida se izvršenje scenarija. (IA)
SK 9: Slučaj korišćenja – Izmena ocene učenika
Naziv SKIzmena ocene
Aktori SKKorisnik
Učesnici SKKorisnik i sistem (program)
Preduslov:Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za izmenu ocene.
Osnovni scenario SK scenario SK
1. Korisnik poziva sistem da prikaže ocene izabranog učenika za izabrani predmet (APSO)
2. Sistem traži ocene po zadatoj vrednosti. (SO) 3. Sistem prikazuje korisniku pronađene ocene učenika. (IA) 4. Korisnik bira ocenu (APUSO) 5. Sistem prikazuje korisniku ocenu (ANSO)6. Korisnik unosi izmene ocene (APUSO)7. Korisnik pozivasistemda izmeni ocenu. (APSO) 8. Sistem menja ocenu. (SO) 9. Sistem prikazuje korisniku poruku: “Sistem je izmenio ocenu.” (IA)
Alternativna scenarija
3.1 Ukoliko sistem ne može da nađe podatke o ocenama on prikazuje korisniku poruku: “Sistemne može da nađe ocenepo zadatoj vrednosti”. Prekida se izvršenje scenaria. (IA)
9.1 Ukoliko sistem ne može da izmeni ocenu on prikazuje korisniku poruku “Sistem ne može da izmeni ocenu”. (IA)
SK10: Slučaj korišćenja – Prijavljivanje korisnika
Naziv SK: Prijavljivanje korisnika
Aktori SK: Korisnik
Učesnici SK: Korisnik i sistem (program)
Preduslov: Sistem je uključen i prikazuje formu za logovanje.
Osnovni scenario SK:
1. Korisnik unosi podatke za autentifikaciju korisnika. (APUSO)
2. Korisnik poziv asistem da prijavi korisnika sa zadatim podacima. (APSO)
3. Sistem prijavljuje korisnika. (SO)
4. Sistem prikazuje poruku da je korisnik uspešno prijavljen i omogućava pristup sistemu.(IA)
Alternativna scenarija:
4.1. Ukoliko sistem ne može da nađe korisnika prikazuje poruku da korisnik nije uneo tačne podatke. (IA)
2. Analiza
2.1. Ponašanje softverskog sistema – Sistemski dijagram sekvenci
1. Korisnik poziva sistem da kreira novog učenika. (APSO) 2. Sistem prikazuje korisnikunovog učenika i poruku: “Sistem je kreirao novog učenika”.
(IA)3. Korisnik poziva sistem da zapamti podatke o novom učeniku. (APSO) 4. Sistem prikazuje korisniku poruku: “Sistem je zapamtio učenika”. (IA)
Alternativna scenarija
2.1 Ukoliko sistem ne može da kreira novog učenikaon prikazuje korisniku poruku: “Sistem ne može da kreira novog učenika”. Prekida se izvršenje scenarija. (IA)
4.1 Ukoliko sistem ne može da zapamti podatke o novom učenikuon prikazuje korisniku poruku “Sistem ne može da zapamti novog učenika”.
Sanavedenihslučajevakorišćenjauočavajusedvesistemskeoperacije operacije koje treba projektovati:
1. Korisnik poziva sistem da nađe učenike po zadatoj vrednosti. (APSO)
2. Sistem prikazuje korisniku pronađene učenike. (IA)
3. Korisnik poziva sistem da obriše učenika. (APSO)
4. Sistem prikazuje korisniku poruku: “Sistem je obrisao učenika.” (IA)
Alternativna scenarija
2.1 Ukoliko sistem ne može da nađe učenike on prikazuje korisniku poruku: “Sistem ne može da nađe učenike po zadatoj vrednosti”. Prekida se izvršavanje scenarija (IA)
4.1 Ukoliko sistem ne može da obriše učenika on prikazuje korisniku poruku: “Sistemne može da obriše učenika”. (IA)
Sa navedenih sekvencnih dijagrama uočavaju se dve sistemske operacije koje treba projektovati:
1. Korisnik poziva sistem da nađe učenike po zadatim vrednostima. (APSO)2. Sistem prikazuje korisniku nađene učenike. (IA)3. Korisnik poziva sistem da prikaže podatke o izabranom učeniku. (APSO)4. Sistem prikazuje korisniku podatke o izabranom učeniku. (IA)
Alternativna scenarija
2.1 Ukoliko sistem ne može da nađe učenike on prikazuje korisniku poruku: “Sistem ne može da nađe učenike po zadatim vrednostima”. Prekida se izvršenje scenarija.(IA)
Sa navedenih sekvencnih dijagrama uočavaju se dve sistemske operacije koje treba projektovati:
1. signalPretraziUčenika(KriterijumPretrage)
DS4:Dijagram sekvenci slučajakorišćenja –Izmena podataka o učeniku
1. Korisnik poziva sistem da nađe učenika po zadatim vrednostima. (APSO)2. Sistem prikazuje korisniku nađenog učenika. (IA)3. Korisnik poziva sistem da zapamti podatke o učeniku. (APSO)4. Sistem prikazuje korisniku poruku: “Sistem je zapamtio učenika.” (IA)
Alternativna scenarija
2.1 Ukoliko sistem ne može da nađe učenika on prikazuje korisniku poruku: “Sistem ne može da nađe učenike po zadatim vrednostima”. Prekida se izvršenje scenarija. (IA)
6.1 . Ukoliko sistem ne može da zapamti podatke o učeniku on prikazuje korisniku poruku: “Sistem ne može da zapamti učenika”. (IA)
Sa navedenih sekvencnih dijagrama uočavaju se tri sistemske operacije koje treba projektovati:
1. Korisnik poziva sistem da nađe učenika po zadatoj vrednosti. (APSO)2. Sistem prikazuje korisniku pronađene učenika. (IA) 3. Korisnik poziva sistem da zapamti podatke o novom izostanku učenika. (APSO)4. Sistem prikazuje korisniku poruku:”Sistem je zapamtio novi zostanak”. (IA)
Alternativna scenarija
4.1 Ukoliko sistem ne može da pronađe učenikeon prikazuje korisniku poruku: “Sistem ne može da pronađe učenike po zadatoj vrednosti”. Prekida se izvršenje scenarija. (IA)
8.1 Ukolikosistem ne može da zapamti podatke o novom izostanku on prikazuje korisniku poruku “Sistem ne može da zapamti nov izostanak”. (IA)
Sa navedenih sekvencnih dijagrama uočavaju se tri sistemske operacije koje treba projektovati:
1. Korisnik poziva sistem da nađe izostanke izabranog učenika (APSO)2. Sistem prikazuje korisniku nađenu evidenciju izostanaka. (IA)3. Korisnik poziva sistem da zapamti podatke o izostanku. (APSO)4. Sistem prikazuje korisniku poruku: “Sistem je zapamtio izostanak.” (IA)
Alternativna scenarija
6.1 Ukoliko sistem ne može da nađe evidenciju izostanaka on prikazuje korisniku poruku: “Sistem ne može da nađe evidenciju izostanaka”. Prekida se izvršenje scenarija. (IA)
10.1 . Ukoliko sistem ne može da zapamti podatke o izostanku on prikazuje korisniku poruku: “Sistem ne može da zapamti izostanak”. (IA)
Sa navedenih sekvencnih dijagrama uočavaja se 5 sistemskih operacija koje treba projektovati:
1. signal PretražiEvidencijuIzostanaka(KriterijumPretrage,List<Izostanak>)2. signal IzmeniIzostanak(Izostanak)
1. Korisnik poziva sistem da kreira novpredmet. (APSO) 2. Sistem prikazuje korisniku nov predmet i poruku: “Sistem je kreirao nov predmet”. (IA)3. Korisnik poziva sistem da zapamti podatke o novom predmetu. (APSO) 4. Sistem prikazuje korisnikuporuku: “Sistem je zapamtio predmet”. (IA)
Alternativna scenarija
2.1 Ukoliko sistem ne može da kreira nov predmeton prikazuje korisniku poruku: “Sistem ne može da kreira nov predmet”. Prekida se izvršenje scenarija. (IA)
4.1 Ukoliko sistem ne može da zapamti podatke o novom predmetuon prikazuje korisniku poruku “Sistem ne može da zapamti nov predmet”.
Sa navedenih slučajeva korišćenja uočavaju se dve sistemske operacije operacije koje treba projektovati:
1. Korisnik poziva sistem da nađe učenika po zadatoj vrednosti. (APSO) 2. Sistem prikazuje korisniku pronađene učenika. (IA) 3. Korisnik poziva sistem da zapamti podatke o unešenim ocenama. (APSO)4. Sistem prikazuje korisniku poruku:”Sistem je zapamtio unešene ocene”. (IA)
Alternativna scenarija
4.1 Ukoliko sistem ne može da pronađe učenikeon prikazuje korisniku poruku: “Sistem ne može da pronađe učenikepo zadatim vrednostima”. Prekida se izvršenje scenarija. (IA)
8.1 Ukoliko sistem ne može da zapamti podatke o novim ocenama, on prikazuje korisniku poruku “Sistem ne može da zapamti nove ocene”. (IA)
Sa navedenih sekvencnih dijagrama uočavaju se tri sistemske operacije koje treba projektovati:
1. Korisnik poziva sistem da prikaže ocene izabranog učenika za predmet (APSO)2. Sistem prikazuje korisniku pronađene ocene učenika. (IA) 3. Korisnik poziva sistem da izmeni ocenu. (APSO) 4. Sistem prikazuje korisniku poruku: “Sistem je izmenio ocenu.” (IA)
Alternativna scenarija
6.1 Ukoliko sistem ne može da nađe podatke o ocenama on prikazuje korisniku poruku: “Sistemne može da nađe ocenepo zadatoj vrednosti”. Prekida se izvršenje scenaria. (IA)
8.1 Ukoliko sistem ne može da izmeni ocenu on prikazuje korisniku poruku “Sistem ne može da izmeni ocenu”. (IA)
Sa navedenih sekvencnih dijagrama uočavaju se šest sistemskih operacija koje treba projektovati:
1. Korisnik poziv asistem da prijavi korisnika sa zadatim podacima. (APSO)2. Sistem prikazuje poruku da je korisnik uspešno prijavljen i omogućava pristup sistemu.
(IA)
Alternativna scenarija
2.1. Ukoliko sistem ne može da nađe korisnika prikazuje poruku da korisnik nije uneo tačne podatke. (IA)
Sa navedenih sekvencnih dijagrama uočava se jedna sistemska operacija koju treba projektovati:
1. signalPrijaviKorisnika(Korisnik)
Kao rezultat analize scenarija dobijeno je ukupno 16sistemskih operacija koje treba projektovati:
1. signalKreirajNovogUčenika(Učenik);2. signalZapamtiUčenika(Učenik);3. signalPretražiUčenika(KriterijumPretrage)4. signalObrišiUčenika(Učenik)5. signal ZapamtiUčenika(Učenik) 6. signalZapamtiNovIzostanak(Izostanak)
7. signalKreirajNovIzostanak(Izostanak)8. signal PretražiEvidencijuIzostanaka(KriterijumPretrage,List<Izostanak>)9. signalKreirajNovPredmet(Predmet);10. signalZapamtiPredmet(Predmet);11. signal ZapamtiNoveUnešeneOcene(Unos)12. signal PretražiOcene(KriterijumPretrage,List<Ocena>)13. signal ZapamtiOcenu(Ocena)14. signalPrijaviKorisnika(Korisnik)15. signalVratiSvePredmete(List<Predmet>)16. signalVratiSveUcenike(List<Predmet>)
2.2. Ponašanje softverskog sistema – Definisanje ugovora o sistemskim operacijama
Ugovor UG1: KreirajNovogUčenika
Operacija: KreirajNovogUčenika(Učenik):signal;
Veza sa SK: SK1
Preduslovi: -
Postuslovi: Kreiran je novi učenik.
Ugovor UG2: ZapamtiUčenika
Operacija: ZapamtiUčenika(Učenik):signal;
Veza sa SK: SK1, SK4
Preduslovi: Prosto vrednosno ograničenje nad objektom Učenik mora biti zadovoljeno.
Strukturno ograničenje nad objektom Učenik mora biti zadovoljeno.
Postuslovi: Učenik je obrisan.Strukturno ograničenje nad objektom Učenik mora biti zadovoljeno.
Ugovor UG5:ZapamtiUčenika
Operacija: ZapamtiUčenika(Učenik):signal;
Veza sa SK: SK1, SK4
Preduslovi: Prosto vrednosno ograničenje nad objektom Učenik mora biti zadovoljeno.
Strukturno ograničenje nad objektom Učenik mora biti zadovoljeno.
Postuslovi: Podaci o učeniku su zapamćeni.
Ugovor UG6:KreirajNovIzostanak
Operacija: KreirajNovIzostanak(Izostanak):signal;
Veza sa SK: SK5
Preduslovi:Ako za datog učenika postoje već tri izostanka koja nisu opravdana, ne može se izvršiti sistemska operacija.
Postuslovi: Kreiran je nov izostanak.
Ugovor UG7: ZapamtiNovIzostanak
Operacija: ZapamtiNovIzostanak(Izostanak):signal;
Veza sa SK: SK5, SK6
Preduslovi: Ako za datog učenika postoje već tri izostanka koja nisu opravdana ne može se izvršiti sistemska operacija. Prosto vrednosno ograničenje nad objektom Zaduzenje mora biti zadovoljeno.
Strukturno ograničenje nad objektom Zaduzenje mora biti zadovoljeno.Postuslovi: Podaci o izostanku su zapamćeni.
Faza projektovanja opisuje fizičku strukturu i ponašanje softverskog sistema (arhitekturu softverskog sistema).
Arhitektura softverskog sistema
Arhitekrura sistema je tronivojska i sastoji se od sledećih nivoa:
korisnički interfejs aplikaciona logika skladište podataka
Nivo korisničkog interfejsa je na strani klijenta, dok su aplikaciona logika i skladište podataka na strani servera.
Tronivojska arhitektura
3.1. Projektovanje korisničkog interfejsa
Korisnički interfejs, predstavlja realizaciju ulaza i/ili izlaza softverskog sistema.
Struktura korisničkog interfejsa
Ekranska forma ima ulogu da prihvati podatke koje korisnik unosi, prihvata događaje koje pravi korisnik, poziva kontroler korisničkog interfejsa kako bi mu prosledio podatke i prikazuje podatke dobijene od kontrolera korisničkog interfejsa.
3.1.1. Projektovanje ekranskih formiKorisnički interfejs defenisan je preko skupa ekranskih formi. Scenarija korišćenja ekranskih formi su direktno povezana sa scenarijima slučajeva korišćenja.
Glavna ekranska forma serverskog dela aplikacije treba da izgleda ovako:
Glavna ekranska forma klijentskog dela aplikacije, posle uspesnog logovanja na sistem izgledala bi ovako:
Kroz slučajeve korišćenja projektovane su i ostale ekranske forme koje će aplikacija posedovati, a koje se pozivaju iz menija glavne ekranske forme klijentskog dela aplikacije, kao i forma za logovanje koje mora da se pokrene, da bi se pokrenula glavna ekranska forma.
SK1: Slučaj korišćenja- Unos učenika u sistem
Naziv SK Kreiranje novog učenika
Aktori SK Korisnik (službenik)
Učesnici SK Korisnik isistem(program)
Preduslov: Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za rad sa učenicima.
Osnovni scenario SK
1. Korisnik poziva sistem da kreira novog učenika. (APSO) 2. Sistem kreira novog učenika. (SO) 3. Sistem prikazuje korisnikun ovog učenika i poruku: “Sistem je kreirao novog učenika”. (IA)
4. Korisnik unosi podatke o novom učeniku. (APUSO)
5. Korisnik kontroliše da li je korektno uneo podatke o novom učeniku. (ANSO) 6. Korisnik poziva sistem da zapamti podatke o novom učeniku. (APSO) 7. Sistem pamti podatke o novom učeniku. (SO) 8. Sistem prikazuje korisniku poruku: “Sistem je zapamtio učenika”. (IA)
Alternativna scenarija
2.1 Ukoliko sistem ne može da kreira novog učenika on prikazuje korisniku poruku: “Sistem ne može da kreira novog učenika”. Prekida se izvršenje scenarija. (IA)
8.1 Ukoliko sistem ne može da zapamti podatke o novom učeniku on prikazuje korisniku poruku “Sistem ne može da zapamti novog učenika”.
SK2: Slučaj korišćenja – Brisanje učenika iz sistema
Naziv SK Brisanje učenika
Aktori SK Korisnik
Učesnici SK Korisnik i sistem (program)
Preduslov: Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za rad za brisanje učenika.
Osnovni scenario SK
1. Korisnik unosi vrednost po kojoj pretražuje učenika. (APUSO)
2. Korisnik poziva sistem da nađe učenika po zadatoj vrednosti. (APSO) 3. Sistem traži učenika po zadatoj vrednosti. (SO) 4. Sistem prikazuje korisniku pronađenog učenika. (IA)
5. Korisnik poziva sistem da obriše učenika. (APSO)6. Sistem briše učenika. (SO)7. Sistem prikazuje korisniku poruku: “Sistem je obrisao učenika.” (IA)
Alternativna scenarija
4.1 Ukoliko sistem ne može da nađe učenike on prikazuje korisniku poruku: “Sistem ne može da nađe učenika po zadatoj vrednosti”. Prekida se izvršavanje scenarija (IA)
7.1 Ukoliko sistem ne može da obriše učenika on prikazuje korisniku poruku: “Sistemne može da obriše učenika”. (IA)
SK 3: Slučaj korišćenja – Pretraga učenika
Naziv SKPretraga učenika
Aktori SKKorisnik
Učesnici SKKorisnik i sistem (program)
Preduslov:Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za pretragu učenika.
Osnovni scenario SK
Osnovni scenario SK
1. Korisnik unosi vrednosti po kojima pretražuje učenika. (APUSO)
2. Korisnik poziva sistem da nađe učenika po zadatim vrednostima. (APSO)3. Sistem traži učenika po zadatim vrednostima. (SO)4. Sistem prikazuje korisniku nađenog učenika. (IA)
Alternativna scenarija
4.1. Ukoliko sistem ne može da nađe učenike on prikazuje korisniku poruku: “Sistem ne može da nađe učenika po zadatim vrednostima”. Prekida se izvršenje scenarija. (IA)
SK 4: Slučaj korišćenja – Izmena podataka o učeniku
Naziv SKIzmena podataka o učeniku
Aktori SKKorisnik
Učesnici SK
Korisnik i sistem (program)
Preduslov:Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za izmenu podataka.
Osnovni scenario SK
1. Korisnik unosi vrednosti po kojima pretražuje učenika. (APUSO)
2. Korisnik poziva sistem da nađe učenika po zadatim vrednostima. (APSO)3. Sistem traži učenika po zadatim vrednostima. (SO)4. Sistem prikazuje korisniku nađenog učenika. (IA)
5. Korisnik unosi (menja) podatke o učeniku. (APUSO)
6. Korisnik kontroliše da li je korektno uneo podatke o učeniku. (ANSO)
7. Korisnik poziva sistem da zapamti podatke o učeniku. (APSO)8. Sistem pamti podatke o učeniku. (SO)9. Sistem prikazuje korisniku poruku: “Sistem je zapamtio učenika.” (IA)
Alternativna scenarija:
4.1. Ukoliko sistem ne može da nađe učenike on prikazuje korisniku poruku: “Sistem ne može da nađe učenika po zadatim vrednostima”. Prekida se izvršenje scenarija. (IA)
9.1. Ukoliko sistem ne može da zapamti podatke o učeniku on prikazuje korisniku poruku: “Sistem ne može da zapamti učenika”. (IA)
SK 5: Slučaj korišćenja – Unos izostanaka učenika
Naziv SKUnos izostanaka učenika
Aktori SKKorisnik
Učesnici SKKorisnik i sistem (program)
Preduslov:Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za rad sa izostankom učenika, učitani su svi predmeti.
Osnovni scenario SK
1. Korisnik unosi vrednost po kojoj pretražuje učenika. (APUSO)
2. Korisnik poziva sistem da nađe učenika po zadatoj vrednosti. (APSO) 3. Sistem traži učenika po zadatoj vrednosti. (SO) 4. Sistem prikazuje korisniku pronađenog učenika. (IA)
5. Korisnik bira učenika .(APUSO)
6. Korisnik poziva sistem da kreira nov izostanak učenika. (APSO)7. Sistem kreira nov izostanak učenika. (SO)8. Sistem prikazuje korisniku nov izostanak učenika. (IA)
9. Korisnik unosi podatke o novom izostanku učenika. (APUSO)
10. Korisnik kontroliše da li je korektno uneo podatke o novom izostanku učenika. (ANSO)11. Korisnik poziva sistem da zapamti podatke o novom izostanku učenika. (APSO)12. Sistem pamti podatke o novom izostanku učenika. (SO)13. Sistem prikazuje korisniku poruku:”Sistem je zapamtio nov izostanak”. (IA)
Alternativna scenarija
4.1. Ukoliko sistem ne može da pronađe učenike on prikazuje korisniku poruku: “Sistem ne može da pronađe učenika po zadatoj vrednosti”. Prekida se izvršenje scenarija. (IA)
8.1. Ukoliko sistem ne može da kreira izostanak učenika on prikazuje korisniku poruku: “Sistem ne može da kreira izostanak učenika”. Prekida se izvršenje scenarija. (IA)
13.1. Ukoliko sistem ne može da zapamti podatke o novom izostanku on prikazuje korisniku poruku “Sistem ne može da zapamti nov izostanak”. (IA)
SK 6: Slučaj korišćenja – Izmena izostanaka učenika
Naziv SKEvidencija izostanaka učenika
Aktori SKKorisnik
Učesnici SKKorisnik i sistem (program)
Preduslov:Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za izostanke učenika.
Osnovni scenario SK
scenario SK
1. Korisnik unosi podatke o uceniku cije izostanke zeli da prikaze. (APUSO)
2. Korisnik poziva sistem da nađe izostanke izabranog učenika (APSO)3. Sistem traži izostanke učenika po zadatim vrednostima. (SO)4. Sistem prikazuje korisniku nađenu evidenciju izostanaka. (IA)
5. Korisnik bira izostanank koje želi da izmeni. (APUSO)
6. Korisnik poziva sistem da opravda izostanku. (APSO)7. Sistem pamti podatke o izostanku. (SO)8. Sistem prikazuje korisniku poruku: “Sistem je opravdao izostanak.” (IA)
4.1. Ukoliko sistem ne može da nađe evidenciju izostanaka on prikazuje korisniku poruku: “Sistem ne može da nađe evidenciju izostanaka”. Prekida se izvršenje scenarija. (IA)
8.1. Ukoliko sistem ne može da zapamti podatke o izostanku on prikazuje korisniku poruku: “Sistem ne može da opravda izostanak”. (IA)
SK7: Slučaj korišćenja – Unošenje predmeta
Naziv SK Kreiranje novog predmeta
Aktori SK Korisnik (službenik)
Učesnici SK Korisnik isistem(program)
Preduslov: Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za rad sa predmetima.
Osnovni scenario SK
1. Korisnik poziva sistem da kreira nov predmet. (APSO) 2. Sistem kreira nov predmet. (SO) 3. Sistem prikazuje korisniku nov predmet i poruku: “Sistem je kreirao nov predmet”. (IA)
4. Korisnik unosi podatke o novom predmetu. (APUSO)
5. Korisnik kontroliše da li je korektno uneo podatke o novom predmetu. (ANSO) 6. Korisnik poziva sistem da zapamti podatke o novom predmetu. (APSO) 7. Sistem pamti podatke o novom predmetu. (SO) 8. Sistem prikazuje korisniku poruku: “Sistem je zapamtio predmet”. (IA)
Alternativna scenarija
3.1 Ukoliko sistem ne može da kreira nov predmet on prikazuje korisniku poruku: “Sistem ne može da kreira nov predmet”. Prekida se izvršenje scenarija. (IA)
4.1 Ukoliko sistem ne može da zapamti podatke o novom predmetu on prikazuje korisniku poruku “Sistem ne može da zapamti nov predmet”.
SK8: Slučaj korišćenja – Unošenje ocene
Naziv SKUnošenje ocene
Aktori SKKorisnik
Učesnici SKKorisnik i sistem (program)
Preduslov:Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za unošenje ocene, učitani su svi predmeti.
Osnovni scenario SK
scenario SK
1. Korisnik unosi vrednost po kojoj pretražuje učenike. (APUSO)
2. Korisnik poziva sistem da nađe učenike po zadatoj vrednosti. (APSO) 3. Sistem traži učenike po zadatoj vrednosti. (SO) 4. Sistem prikazuje korisniku pronađenog učenika. (IA)
5. Korisnik unosi podatke o novim ocenama učenika. (APUSO)
6. Korisnik kontroliše da li je korektno uneo podatke o novim unešenim ocenama. (ANSO)
7. Korisnik poziva sistem da zapamti podatke o unešenim ocenama. (APSO)8. Sistem pamti podatke o novim unešenim ocenama. (SO)9. Sistem prikazuje korisniku poruku:”Sistem je zapamtio unešene ocene”. (IA)
Alternativna scenarija
4.1. Ukoliko sistem ne može da pronađe učenike on prikazuje korisniku poruku: “Sistem ne može da pronađe učenike”. Prekida se izvršenje scenarija. (IA)
9.1. Ukoliko sistem ne može da kreira nov unos ocene on prikazuje korisniku poruku: “Sistem ne može da kreira nov unos ocene”. Prekida se izvršenje scenarija. (IA)
SK 9: Slučaj korišćenja – Izmena ocene učenika
Naziv SKIzmena ocene
Aktori SKKorisnik
Učesnici SKKorisnik i sistem (program)
Preduslov:Sistem je uključen i korisnik je ulogovan pod svojom šifrom. Sistem prikazuje formu za izmenu ocene.
Osnovni scenario SK scenario SK
1. Korisnik poziva sistem da prikaže ocene izabranog učenika za izabrani predmet (APSO)
2. Sistem traži ocene po zadatoj vrednosti. (SO) 3. Sistem prikazuje korisniku pronađene ocene učenika. (IA)
4. Korisnik bira ocenu (APUSO)
5. Sistem prikazuje korisniku ocenu (ANSO)6. Korisnik unosi izmene ocene (APUSO)
7. Korisnik pozivasistemda izmeni ocenu. (APSO) 8. Sistem menja ocenu. (SO) 9. Sistem prikazuje korisniku poruku: “Sistem je izmenio ocenu.” (IA)
Alternativna scenarija
3.1 Ukoliko sistem ne može da nađe podatke o ocenama on prikazuje korisniku poruku: “Sistem ne može da nađe ocene po zadatoj vrednosti”. Prekida se izvršenje scenaria. (IA)
9.1 Ukoliko sistem ne može da izmeni ocenu on prikazuje korisniku poruku “Sistem ne može da izmeni ocenu”. (IA)
SK10: Slučaj korišćenja – Prijavljivanje korisnika
Naziv SK: Prijavljivanje korisnika
Aktori SK: Korisnik
Učesnici SK: Korisnik i sistem (program)
Preduslov: Sistem je uključen i prikazuje formu za logovanje.
Osnovni scenario SK:
1. Korisnik unosi podatke za autentifikaciju korisnika. (APUSO)
2. Korisnik poziv asistem da prijavi korisnika sa zadatim podacima. (APSO)
3. Sistem prijavljuje korisnika. (SO)
4. Sistem prikazuje poruku da je korisnik uspešno prijavljen i omogućava pristup sistemu.(IA)
Alternativna scenarija:
4.1. Ukoliko sistem ne može da nađe korisnika prikazuje poruku da korisnik nije uneo tačne podatke. (IA)
Ekranska forma prosleđuje podatke i prikazuje podatke dobijene od kontrolera korisničkog interfejsa. U skladu sa tim kontroler korisničkog interfejsa odgovoran je za:
prihvatanje podataka koje šalje ekranska forma konvertovanje podataka (koji se nalaze u grafičkim elementima) u objekat koji
predstavlja ulazni argument sistemske operacije slanje zahteva izvršenje sistemske operacije do aplikacionog servera (softverskog
sistema) prihvatanje objekta (izlaz) softverskog sistema koji nastaje kao rezultat izvršenja
sistemske operacije konvertovanje objekta u podatke grafičkih elemenata
3.2. Projektovanje aplikacione logike
Aplikacioni serveri treba da obezbede servise koji će da omoguće realizaciju aplikacione logike softverskog sistema. Projektovani aplikacioni server sadrži:
deo za komunikaciju sa klijentima kontroler aplikacione logike deo za komunikaciju sa skladištem podataka (Broker baze podataka) deo koji sadrži poslovnu logiku
3.2.1. Komunikacija sa klijentima
Deo za komunikaciju podiže serverski soket koji dalje osluškuje mrežu. Kada klijent uspostavi konekciju server generiše nit koja će biti odgovorna za dvosmernu vezu sa klijentom. Klijent šalje zahtev za izvršenje neke od sistemskih operacija, odgovarajuća nit (dodeljena klijentu) prihvata zahtev i prosleđuje ga do kontrolera aplikacione logike. Nakon izvršenja sistemske operacije kontroler vraća rezultat “niti klijenta”.Rezultat se zatim prosleđuje klijentu.Komunikacija između klijenta i servera se obavlja razmenom objekta klase TransferKlasa.
Public Object Rezultat {get { return rezultat; }set { rezultat = value; } } }}
3.2.2. Kontroler aplikacione logike
Kontroler aplikacione logike prihvata zahteve za izvršenje sistemskih operacija i iste prosleđuju do konkretne sistemske operacije. Nakon, izvršenja sistemske operacije kontroler prihvata odgovor i vraća nazad pozivaocu (niti klijenta). Kako je u fazama prikupljanja zahteva i analize data specifikacija strukture i ponašanja softverskog sistema, odnosno specifikacija poslovne logike softverskog sistema, sledeća slika daje opis sistema nakon faza projektovanja komunikacije sa klijentima i kontrolera aplikacione logike.
3.2.3. Poslovna logika
Projektovanje ponašanja softverskog sistema – sistemske operacije
Preko klase Kontroler prihvataju se zahtevi od niti klijenta za izvršenje sistemskih operacija koji se zatim prosleđuju do odgovarajućih klasa koje su odgovorne za izvršenje SO. Za svaku SO prave se softverske klase koje treba da realizuju SO (one opisuju ponašanje sistema).
Preduslovi: Ako za datog učenika postoje već tri izostanka koja nisu opravdana ne može se izvršiti sistemska operacija. Prosto vrednosno ograničenje nad objektom Zaduzenje mora biti zadovoljeno.
Strukturno ograničenje nad objektom Zaduzenje mora biti zadovoljeno.Postuslovi: Podaci o izostanku su zapamćeni.
foreach (Biblioteka.Izostanak i in lista) { i.Ucenik = Sesija.Broker.dajSesiju().dajZaUslovJedan(i.Ucenik) as Biblioteka.Ucenik; i.Korisnik = Sesija.Broker.dajSesiju().dajZaUslovDva(i.Korisnik) as Biblioteka.Korisnik; }return lista; } }}
Preduslovi: Prosto vrednosno ograničenje nad objektom Predmet mora biti zadovoljeno.
Strukturno ograničenje nad objektom Predmet mora biti zadovoljeno.
Postuslovi: Podaci o predmetu su zapamćeni.
namespace SistemskeOperacije.PredmetSO{ public class ZapamtiPredmet:OpstaSO { public override object Izvrsi(Biblioteka.OpstiDomenskiObjekat odo) {
return Sesija.Broker.dajSesiju().ubaci(odo); } }}
Ugovor UG11:KreirajNovUnosOcene
Operacija: KreirajNovUnosOcene(Unos):signal;
Veza sa SK: SK8
Preduslovi: -
Postuslovi: Kreirana je nova ocena.
namespace SistemskeOperacije.Ocena{ public class UnosOcene:OpstaSO { public override object Izvrsi(Biblioteka.OpstiDomenskiObjekat odo) { Biblioteka.Ucenik u = odo as Biblioteka.Ucenik;
Public class PronadjiOcenu:OpstaSO {Public override object Izvrsi(Biblioteka.OpstiDomenskiObjekat odo) {return Sesija.Broker.dajSesiju().dajSveZaUslovDva(odo); } }}
Ugovor UG14: ZapamtiOcenu
Operacija: ZapamtiOcenu(Ocena):signal;
Veza sa SK: SK8, SK9
Preduslovi: Prosto vrednosno ograničenje nad objektom Ocena mora biti zadovoljeno.
Strukturno ograničenje nad objektom Ocena mora biti zadovoljeno.Postuslovi: Podaci o oceni su zapamćeni.
namespace SistemskeOperacije.Ocena{ public class UnosOcene:OpstaSO { public override object Izvrsi(Biblioteka.OpstiDomenskiObjekat odo) { Biblioteka.Ucenik u = odo as Biblioteka.Ucenik;
foreach (Biblioteka.Ocena o in u.SpisakOcena) { o.OcenaID = Sesija.Broker.dajSesiju().dajSifru(o); Sesija.Broker.dajSesiju().ubaci(o); } return 1; } }}
Ugovor UG15: PrijaviKorisnika
Operacija: PrijaviKorisnika(Korisnik):signal;
Veza sa SK: SK10
Preduslovi: -
Postuslovi: -
namespace SistemskeOperacije.KorisnikSO{Public class LoginSO:OpstaSO
Public string uslovDva {get { return uslovDvaatr; } }
Public string uslovTri {get { returnnull; } }
Public string azuriranje {get { returnnull; } }
Public string upisivanje {get { return"("+predmetID+",'"+naziv+"',"+matematicki+","+drustveni+","+opsti+")"; } }
Public OpstiDomenskiObjekat napuni(DataRow red) {Predmet p = new Predmet(); p.predmetID = Convert.ToInt32(red[0]); p.naziv = red[1].ToString(); p.matematicki = Convert.ToBoolean(red[2]); p.drustveni = Convert.ToBoolean(red[3]);
p.opsti = Convert.ToBoolean(red[4]);
return p; } #endregion }
}
3.2.4. Broker baze podataka
Klasa DatabaseBroker (Broker baze podataka) se projektuje kako bi se obezbedio perzistentni servis objektima domenskih klasa koji se čuvaju u bazi podataka. Tako klasa DatabaseBroker predstavlja perzistentni okvir koji posreduje u svim operacijama nad bazom podataka i realizuje sledeće metode:
1) public void otvoriKonekciju()2) public void zatvoriKonekciju()3) public void zapocniTransakciju()4) public void potvrdiTransakciju()5) public void ponistiTransakciju()6) public List<OpstiDomenskiObjekat>dajSve(OpstiDomenskiObjekat odo)7) public List<OpstiDomenskiObjekat>dajSveZaUslovDva(OpstiDomenskiObjekat odo)8) public List<OpstiDomenskiObjekat>dajSveZaUslovTri(OpstiDomenskiObjekat odo)9) public OpstiDomenskiObjekat dajZaUslovJedan(OpstiDomenskiObjekat odo)10) public OpstiDomenskiObjekat dajZaUslovDva(OpstiDomenskiObjekat odo)11) int ubaci (OpstiDomenskiObjekat odo)12) int obrisi (OpstiDomenskiObjekat odo)13) int azuriraj (OpstiDomenskiObjekat odo)14) int dajSifru (OpstiDomenskiObjekat odo)
Metode DatabaseBrokera su projektovane kao generičke, što znači da mogu da prihvate različite domenske objekte preko parametara kako ne bi u DatabaseBroker-u implementirali pojedinačne metode za svaku domensku klasu. Takođe postoje i pojedinačne metode koje nisu mogle biti projektovane kao generičke..
Veze klase DBBroker sa klasom OpstiDomenski objekat
3.3. Projektovanje skladišta podataka
Na osnovu softverskih klasa strukture projektovane su tabele (skladišta podataka) relacionog sistema za upravljanje bazom podataka (MS Access).
Smer
SmerID NumberNazivSmera Text
Ucenik
JMBG TextIme Text
Prezime TextMail TextUlica NumberBroj TextGrad Number
Predmet
PredmetID NumberNaziv Text
Matematicki Yes/NoDrustveni Yes/No
Opsti Yes/No
Ocena
OcenaID NumberDatum Date/Time
Ocena NumberUcenikID Text
PredmetID NumberKorisnikID Number
Korisnik
KorisnikID NumberIme Text
Prezime TextKorisnickoIme TextKorisnickaSifra Text
Izostanak
IzostanakID NumberDatum Date/Time
UcenikID TextBrojIzostanaka Number
Opravdani Yes/NoKorisniID Number
4.Implemetacija
Softverski system je razvijen u programskom jeziku C#.Sistem je projektovan kao klijent-server.Kao sistem za upravljanjem bazom podataka korišćen je MS Access, dok je razvojno okruženje VisualStudio 2010.
Slika 5 Arhitektura softverskog sistema
5. Testiranje
Literatura
dr Siniša Vlajić, Projektovanje softvera (skripta), Beograd, 2011.