Principi razvoja softvera i UML modelovanje
Enviado por Anónimo y clasificado en Otras materias
Escrito el en
serbocroata con un tamaño de 118,38 KB
Elementi kvaliteta softvera
Osnovni elementi kvaliteta softvera uključuju: funkcionalnost, pouzdanost, efikasnost, odgovarajući korisnički interfejs, adekvatnu dokumentaciju, transparentnost, mogućnost lakog održavanja i adaptivnost.
Životni ciklus softvera
Predstavlja period od trenutka identifikacije potreba za softverskim proizvodom do trenutka prestanka korišćenja tog proizvoda.
Faze u životnom ciklusu softvera
- Iniciranje i definisanje projekta (3%)
- Analiza i specifikacija zahteva (3%)
- Idejno projektovanje (7%)
- Detaljno projektovanje (15%)
- Programiranje (Kodiranje)
- Testiranje
- Eksploatacija
- Dokumentacija
Metodologije razvoja
Model vodopada
Prednosti: Podstiče precizno definisanje zahteva, pogodan za velike projekte, smanjuje troškove razvoja i održavanja, omogućava tačnije planiranje resursa i formiranje dokumentacije za svaku fazu.
Nedostaci: Troši dosta vremena na izradu specifikacije, kašnjenje sa pisanjem koda, otežano prepoznavanje novih zahteva u ranim fazama, nije pogodan za manje projekte.
Inkrementalni i prototipni model
Inkrementalni model: Skraćuje vreme i redukuje troškove, olakšava testiranje jer se svaki inkrement proverava pojedinačno.
Prototipni model: Omogućava otkrivanje nesporazuma između projektanta i korisnika, identifikaciju nejasnoća i brzu izradu demonstracionog prototipa.
UML (Unified Modeling Language)
Gradivni elementi
UML se sastoji od stvari (strukturne, ponašanja, grupisanja, označavanja), relacija i dijagrama.
Relacije u UML-u
- Zavisnost: Promena jedne stvari utiče na drugu.
- Asocijacija: Veza između objekata.
- Agregacija: Veza celina-deo (deo može postojati bez celine).
- Kompozicija: Veza celina-deo (deo ne može postojati bez celine).
- Generalizacija: Nasleđivanje klasa.
- Realizacija: Povezuje interfejs sa njegovom implementacijom.
Projektni obrasci i MFC
GoF katalog
Osnovni katalog "Bande četvorice" koji se odnosi na sve domene. Obrasci se dele prema nameni: kreiranje, struktura ili ponašanje.
Anti-obrasci
Obrasci koje treba izbegavati: DLL Hell, Hard-kodiranje, Spageti kod i preterana zavisnost od specijalnih biblioteka.
MFC (Microsoft Foundation Classes)
C++ API za programiranje Windows aplikacija. MFC nije samo biblioteka klasa, već i framework za razvoj aplikacija.
Arhitektura klasa
- Arhitektura 2 klase: Mainframe klasa (ekran) i Aplikacijska klasa (pozadinske funkcije).
- Arhitektura 4 klase: Dodaje Prikaznu klasu (radna oblast) i Dokumentnu klasu (stanje aplikacije).
Primer: Abstract Factory

Obezbeđuje interfejs za kreiranje povezanih i međusobno zavisnih objekata bez specificiranja njihovih konkretnih klasa.