SWE pitanja Flashcards

1
Q

Navesti i kratko opisati atribute dobrog softvera

A

Softver treba da ima funkcionalnost i performanse saglasno zahtevu korisnika. Takodje, mora biti pogodan za održavanje, da je upotrebljiv i da uliva poverenje.
Pogodnost za održavanje – Treba da je u stanju da se lako menja i nadogradjuje
Stabilnost – Softver mora ulivati poverenje, što podrazumeva da je softver pouzdan (reliability), bezbedan (security) i siguran (safety)
Efikasnost – Softver mora ekonomično koristiti resurse sistema (procesorsko vreme, memoriju)
Upotrebljivost – Softver mora biti ugodan za korišćenje, da ima odgovarajući korisnički interfejs i adekvatnu dokumentaciju

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Sta je softver i cime se bavi softversko inzenjerstvo?

A

Softver je računarski program, pridružena dokumentacija i konfiguracioni podaci neophodni da bi softver radio korektno.
Softverski sistem se obično sastoji od :
– određenog broja programa
– konfiguracionih fajlova, koji se koriste da postave ove programe
– sistemske dokumentacije, koja opisuje strukturu sistema
– korisničke dokumentacije, koja objašnjava kako se koristi sistem
– Web sajtova za korisnike
Softversko inženjerstvo je inženjerska disciplina koja se bavi teorijom, metodama i alatima za profesionalni razvoj softvera.
Postoje 2 osnovna tipa SW proizvoda:
Generički – za slobodno tržište
Ugovorni – za određenog nalogodavca

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Po cemu se razlikuje softversko inzenjersvto od informatike?

A

Nauka o računarstvu ili Informatika se bavi teorijom i osnovama računarstva.
Softversko inženjerstvo se bavi praktičnom stranom razvoja i isporuke korisnog softvera.
Teorija nauke o računarstvu je trenutno dovoljno razvijena i obezbeđuje solidnu osnovu za softversko inženjerstvo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Grafički ilustrovati i opisati inkrementalni razvoj softvera. Navesti osnovne prednosti i nedostatke.

A

Umesto da se sistem isporuči odjedanput, razvoj i isporuka se mogu razdeliti u inkremente pri čemu svaki inkrement obezbeđuje deo tražene funkcionalnosti.
Prednosti inkrementalnog razvoja:
* Smanjena cena izmene korisničkih zahteva u toku razvoja - količina analiza i dokumentacije koju treba ponovno uraditi je mnogo manja u odnosu na model vodopada.
* Olakšano dobijanje povratne informacije od korisnika u toku razvoja - korisnici imaju uvid i mogućnost komentarisanja trenutno implementiranih funkcionalnosti, a samim tim i u progres realizacije projekta.
* Moguća brža isporuka korisnog softvera naručiocu - korisnici mogu da koriste softver pre nego u slučaju modela vodopada.
Problemi inkrementalnog razvoja:
* Proces nije vidljiv - menadžerima su potrebne redovne isporuke kako bi merili napredovanje. Ako se sistem brzo razvija nije efikasno praviti dokumentaciju za svaku verziju sistema.
* Struktura sistema ima tendenciju degradacije sa dodavanjem novih inkremenata - ukoliko se ne ulaže novac u refaktorisanje i unapređenje softvera, periodične izmene imaju za posledicu degradaciju strukure. Nove i nove izmene softvera postaju sve složenije i skuplje. FALI SLIKA

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Razvoj softvera po modelu vodopada (dijagram, prednosti i problemi).

A

Faze modela vodopada
* Analiza i definicija zahteva: Servisi, ograničenja i ciljevi sistema se postavljaju u saradnji sa korisnikom. Zatim se to definiše detaljni i to služi kao specifikacija sistema
* Projektovanje sistema i softvera: Zahtevi se dele na SW i HW. Postavlja se arhitektura celog sistema. Projektovanje SW obuhvata identifikovanje komponenti i njihovih veza
* Implementacija i testiranje: Pišu se i programske komponente. Testiraju se programi i komponente radi provere da li su saglasni sa specifikacijom
Nenad Đorđević 16080
Page 3 of 15
* Integrisanje i testiranje sistema: Programi i programske komponente se integrišu i testira se sistem kao celina radi provere da li je usklađen sa SW zahtevima. Nakon toga se sistem isporučuje
* Eksploatacija i održavanje: Nakon puštanja sistema u eksploataciju nastaje njegova evolucija
Nedostaci modela vodopada: Osnovni nedostatak ovog modela je nemogućnost efikasnog prihvatanja izmena u zahtevima korisnika kada je proces u toku. U principu, jedna faza mora biti završena da bi se otpočela naredna, pa izmene zahteva resetuju čitav proces. Takođe, nefliksibilna deoba projekta na disjunktne faze otežava odgovor na promenu korisničkih zahteva. Ovaj model je jedino pogodan kada su zahtevi dobro poznati.
Prednosti modela vodopada: Model vodopada se najčeće koristi kod velikih sistema gde se razvoj razdeljen na nekoliko lokacija. U ovim situacijama planom vođena priroda modela vodopada pomaže u koordinisanju posla.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Navesti i kratko opisati zajedničke aktivnosti za različite softverske procese.

