Podcast
Questions and Answers
Koja od navedenih tvrdnji najbolje opisuje vezu između konceptualnog modela i UML dijagrama klasa?
Koja od navedenih tvrdnji najbolje opisuje vezu između konceptualnog modela i UML dijagrama klasa?
- Konceptualni model i UML dijagram klasa su sinonimi i koriste se naizmjenično.
- Konceptualni model je direktna implementacija UML dijagrama klasa.
- UML dijagram klasa se koristi za modeliranje baze podataka, a konceptualni model za grafičko sučelje.
- UML dijagram klasa je vizualni prikaz klasa, dok konceptualni model predstavlja stvarne objekte u domenu. (correct)
Koji princip objektno-orijentiranog programiranja se koristi za upravljanje složenošću problema naglašavanjem relevantnih osobina i skrivanjem drugih?
Koji princip objektno-orijentiranog programiranja se koristi za upravljanje složenošću problema naglašavanjem relevantnih osobina i skrivanjem drugih?
- Apstrakcija (correct)
- Polimorfizam
- Enkapsulacija
- Nasljeđivanje
Šta od navedenog predstavlja kriterij za određivanje funkcionalne povezanosti između dvije klase?
Šta od navedenog predstavlja kriterij za određivanje funkcionalne povezanosti između dvije klase?
- Broj linija koda u svakoj klasi
- Da li promjene u jednoj klasi utječu na promjene u drugoj klasi (correct)
- Da li klase imaju isti autor
- Vrijeme potrebno za kompajliranje svake klase
Koja je prva aktivnost u procesu modeliranja klasa u fazi analize i dizajna?
Koja je prva aktivnost u procesu modeliranja klasa u fazi analize i dizajna?
Koja je svrha identifikacije konceptualnih klasa u početnoj fazi dizajna softvera?
Koja je svrha identifikacije konceptualnih klasa u početnoj fazi dizajna softvera?
Šta predstavlja 'domen model' u kontekstu UML-a?
Šta predstavlja 'domen model' u kontekstu UML-a?
U UML dijagramu klasa, koji dio pravougaonika predstavlja atribute klase?
U UML dijagramu klasa, koji dio pravougaonika predstavlja atribute klase?
Šta je obavezno pri kreiranju klase?
Šta je obavezno pri kreiranju klase?
Kojim dijelom govora trebaju biti imenovani atributi klase?
Kojim dijelom govora trebaju biti imenovani atributi klase?
Koji pojam najbolje opisuje 'vidljivost' atributa u UML dijagramu klase?
Koji pojam najbolje opisuje 'vidljivost' atributa u UML dijagramu klase?
Šta specificira 'kardinalnost' atributa u dijagramu klasa?
Šta specificira 'kardinalnost' atributa u dijagramu klasa?
Šta označava osobina {readOnly}
u definiciji atributa?
Šta označava osobina {readOnly}
u definiciji atributa?
Šta su operacije klase?
Šta su operacije klase?
Koji simbol se koristi za označavanje javne (public) vidljivosti operacije u UML dijagramu klasa?
Koji simbol se koristi za označavanje javne (public) vidljivosti operacije u UML dijagramu klasa?
Šta označava stereotip <<create>>
u operacijama klase?
Šta označava stereotip <<create>>
u operacijama klase?
Koja je glavna svrha dijagrama klasa?
Koja je glavna svrha dijagrama klasa?
Šta se podrazumijeva pod 'statičkom strukturom sistema' u kontekstu dijagrama klasa?
Šta se podrazumijeva pod 'statičkom strukturom sistema' u kontekstu dijagrama klasa?
U kojem scenariju je najprikladnije koristiti dijagram klasa?
U kojem scenariju je najprikladnije koristiti dijagram klasa?
Koje vrste veza se mogu prikazati u UML dijagramu klasa?
Koje vrste veza se mogu prikazati u UML dijagramu klasa?
Šta predstavlja asocijacija u UML dijagramu klasa?
Šta predstavlja asocijacija u UML dijagramu klasa?
Ako asocijacija ima strelicu na oba kraja, šta to implicira?
Ako asocijacija ima strelicu na oba kraja, šta to implicira?
Šta označava navigabilnost u kontekstu asocijacija u UML dijagramu klasa?
Šta označava navigabilnost u kontekstu asocijacija u UML dijagramu klasa?
Šta predstavlja kardinalnost asocijacije?
Šta predstavlja kardinalnost asocijacije?
U asocijaciji između klasa A i B, ako klasa A 'pravi' klasu B, koji element to predstavlja u dijagramu?
U asocijaciji između klasa A i B, ako klasa A 'pravi' klasu B, koji element to predstavlja u dijagramu?
Koja je razlika između agregacije i kompozicije?
Koja je razlika između agregacije i kompozicije?
Ako klasa Tim
sadrži više objekata klase Osoba
, te osoba može biti član više timova, koju vrstu veze to predstavlja?
Ako klasa Tim
sadrži više objekata klase Osoba
, te osoba može biti član više timova, koju vrstu veze to predstavlja?
Kad je klasa Zid
dio klase Kuća
, i zid ne može postojati samostalno izvan kuće, koju vrstu veze to predstavlja?
Kad je klasa Zid
dio klase Kuća
, i zid ne može postojati samostalno izvan kuće, koju vrstu veze to predstavlja?
Koji je ispravan opis generalizacije (nasljeđivanja) u UML-u?
Koji je ispravan opis generalizacije (nasljeđivanja) u UML-u?
U situaciji kada GostRestorana
i InternetNaručilac
nasljeđuju od klase Naručilac
, koja je to vrsta veze?
U situaciji kada GostRestorana
i InternetNaručilac
nasljeđuju od klase Naručilac
, koja je to vrsta veze?
Šta znači višestruka generalizacija?
Šta znači višestruka generalizacija?
Ako klasa ZaposlenikNaručilac
nasljeđuje od GostRestorana
i ZaposlenikRestorana
, koji problem može nastati?
Ako klasa ZaposlenikNaručilac
nasljeđuje od GostRestorana
i ZaposlenikRestorana
, koji problem može nastati?
Kada postoji zavisnost između dva elementa u UML modelu?
Kada postoji zavisnost između dva elementa u UML modelu?
Ako klasa AplikacijaZaNaručivanje
ovisi o klasi Jelovnik
, šta to znači?
Ako klasa AplikacijaZaNaručivanje
ovisi o klasi Jelovnik
, šta to znači?
Šta su to interfejsi u UML dijagramu klasa?
Šta su to interfejsi u UML dijagramu klasa?
Koja tvrdnja je točna za interfejse u UML-u?
Koja tvrdnja je točna za interfejse u UML-u?
Koje su od sljedećih osobina klase?
Koje su od sljedećih osobina klase?
Flashcards
Vizuelizacija modela u UML-u
Vizuelizacija modela u UML-u
Vizuelni prikaz konceptualnih klasa ili objekata stvarne situacije.
Šta je Klasa?
Šta je Klasa?
Opis skupa objekata koji dijele iste atribute, metode, odnose i semantiku.
Šta je Apstrakcija?
Šta je Apstrakcija?
Ključni princip objektno-orijentisanog pristupa kojim se rješava složenost problema.
Zašto je Klasa apstrakcija?
Zašto je Klasa apstrakcija?
Signup and view all the flashcards
Funkcionalna Povezanost Klasa
Funkcionalna Povezanost Klasa
Signup and view all the flashcards
Modeliranje Klase
Modeliranje Klase
Signup and view all the flashcards
Prva aktivnost modeliranja
Prva aktivnost modeliranja
Signup and view all the flashcards
Druga aktivnost modeliranja
Druga aktivnost modeliranja
Signup and view all the flashcards
Treća aktivnost modeliranja
Treća aktivnost modeliranja
Signup and view all the flashcards
Konceptualni nivo apstrakcije klase
Konceptualni nivo apstrakcije klase
Signup and view all the flashcards
Specifikacijski nivo apstrakcije klase
Specifikacijski nivo apstrakcije klase
Signup and view all the flashcards
Implementacijski nivo apstrakcije klase
Implementacijski nivo apstrakcije klase
Signup and view all the flashcards
Opis Klasa u UML-u
Opis Klasa u UML-u
Signup and view all the flashcards
Šta enkapsulira Klasa?
Šta enkapsulira Klasa?
Signup and view all the flashcards
Dijelovi Simbola Klase
Dijelovi Simbola Klase
Signup and view all the flashcards
Šta su Atributi?
Šta su Atributi?
Signup and view all the flashcards
Ime Atributa
Ime Atributa
Signup and view all the flashcards
Tip Atributa
Tip Atributa
Signup and view all the flashcards
Kardinalnost Atributa
Kardinalnost Atributa
Signup and view all the flashcards
Inicijalna Vrijednost
Inicijalna Vrijednost
Signup and view all the flashcards
Opis Osobine
Opis Osobine
Signup and view all the flashcards
Vidljivost atributa
Vidljivost atributa
Signup and view all the flashcards
Changeable (Promjenjivost)
Changeable (Promjenjivost)
Signup and view all the flashcards
Read-only (Samo za čitanje)
Read-only (Samo za čitanje)
Signup and view all the flashcards
Frozen (Zamrznut)
Frozen (Zamrznut)
Signup and view all the flashcards
Add-only (Samo za dodavanje)
Add-only (Samo za dodavanje)
Signup and view all the flashcards
Operacije Klase
Operacije Klase
Signup and view all the flashcards
Tip Rezultata Operacije
Tip Rezultata Operacije
Signup and view all the flashcards
Opis Osobine Operacije
Opis Osobine Operacije
Signup and view all the flashcards
Asocijacija
Asocijacija
Signup and view all the flashcards
Dvosmjerna Asocijacija
Dvosmjerna Asocijacija
Signup and view all the flashcards
Navigabilnost
Navigabilnost
Signup and view all the flashcards
Kardinalnost Asocijacije
Kardinalnost Asocijacije
Signup and view all the flashcards
Agregacija i Kompozicija
Agregacija i Kompozicija
Signup and view all the flashcards
Agregacija
Agregacija
Signup and view all the flashcards
Kompozicija
Kompozicija
Signup and view all the flashcards
Generalizacija
Generalizacija
Signup and view all the flashcards
Veza Zavisnosti
Veza Zavisnosti
Signup and view all the flashcards
Study Notes
Vizualizacija modela u UML-u
- Vizualno predstavljanje konceptualnih klasa ili objekata u stvarnim situacijama unutar domene.
- Objekti (konceptualne klase) nisu softverski objekti (klase).
- Domen model u UML-u se predstavlja skupom dijagrama klasa bez metoda.
- Postoje dva pristupa konačnom rješenju:
- Na osnovu Use case dijagrama kreira se domain model, a zatim dizajn model.
- Na osnovu Use case dijagrama kreira se Domain model, sekvencijalni dijagram, pa dizajn model.
Klasa
- Klasa je opis skupa objekata koji dijele iste atribute, metode, odnose i semantiku.
- Apstrakcija je ključni princip objektno-orijentiranog pristupa za rješavanje složenosti problema.
- Klasa je apstrakcija jer naglašava relevantne osobine i skriva druge osobine.
Povezivanje klasa
- Kriteriji za određivanje funkcionalne povezanosti između dvije klase uključuju:
- Utjecaj promjena u jednoj klasi na drugu.
- Direktni utjecaj izbacivanja klase iz sistema na drugu klasu.
- Interakcija klase putem velikog skupa poruka.
Model klase u fazi analize i dizajna
- Kreiranje dijagrama klasa zahtijeva iterativno modeliranje zasnovano na seriji aktivnosti.
- Aktivnosti uključuju:
- Pronalaženje i identifikaciju svih klasa i veza u domenu problema (korak 1).
- Identifikaciju atributa i operacija za klase (korak 2).
- Definisanje raznih struktura generalizacije i sličnih aktivnosti (korak 3).
Primjer – online shop-Korak 1
- Identifikacija konceptualnih klasa za on-line shop model.
- Nazivi objekata koji se mogu koristiti tokom online trgovine.
Domen model– Primjer-online trgovina-Korak 2
- Identifikacija veza i mnogostrukosti veza (višestrukost veza), bez atributa.
Dijagram KLASA-Primjer- Korak3
- Dodaju se atributi i operacije.
Klase u UML-u
- Klase opisuju različite tipove objekata koje sistem može imati.
- Klasa se prikazuje kao pravougaonik podijeljen u 3 dijela.
- Gornji dio sadrži ime klase, srednji dio atribute, a donji dio operacije klase.
- Dio UML klase namijenjene za atribute i operacije je opcionalan.
- Ako ne postoje operacije ili atributi klase, dio koji je namijenjen za njihovo navođenje može biti prikazan kao prazan dio u okviru UML simbola klase.
Kreiranje klase
- Klasa enkapsulira stanje i ponašanje objekta koji predstavlja.
- Obavezan je samo identifikator klase, dakle mogu postojati klase bez atributa i/ili bez metoda - operacija.
- Simbol klase sadrži tri dijela: identifikator, atributi i operacije.
Termini za imenovanje: klasa, atributa i operacija
- Imenovanje klasa se vrši imenima iz domena problema.
- Atributi implementiraju strukturu objekta i trebaju se imenovati imenicom.
- Operacije implementiraju funkcionalnost objekta i trebaju se imenovati glagolom.
Nivoi apstrakcije klase
- Konceptualni: predstavlja koncept u domenu problema.
- Specifikacijski: fokus je na interfejsu apstraktnog tipa podataka.
- Implementacijski: opis načina implementacije klase.
- Obavezan je samo naziv klase, a ovisno o nivou apstrakcije prezentacije prikazuje se više ili manje informacija.
Definiranje atributa jedne klase
- Atributi određuju osobine klase ili interfejsa.
- Klase ne moraju imati atribute (konceptualni model), ili ih mogu imati više (specifikacijski, implementacijski model).
- Svi objekti jedne klase imaju iste atribute, ali njihove vrijednosti mogu biti različite.
- Vrijednosti atributa jedne instance klase određuju stanje instance klase ili objekta.
- Nazivi atributa jedne klase su jedinstveni, što znači da klasa ne može imati dva atributa istog naziva.
- Jedan atribut može biti kopiran u drugu klasu.
Atributi klase-implementacijski nivo
- Atributi klase, koji se prikazuju u srednjem dijelu ikone za klasu, opisuju podatke sadržane u objektu klase, čiji je oblik:
- vidljivost ime:tip kardinalnost = inicijalna_vrijednost {opis_osobine}
- Primjer: -name: String[1] =[Bez naslova ] {ReadOnly}
- Vidljivosti označavaju da li je atribut javni (+), privatni (-), zaštićeni (#) ili paketski (~).
- Privatna vidljivost znači da je atribut raspoloživ samo unutar klase, unutar koje je i definiran.
- Javna vidljivost znači da je atribut raspoloživ za sve klase koje su u asocijaciji sa klasom koja je vlasnik atributa.
- Zaštićena vidljivost označava da je atribut raspoloživ unutar klase koja posjeduje atribut i svakog podtipa klase i vezana je za koncept generalizacije.
- Paketska vidljivost znači, da je atribut raspoloživ samo drugim klasama u istom paketu u kojem je i klasa unutar koje je definiran atribut.
- Atributi najčešće imaju privatnu vidljivost.
Atributi klase
- Ime atributa određuje ime atributa u klasi i približno odgovara imenu polja u programskom jeziku - IME ATRIBUTA JE OBAVEZNO.
- Tip atributa ukazuje na to da postoji ograničenje vrste objekata, koji se mogu smjestiti u atribut.
- O tipu atributa se može razmišljati i kao o tipu polja u programskom jeziku.
- Tipovi podataka atributa mogu biti primitivni ili klase.
- Kardinalnost pokazuje na koliko objekata se odnosi osobina.
- Inicijalna vrijednost definira inicijalno dodijeljenu vrijednost atributu objekta instanciranog na osnovu definirane klase.
- Opis osobine omogućava da se definiraju dodatne osobine atributa.
Neke od definicija osobina
- Osobine se koriste za dodavanje opisnih informacija o atributima, operacijama i parametrima, To su riječi sa predefiniranim značenjem i uvijek su zadnji element u definiciji objekta.
readOnly
- vrijednost atributa se ne može mijenjati nakon inicijalizacije.ordered
- primjenjuje se na atribute koji sadrže skup podataka.union
- atribut predstavlja uniju vrijednosti drugih atributa.
Dijagram klasa
- Dijagram klasa opisuje tipove objekata u sistemu i različite vrste statičkih veza.
- Prikazuju svojstva i operacije klasa, načine povezivanja objekata i logički pogled na sistem.
- Dijagram predstavlja statičku strukturu sistema.
Dijagram klasa - namjena
- dokumenturanje klasa koje čine jedan sistem ili podsistem- DIZAJN
- opisuju se veze između klasa kao što su sve vrste asocijacija, generalizacije, ovisnosti...
- karakteristike klasa(atributa I operacija)
- za vrijeme razvoja softvera, počevši od specifikacija klasa u domenu problema do implementacijskog modela za predloženi sistem, da pokažu strukturu klasa sistema.
- dokumenturanje kako klase pojedinog sistema sarađuju sa postojećim bibliotekama klasa
- interfejs koji se podržava sa datom klasom.
Tipovi veza
- Asocijacija
- Generalizacija(Naslijeđivanje)
- Realizacija
- Zavisnost
- Agregacija
- Kompozicija
Asocijacija
- Asocijacija predstavlja vezu između dva objekta, obilježava se punom linijom i strelicom usmjerenom od izvorne klase ka odredišnoj klasi.
- Ime svojstva, kardinalnost i tip svojstva su definisani na strani Odredišne klase.
Dvosmjerna asocijacija
- Može se prikazati i sa strelicama na oba kraja( ; ). Alat za modeliranje ne prikazuje strelicu.
Definicija "Izvora" i "Odredišta"
- Izvorna Klasa – je predstavljena preko Klase Narudžba.
- Odredišna Klasa - je predstavljena preko Klase StavkaNarudžbe.
- Kardinalnost – na oba kraja asocijacije.
Agregacija i kompozicija
- Su vrste asocijacije.
- Su načini predstavljanja, da je objekat jedne klase dio objekta druge klase.
- Obadvije predstavljaju odnos između cjeline i njenih dijelova i predstavljaju jače verzije asocijacije.
Agregacija
- je vrsta asocijacije se koristi da se indicira da klasa pored vlastitih atributa, može uključivati, u ovisnosti od kardinalnosti, određen broj instanci drugih klasa.
- Termin cjelina nekad se koristi kada se misli na agregaciju.
- Agregacije je neispunjeni romb koji ide na kraj cjeline a ne dijela.
Generalizacija-Nasljeđivanje
- Poznata i kao nasljeđivanje.
- Koristi da opišu da je jedna klasa tip neke druge klase.
- Koristi se strelica generalizacija, zatvorena neispunjena strelica, koristi se da pokaže da je klasa tip druge klase.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.