Ohjelmiston kokoonpanonhallintaprosessi: 5 vaihetta

By BWZ Content

Kuten varmasti tiedät, ohjelmistokehityksessä ohjelmistokokoonpanon hallinta (SCM) tarkoittaa prosessia, jolla tietokonejärjestelmät, palvelimet ja ohjelmistot pidetään halutussa, yhdenmukaisessa tilassa.  Ohjelmistomuutosten hallinnaksi tai IT-automaatioksi kutsutun lähestymistavan ideana on ottaa käyttöön järjestelmä, jolla voidaan seurata ja vertailla koko järjestelmään tehtyjä muutoksia koko ohjelmistokehitysprosessin ajan sekä tunnistaa, kuka nämä muutokset teki. Tavoitteena on helpottaa projektinhallintaa, vähentää virheitä, parantaa jäljitettävyyttä […]

Kuten varmasti tiedät, ohjelmistokehityksessä ohjelmistokokoonpanon hallinta (SCM) tarkoittaa prosessia, jolla tietokonejärjestelmät, palvelimet ja ohjelmistot pidetään halutussa, yhdenmukaisessa tilassa. 

Ohjelmistomuutosten hallinnaksi tai IT-automaatioksi kutsutun lähestymistavan ideana on ottaa käyttöön järjestelmä, jolla voidaan seurata ja vertailla koko järjestelmään tehtyjä muutoksia koko ohjelmistokehitysprosessin ajan sekä tunnistaa, kuka nämä muutokset teki.

Tavoitteena on helpottaa projektinhallintaa, vähentää virheitä, parantaa jäljitettävyyttä ja kohentaa ohjelmiston yleistä laatua. 

SCM-prosessin hyödyt ovat:

  • Usean käyttäjän päivitykset: Ohjelmistokehityksen parissa työskentelee usein monia ihmisiä, mikä tarkoittaa jatkuvia päivityksiä ja muutoksia. SCM:n avulla voit seurata kaikkea tuotantoon vietyä koodia ja kokoonpanoja (eli tehdä kokoonpanotarkastuksen) sekä lisätä jäljitettävyyttä määrittämällä, kuka osallistujista teki kunkin muutoksen.
  • Tuottavuus: SCM parantaa ohjelmiston tuottavuutta, koska se varmistaa virheiden vähäisyyden. Voit esimerkiksi aina varmistaa, että testi- ja tuotantoympäristöt vastaavat toisiaan.
  • Viestintä ja yhteistyö: SCM helpottaa tiimin jäsenten välistä viestintää, jolloin projektiin osallistuvien sidosryhmien on helppo työskennellä yhdessä ja parantaa tuotteen laatua. 
  • Alusta- ja käyttöjärjestelmätestaus: Varmista, että ohjelmisto toimii tehokkaasti useilla alustoilla ja käyttöjärjestelmillä. 
  • Muutoksiin mukautuminen: SCM helpottaa aikataulujen, käytäntöjen ja käyttäjien muutoksiin mukautumista.
  • Kustannusten hallinta: Seuraamalla tiimin jäseniä ja projektin työnkulkua SCM auttaa hallitsemaan kustannuksia ja parantamaan tehokkuutta.

Tässä artikkelissa käyn läpi SCM-prosessin eri vaiheet, kerron, keiden siihen on osallistuttava, ja esittelen, millaisia työkaluja sen tueksi on saatavilla.

SCM-suunnitelman 5 vaihetta

Ohjelmistokokoonpanon hallintaprosessi koostuu vaiheista, joiden tarkoituksena on seurata ja hallita kaikkia vikoja, resursseja, koodeja, asiakirjoja, laitteistoja ja budjetteja projektin aikana.

SCM on monialainen prosessi, johon osallistuu ihmisiä kaikilta tasoilta, kuten DevOps-asiantuntijoita, kehittäjiä, projektipäälliköitä ja projektin omistajia, järjestelmänvalvojia sekä testaajia. 

1. Suunnittelu ja tunnistaminen

Prosessin ensimmäinen vaihe on suunnittelu ja tunnistaminen. Tässä vaiheessa tavoitteena on suunnitella ohjelmistoprojektin kehitys ja tunnistaa sen laajuuteen kuuluvat kohteet. Tämä tehdään järjestämällä tiimin kanssa kokouksia ja aivoriihiä, joissa määritetään projektin loppuosan peruskriteerit. 

Tähän prosessiin kuuluu myös sen määrittäminen, miten projekti etenee, sekä lopetuskriteerien tunnistaminen. Näin tiimisi tietää, miten tunnistaa tilanteen, jossa kaikki projektin tavoitteet on saavutettu. 

Tämän vaiheen erityisiä tehtäviä ovat:

  • Kohteiden, kuten testitapausten, määritysten vaatimusten ja koodimoduulien, tunnistaminen
  • Prosessin jokaisen ohjelmistokokoonpanon kohteen tunnistaminen
  • Perustietojen kokoaminen siitä, miksi, milloin ja mitä muutoksia tehdään sekä kuka vastaa niiden tekemisestä
  • Luettelon laatiminen tarvittavista resursseista, kuten työkaluista, tiedostoista ja asiakirjoista

2. Versionhallinta ja perustaso

Versionhallinta- ja perustasovaihe varmistaa tuotteen jatkuvan eheyden tunnistamalla ohjelmistosta hyväksytyn version. Tämä perustaso määritetään tiettynä ajankohtana SCM-prosessissa, ja sitä voidaan muuttaa vain muodollisen menettelyn kautta. 

Tämän vaiheen tarkoituksena on hallita tuotteeseen tehtäviä muutoksia. Projektin kehittyessä määritetään uusia perustasoja, minkä tuloksena ohjelmistosta syntyy useita versioita.  

Tähän vaiheeseen kuuluvat seuraavat tehtävät:

  • Projektin kattamien komponenttien tunnistaminen ja luokittelu
  • Menetelmän kehittäminen ohjelmiston eri versioiden hierarkian seuraamista varten
  • Eri komponenttien välisten olennaisten suhteiden tunnistaminen
  • Tuotteen eri perustasojen, kuten kehitys-, toiminnallisen ja tuotteen perustason, määrittäminen
  • Yhdenmukaisen nimeämisjärjestelmän kehittäminen kaikille tuotteille, versioille ja tiedostoille, jotta kaikilla on samat tiedot.

Projektin määritteen perustasoittaminen pakottaa ottamaan käyttöön muodolliset kokoonpanomuutosten hallintaprosessit, jos näitä määritteitä muutetaan. 

Get Free Access
Get regular tech leadership wisdom for delivering better software and systems.
Get Free Access

Have an account? Log In

3. Muutosten hallinta

Muutoshallinta on menetelmä, jolla varmistetaan, että kaikki tehdyt muutokset ovat yhdenmukaisia muun projektin kanssa. Näiden hallintatoimien käyttöönotto auttaa laadunvarmistuksessa sekä uusien perustasojen hyväksymisessä ja julkaisemisessa. Muutoshallinta on olennaisen tärkeää projektin onnistuneen loppuunsaattamisen kannalta. 

Tässä vaiheessa tiimille toimitetaan konfiguraatioiden muuttamista koskevat pyynnöt, ja ohjelmistokonfiguraation hallinnoija joko hyväksyy tai hylkää ne. Yleisimmät pyynnöt koskevat erilaisten konfiguraatiokohteiden lisäämistä tai muokkaamista tai käyttäjäoikeuksien muuttamista.

Tämä menettely sisältää:

  • Asiakkaan pyytämien tapauskohtaisten muutosten hallinnan
  • Muutospyynnön perusteltavuuden tarkistamisen arvioimalla niiden kokonaisvaikutukset projektiin
  • Hyväksyttyjen muutosten tekemisen tai sen selittämisen, miksi muutospyynnöt hylättiin.

4. Konfiguraation tilan kirjaaminen