A

Aktivnosti u okviru procesa Realni softverski procesi predstavljaju isprepletenu mešavinu aktivnosti čiji je krajnji cilj specifikacija, projektovanje, implementacija i testiranje softverskog sistema. Četiri osnovne aktivnosti softverskog procesa specifikacija, razvoj, validacija i evolucija su različito organizovane u različitim procesima.
Specifikacija softvera je proces određivanja servisa zahtevanih od strane korisnika, kao i ograničenja u pogledu funkcionisanja i razvoja sistema. Proces inženjeringa zahteva:
* Studija izvodljivosti - Provera da li je tehnički i finasijski izvodljiv razvoj sistema
* Prikupljanje i analiza zahteva - Određivanje šta zainteresovane strane žele ili očekuju od sistema
* Specifikacija zahteva - Detaljno definisanje zahteva
* Validacija zahteva - Provera validnosti specificiranih zahteva
Projektovanje i implementacija softvera - reč je o procesu prevođenja specifikacije sistema u realni upotrebljiv sistema.
Projektovanje softvera - projektovanje strukture softvera tako da realizuje zadatu specifikaciju;
Implementacija - prevodjenje definisane strukture u izvšni program;
Aktivnosti projektovanja i implementacije su blisko povezane i često se preklapaju.
* Arhitekturno projektovanje u okviru kog se identifikuje osnovna strukutra sistema, osnovne komponente (često se nazivaju podsistemi ili moduli), njihova međusobna veza i način distribucije.
* Projektovanje interfejsa u okviru kog se definišu interfejsi između komponenti sistema.
* Projektovanje komponenti u okviru kog se za svaku identifikovanu komponentu projektuje željeno funkcionisanje.
* Projektovanje baze podatka u okviru kog se projektuju strukture podataka sistema i način njihove reprezentacije u bazi podataka.
Nenad Đorđević 16080
Page 4 of 15
Validacija softvera
Verifikacija i validacija (V & V) ima za cilj da pokaže da sistem odgovara sopstvenoj specifikaciji i zahtevima naručioca. Uključuje proveru i pregled procesa, kao i testiranje sistema. Testiranje sistema uključuje izvršenje test slučajeva koji se izvode iz specifikacije realnih podataka koje sistem obrađuje.
Evolucija softvera
Softver je podrazumevano fleksibilan i podložan izmenama. Kako se zahtevi menjaju kroz promenu poslovnih okolnosti, softver koji podržava odgovarajući posao mora da evoluira i da se menja. Iako često dolazi do mešanja između novog razvoja I evolucije (održavanja) postojećeg sistema, sama razlika postaje sve manje relevantna pošto imamo sve manje potpuno novih sistema.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Grafički ilustrovati i kratko opisati „4+1“ model sistema.

A

Logička arhitektura - opisuje najvažnije klase u sistemu, njihovu organizaciju u pakete i podsisteme kao i organizaciju paketa i podsistema u nivoe (layers).
Za predstavljanje logičke arhitekture se koriste dijagrami klasa. Mogućnost automatskog generisanja koda na osnovu dijagrama klasa
Procesna arhitektura - opisuje najvažnije procese i niti (threads) u sistemu i njihovu organizaciju. Procesi se izvršavaju u nezavisnim adresnim prostorima računara, dok su niti procesi koji se izvršavaju paralelno sa procesima ili drugim nitima ali u adresnom prostoru nekog od procesa. Za procesne arhitekture se koriste dijagrami klasa.
Implementacioni model - Za prikaz implementacionog modela se koriste dijagrami komponenti.
Fizički model - opisuje fizičke čvorove u sistemu i njihov razmeštaj u prostoru. Za prikaz fizičkog modela se koriste dijagrami razmeštaja.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Navesti i kratko opisati faze u RUP-u. Objasniti odnos faza i iteracija u RUP-u.

