Tarkvara konfiguratsioonihaldus tarkvaratehnikas
⚡ Nutikas kokkuvõte
Tarkvarakonfiguratsiooni haldus (SCM) on protsess, mille eesmärk on süstemaatiliselt hallata, korraldada ja kontrollida dokumentide, koodi ja muude üksuste muudatusi kogu tarkvaraarenduse elutsükli vältel. Selle peamine eesmärk on suurendada tootlikkust, säilitades samal ajal...ping vigu miinimumini.
Mis on tarkvara konfiguratsioonihaldus?
Tarkvaratehnikas, Tarkvara konfiguratsioonihaldus (SCM) on protsess, mille eesmärk on süstemaatiliselt hallata, korraldada ja kontrollida dokumentide, koodide ja muude üksuste muudatusi tarkvaraarenduse elutsükli jooksul. Peamine eesmärk on suurendada tootlikkust minimaalsete vigadega. SCM on osa konfiguratsioonihalduse interdistsiplinaarsest valdkonnast ja see suudab täpselt kindlaks teha, kes millise muudatuse tegi.
Miks me vajame konfiguratsioonihaldust?
Tarkvara konfiguratsioonihaldussüsteemi (SHA) juurutamise peamised põhjused on järgmised:
- Tarkvara kallal töötab mitu inimest, mida pidevalt uuendatakse.
- See võib olla juhtum, kus tarkvarakonfiguratsiooniprojektis on kaasatud mitu versiooni, haru ja autorit ning meeskond on geograafiliselt hajutatud ja töötab samaaegselt.
- Kasutajate nõuete, poliitika, eelarve ja ajakava muudatustega tuleb arvestada.
- Tarkvara peaks suutma töötada erinevatel masinatel ja Operating Systems.
- Aitab kaasa sidusrühmade vahelise koordinatsiooni arendamisele.
- SCM protsess on kasulik ka süsteemi muudatuste tegemisega seotud 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 hallata või kontrollida midagi isegi siis, kui te ei tea, mis see on. See on kirjeldus, mis sisaldab CSCI tüüpi (arvutitarkvara konfiguratsiooniüksus), projekti identifikaatorit ja versiooniteavet.
Tegevused selle protsessi ajal:
- Konfiguratsioonielementide, näiteks lähtekoodi moodulite tuvastamine, testjuhtumja nõuete spetsifikatsioon.
- Iga CSCI identifitseerimine SCM-repositooriumis objektorienteeritud lähenemisviisi abil.
- Protsess algab põhiobjektidest, mis rühmitatakse koondobjektideks. Üksikasjad selle kohta, milliseid muudatusi, miks, millal ja kelle poolt testis tehakse.
- Igal objektil on oma omadused, mis identifitseerivad selle nime, mis on selgesõnaline kõigile teistele objektidele.
- Vajalike ressursside loend, näiteks dokument, fail, tööriistad jne.
Näide:
Faili login.php asemel peaks sellele panema nimeks login_v1.2.php, kus v1.2 tähistab faili versiooninumbrit.
Kausta nimetamise asemel „Code", peaks see olema nimetatud "Code_D”, kus D tähistab, et koodi tuleks iga päev varundada.
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õlbustada rakenduse erinevate versioonide loomist.
- Nende töötoodete erinevate versioonide haldamise mehhanismide määratlemine ja kindlaksmääramine.
- Funktsionaalne baasjoon vastab läbivaadatud süsteeminõuetele.
- Laialdaselt kasutatavate lähtetasemete hulka kuuluvad funktsionaalsed, arenduslikud ja tootepõhised lähtetasemed.
Lihtsamalt öeldes tähendab baasjoon vabastamiseks valmis.
Muuda kontrolli
Muudatuste kontroll on protseduuriline meetod, mis tagab konfiguratsiooniobjektis tehtud muudatuste kvaliteedi ja järjepidevuse. Selles etapis esitatakse muutmistaotlus tarkvara konfiguratsioonihaldurile.
Tegevused selle protsessi ajal:
- Kontrollige ad-hoc muudatusi stabiilse tarkvaraarenduskeskkonna loomiseks. Muudatused salvestatakse repositooriumisse.
- Päringut kontrollitakse tehnilise väärtuse, võimalike kõrvalmõjude ja üldise mõju põhjal teistele konfiguratsiooniobjektidele.
- See haldab muudatusi ja teeb konfiguratsiooniüksused kättesaadavaks tarkvara elutsükli jooksul.
Konfiguratsiooni oleku arvestus
Konfiguratsiooni oleku arvestus tracks iga väljalaske SCM-protsessi ajal. See etapp hõlmab trackuningas, mis igas versioonis on ja millised muudatused on selle versioonini viinud.
Tegevused selle protsessi ajal:
- Säilitab kõik eelmises baasjoones tehtud muudatused uue baasjoone saavutamiseks.
- Tarkvara konfiguratsiooni määratlemiseks tuvastage kõik üksused.
- Jälgige muutmistaotluste olekut.
- Täielik loetelu kõigist muudatustest pärast viimast baasjoont.
- Lubab tracjärgmise baasjoone saavutamise kuningas.
- Võimaldab varasemaid versioone/väljaandeid muutatractestimiseks ted.
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 standardite järgimise kontrollimiseks, tehtud muudatuste auditeerimiseks ja aruandluseks.
- SCM-auditid tagavad ka selle, et tracProtsessi ajal säilib liikuvus.
- Tagab, et baasjoone muudatused vastavad konfiguratsiooni olekuaruannetele.
- Täielikkuse ja järjepidevuse valideerimine.
SCM protsessis osaleja
Järgnevalt on toodud SCM-i peamised osalejad:
1. Konfiguratsioonihaldur
- Konfiguratsioonihaldur on juht, kes vastutab konfiguratsiooniüksuste tuvastamise eest.
- CM tagab, et meeskond järgib SCM protsessi.
- Ta peab muudatuste taotlused 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 väljalaske järjepidevus ja täielikkus.
4. Projektijuht:
- Veenduge, et toode arendatakse teatud aja jooksul.
- Jälgib arenduse edenemist ja tuvastab SCM protsessis esinevaid probleeme.
- Looge tarkvarasüsteemi oleku kohta aruandeid.
- Veenduge, et loomisel, muutmisel ja testimisel järgitakse protsesse ja poliitikaid.
5. Kasutaja
Lõppkasutaja peaks mõistma SCM-i põhitermineid, et tagada tarkvara uusima versiooni olemasolu.
Tarkvara konfiguratsiooni haldusplaan
Tarkvara konfiguratsioonihalduse planeerimise (SCMP) protsess algab projekti varajastes kodeerimise etappides. Planeerimisetapi tulemuseks on SCM-plaan, mida võidakse projekti käigus laiendada või muuta.
- SCMP võib järgida avalikku standardit nagu IEEE 828 või organisatsioonipõhist standardit.
- See määratleb hallatavate dokumentide tüübid ja dokumentide nimetamise konventsiooni. Näide: Test_v1.
- SCMP määrab isiku, kes vastutab kogu SCM-i protsessi ja lähteseisundite loomise eest.
- Paranda versioonihalduse ja muudatuste kontrolli poliitikaid.
- Määrake tööriistad, mida saab SCM-protsessi käigus kasutada.
- Konfiguratsioonihalduse andmebaas konfiguratsiooniteabe salvestamiseks.
Tarkvara konfiguratsioonihaldustööriistad
Igal muudatuste haldamise tarkvaral peaksid olema järgmised 3 põhifunktsiooni:
Samaaegsuse juhtimine:
Kui kaks või enam ülesannet toimuvad samaaegselt, nimetatakse seda samaaegseks tööks. Samaaegsus SCM-i kontekstis tähendab seda, et sama faili redigeerivad mitu inimest korraga.
Kui samaaegsust SCM-i tööriistadega õigesti ei hallata, võib see tekitada palju pakilisemaid probleeme.
Versioonihaldus:
SCM kasutab arhiveerimismeetodit ehk salvestab kõik faili tehtud muudatused. Arhiveerimis- või salvestamisfunktsiooni abil on probleemide korral võimalik eelmisele versioonile tagasi pöörduda.
Synchroniseerimine:
Kasutajad saavad välja registreerida mitu faili või terve koopia repositooriumist. Seejärel töötab kasutaja vajaliku faili kallal ja registreerib muudatused repositooriumisse tagasi. Nad saavad oma kohaliku koopia sünkroonida, et olla kursis teiste meeskonnaliikmete tehtud muudatustega.
Järgnevalt on loetletud 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 konfiguratsioonihalduse tööriist. Lisaks konfiguratsioonihaldusele pakub see ka rakenduste juurutamist ja ülesannete automatiseerimist.
Download link: https://www.ansible.com/



