TUOTTEENHALLINTA

Tuotteenhallinta jaetaan versiohallintaan, kokoonpanon hallintaan ja muutosten hallintaan. Jatkossa versiohallintaa ja kokoonpanon hallintaa kutsutaan yhteisnimellä "versiohallinta".

Muutosten hallinta

Muutospyyntöjen hallinta

Muutospyynnöt jaetaan usein kirjallisuudessa erikseen vikaraportteihin ja (varsinaisiin) muutospyyntöihin. Käyttäjien on kuitenkin usein vaikea erottaa vikaa parannusehdotuksesta ja tämän takia nämä kannattaa yleensä yhdistää "muutospyynnöksi".

Muutospyyntöjä lähettävät asiakkaan henkilökunta, muut mahdolliset käyttäjät ja toimittajan henkilökunta.

Muutospyynnöstä on käytävä ilmi ainakin seuraavat seikat:

Selkeintä on käyttää erityistä muutospyyntölomaketta.

Projektipäällikkö tarkistaa ilmoittajan luokitukset ja päättää jatkotoimenpiteestä, joka voi olla

Jos muutospyyntö johtaa jatkokäsittelyyn, perustelee projektipäällikkö muutoksen tarpeellisuuden ja arvioi muutoksen vaatiman työmäärän. Mikäli muutos voidaan tehdä tai olla tekemättä, niin tarvitaan yksityiskohtaiset tiedot ratkaisun vaikutuksista.

Muutosten valvontaryhmä (jossa on myös asiakkaan edustus) päättää mitkä muutokset todella tehdään. Tehtävät muutokset niputetaan yhdessä tehtävien ryhmiin.

Muutoksista, joita ei tehdä heti, on muodostettava tulevien muutosten lista, jotta tekijät voivat varautua näihin jo muita osia tehdessään.

Mikäli muutos on järjestelmän jatkuvan toiminnan turvaamiseksi tehtävä välittömästi, voi projektipäällikkö antaa muutosmääräyksen pikamääräyksenä. Tästä huolimatta muutos on lisäksi käsiteltävä normaalimenettelyllä.

Ylläpitotyöryhmä suorittaa muutokset projektipäällikön johdolla. Tässä työssä noudatetaan normaaleja elinkaaritoimintoja.

Muutospyyntöjen byrokraattisen hallinnan tarkoitus on pitää ohjat tiukasti käsissä ja samalla se saa aikaan seuraavat seikat:

Muutosten teon hallinta

Tehdystä muutoksesta on dokumentoitava mm. mihin muutospyyntöön se liittyy ja mitä dokumentteja ja ohjelmia on muutettu.

Muutosta ei saa hyväksyä versiohallinnan suojattuihin kirjastoihin ennenkuin

Versiohallinta

Yleistä

Versiohallinnalla pyritään estämään ongelmia, jotka syntyvät esimerkiksi seuraavista syistä:

Standardit asettavat tiukkoja vaatimuksia versiohallinnalle.

Perusratkaisu

Kirjastorakenne ja säännöt kirjastojen käsittelystä:


Kirjaston perusratkaisu

Kuva 1. Kirjastorakenne

Muutokset versioihin tehdään työtiloissa. Versiot työtiloihin haetaan useimmiten kehityskirjastosta, mutta mahdollisesti myös muista kirjastoista. Muutokset palautetaan aina kehityskirjastoon ja muutosten yhteydessä monipäivitys estetään.

Kehityskirjastosta versiot siirretään jäätyvään kirjastoon. Jäätyvään kirjastoon saa vain lisätä uusia versioita ja korvata muuttuneita versioita. Jäätyvästä kirjastosta voi olla monta versiota.

Jäätyvästä kirjastosta versiot siirretään jäädytettyyn kirjastoon. Jäädytetyssä kirjastossa olevia versioita ei saa koskaan muuttaa.

Asiakasversio muodostetaan jäädytetyssä kirjastossa olevasta versiosta valitsemalla käytetty sovitus ja tekemällä mahdolliset asiakaskohtaisten parametrien asetukset. Asiakasversiossa ei yleensä ole lähdekielisiä ohjelmia eikä suunnitelmia yms. työskentelydokumentteja.

Perustoiminnot

Perustoimintojen suorittamiseksi pitäisi olla automaattiset välineet.

Versiohallinnan tulee taata, että aina voidaan vastata seuraaviin kysymyksiin:

Peruskäsitteitä

Tuoteperusta (baseline) on muodollisesti hyväksytty ja kiinnitetty informaatiojoukko, joka määrittelee järjestelmän. Tuoteperustalla on tyypillisesti jokin nimi (esim. "1.1.5"). Tuoteperusta kasvaa ohjelmiston (asianomaisen tuoteversion) kehityksen edetessä. Kussakin vaiheessa syntyneet dokumentit ja ohjelmat viedään versiohallintaan tuoteperustana ja seuraavan vaiheen työskentely perustuu tähän tuoteperustaan.

Tuoteversio (release) on valmis, tietyn tuoteperustan mukainen lähdekielinen järjestelmä. Järjestelmän kehittyessä siitä tehdään uusia tuoteversioita, joissa on aiempiin nähden tyypillisesti seuraavanlaisia muutoksia:

Sovitus (version, variant) on tietystä tuoteversiosta ("perussovitus") tiettyyn tarkoitukseen tehty sovitus. Sovituksia voidaan tehdä esimerkiksi

Sovitus voidaan toteuttaa teknisessä mielessä

Eri sovitusten yhteiset osat tulee olla vain yhdessä paikassa.

Toimitusversio on valmis suorituskelpoinen järjestelmä, josta on tiedettävä

Edelläkuvatut tiedot on oltava toimitusversion mukana (esimerkiksi omana tiedostonaan) ja ne on muodostettava automaattisesti. Niiden perusteella pitää voida muodostaa toimitusversio tarvittaessa uudelleen.

Asiakasversio on asiakkaalla oleva toimitusversion kopio, johon on tehty asiakaskohtaisien parametrien asetukset ja jota asiakas on voinut muuttaa asentamisen jälkeen.

Versio on yleistermi, joka voi tarkoittaa mitä tahansa edellisistä.

Paikka (patch) on yksittäiseen komponenttiin kohdistuva korjaus, josta on tiedettävä

Asiakaspaikka on asiakasversioon viety paikka.

Työtilan toteutustapoja

Työtilan määrittelytapoja

Työtilan hallintaa tarvitaan, koska on pystyttävä vaikuttamaan siihen, miten ohjelmoija näkee muiden muutokset ja miten muut näkevät hänen muutoksensa.

Yksinkertaisia apuvälineitä

Uuden tuoteversion muodostaminen

Jäädytys tehdään automaattisilla välineillä. Ennen jäädytystä tehtävä ainakin:


Vain jäsenille: