Tarkvara konfiguratsioonihaldus tarkvaratehnikas
Mis on tarkvara konfiguratsioonihaldus?
Tarkvaratehnikas, Tarkvara konfiguratsioonihaldus (SCM) on protsess dokumentide, koodide ja muude olemite muudatuste sรผstemaatiliseks haldamiseks, korraldamiseks ja kontrollimiseks tarkvaraarenduse elutsรผkli jooksul. Esmane eesmรคrk on tรตsta tootlikkust minimaalsete vigadega. SCM on osa konfiguratsioonihalduse valdkonnaรผlesest valdkonnast ja suudab tรคpselt kindlaks teha, kes millise redaktsiooni tegi.
Miks me vajame konfiguratsioonihaldust?
Tehnilise tarkvara konfiguratsioonihaldussรผsteemi juurutamise peamised pรตhjused on jรคrgmised:
- Pidevalt uuendatava tarkvara kallal tรถรถtab mitu inimest
- Vรตib juhtuda, et tarkvara konfigureerimisprojekti on kaasatud mitu versiooni, haru ja autorit ning meeskond on geograafiliselt jaotatud ja tรถรถtab samaaegselt
- Muutused kasutajanรตuetes, poliitikas, eelarves ja ajakavas tuleb arvesse vรตtta.
- Tarkvara peaks suutma tรถรถtada erinevatel masinatel ja Operating Systems
- Aitab arendada koordineerimist sidusrรผhmade vahel
- SCM-protsess on kasulik ka sรผsteemi muudatuste tegemise kulude kontrollimiseks
Kรตik muudatused tarkvara konfiguratsioonis mรตjutavad lรตpptoodet. Seetรตttu tuleb konfiguratsiooniรผksuste muudatusi kontrollida ja hallata.
รlesanded SCM protsessis
- Konfiguratsiooni identifitseerimine
- Lรคhtejooned
- Muuda kontrolli
- Konfiguratsiooni oleku arvestus
- Konfiguratsiooni auditid ja Revnรคgemused
Konfiguratsiooni identifitseerimine
Konfiguratsiooni tuvastamine on meetod tarkvarasรผsteemi ulatuse mรครคramiseks. Selle sammu abil saate midagi hallata vรตi juhtida isegi siis, kui te ei tea, mis see on. See on kirjeldus, mis sisaldab CSCI tรผรผpi (Computer Software Configuration Item), projekti identifikaatorit ja versiooniteavet.
Tegevused selle protsessi ajal:
- Konfiguratsioonielementide, nรคiteks lรคhtekoodi moodulite tuvastamine, testjuhtumja nรตuete spetsifikatsioon.
- Iga CSCI tuvastamine SCM-i hoidlas, kasutades objektorienteeritud lรคhenemisviisi
- Protsess algab pรตhiobjektidega, mis on rรผhmitatud koondobjektideks. รksikasjad selle kohta, mida, miks, millal ja kes testis muudatusi teeb
- Igal objektil on oma omadused, mis tuvastavad selle nime, mis on selgesรตnaline kรตigile teistele objektidele
- Vajalike ressursside loend, nagu dokument, fail, tรถรถriistad jne.
Nรคide:
Selle asemel, et anda failile nimi login.php, tuleks selle nimi panna login_v1.2.php, kus v1.2 tรคhistab faili versiooninumbrit
Kaustale "Code" nime andmise asemel tuleks sellele panna nimi "Code_D", kus D tรคhistab koodi, tuleks varundada iga pรคev.
Baseline
Lรคhtejoon on tarkvara konfiguratsiooniรผksuse ametlikult aktsepteeritud versioon. See mรครคratakse ja fikseeritakse kindlal ajal SCM-i protsessi lรคbiviimisel. Seda saab muuta ainult ametlike muudatuste kontrollimise protseduuride kaudu.
Tegevused selle protsessi ajal:
- Hรตlbustab rakenduse erinevate versioonide koostamist
- Nende tรถรถtoodete erinevate versioonide haldamise mehhanismide mรครคratlemine ja mรครคramine
- Funktsionaalne baasjoon vastab lรคbivaadatud sรผsteeminรตuetele
- Laialdaselt kasutatavad lรคhtejooned hรตlmavad funktsionaalseid, arenduslikke ja toote baasjooni
Lihtsamalt รถeldes tรคhendab baasjoon vabastamiseks valmis.
Muuda kontrolli
Muudatuste juhtimine on protseduuriline meetod, mis tagab konfiguratsiooniobjektis muudatuste tegemisel kvaliteedi ja jรคrjepidevuse. Selles etapis esitatakse muudatustaotlus tarkvara konfiguratsioonihaldurile.
Tegevused selle protsessi ajal:
- Kontrollige ad-hoc muudatusi stabiilse tarkvaraarenduskeskkonna loomiseks. Muudatused on seotud hoidlaga
- Taotlust kontrollitakse tehniliste omaduste, vรตimalike kรตrvalmรตjude ja รผldise mรตju alusel teistele konfiguratsiooniobjektidele.
- See haldab muudatusi ja teeb tarkvara elutsรผkli jooksul kรคttesaadavaks konfiguratsioonielemendid
Konfiguratsiooni oleku arvestus
Konfiguratsiooni oleku arvestus jรคlgib iga vรคljalaset SCM-i protsessi ajal. See etapp hรตlmab iga versiooni ja selle versioonini viivate muudatuste jรคlgimist.
Tegevused selle protsessi ajal:
- Sรคilitab kรตik eelmisel baasjoonel tehtud muudatused, et jรตuda uuele lรคhtetasemele
- Tarkvara konfiguratsiooni mรครคratlemiseks tuvastage kรตik รผksused
- Jรคlgige muudatustaotluste olekut
- Tรคielik loend kรตigist muudatustest alates viimasest lรคhtetasemest
- Vรตimaldab jรคlgida edenemist jรคrgmise algtasemeni
- Vรตimaldab kontrollida eelmisi vรคljalaseid/versioone, mida testimiseks ekstraheeritakse
Konfiguratsiooni auditid ja Revnรคgemused
Tarkvara konfiguratsiooniauditid kontrollivad, kas kogu tarkvaratoode vastab pรตhivajadustele. See tagab, et see, mida ehitatakse, on see, mida tarnitakse.
Tegevused selle protsessi ajal:
- Konfiguratsiooniauditit viivad lรคbi audiitorid, kontrollides mรครคratletud protsesside jรคrgimist ja tagades, et SCM-i eesmรคrgid on tรคidetud.
- Konfiguratsioonikontrolli standarditele vastavuse kontrollimiseks. tehtud muudatuste auditeerimine ja aruandlus
- SCM-i auditid tagavad ka jรคlgitavuse sรคilitamise protsessi ajal.
- Tagab, et lรคhtetaseme muudatused vastavad konfiguratsiooni olekuaruannetele
- Tรคielikkuse ja jรคrjepidevuse kinnitamine
SCM protsessis osaleja
Jรคrgmised on SCM-i peamised osalejad
1. Konfiguratsioonihaldur
- Configuration Manager on juht, kes vastutab konfiguratsiooniรผksuste tuvastamise eest.
- CM tagab, et meeskond jรคrgib SCM-i protsessi
- Ta peab muutmistaotlused heaks kiitma vรตi tagasi lรผkkama
2. Arendaja
- Arendaja peab koodi muutma vastavalt standardsetele arendustegevustele vรตi muutmistaotlustele. Ta vastutab koodi konfiguratsiooni sรคilitamise eest.
- Arendaja peaks muudatusi kontrollima ja konfliktid lahendama
3 Audiitor
- Audiitor vastutab SCM-i auditite ja รผlevaatuste eest.
- Vajadus tagada vabastamise jรคrjepidevus ja tรคielikkus.
4. Projektijuht:
- Veenduge, et toode tรถรถtatakse vรคlja teatud aja jooksul
- Jรคlgib arenduse edenemist ja tuvastab probleeme SCM-i protsessis
- Koostage aruandeid tarkvarasรผsteemi oleku kohta
- Veenduge, et loomisel, muutmisel ja testimisel jรคrgitakse protsesse ja eeskirju
5. Kasutaja
Lรตppkasutaja peaks mรตistma SCM-i vรตtmetingimusi, et tal oleks tarkvara uusim versioon
Tarkvara konfiguratsiooni haldusplaan
SCMP (Software Configuration Management Planing) protsessi planeerimine algab projekti varases kodeerimisetapis. Planeerimisetapi tulemuseks on SCM-kava, mida vรตidakse projekti kรคigus pikendada vรตi รผle vaadata.
- SCMP vรตib jรคrgida avalikku standardit, nagu IEEE 828, vรตi organisatsioonispetsiifilist standardit
- See mรครคratleb haldatavate dokumentide tรผรผbid ja dokumendi nimetamise. Nรคide Test_v1
- SCMP mรครคrab isiku, kes vastutab kogu SCM-i protsessi ja lรคhteseisundite loomise eest.
- Parandage versioonihalduse ja muudatuste juhtimise eeskirju
- Mรครคrake tรถรถriistad, mida saab SCM-protsessi ajal kasutada
- Konfiguratsioonihalduse andmebaas konfiguratsiooniteabe salvestamiseks.
Tarkvara konfiguratsioonihaldustรถรถriistad
Igal muudatuste haldamise tarkvaral peaks olema jรคrgmised 3 pรตhifunktsiooni:
Samaaegsuse juhtimine:
Kui kaks vรตi enam รผlesannet toimuvad samal ajal, nimetatakse seda samaaegseks toiminguks. Samaaegsus kontekstis SCM-iga tรคhendab, et sama faili redigeerib mitu inimest korraga.
Kui samaaegsust SCM-i tรถรถriistadega รตigesti ei hallata, vรตib see tekitada palju pakilisemaid probleeme.
Versioonihaldus:
SCM kasutab arhiveerimismeetodit vรตi salvestab kรตik failis tehtud muudatused. Arhiveerimise vรตi salvestamise funktsiooni abil on vรตimalik probleemide korral naasta eelmisele versioonile.
Synchroniseerimine:
Kasutajad saavad kontrollida rohkem kui รผhte faili vรตi kogu hoidla koopiat. Seejรคrel tรถรถtab kasutaja vajaliku faili kallal ja kontrollib muudatused tagasi hoidlasse. Nad saavad sรผnkroonida oma kohaliku koopia, et olla kursis teiste meeskonnaliikmete tehtud muudatustega.
Jรคrgmised on populaarsed tรถรถriistad
1.Git: Git on tasuta avatud lรคhtekoodiga tรถรถriist, mis aitab kontrollida versiooni. See on loodud igat tรผรผpi projektide kiireks ja tรตhusaks kรคsitlemiseks.
Download link: https://git-scm.com/
2. meeskond Foundation Server: meeskond Foundation on rรผhm tรถรถriistu ja tehnoloogiaid, mis vรตimaldavad meeskonnal teha koostรถรถd ja koordineerida toote loomist.
Download link: https://azure.microsoft.com/en-us/services/devops/server/
3. Vรตimalik: see on avatud lรคhtekoodiga tarkvara konfiguratsioonihaldustรถรถriist. Lisaks konfiguratsioonihaldusele pakub see ka rakenduste juurutamist ja รผlesannete automatiseerimist.
Download link: https://www.ansible.com/
Vaadake rohkem SW konfiguratsioonitรถรถriistu: https://www.guru99.com/software-configuration-management-tools.html
Jรคreldus
- Konfiguratsioonihalduse parimad tavad aitavad organisatsioonidel sรผstemaatiliselt hallata, korraldada ja kontrollida muudatusi dokumentides, koodides ja muudes รผksustes. Tarkvaraarenduse elutsรผkkel.
- SCM-i protsessi esmane eesmรคrk on tรตsta tootlikkust minimaalsete vigadega
- Konfiguratsioonihaldusprotsessi peamine pรตhjus on see, et tarkvara kallal tรถรถtab mitu inimest, mida pidevalt uuendatakse. SCM aitab luua samaaegsust, sรผnkroonimist ja versioonikontrolli.
- Lรคhtejoon on tarkvara konfiguratsiooniรผksuse ametlikult aktsepteeritud versioon
- Muudatuste juhtimine on protseduuriline meetod, mis tagab konfiguratsiooniobjektis muudatuste tegemisel kvaliteedi ja jรคrjepidevuse.
- Konfiguratsiooni oleku arvestus jรคlgib iga vรคljalaset SCM-i protsessi ajal
- Tarkvara konfiguratsiooniauditid kontrollivad, kas kogu tarkvaratoode vastab pรตhivajadustele
- SCM-i protsessis osalejad on projektijuht, konfiguratsioonihaldur, arendaja, audiitor ja kasutaja
- SCM-i protsessi planeerimine algab projekti varases faasis.
- Git, Team Foundation Sever ja Ansible on mรตned populaarsed SCM-i tรถรถriistad.


