150 likes | 342 Views
Ohjelmistotekniikka Tuotteenhallinta. Kevät 2002 Päivi Ovaska LTKK/Tite. Sisältö. Johdanto: tuotteenhallinnan osa-alueet Komponentit, konfiguraatiot Versioituminen Vaihetaso Muutosten ha llinta T yökalut. Johdanto: tuotteenhallinnan osa-alueet.
E N D
OhjelmistotekniikkaTuotteenhallinta . Kevät 2002 Päivi Ovaska LTKK/Tite
Sisältö • Johdanto: tuotteenhallinnan osa-alueet • Komponentit, konfiguraatiot • Versioituminen • Vaihetaso • Muutosten hallinta • Työkalut
Tuotekehitysnäkökulma vs. asiakasnäkökulma • Tuotekehitysprosessin kannalta keskeisin tavoite on antaa tuotekehitystiimille stabiili ja kontrolloitavissa oleva ympäristö => versionhallinta, pelisäännöt, työskentely-ympäristö, testiversioiden rakentaminen. • Asiakasprosessin (toimitusten) kannalta keskeisin tavoite on asiakastoimitusten konfiguraatioiden hallinta: mitä tarkkaanottaen asiakkaalle toimitetaan / on toimitettu, miten toimitettava kokonaisuus kootaan ja paketoidaan. • Joku #@! on muuttanut moduulia X siten, että se ei enää toimi (kuka, milloin). • Korjattu virhe ilmaantuu uudelleen. • Kehitetty ja testattu piirre katoaa. • Versioräjähdys (useita korjauksia samaan moduuliin samanaikaisesti).
Tuotteenhallinnan ongelmia Ongelma asiakkaalla X, tuote Y, versio a.b.c • On pystyttävä rakentamaan versio a.b.c (konfiguraation versio, komponenttien versiot). • Kun korjaus on suunniteltu ja tehty syntyy muutettujen komponenttiversioiden uudet versiot ja tuotteen uusi versio. On vielä aikamoinen urakka selvittää: • Missä muissa korjattujen komponentien versioissa esiintyy sama virhe. • Johtaako virheen korjaus muutoksiin virheellistä komponenttia hyödyntäneissä komponenteissa.
Tuotteenhallinnan ongelmia (jatkuu) Ja lopulta, kun kaikki muutettavat komponentit on löydetty: mihin muille asiakkaille toimitettuihin tuotteen versioihin korjaukset vaikuttavat. Seuraavia ongelmatilanteita ei siis pitäisi syntyä: Tuotteen versiota X on päivitetty, versio Y lakkaa toimimasta. Asiakkaan raportoima virhe on korjattu, mutta asiakas ei pysty ottamaan järjestelmän korjattua versiota käyttöön, koska hänellä on liian vanha versiolaitteistosta/ käyttöjärjestelmästä/ tietokantajärjestelmästä jne... Moduulin X versiosta Y on löytynyt vakava virhe. Mille asiakkaille pitää toimittaa korjattu versio?
Työkalut • Versioituminen • SCCS, RCS, PVCS... • Konfiguraatioiden hallinta • Komentotiedostot (Shellscript), Make ... • Tuotteenhallintatyökalut • ClearCase... • Toimintatavat • Komentotiedostot, sähköposti, asianhallintajärjestelmät (work flow management)
Tuotteenhallinta • Mistä hallinta-alkioiden versioista tietty tuotteen versio koostuu • Mitä toimenpiteitä tekemällä ko. versio saadaan tuotettua
Tuotehallintasuunnitelma • Organisaatio • Henkilöt • Vastuut • Mahdollisen tuotteenhallintaryhmän (CCB, configuration control board) kokoonpano • Mahdollisen FCBn (Fault Control Board) olemassaolo • Liitynnät muihin toimintoihin • Menetelmät • Mitä vaihetasoja syntyy • Miten ne nimetään • Miten vaihetasojen tilasta pidetään kirjaa • Mitä työkaluja käytetään • Miten auditointeja järjestetään
Tuotteenhallintasuunnitelma (jatkuu) • Toimintatavat • Miten vaihetasot hyväksytään • Miten tiedottaminen hoidetaan • Miten virheistä raportoidaan • Miten muutospyyntöjä tehdään • Miten muutokset dokumentoidaan,jne • Muita mahdollisia kohtia • Resurssointi • Muualta hankittujen komponenttien hallinta • Laitteistokomponenttien hallinta