Ohjelmistotuotanto
Kuvauksen kirjoitti: Joel Aalto, M2113
Lyhyt kuvaus käsitteestä tai aiheesta
Ohjelmistotuotanto pitää sisällään käytännössä kaikki tietokoneohjelmien ja -ohjelmistojen valmistukseen liittyvät hallinta- sekä kehitysmenetelmät ja toimii yleisnimityksenä näille työnteon ja työnjohdon menetelmille. Päärunko ohjelmistotuotannossa on alkaa asiakkaan tarpeiden kartoittamisesta, sitten ohjelmisto suunnitellaan, valmistetaan, testataan ja käyttöönotetaan. Ohjelmistotuotannon menetelmät ovat nykyaikana tärkeitä mm. monimutkaisempia ohjelmistojen, suurien käyttäjämäärien ja laatustandardien kasvun takia, jotta mm. nämä vaatimukset saadaan täytettyä. Näitä menetelmiä on erilaisia kuten esim. ketterät menetelmät ja vesiputousmalli. Menetelmät vaikuttavat ohjelmistotuotannon eri vaiheisiin omilla tavoillaan ja ohjelmistotuotanto on jatkuvasti hyvin kehittyvä ala joten myös uusia menetelmiä syntyy. Tänä päivänä ohjelmistotuotantoa tehdään käytännössä kaikille toimialoille.
Ohjelmistotuotannon vaiheista
Vaatimusten kartoitus
Tarkoituksena on päästä tarkasti selville ohjelmistolle asetetuista tavoitteista jotka tulee täyttää. Yleisesti toteutusmenetelmiin pyritään ottamaan kantaa vasta myöhemmin, mutta on mahdollista että asiakkaalta tulee esille esim. teknologioihin liittyviä vaatimuksia jo kartoitusvaiheessa.
Järjestelmäsuunnittelu
Kartoitetaan tarvittavien järjestelmien välistä integrointia sekä laitteistojen ja ohjelmiston välistä toimintaa.
Ohjelmistosuunnittelu
Toiminnallisessa määrittelyssä kuvataan ohjelmiston toimintoja, mitä pitää voida tehdä ja miten, sekä ohjelmiston mahdollisia liitäntöjä ulkopuolelle. Tekninen määrittely tehdään sen jälkeen kun valinnat ominaisuuksista on tehty. Tämä tarkoittaa mm. ohjelmiston arkkitehtuurin suunnittelua ja teknologioiden valintoja. Ohjelmistosuunnitteluvaiheessa voidaan tuottaa määrittelydokumentti joka auttaa sitten seuraavissa vaiheissa.
Toteutus
Toteutus koostuu koodaamisesta ja tarvittavan oheismateriaalin valmistamisesta. Testaamista olisi ainakin hyvä ottaa mukaan jo tässä vaiheessa ja hyvät dokumentit aikaisemmista vaiheista nopeuttavat toteutusta.
Testaus
Testausta on monenlaista, kuten esim. integraatiotestaus, hyväksyntätestaus, yksikkötestaus. Nykyään testaus tehdään enemmän osana toteutusta, mutta tietyt ohjelmistot voivat tarvita myös suurempia testausvaiheita.
Käyttöönotto/julkaisu
Kun ohjelmisto on eri tahojen puolesta tarpeeksi toiminnallisessa tilassa tai vaatimukset ovat täytetty ja testattu, voidaan siirtyä käyttöönottoon. Ohjelmisto esim. asennetaan suunnitellusti tarvittaville laitteille ja varmistetaan toiminta sekä mahdollisesti koulutetaan käyttäjiä, tai tuodaan muuten jakeluun. Tämän jälkeen siirrytään ylläpitovaiheeseen, joka ei enää suoraan kuulu ohjelmistotuotantoon.
Linkit ulkopuolisiin lähteisiin
- https://www.guru99.com/what-is-software-engineering.html
- https://medium.com/better-software/sw-engineering-101-c711e948b065
- https://fi.wikipedia.org/wiki/Ohjelmistotuotanto
- https://www.javatpoint.com/software-engineering-tutorial
Avainsanat harjoitustehtävän repositoriossa
Listaa tähän käsite-sivut repositorion sisältä, jotka liittyvät kuvaamaasi käsitteeseen/aiheeseen