SOFTVERSKO INŽENJERSTVO Vježbe 2

18.10.2014.
SOFTVERSKO INŽENJERSTVO
Vježbe 2:
Napomene o izvođenju vježbi i
izradi domaćih zadaća
Robert Manger
Sveučilište u Zagrebu
PMF-Matematički odsjek
Akademska godina 2014/2015.
Sadržaj Vježbi 2

Resursi koje ćemo koristiti

Opis cjelovitog studijskog primjera

Općenito o UML alatima

Svojstva odabranog UML alata

Rad s odabranim UML alatom

Prva i druga domaća zadaća

Očekivani rezultati prve zadaće

Očekivani rezultati druge zadaće
V-02
Softversko inženjerstvo
2
1
18.10.2014.
Resursi koje ćemo koristiti






Knjiga: Jim Arlow, Ila Neustadt: UML 2 and the Unified
Process. Second Edition. Addison-Wesley, 2006.
Cjeloviti studijski primjer na web stranicama autora knjige:
http://uml2andtheunifiedprocess.com/goodies.html
Prezentacije s ovih vježbi napravljene po knjizi. Dohvatljivo
na: http://web.studenti.math.pmf.unizg.hr/~manger/si
UML alat Visual Paradigm for UML, instaliran u učionici,
besplatno “community” izdanje može se preuzeti s adrese:
http://www.visual-paradigm.com/download
Korisnička dokumentacija za Visual Paradigm for UML:
http://www.visual-paradigm.com/support
Popis tema za domaće zadaće, također na adresi:
http://web.studenti.math.pmf.unizg.hr/~manger/si
V-02
Softversko inženjerstvo
3
Cjeloviti studijski primjer

Nalazi se na web stranicama autora knjige i služi kao
prilog knjizi.

Bavi se razvojem sustava za prodaju knjiga i CD-a preko
web-a, pod nazivom ECP (E-Commerce Platform).

Sadrži rezultate utvrđivanja zahtjeva, analize i
oblikovanja za sustav ECP, dakle potrebna tekstualna
objašnjenja i sve propisane tablice i UML dijagrame.

Zapisan je u obliku nekoliko PDF dokumenta:

Nama ovaj studijski primjer može poslužiti kao predložak
i uzor za izradu domaćih zadaća.
V-02
Softversko inženjerstvo
4
2
18.10.2014.
Općenito o UML alatima

Riječ je o alatima koji obavljaju sljedeću osnovnu funkciju.


No većina takvih alata obavlja i bar neke od sljedećih
dodatnih funkcija.




Diagramming - Crtanje i editiranje UML dijagrama, te na taj način
implicitno stvaranje i mijenjanje UML modela.
Forward Engineering – generiranje dijelova programskog koda u
odabranom programskom jeziku na osnovu UML modela.
Reverse Engineering – generiranje UML modela na osnovu
programskog koda.
Round-Trip Engineering – stalna sinkronizacija UML modela s
programskim kodom i obratno.
Danas postoji 50-tak besplatnih i 50-tak komercijalnih UML
alata (vidi Wikipedia). Oni se razlikuju po mogućnostima i
stupnju integriranosti s određenim programerskim alatima.
V-02
Softversko inženjerstvo
5
Svojstva odabranog UML alata




Visual Paradigm for UML je proizvod tvrtke Visual
Paradigm International sa sjedištem u Hong Kongu.
Riječ je o jednom od vodećih komercijalnih UML alata
koji zadovoljava najviše profesionalne zahtjeve.
Dostupan je u donekle okljaštrenom no besplatnom
“community” izdanju koje ćemo mi za sada koristiti.
Čak i to okljaštreno izdanje u potpunosti podržava UML
modeliranje, dakle crtanje i editiranje UML dijagrama.



Alat “razumije” UML sintaksu i ispravlja greške.
Podržani su svi dijagrami iz standarda UML 2.
Donekle su reducirane mogućnosti generiranja izvještaja.