Seuraavaksi varmistetaan, että projektia kehitetään suunnitelman mukaisesti testaamalla ja tarkistamalla se ennalta määritettyjen perustasojen mukaan. Tähän kuuluu julkaisutietojen ja niihin liittyvien asiakirjojen tarkastelu, jotta varmistetaan ohjelmiston kaikkien toiminnallisten vaatimusten täyttyminen. 

Konfiguraation tilan kirjaamisessa seurataan jokaista prosessin aikana julkaistua versiota sekä arvioidaan, mitä uutta kussakin versiossa on ja miksi muutokset olivat tarpeellisia. Tähän vaiheeseen kuuluu muun muassa:

  • Perustasosta seuraavaan tehtyjen muutosten kirjaaminen ja arviointi
  • Kaikkien muutospyyntöjen tilan ja ratkaisun seuranta
  • Jokaisen muutospyyntöjen seurauksena tehdyn muutoksen dokumentoinnin ylläpitäminen sekä dokumentointi toisen perustason saavuttamiseksi 
  • Aiempiin versioihin tutustuminen analysointia ja testausta varten.

5. Tarkastukset ja katselmoinnit

Viimeinen vaihe on ohjelmistokehityksen elinkaaren jokaisen vaiheen tekninen katselmointi. Tarkastuksissa ja katselmoinneissa tarkastellaan prosessia, konfiguraatioita, työnkulkua, muutospyyntöjä ja kaikkea muuta, mitä kunkin perustason kehittämiseen on projektin aikana liittynyt. 

Tiimi suorittaa sovelluksesta useita katselmointeja varmistaakseen sen eheyden ja laatii samalla olennaiset oheisasiakirjat, kuten julkaisutiedot, käyttöoppaat ja asennusohjeet.

Tähän vaiheeseen kuuluu:

  • Suunnittelu- ja tunnistamisvaiheessa asetettujen tavoitteiden täyttymisen varmistaminen
  • Sen varmistaminen, että ohjelmisto noudattaa määritettyjä konfiguraation hallinnan standardeja
  • Sen varmistaminen, että perustasoihin tehdyt muutokset vastaavat raportteja
  • Sen vahvistaminen, että projekti on projektin tavoitteiden mukainen ja valmis.

Toisin kuin perinteiset tiedostojärjestelmät, erityinen tietokantojen hallintaohjelmisto voi tarjota kehittyneitä ominaisuuksia, kuten tietojen eheyden ja turvallisuuden, jotka ovat ratkaisevan tärkeitä tehokkaassa ohjelmistokonfiguraation hallinnassa.

Ketkä osallistuvat ohjelmistokonfiguraation hallintaprosessiin?

SCM-prosessi on monitieteinen, ja siihen osallistuu lähes jokainen ohjelmistokehitystiimin jäsen.

Konfiguraation hallinnoija

Konfiguraation hallinnoija vastaa siitä, kuka on vastuussa mistäkin koko kehitysprosessin ajan. Hän varmistaa, että kaikki noudattavat SCM-prosessia koko projektin ajan, ja hänellä on viimeinen sana kaikkien muutospyyntöjen suhteen. 

Projektipäällikkö

Projektipäällikön rooli on olennainen SCM-prosessissa. Hän määrittää projektin aikataulun varmistaakseen, että se valmistuu määräaikojen puitteissa, ja laatii myös raportteja tiimin edistymisestä. Toinen projektipäällikön tärkeä tehtävä on varmistaa, että jokainen tiimin jäsen noudattaa ennalta määritettyjä ohjeita ohjelmiston luomiseen, muuttamiseen ja testaamiseen.

Ohjelmistokehittäjät

Kehittäjät vastaavat koodin kirjoittamisesta kehityksen aikana sekä hyväksyttyjen muutospyyntöjen toteuttamisesta. 

Tarkastaja

Tämä rooli vastaa kaikista tarkastuksista ja katselmoinneista, ja sen haltijan on varmistettava, että lopullinen julkaisu on valmis ja yhdenmukainen.

More Articles

Mitä etuja konfiguraation hallintatyökalujen käytöstä on?

