versionvalinta
Versionvalinta tarkoittaa prosessia, jossa valitaan käytettävä versio ohjelmistokomponentista, kirjastosta, API:sta tai dokumentaatiosta projektissa. Se kuuluu konfiguraatio- ja riippuvuushallintaan sekä julkaisuprosesseihin. Tavoitteena on varmistaa järjestelmän yhteensopivuus, turvallisuus sekä ylläpidettävyys.
Kontekstissa versionvalinta vaikuttaa sekä kehitys- että tuotantoympäristöihin. Riippuvuushallinnassa se auttaa hallitsemaan toistettavuutta, päivityksiä ja riskien hallintaa.
Keskeisiä tekijöitä ovat yhteensopivuus muiden komponenttien kanssa, turvallisuus- ja vakauspäivitykset, ominaisuudet, suorituskyky sekä lisenssi- ja ylläpitokäytännöt.
Menetelmät ja käytännöt sisältävät versionhallinnan periaatteet, kuten versionrajoitteet ja version pinnaamisen (pinning), sekä semanttisen versioningn (semver)
Prosessi kattaa kartoituksen, testauksen, validoinnin sekä käyttöönoton. Päivitysprosessi tulisi toteuttaa yhdessä jatkuvan integraation ja testauksen kanssa,
Haasteita ovat riippuvuuksien yhteensopivuus, transitiivisten riippuvuuksien hallinta, päivitysten ajoitus sekä yhteensopivuus kolmansien osapuolien kanssa. Selkeät käytännöt
Esimerkkejä käytännöistä: npm:n package.json, Pythonin requirements-tiedostot sekä Java-pohjaiset pom.xml tai Gradle-tiedostot. Versionvalintaa tekevät organisaatiot määrittelevät itselleen