A

Isto kao za ono drugo pitanje za rup

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Navesti faze RUP metodologije i objasniti šta se dobija kao rezultat svake od faza.

A

Faze su:
1. Početna faza (Inception)
2. Faza razrade (Elaboration)
3. Faza izrade (Construction)
4. Faza isporuke (Transition)
Svaka faza može imati proizvoljan broj iteracija i svaka iteracija (osim, naravno, početne) treba da rezultira izvršnom verzijom koja se može testirati.
Početna faza:
* Analiza problema
* Razumevanje potreba (potencijanih) korisnika
* Generalno definisanje sistema
* Upravljanje kod promena korisničkih zahteva
Rezultat ove faze je dokument: Vizija sistema - Piše se bez mnogo tehničkih detalja tako da bude razumljiva i korisnicima i razvojnom timu. Koriste se samo blok dijagrami za šematski prikaz sistema.
Vizija sistema sadrži:
* Pozicioniranje proizvoda
* Opis korisnika
* Opis proizvoda
* Funkcionalni zahtevi
* Nefunkcionalni zahtevi
* Ograničenja
* Kvalitet
Faza elaboracije/razrade:
* Izrada plana projekta
* Organizacija i ekipni rad
* Detaljna definicija zahteva
* Definisanje arhitekture sistema
Rezultati ove faze su:
– Plan projekta (Plan faza, Plan izrade, Rezultati projekta, Kontrolne tačke (milestones), Resursi)
– Use-case specifikacija (Opis slučajeva korišćenja, Definisanje aktera u sistemu, Određivanje arhitekturno najznačajnijih slučajeva korišćenja)
– Arhitekturni projekat sistema (Definisanje arhitekture sistema, Definisanje najbitnijih klasa, Realizacija arhitekturno najznačajnijih slučajeva korišćenja (preko sequence diagram), UML dijagrami klasa)
Faza izrade:
* Realizacija sistema
* Testiranje
Rezultati ove faze su:
– Plan testiranja (Zahtevi testiranja, Strategija testiranja, Tehnike testiranja, Alati za testiranje, Resursi, Proizvodi, Kontrolne tačke)
– Test specifikacija (Test-case-ovi sadrže: Opis, Radnje-ulazi, Očekivani odzivi-izlazi, Završne radnje)
– Detaljni projekat sistema (Arhitekturni projekat razvijen u detalje, Dijagrami klasa, “4+1” model sistema)
– Softverski proizvod
Faza isporuke:
* Finalizacija softverskog sistema
* Alfa (beta) testiranje
* Izrada korisničke dokumentacije (uputstva)
* Obuka korisnika
* Uvođenje sistema kod korisnika

Rezultati ove faze su:
– Test izveštaji - Pregled rezultata testiranja (Generalna procena testiranog SW-a, Uticaj test okruženja, Predložena poboljšanja), Rezultati izvršenja test-case-ova
– Korisničko uputstvo
– Instalacija sistema

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Navesti osnovne principe agilnog razvoja softvera izražene kroz „Agile Manifesto“.

A

Principi:
– Zadovoljstvo korisnika brzom isporukom korisnog softvera
– Mogućnost promene zahteva, čak i u poodmakloj fazi razvoja
– Česta isporuka softvera, u razmaku od par nedelja
– Ispravan softver je osnovna mera napretka
– Razvoj koji je u stanju da održi konstantan tempo
– Bliska saradnja između projektanata i poslovnih saradnika
– Najbolji tip komunikacije je komunikacija “licem-u-lice”
– Projekti se izvode u okruženju u kojem su motivisani pojedinci, u koje se može imati poverenja
– Kontinualno usmeravanje pažnje ka tehničkoj veštini i dobrom dizajnu
– Jednostavnost
– Samoorganizovani timovi
– Prilagođavanje promenljivim okolnostima

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Šta predstavlja upravljanje zahtevima?

A

SLIKA FALI
Svaki od funkcionalnih i nefunkcionalnih zahteva evoluira kroz različite fokuse i perspektive, definišući različite nivoe detalja u zahtevima. Svaka nenamerna praznina u zahtevima povećava rizik propadanja projekta ili dodavanja druge mane.
Upravljanje zahtevima je više od dokumentovanja istih. Šest preporuka “dobre prakse” za upravljanje zahtevima:
1. Odvojite dovoljno vremena za proces definisanja zahteva.
2. Izaberite pravi pristup za iznošenje zahteva.
3. Prenesite – saopštite zahteve svim interesnim stranama.
4. Razvrstajte zahteve po prioritetu.
5. Zahtevi za ponovno korišćenje – reuse.
6. Pratite zahteve kroz životne cikluse softvera.

