Zmožnostno zrelostni model

  1. Začetna raven: nenadzorovan proces
  2. Ponovljiva raven: opredeljene in uporabljene strategije upravljanja izdelkov
  3. Opredeljena raven: opredeljene in uporabljene strategije upravljanja procesov
  4. Količinsko upravljana raven: opredeljene in uporabljene strategije upravljanja kakovosti
  5. Optimizirana raven: opredeljene in uporabljene strategije izboljšav procesov

Faze razvoja

Faza predloga

Pogodba za razvoj določanje cene: stroški (osebje, strojna in programska oprema), tržna priložnost, …

  • Znižanje cene: pridobitev projekta ohrani podjetje pri življenju / dostop do novega tržnega območja / …
  • Zvišanje cene: pričakovanje nepričakovanih tveganj

Faza zagona podjetja

Priprava načrta, delitev projekta na manjše enote, delitev finančnih sredstev, …

Faza razvoja

Spreminjanje načrta glede na dosedanje delo

Načrtno usmerjen razvoj

Razvoj v ločenih razvojnih stopnjah
Zgodnje načrtovanje:

  • boljša organizacija in hitrejše odkrivanje problemov
  • številne začetne odločitve potrebujejo popravke

Procesi izdelave programske opreme

Fiksne / variabilne točke načrtovalskih in agilnih procesov

Odločanje med njima:

Načrtovalski procesi

Vnaprejšnje načrtovanje vseh procesnih aktivnosti

Agilni procesi / načrtovanje

Iterativno načrtovanje procesnih aktivnosti in dostava programske opreme naročnikom

  • načrtovanje izdaje (release planning): določanje funkcionalnosti za izdajo sistema
  • načrtovanje iteracije (iteration planning): določanje funkcionalnosti naslednjega inkrementa

Razčlenitev projekta na 4-6h naloge pregled opravil, občutek lastništva nad nalogami

Scrum: dnevni pregledi napredka in potencialnih časovnih (in drugih) težav
Extreme programming: prakse razvoja

Procesni modeli izdelave programske opreme

Slapovni razvoj

Načrtovalski model z ločenimi fazami neprilagodljivost ob spreminjajočih se zahtevah

  1. Opredelitev zahtev
  2. Načrt sistema
  3. Razvoj in testiranje enot
  4. Integracija in testiranje sistema
  5. Delovanje in vzdrževanje

Inkrementalni razvoj

Prepletenost specifikacije, implementacije in vrednotenja prilagodljivost in hitrejše povratne informacije, ampak slabša preglednost razvoja in kakovost strukture sistema

Pristop integracije in konfiguracije

Sistem sestavljen iz obstoječih nastavljivih komponent zmanjšanje stroškov, ampak kompromisi pri zahtevah in manjši nadzor nad razvojem

Prototipiranje programske opreme

Prototip: začetna različica sistema za predstavitev in ocenjevanje osnovnih konceptov

  • večja usklajenost z dejanskimi potrebami uporabnikov
  • izboljšana kakovost načrta
  • izboljšana vzdrževalnost

Prototipi niso osnova za produkcijski sistem