Posted in

UML skeemid

Skeemitüübid

Andmebaasiskeem (Database diagram, диаграмма базы данных)

Andmebaasiskeemi kasutatakse andmete struktuuri ja nendevaheliste seoste määratlemiseks. See kirjeldab andmebaasi tabeleid (olemeid), neis sisalduvaid välju (atribuute) ning tabelitevahelisi seoseid. Skeem on aluseks andmete korrektsele salvestamisele ja päringute teostamisele süsteemis.

Kasutuslooskeem (Use case diagram, диаграмма прецедентов)

Kasutuslooskeeme kasutatakse süsteemi moodustavate tähtsaimate elementide ja protsesside määramiseks. Primaarelemente nimetatakse “aktoriteks” (эктор) ning protsesse “kasutuslugudeks” (прецедент). Kasutuslooskeem näitab, millised aktorid suhtlevad iga kasutususlooga.

Klassiskeem (Class diagram, диаграмма класса)

Klassiskeemi kasutatakse nö. kasutuslooskeemi viimistlemiseks ning üksikasjaliku süsteemidisaini määramiseks. Klassiskeem liigitab kasutuslooskeemil määratud aktorid omavahel seotud klasside kogumiks. Klassidevaheline suhe või assotsiatsioon võib olla kas “on” või “omab” tüüpi. Iga klassiskeemil toodud klass on võimeline pakkuma teatud funktsionaalsust. Neid nimetatakse klassi meetoditeks. Lisaks sellele on igal klassil olemas rida atribuute mis määravad klassi üheselt.

Objektiskeem (Object diagram, диаграмма объекта)

objektskeem on teatud tüüpi klassiskeem. Objekt esitab klassi olekut teatud ajahetkel süsteemi töö käigus. Objektiskeem esitab süsteemi erinevate klasside olekuid ning nendevahelisi relatsioone või assotsiatsioone teatud ajahetkel.

Olekuskeem (State Diagram, диаграмма состояния)

nagu ka nimi ütleb näitab olekuskeem erinevaid olekuid, mida läbivad süsteemis olevad objektid oma elutsükli jooksul. Süsteemis olevad objektid muudavad oma olekut vastavalt süsteemis toimuvatele sündmustele. Lisaks sellele näitab olekuskeem ka objekti oleku üleminekut algolekust lõppolekusse vastavalt süsteemi mõjutavatele sündmustele.

Tegevusskeem (Activity diagram, диаграмма активности)

protsesside kulgemist süsteemis kirjeldatakse tegevusskeemi abil. Sarnaselt olekuskeemile koosneb ka tegevusskeem toimingutest, tegevustest, üleminekutest, alg- ja lõppolekust ning tõkisetingimustest

Jadaskeem (Sequence diagram, диаграмма последовательности)

jadaskeem esitab süsteemi objektide omavahelist suhtlemist. Jadaskeemi oluliseks omaduseks on selle ajaline järjestus. S.o. esitatakse samm-sammult täpne objektide vaheline interaktsioon. Erinevad objektid jadaskeemil suhtlevad omavahel “sõnumite” edastamise kaudu.

Koostööskeem (Collaboration diagram, диаграмма взаимодействия)

koostööskeem grupeerib erinevate objektide vahelise interaktsiooni. Interaktsioonid esitatakse nummerdatuna, mis lubab jälgida nende toimumise järjekorda. Koostööskeem lubab kindlaks teha kõikvõimalikud interaktsioonid mis igat objekti teistega seovad.

Komponentskeem (Component diagram, диаграмма развертывания)

komponentskeemi abil kujutatakse kõrgtaseme osi, millest süsteem koosneb. See skeem esitab millised komponendid süsteemi moodustavad ning kuidas nad omavahel seotud on. Levitusskeem (Deployment diagram): levitusskeemi abil kujutatakse rakenduse käitusaegeseid elemente.

Use Case Diagram

Aktor (actor) on loogiliselt seotud rollide kogum, mida täidetakse suhtlemisel pretsedentide või olemusega.

Pretsedent (kasutusjuhtum) on süsteemi käitumise üksiku aspekti kirjeldus kasutaja seisukohast.