Proces upravljanja zahtevima sastoji se od međusobno nerazdvojivih podprocesa, koji se ne mogu zasebno i sekvencijalno odvijati:
* Prikupljanje zahteva
* Analiza zahteva
* Specifikacija zahteva
* Validacija zahteva
SLIKA FALI

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Objasniti osnovne tipove veza kod Use-case dijagrama i ilustrovati jednim dijagramom.

A

Osnovni tipovi veza su Relacije – predstavljaju povezanost aktera i slučajeva korišćenja.
* Asocijacije – relacija komunikacije; puna linija od aktera do slučaja korišćenja; komunikaciju iniciraju i jedna i druga strana.
* Zavisnosti – konkretno se koriste dva stereotipa ove relacije: uključivanje («include») i proširivanje («extend»). Predstavlja se isprekidanom linijom sa strelicom. Uključivanje od jednog ka drugom slučaju korišćenja (od A ka B) govori o tome da će ponašanje A da uključi i ponašanje B (ne važi obrnuto). Uključivanjem se opisuje zajedničko ponašanje između dva ili više slučaja korišćenja. Proširivanje od A ka B znači da B može da obuhvati i ponašanje iz A (može da se proširi). Proširivanje se događa u tačno određenim tačkama koje se nazivaju tačke ekstenzije.
* Generalizacije – nasleđivanje; puna linija sa trougaonom strelicom. Generalizacija od A ka B kaže da je A specifičan slučaj korišćenja u odnosu na B.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Use-case metoda i scenariji događaja. Ilustrovati na primeru.

A

Slučajevi korišćenja predstavljaju tehniku baziranu na scenarijima i zapisanu pomoću UML dijagrama koja identifikuje aktere u sistemu i slučajeve korišćenja sistema.
Use-case metoda
* Sistem se posmatra sa stanovišta korisnika sistema.
* Opisuju se slučajevi korišćenja sistema i scenarija ponašanja.
* Koristi se UML notacija.
* Koristi se kod RUP modela razvoja SW-a.
* Servisi objekata mogu biti otkriveni i modeliranjem scenarija događaja za različite funkcije sistema.
* Događaji se prate do objekata koji reaguju na njih.
* Tipičan model scenarija događaja je interakcija između korisnika i sistema.
* Scenarija događaja su primeri kako će sistem biti korišćen u realnom životu. Oni bi trebalo da uključe:
– Opis početne situacije;
– Opis normalnog toka događaja;
– Opis izuzetaka (ako se izađe iz normalnog toka);
– Informacije o konkurentnim aktivnostima;
– Opis stanja gde se scenario završava.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Navesti koji sve sastanci po Scrum-u postoje i kratko ih opisati.

A

Postoje 4 vrste sastanaka:
Planiranje sprinta
* Tim bira stavke iz product backlog-a za koje može da se obaveže da ih može završiti
* Kreira se Sprint backlog (Identifikuju se zadaci)
* Uz saradnju, ne samo Scrum master
* Uzima se u obzir high-level dizajn rešenja
Dnevni scrum sastanak
* Parametri
* Dnevno
15 minuta
* Stand-up
* Nije za rešavanje problema
* Svi su pozvani
* Samo članovi tima, scrum master i vlasnik proizvoda smeju da pričaju
* Pomaže da se izbegnu ostali nepotrebni sastanci
Pregled sprinta
* Tim prezentuje ono što je urađeno za vreme sprinta
* Tipično u formi demonstracije novih funkcionalnosti ili upotrebljene arhitekture
* Neformalno
* Pravilo 2-satne pripreme
* Bez slajdova
* Učestvuje ceo tim
* Svi su pozvani
Retrospektiva sprinta
* Periodično razmatranje šta je dobro, a šta ne
* Tipično 15–30 minuta
* Radi se posle svakog sprinta
* Ceo tim učestvuje

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Navesti i kratko opisati kategorije zahteva.

A

