Ohjelmistokehitys

Ohjelmistokehitys sisältää ohjelmistojen kehityksen laajemmalla vastuulla kuin pelkkä ohjelmointi, etenkin vaatimusmäärittelyn ja testaamisen osalta. Ohjelmistokehitys on joukko aktiviteetteja kuten uuden kehitys, muokkaus, uudelleenkäyttäminen, uudelleen suunnittelu, ylläpito tai muita aktiviteetteja, jotka johtavat ohjelmistotuotteisiin.http://www.npd-solutions.com/glossary.html 

Eräissä yhteyksissä ohjelmistokehittäjä ja ohjelmistosuunnittelija tekevät samanlaisia tehtäviä ja termit voivat tarkoittaa samaa. Eräissä yhteyksissä termit eroavat ja suunnittelijalla on laajempi vastuu kaikkien ohjelmistokomponenttien yhteen toimivuudesta. Lisäksi joissain yhteyksissä termien käyttö voi olla rajatumpaa tarkoittamaan vain tiettyjä asiantuntijoita.

 Ohjelmistokehityksen menetelmät 
Ohjelmistokehityksessä on useita suuntauksia. Eräiden väitteiden mukaan perinteiset menetelmät ovat "fiktiota, joka antaa kuvan hallinnasta ja symbolista statusta". Menetelmien sanotaan olevan liian mekaanisia luonteeltaan ollakseen käyttökelpoisia. Perinteisiä menetelmiä on kutsuttu "tavoittamattomiksi ideaaleiksi ja opasteeksi utopistisissa kehitystilanteissa".

Eräitä ohjelmistokehityksen suuntauksia ovat:
 vesiputousmalli
 V-malli
 inkrementaalinen malli
 nopean kehityksen malli (RAD-malli)
 ketterä ohjelmistokehitys ()
 iteratiivinen malli
 spiraalimalli

Jatkuva toimitus on eräs ohjelmistokehityksen periaate, jossa ohjelmisto pidetään jatkuvasti toimituskelpoisena.

 Ohjelmistotuotannon menetelmät 
Ohjelmistokehitys on osa ohjelmistotuotantoa, jossa se on usein viimeisiä vaiheita prosessissa.

Ohjelmistokehitysprosesseihin liittyy seuraavia standardeja:
 ISO/IEC 12207
 ISO 9000
 ISO/IEC 15504 
 ISO/IEC 24744 
 SPEM 2.0

Ohjelmakoodin uudelleenkäytettävyys (ohjelmiston uudelleenkäyttö, engl. software reuse) tarkoittaa ohjelmistojärjestelmien toteuttamista olemassa olevasta ohjelmistosta tyhjästä tekemisen sijaan. Käsite on peräisin Naton ohjelmistokehityskonferenssista vuonna 1968, jossa käsiteltiin suurten ja luotettavien ohjelmistojärjestelmien kehitystä hallitulla ja kustannustehokkaalla tavalla. Konferenssia pidetään ohjelmistokehityksen alan syntypaikkana.

Verrattaessa ohjelmistoprojektien kehitysmallien tuottavuutta ja laatua vain yksi käytäntö on liittynyt sekä korkeaan tuottavuuteen että alhaiseen virhemäärään: varhaisen prototyypin julkaiseminen. Perinteisten ja joustavampien kehitysprosessien välillä ei välttämättä ole haittaa mahdollisesta konfliktista, koska ne perustuvat johdonmukaisille käytännöille, jotka jossain tapauksissa on suunnattu valintojen välisten erojen käsittelyyn.

 Katso myös 
 Ketterä ohjelmistokehitys
 Nopean kehityksen malli
 Refaktorointi
 UML-mallinnus
 Ohjelmointiparadigma
 Ohjelmointi
 Versiohallinta
 Ohjelmiston testaaminen
 Ohjelmointirajapinta
 Käyttöliittymä
 Käytettävyys
 Koodin katselmointi

 Lähteet 

 Kirjallisuutta 


 Aiheesta muualla 

Luokka:Ohjelmistotuotanto