Kasutusjuhtudest andmebaasirakenduseni

See leht demonstreerib, kuidas kasutusjuhtude nõuetest jõutakse toimiva andmebaasirakenduseni, kasutades PostgreSQL andmebaasi.

Kasutusjuht: Lõpeta tuba

Primaarne tegutseja: Juhataja

Osapooled ja nende huvid:

Käivitav sündmus: Toa kasutamine tehingutes on vaja püsivalt lõpetada, kuna seoses toaga on ilmnenud püsiva iseloomuga probleemid või kuna tuba on oma aja lihtsalt ära elanud.

Eeltingimused: Juhataja on autenditud ja autoriseeritud. Tuba on registreeritud ja on seisundis „Aktiivne“ või „Mitteaktiivne“.

Järeltingimused: Toa seisund on muutunud „Lõpetatud“, kuid toa andmed on süsteemis endiselt alles. Toa andmeid ei tohi süsteemist füüsiliselt kustutada, sest sellega seoses tuleks kustutada info kõigi tehingute kohta, millega tuba on seotud.

Stsenaarium (tüüpiline sündmuste järjestus):

  1. Juhataja avaldab soovi tuba lõpetada.
  2. Süsteem kuvab aktiivsete või mitteaktiivsete tubade nimekirja, kus on toa kood, toa nimetus, hetkeseisundi nimetus (OP9.1).
  3. Juhataja valib nimekirjast toa ja annab korralduse see lõpetada.
  4. Süsteem salvestab andmed (OP5).

Operatsioon OP9.1: Andmete lugemine tubade kuvamiseks.

Operatsioon OP5: Andmete muutmine toa lõpetamiseks.

Juhataja võib samme 1-4 läbida nii mitu korda kui soovib.

Laiendused (või alternatiivne sündmuste käik):

Interaktiivne stsenaarium

Klõpsa nupule, et läbida kasutusjuhtu samm-sammult. Nupp "Alusta uuesti" taastab algseisundi. Saad igal hetkel vajutada nupule "Lõpeta kasutusjuhu läbimine", et näha, mis toad selle seansi ajal lõpetati.

Samm 1: Soovi avaldamine

Juhataja avaldab soovi tuba lõpetada. Käivitav sündmus: Toa kasutamine tehingutes on vaja püsivalt lõpetada, kuna seoses toaga on ilmnenud püsiva iseloomuga probleemid või kuna tuba on oma aja lihtsalt ära elanud.

Süsteem valmistub kuvama lõpetatavate tubade nimekirja.

Samm 2: Tubade nimekirja kuvamine (OP9.1)

Süsteem kuvab aktiivsete või mitteaktiivsete tubade nimekirja. Saad siit valida toa lõpetamiseks või jätkata "Lõpeta tuba" nuppu vajutades. Kui vajutad "Jätka sammuga 3", siis ilmub teavitusaken, mis palub sul valida konkreetse toa.

Andmed pärinevad andmebaasi vaatest lopetatavad_toad, mis omakorda põhineb tabelitel Tuba ja Toa_seisundi_liik. Iga rea "Lõpeta tuba" nupu vajutus kutsub välja andmebaasi funktsiooni f_lopeta_tuba (OP5).

Sisesta osa toa nimest, et nimekirja filtreerida.
Lõpetatavad toad. Kliki veeru päisel, et sorteerida. Vajuta "Lõpeta tuba", et tuba lõpetada.
Kood Nimetus Hetkeseisund Tegevus

Samm 3: Toa valimine ja korraldus

Juhataja valib nimekirjast toa ja annab korralduse see lõpetada, vajutades vastava toa real nupule "Lõpeta tuba".

(Seda sammu enam eraldi ei kuvata, toiming tehakse otse sammus 2.)

Samm 4: Andmete salvestamine (OP5)

Süsteem salvestab muudatused andmebaasi, kutsudes välja funktsiooni f_lopeta_tuba.

Simuleeritud SQL käsklus andmebaasis:

-- Siia ilmub SQL SELECT lause

Andmed tabelis Tuba on muudetud. Vaade lopetatavad_toad ei sisalda enam seda tuba.

Järeltingimus: Toa seisund on muudetud „Lõpetatud“, toa andmed on süsteemis alles.

Võid valida järgmise toa lõpetamiseks, vajutades "Tagasi sammu 2 juurde".

Stsenaarium lõppenud (kõik toad lõpetatud)

Kõik sobivad toad on lõpetatud. Enam ei ole aktiivseid ega mitteaktiivseid tube, mida lõpetada. Juhataja ei saa jätkata (laiendus 3b).

Võid vajutada "Alusta uuesti", et stsenaariumit korrata, või "Lõpeta kasutusjuhu läbimine", et näha tulemust.

Andmebaas

Siin on näha andmebaasi struktuuri ja andmeid, mis on seotud "Lõpeta tuba" kasutusjuhuga.

Virtuaalne andmete kiht

See kiht lihtsustab rakendusel andmetele ligipääsu ja äriloogika rakendamist.

Funktsioon: f_lopeta_tuba

See funktsioon teostab toa lõpetamise loogika vastavalt OP5 lepingule.

Funktsioon muudab Tuba tabelis valitud toa toa_seisundi_liik_kood väärtuseks 4 ('Lõpetatud').

Vaade: lopetatavad_toad

See vaade tagastab toad, mida saab lõpetada (seisundis 'Aktiivne' või 'Mitteaktiivne') vastavalt OP9.1 nõudele. Read on värvitud vastavalt toa seisundile.

Vaate hetkeseis:

Andmed vaatest lopetatavad_toad
tuba_kood toa_nimetus hetkeseisundi_nimetus

Baastabelid

Need tabelid sisaldavad tõeseid väiteid reaalse maailma olemite kohta, millest saab hakata päringutega tuletama uusi väiteid.

Tabel: Toa_seisundi_liik

Sisaldab võimalikke toa seisundeid.

Andmed tabelist Toa_seisundi_liik
toa_seisundi_liik_kood nimetus on_aktiivne

Tabel: Tuba

Sisaldab infot tubade kohta.

Andmed tabelist Tuba
tuba_kood nimetus toa_seisundi_liik_kood viimase_muutm_aeg