Märgid:

  • Graafiliselt kujutatakse ektorit „inimese“ kujul.
  • Pretsedendid on märgitud ellipsi sees. Pretsedendid ja ektorid on ühendatud joonte või nooltega.
  • Noolte suund näitab, kellelt teenust/teenuseid taotletakse.

drawio

Hobujaam andmebaas

Activity Diagram

See skeem on mõeldud üldisemalt protsesside modelleerimiseks, kuid sobib kasutada ka väiksemaid ülesandeid lahendavate algoritmide kujutamiseks.

Algussõlm – must muna, kust kõik algab. Sellest läheb välja üks nool.

Toiming – ümarate nurkadega kast. See on üks ülesanne või käsk. Üks nool tuleb sisse ja üks läheb välja.

Voog – nool, mis näitab liikumise suunda järgmise sammuni.

Otsustuspunkt – romb ehk valikukoht. Siin küsitakse küsimus ja valitakse sobiv tee (nagu if-lause).

Lõpp – must täpp, kus algoritm saab läbi.

Database Diagram

See skeem on mõeldud selleks, et olla “arhitektuurne joonis” infosüsteemi loomisel. Kui võrrelda andmebaasi ehitamist maja ehitamisega, siis skeem on projekti joonis, mille järgi ehitajad töötavad.

Mudelid:

„entiteedid-seosed” – OLEMID – SEOSED

„entiteedid-atribuutid-seosed” – OLEMID – ATRIBUUTID – SEOSED

hierarhiline mudel – hierarhiline mudel

relatsiooniline mudel – relatsiooniline mudel / andmemudel

Olemid (Entities/Tables): Tavaliselt kujutatud ristkülikutena. Need tähistavad reaalset eluobjekti või kontseptsiooni, mille kohta andmeid kogutakse (nt “Klient”, “Toode”, “Tellimus”).

Seosed (Relationships): Jooned, mis ühendavad tabeleid ja näitavad, kuidas andmed on omavahel seotud (nt üks klient võib esitada mitu tellimust).

Atribuudid (Attributes/Fields): Need on olemi omadused ehk tabeli veerud (nt kliendi nimi, e-posti aadress, toote hind).

Võtmed (Keys):

Primaarvõti (Primary Key – PK): Unikaalne tunnus, mis tuvastab iga kirje tabelis (nt Kliendi_ID).

Välisvõti (Foreign Key – FK): Viide teise tabeli primaarvõtmele, mis loobki seose kahe tabeli vahel.

Class Diagram

Klassidiagramm on kogu süsteemi loogiline “arhitektuurne projekt”. See ei näita ainult seda, milliseid andmeid me säilitame, vaid ka seda, kuidas süsteemi osad käituvad ja üksteisega suhtlevad.

Klassid (Classes): Kujutatakse ristkülikutena, mis on jagatud kolmeks sektsiooniks:

  1. Nimi: Klassi nimetus (nt “Hobune”, “Kasutaja”).
  2. Atribuudid (Attributes): Klassi omadused ehk andmed (nt nimi: String, vanus: Int).
  3. Meetodid/Operatsioonid (Methods): Tegevused, mida see klass suudab teha (nt lisaToitmine(), muudaStaatust()).

Atribuudid (Attributes): Erinevalt andmebaasist määratakse klassidiagrammis ka andmete nähtavus:

  1. + (Public): Kõigile nähtav.
  2. – (Private): Nähtav ainult klassi siseselt.
  3. # (Protected): Nähtav klassile ja selle järeltulijatele.

Seosed (Relationships): Jooned, mis näitavad objektide vahelisi loogilisi ühendusi:

  1. Assotsiatsioon (Association): Tavaline seos kahe klassi vahel (nt “Töötaja toidab hobust”).
  2. Pärilus (Inheritance/Generalization): Näitab “on-tüüpi” seost, kus alamklass pärib ülemklassi omadused (nt “Veterinaar” on “Töötaja” eriliik).
  3. Agregatsioon ja Kompositsioon: Näitavad “osa-tervik” suhet (nt “Tall” koosneb “Boksidest”).

Kordsus (Multiplicity): Näitab, mitu objekti seoses osaleb (nt 1 (üks), 0..* (null kuni mitu), 1..* (vähemalt üks)).