V-02
No svaki od dijagrama moguće je štampati ili preko clipboarda
pretvoriti u JPG sliku te ubaciti u neki dokument.
Doduše, na dijagramima se pojavljuje zaštitni “vodeni žig”.
Softversko inženjerstvo
6
3
18.10.2014.
Rad s odabranim UML alatom (1)

Glavni prozor izgleda otprilike ovako.
V-02
Softversko inženjerstvo
7
Rad s odabranim UML alatom (2)

Glavni prozor je podijeljen u 5 dijelova.
1.
2.
3.
4.
5.

Izbornik i alatne trake.
Hijerarhijski prikaz sadržaja otvorenog projekta.
Razni pomoćni prikazi.
Radni prostor, obično prikazuje jedan dijagram.
Poruke.
Crtanje dijagrama odvija se slično kao u MS Paint-u.



V-02
S alatne trake odabire se grafički element.
Taj element se pomoću miša smješta na dijagram, rasteže,
skuplja i slično.
Alat razumije sintaksu dijagrama, te nam prilikom crtanja
“sugerira” poteze, ili pak zabranjuje neispravne poteze.
Softversko inženjerstvo
8
4
18.10.2014.
Rad s odabranim UML alatom (3)

Za razumijevanje načina rada važno je znati
sljedeće.




Alat svrstava dijagrame i dijelove tih dijagrama u trenutno
otvoreni projekt.
Dakle da bi mogli raditi, potrebno je stvoriti ili otvoriti projekt.
Dobro je imati barem dva projekta: za analizu, odnosno za
oblikovanje.
Jedan projekt sa svim uključenim modelima i
dijagramima pohranjuje se na disku kao jedna
datoteka.


V-02
Ta datoteka ima ekstenziju .vpp
Nalazi se u radnom prostoru (workspace - ustvari direktoriju)
kojeg je korisnik odabrao.
Softversko inženjerstvo
9
Prva i druga domaća zadaća





Da bi mogao raditi zadaće, student prvo mora dobiti temu.
Dodjela tema je po principu “tko prvi njegova djevojka”.
Obje zadaće bave se razvojem zamišljenog softverskog
sustava koji je opisan u temi.
Prva zadaća bavi se skupljanjem zahtjeva i analizom
sustava. Rok za predaju bit će do termina prvog kolokvija.
Druga zadaća nastavlja se na prvu i bavi se oblikovanjem
istog sustava. Rok za predaju bit će nakon završetka
nastave, dakle do termina drugog kolokvija.
Obje zadaće predaju se u obliku tekstualnog dokumenta
(elaborata) s umetnutim tablicama i dijagramima. Materijal
se može predati u papirnatom obliku ili u nekom od
standardnih elektroničkih formata (MS Word, PDF, …).
V-02
Softversko inženjerstvo
10
5
18.10.2014.
Očekivani rezultati prve zadaće

Obavezni rezultati.





Barem jedan use case dijagram.
Detaljna specifikacija za nekoliko use case-ova u obliku
tablice.
Barem jedan class dijagram koji grubo prikazuje uočene klase
i veze među njima.
Sequence dijagrami koji u grubo prikazuju kako se svaki od
specificiranih use case-ova može realizirati interakcijom
objekata iz uočenih klasa.
Poželjni dodatni rezultati.


Package dijagram koji klase grupira u pakete.
Activity dijagrami koji prikazuju složenije procese.
V-02
Softversko inženjerstvo
11
Očekivani rezultati druge zadaće

Obavezni rezultati.




Klase na razini oblikovanja: imena i tipovi svih atributa, signature
svih metoda, vidljivost.
Profinjeni class dijagrami na kojima su veze između klasa
pretvorene u oblik koji je pogodan za implementaciju.
Profinjeni sequence dijagrami koji detaljno prikazuju kako se
svaki od use case-ova specificiranih u analizi može realizirati
interakcijom objekata iz oblikovanih klasa.
Poželjni dodatni rezultati.

Sučelja, komponente, podsustavi.

Timing dijagrami koji precizno određuju vremenska ograničenja.

V-02
State machine dijagrami koji opisuju ponašanje složenijih
objekata.
Softversko inženjerstvo
12
6