Lataa esitys
Esittely latautuu. Ole hyvä ja odota
JulkaistuMarja-Leena Mikkola Muutettu yli 9 vuotta sitten
1
1 010758000 Ohjelmistotekniikka - Software Control Management Kevät 2003 Hanna-Kaisa Lammi LTY/Tite Osa materiaalista on peräisin kurssikirjasta Haikala, Märijärvi: Ohjelmistotekniikka, 2000.
2
2 Sisältö Termistöä Ilman SMC:tä ilmeneviä ongelmia Tehtäviä Työkaluja
3
3 Software Control Management Puhekielessä käytetään useita eri nimiä: – Configuration management, konfiguraation hallinta – Version management, versionhallinta – monissa teoksissa käytetään kuitenkin termiä Software Control Management, SCM (joku kirja käyttää termiä kokoonpanon hallinta, tässä käytetään englanninkielistä termiä) Termeissä on laajuuseroja
4
4 Tarkoitus SCM:n tarkoituksena on hallita eri järjestelmän osien versioita niin, että projekti pysyy yhtenäisenä koko projektin ajan. Yleensä hallitaan lähdekoodia, mutta voidaan soveltaa myös – vaatimuksiin – suunnitelmiin – testitapauksiin – käyttäjädokumentaatioon – jne.
5
5 Ilman SCM:ta ilmeneviä ongelmia (1/2) Tulipa editoitua tiedoston vanhaa versiota, koska en huomannut, että toinen suunnittelija on kirjannut oikean version itselleen editoitavaksi. Sotkin jotenkin muutokseni, ei auta kuin palata takaisin alkuperäiseen tiedostoon ja aloittaa alusta. Mihinkäs hakemistoon minä talletinkaan sen tiedoston? En löydä ohjelman sitä versiota, jonka talletin viime viikolla ennen kuin aloitin nämä viimeiset muutokset. Joku on muuttanut tiedostoa, mutta en saa selvää, mitä muutoksia aiotaan tehdä. Missähän he pitävät tällä hetkellä muutettavaa tiedostoa? Olen uusi projektissa, enkä tiedä mitkä tiedostot pitäisi ottaa mukaan, jotta saisin testattua muutosteni vaikutusta.
6
6 Ilman SCM:ta ilmeneviä ongelmia (2/2) En ole muuttanut koodia kahteen viikkoon, mutta ohjelma ei käänny. Kukaan ei myönnä muuttaneensa mitään. Ohjelmani toimii eri tavalla kuin viimeksi, enkä keksi kuka on muuttanut sitä ja miksi. En pysty korjaamaan tätä vikaa, koska en saa ongelmaa päälle (en saa järjestelmää sellaiseen tilaan, että virhe tulisi esiin). En saa ongelmaa päälle, koska en tiedä, millainen kokoonpano ohjelmasta on asiakkaalla. En pysty korjaamaan tätä vikaa, koska toinen suunnittelija on ottanut tiedoston muutettavaksi eikä saa muutostaan valmiiksi ainakaan viikkoon. Vihaan sitä, kun joku toinen muuttaa samaa tiedostoa kanssani samanaikaisesti ja minun muutokseni menevät roskiin. Lähde: http://www.kyamk.fi/~apapo/akatemia/scm/scm.htm
7
7 Miksi SCM on tärkeää? eri ihmisten on pystyttävä tuottamaan koodia samaan järjestelmään hallitusti (esim. maantieteellisesti hajautettu tiimi) virheiden korjaus nopeutuu, kun tiedetään tarkasti mihin versioon korjaukset tehdään eri versioiden haaroittaminen (branching) eri alustoille tai asiakkaille onnistuu hallitusti muutosten tekeminen vain yhteen haaraan on mahdollista
8
8 Versiograafi, esimerkki 1.01.11.2 1.41.3 2.12.0 1.1.21.1.1
9
9 Keskeisiä tehtäviä Versionhallinta Ohjelmiston rakentamisen hallinta Muutospyyntöjen hallinta Julkaisujen hallinta Jakelun hallinta Asennuksen hallinta
10
10 Versionhallinta Valvoo ohjelmiston eri osien versioita ja niiden muutoksia Perusominaisuudet: – uusien versioiden teko, – uusien ja vanhojen versioiden muokkaus – version muutostietojen hallinta
11
11 Ohjelmiston rakentamisen hallinta hallitaan komentosarjojen (scripts) tai ohjelmistojen erilaisten kokoonpanojen (builds), esim. testaustarkoituksiin, rakentamista suunnitteluvaiheessa suunnitellaan kokoonpanojärjestys, SCM pitää huolen käytännön toteutuksen onnistumisesta SCM ei ole työkaluriippuvainen
12
12 Muutospyyntöjen hallinta Muutospyyntöjen toteutus voidaan jäljittää SCM-järjestelmän logitiedostojen avulla Auttaa myös muita havaitsemaan, kuinka joku osa järjestelmästä on muuttunut ja kuinka se pitäisi muualla ottaa huomioon
13
13 Muita Julkaisunhallinta: määrittää, mitkä järjestelmän osat (ja dokumentaatio) kuuluu yhteen muodostaen eheän kokonaisuuden Jakelunhallinta: menetelmä, jolla lopputuote jaetaan asiakkaalle Asennuksen hallinta: ohjelmiston asennus oikeilla asennusparametreilla
14
14 Työkaluja CVS (Concurrent versions system) – ilmainen (http://www.cvshome.org/) MS Visual SourceSafe (http://msdn.microsoft.com/ssafe/) Rational ClearCase (http://www.rational.com/products/clearcas e/) muita esim. PVCS, Uniface, Perforce, Starteam
15
15 Yhteenveto SCM on apuvälineenä koko projektin ajan sekä yleensä myös tuotteen elinkaaren loppuun saakka. SCM:n käyttö tulee suunnitella, sopiva väline valita ja projektin jäsenet tulee kouluttaa sen käyttöön. Yrityksen oman ohjeiston lisäksi tulee vielä projektikohtaisesti sopia SCM:n käytön yksityiskohdista!
Samankaltaiset esitykset
© 2023 SlidePlayer.fi Inc.
All rights reserved.