Kategorije zahteva
* Funkcije: “šta” sistem mora da bude sposoban da uradi.
* Osobine: “koliko dobro” će funkcije biti izvršavane.
* Cena: koliko će koštati (bilo koji ulazni resurs: novac, ljudi, ili vreme) kreiranje i održavanje funkcija i njihovih osobina.
* Ograničenja: bilo koja restrikcija u slobodi definisanja zahteva ili dizajnu.
Tipovi zahteva
* Nije kvantifikovan, ali je testiranjem moguće utvrditi da je realizovan
* Kvantifikovan (na mernoj skali)
* Funkcije se ne mogu kvantifikovati, one ili su ili nisu prisutne.
* Sve osobine i cena se mogu i moraju kvantifikovati.
* Ograničenja mogu biti bilo kog tipa.
Nefunkcionalni zahtevi: Ograničenja u projektu se moraju takođe definisati. Kategorije ograničenja: Nivo kvaliteta, Nivo cene, Funkcionalnost, Dizajn, Politička, Kulturološka, Pravna
Lažni zahtevi.
1. Zahtevi nisu iskazani na kvantifikovan i merljiv način:
“smanjena cena”,
* “poboljšana kontrola upravljanja”,
* “visoka upotrebljivost”,
* “povećano zadovoljstvo kupca”,
2. Ideje o projektovanju umesto stvarnih zahteva.
* “zahteva se objektno orjentisana baza podataka”,
* “potrebno je poboljšano uputstvo za rukovanje”,
* “obezbediti Windows XP interfejs”.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Navesti i kratko opisati kategorije strategija za upravljanje rizikom

A

Strategija izbegavanja
– Smanjiti verovatnoću pojave rizika
– Primenjeno kod defekta u komponentama
Strategije minimizacije
– Smanjiti uticaj rizika na projekat ili proizvod
– Primenjeno kod bolesti osoblja
Planovi za nepredviđene događaje
– Ako se rizik pojavi, ovi planovi definišu kako se radi
– sa rizikom
– Primenjeno kod finansijskih problema organizacije

17
Q

Grafički ilustrovati i kratko objasniti spiralni model procesa specifikacije zahteva.

A

Proces je predstavljen spiralom umesto sekvence aktivnosti sa opcionim vraćanjem u nazad.
* Svaki ciklus u spirali predstavlja jednu fazu procesa.
* Nema fiksnih faza kao što su specifikacija ili projektovanje – ciklusi se biraju u zavisnosti šta je potrebno.
* Na moguće rizike se obraća posebna pažnja u toku procesa.
Postavljanje ciljeva
* Identifikacija ciljeva za datu fazu.
Procena i umanjivanje rizika
* Vrši se procena rizika i biraju se odgovarajuće aktivnosti kako bi se rizici smanjili.
Razvoj i validacija
* Bira se razvojni model sistema.
Planiranje
* Vrši se revizija projekta i planira se naredna faza spirale.
Upotreba spiralnog modela
Spiralni model je pomogao u razumevanju i prihvatanju ideje o iteracijama u softverskom procesu i ustanovljavanja rizikom vođenog prilaza u razvoju softvera. U praksi je ovaj model retko korišćen.

18
Q

Sta je sistemsko inzenjerstvo?

A

Projektovanje, implementacija, isporuka i
eksploatacija sistema koj i uključuj u hardver,
softver i ljude.

19
Q

Sta je sistem?

A

Sistem je kolekcija međusobno povezanih
komponenti koje rade zajedno radi ostvarenja
nekog zajedničkog cilja.

Sistem obuhvata softver, hardver (mehaničke,
električne i elektronske komponente) i ljude.

Svojstva i ponašanje svake komponente
ponaosob utič u na ostale komponente sistema.

20
Q

Dodatna svojstva sistema?

A

Reč je
o svojstvima sistema kao celine.

Dodatna svojstva su posledica veza između
komponenti sistema.

Mogu se utvrditi i meriti tek nakon integracije
komponenti u sistem.

21
Q

Softverski proces?

A

Struktuiran skup aktivnosti neophodan za razvoj
softverskog sistema.
 Aktivnosti zajedničke za različite procese:
 Specifikacija – definisanje šta sistem treba da radi;
 Projektovanje i implementacija – definisanje organizacije
sistema i njegova implementacija;
 Validacija – provera da li sistem radi ono što naručioc
želi;
 Evolucija – promena sistema kao odgovor na promenu
potreba naručioca.
 Model softverskog procesa predstavlja apstraktnu
reprezentaciju procesa. Reč je o opisu procesa iz
određene perspektive.

22
Q

Razvoj zasnovan na koriscenju gotovih komponenti?

A

 Zasnovan na sistematskog korišćenju ranije