Ohjelmistokokoonpanon hallintaprosessin helpottamiseen on saatavilla useita työkaluja. Näiden työkalujen tarkoituksena on perinteisesti manuaalisten tehtävien automatisointi, mikä mahdollistaa paremman tarkkuuden, nopeuden ja hallinnan. Tarkemmin sanottuna ne voivat auttaa seuraavissa asioissa:

  • Hälytykset ja raportit: Hyvä SCM-työkalu tarjoaa hälytyksiä ja raportteja, jos sovitusta perustasosta poiketaan. Nämä tiedot välitetään lähes reaaliajassa, joten johtajat voivat toimia nopeasti, jos jokin alkaa mennä väärään suuntaan. 
  • Muutosten seuranta: SCM-työkalut seuraavat automaattisesti palvelimiin tai sovelluksiin tehtyjä muutoksia ja mahdollistavat myös tällaisten tietojen manuaalisen syöttämisen. Muutosten auditointi voidaan tehdä myös valvomalla komentosarjojen tulosteita. 
  • Kokoonpanojen vertailut: Parhaat ohjelmistokokoonpanon hallintatyökalut tarjoavat tavan tunnistaa kokoonpanojen väliset erot.
  • Nopeampi vianmääritys: Virheet, väärät toimenpiteet ja ongelmat tunnistetaan nopeasti, jotta kehittäjät voivat ryhtyä toimiin ennen ongelman pahenemista. 
  • Laite- ja ohjelmistoinventaarion seuranta: Useimmissa SCM-työkaluissa on ominaisuus laitteisto- ja ohjelmisto-omaisuuden seurantaan, joten sinun ei tarvitse ylläpitää manuaalista luetteloa. 
  • Korjaustiedostojen hallinta: SCM-työkalut voivat auttaa seuraamaan kaikkia korjaustiedostojen hallintaan liittyviä tietoja, kun jakelet päivitettyä ohjelmistoa. 

Onko ohjelmistokokoonpanon hallintatyökalun käyttämisessä haittoja?

Ennen SCM-työkalun käyttöönottoa on otettava huomioon joitakin seikkoja, kuten:

  • Resurssien kuluminen: Sinulla on oltava riittävästi resursseja prosessin tukemiseen alusta loppuun 
  • Osaamisen rajoitukset: Kaikilla mukana olevilla on oltava syvällinen tietämys käytettävistä ohjelmistonhallintatyökaluista
  • Pk-yrityksen haaste: Näiden työkalujen tehokkaaseen käyttöön tarvittava laajuus voi olla pienelle yritykselle vaikea toteuttaa
  • Laitteistovaatimukset: Prosessin sujuva toiminta edellyttää nopeaa ja tehokkaasti konfiguroitua laitteistoa.

Loppusanat ohjelmistokokoonpanon hallinnasta

Edellä esitin yleiskatsauksen siitä, mitä sinun on tiedettävä ohjelmistokokoonpanon hallintaprosessin määrittämiseksi projektiesi seuraamista, hallintaa ja johtamista varten. 

SCM-työkalut, kuten Ansible tai TeamCity, auttavat automatisoimaan monia SCM-prosessin osa-alueita ja voivat tarjota hyvän tuoton sijoitukselle. Tutustu valikoimaamme näistä työkaluista artikkelissa 10 parasta ohjelmistokokoonpanon hallintatyökalua.
Ohjelmistokokoonpanon hallinnan ja laadunvarmistuksen maailma kehittyy nopeasti. Tilaa The QA Lead -uutiskirje, niin saat käteviä vinkkejä, niksejä ja työkaluja suoraan sähköpostiisi.

Tai jatka oppimista kuuntelemalla tätä podcastia: AUTONOMISEN AUTOMAATION SYNTY JA MILTÄ SE NÄYTTÄÄ (MABL-YRITYKSEN BERTOLD KOLICSIN KANSSA) tai lukemalla tämän luettelon: 10 UUSINTA OHJELMISTOTESTAUKSEN TYÖKALUA, JOITA LAADUNVARMISTUKSEN ASIANTUNTIJAT KÄYTTÄVÄT

You may also like