Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

1 010758000 Ohjelmistotekniikka - Software Control Management Kevät 2003 Hanna-Kaisa Lammi LTY/Tite Osa materiaalista on peräisin kurssikirjasta Haikala,

Samankaltaiset esitykset


Esitys aiheesta: "1 010758000 Ohjelmistotekniikka - Software Control Management Kevät 2003 Hanna-Kaisa Lammi LTY/Tite Osa materiaalista on peräisin kurssikirjasta Haikala,"— Esityksen transkriptio:

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!


Lataa ppt "1 010758000 Ohjelmistotekniikka - Software Control Management Kevät 2003 Hanna-Kaisa Lammi LTY/Tite Osa materiaalista on peräisin kurssikirjasta Haikala,"

Samankaltaiset esitykset


Iklan oleh Google