razvijenih komponenti ili komercijalno dostupnih
komponenti (COTS - Commercial-off-the-shelf).
 Faze procesa
 Analiza komponenti;
 Modifikacija zahteva;
 Projektovanje sistema korišćenjem gotovih komponenti;
 Razvoj i integracija.
 Korišćenje gotovih komponenti je standardni pristup za razvoj mnogih poslovnih sistema.

22
Q

Prototipovanje softvera?

A

 Prototip je inicijalna verzija sistema koja se
koristi u cilju demonstracije koncepata i
isprobavanja projektnih opcija.
 Prototip se može koristiti u:
 Procesu inženjeringa zahteva kako bi potpomogao
prikupljanje i validaciju zahteva;
 U procesu projektovanja kako bi se istražile moguće
opcije i razvio korisnički interfejs;
 U procesu testiranja kako bi se obezbedili uporedni
33 testovi.
Elektronski fakultet u Nišu
Prednosti prototipovanja
 Unapređena upotrebljivost sistema (usability).
 Bolji odgovor na stvarne korisničke potrebe.
 Poboljšan kvalitet projekta.
 Poboljšana sposobnost održavanja
(maintainability).
 Smanjen ukupan trud potreban za razvoj softvera

23
Q

Šta je RUP metodologija?

A

RUP je skup parcijalno uređenih koraka namenjenih osnovnom cilju - da se efikasno i u predviđenim okvirima korisniku isporuči sistem koji u potpunosti zadovoljava njegove potrebe. Proces proizvodnje softverskog proizvoda po RUP-a je:
1) Inkrementalan i iterativan
2) Planiran i kontrolisan
3) Dokumentovan
4) Baziran na UML-u

24
Q

RUP karakteristike

A

RUP je inkrementalan i iterativan proces. To znači da se do konačne verzije sistema stiže kroz niz iteracija, a da se u svakoj iteraciji inkrementalno povećava funkcionalnost sistema sve dok se ne stigne do konačnog sistema. Na taj način, stalno se dobijaju izvršne verzije sistema sa sve većim brojem realizovanih funkcija, čime se tokom trajanja razvoja sistema, polako smanjuje rizik. Dobra osobina RUP metodologije je što je proces jako dobro dokumentovan (postoji i Web-tutor koji vodi korisnika kroz proces), dobro definisan - tačno je definisano šta se od proizvoda (modeli i dokumenti) u kojoj fazi dobija i u potpunosti podržan softverskim alatima (pre svega kompanija Rational (sada IBM) sa svojim softverskim alatima) i šablonima (templejtima) proizvoda. Sve ovo jako pomaže korisniku da dođe do konačnog cilja - što boljeg softverskog proizvoda.

25
Q

Grafički ilustrovati i opisati Scrum proces.

A

Scrum je agilni proces koji nam omogućava da se fokusiramo na isporuku najviših poslovnih
vrednosti u najkraćem roku
- Omogućava nam da brzo i često unapređujemo aplikacije kroz niz sprintova
- Timovi se samoorganizuju da bi odredili najbolji način za isporuku funkcionalnosti koje imaju
najviši prioritet.
- Svake dve nedelje do mesec dana (sprint) svako može da vidi potpuno funkcionalan softver i
odluči se za puštanje u produkciju ili da nastavi unapređivanje u sledećem sprintu.
- Konstantno trajanje omogućava bolji ritam
- Za vreme sprinta, proizvod se dizajnira, kodira i testira
- Za vreme sprinta nema promena!
- Planirajte trajanje sprinta shodno tome koliko dugo možete izdržati bez promena.
- FALI SLIKA

26
Q

Koje su najpoznatije metode za inženjering zahteva?

A
  • Metoda praćenja toka podataka (Data Flow diagram)
  • Metoda koja koristi relacioni model podataka
  • Objektno orijentisane metode
  • Formalne metode
  • Metode zasnovane na ponašanju sistema (Use-case specifikacija i viewpoint orijentisane metode)
27
Q

Šta su metode inženjeringa zahteva?

A

Procesi inženjeringa zahteva su obično vođeni odgovarajućom metodom. Metode inženjeringa zahteva definišu sistematske načine za dobijanje modela sistema.

28
Q

Koje su osnovne karakteristike i po čemu se razlikuju metode za inženjeringe zahteva?

A

Pogodnost za usaglašavanje sa krajnjim korisnikom
 Preciznost definicije i odgovarajuće notacije
 Pomoć kod formulisanja zahteva
 Fleksibilnost
 Podržanost odgovarajućim SW alatima