Versienummer
Versienummers maken onderscheid tussen individuele versies van software om hun verdere ontwikkelingen op een begrijpelijke manier te identificeren.
Het versienummer is de basis voor versiebeheer . Het proces van het toewijzen van het versienummer wordt versiebeheer genoemd .
Structuur en betekenis
Een klassiek versienummer bestaat vaak uit de volgende onderdelen:
- Hoofdversienummer
- (Engels: major release ) geeft meestal extreem significante wijzigingen aan het programma aan - bijvoorbeeld als het programma volledig is herschreven (bijvoorbeeld GIMP 2.x na versie 1.x) of als er geen interfacecompatibiliteit met bibliotheken kan worden gehandhaafd.
- Klein versienummer
- ( Engelse minor release ) verwijst meestal naar de functionele uitbreiding van het programma.
- Revisienummer
- ( Engels patch-niveau of micro-release ) bevat meestal bugfixes .
- Build nummer
- ( Engels buildnummer ) geeft meestal de voortgang van het ontwikkelingswerk aan in afzonderlijke stappen, bijvoorbeeld, beginnend bij 0001, het wordt met één verhoogd bij elke compilatie van de code. Versie 5.0.0-3242 zou daarom staan voor het 3242e compilatieproduct van een software. Als versiebeheersystemen worden gebruikt, wordt vaak een nummer gebruikt in plaats van het buildnummer, dat de bronnen voor de compilatie binnen het versiebeheersysteem op unieke wijze identificeert. Dit maakt het gemakkelijker om de bijbehorende bronnen te vinden in het geval van een fout. [1]
Voorbeeld voor de 2e versie van een programma, de 3e kleine versie en de 5e foutcorrectie, Build 0041:
2.3.5-0041 │ │ │ └────── Build nummer │ │ └───────── Revisienummer │ └─────────── klein versienummer └───────────── Hoofdversienummer
Elk van deze versienummers kan ook uit meerdere cijfers bestaan. Als bijvoorbeeld na versie 0.9 alleen de secundaire versie toeneemt, wordt deze gevolgd door 0.10 en niet door 1.0. In sommige programma's heeft het secundaire versienummer twee cijfers of bevat het een voorloopnul als er meer dan tien versies van dit type worden verwacht (voorbeeld: 0,09). Als het hoofd- of secundaire versienummer wordt verhoogd, worden de volgende cijfers teruggezet naar 0. Versie 2.3.5 wordt gevolgd door versie 2.3.6, 2.4.0 of 3.0 (of 3.0.0), afhankelijk van de mate van wijziging.
De hoofdversie met het nummer 0 is vaak een uitzondering in die zin dat grotere wijzigingen mogelijk zijn, zelfs als de kleine versie wordt verhoogd.
In principe zijn er echter geen vaste specificaties voor de betekenis van de afzonderlijke waarden, maar zijn er quasi-standaarden opgesteld: onder .NET volgt men b.v. B. het afwijkende schema <Hauptversionsnummer>.<Nebenversionsnummer>.<Buildnummer>.<Revisionsnummer>
[2] (positie voor revisienummer en buildnummer verwisseld tov bovenstaand voorbeeld).
Op een bepaald moment wordt een versie ook wel build genoemd. In veel projecten wordt het buildnummer onafhankelijk van de andere nummers verhoogd en niet opnieuw ingesteld. Er zijn bijvoorbeeld twee productlijnen van het Windows- besturingssysteem van Microsoft : Builds 950 ( Windows 95 ), 1998 ( Windows 98 ) en 2222 ( Windows 98SE ) zijn bekend in de Windows 9x- serie, en de Windows NT- serie zijn bekend in de Windows NT- serie dit zijn builds 1381 (Windows NT 4.0 Service Pack 6), 2600 ( Windows XP ), 6000 ( Windows Vista ) en 7600 ( Windows 7 ).
Het is vaak zo - zeker bij open source software - dat de versienummers van programma's of systemen ouder zijn dan versie 1.x. Dit betekent echter niet noodzakelijkerwijs dat de ontwikkeling nog niet erg ver gevorderd is, maar eerder dat de versie het door de ontwikkelaars gestelde doel nog niet heeft bereikt en nog in ontwikkeling is. In sommige gevallen zijn er zelfs open source-programma's die - hoewel ze de alfa- en bètastatus allang hebben verlaten - nog steeds een versie onder versie 1.0 hebben.
Een versienummer wordt vaak achter de programmanaam gegeven en wordt soms speciaal aangeduid met “v.”, “V” of “V” (voor versie ).
Marketingaspecten
Versienummers zijn veel belangrijkere informatie voor softwareontwikkeling dan voor klanten.Met behulp van versienummers kan er onder andere voor worden gezorgd dat nieuwe programmaonderdelen in ontwikkelaarsgroepen niet worden overschreven door oudere (zie versiebeheer ).
Bij grotere softwareprojecten kunnen marketingaspecten betekenen dat wordt afgeweken van de interne, meer technisch gemotiveerde versiebeheer, wat vervolgens leidt tot versienamen (Windows XP komt bijvoorbeeld overeen met "Windows NT 5.1") waaruit de versievolgorde niet meer eenvoudig kan worden afgeleid. geïdentificeerd. Om marketingredenen kunnen versienummers ook worden overgeslagen om geen lagere versie (die als "ouder" kan worden geïnterpreteerd) dan een concurrent te hebben. Dit was bijvoorbeeld het geval bij WinWord , waarvan de versie van 2.0 naar 6.0 sprong, Slackware en Windows 10 . Soortgelijke gevallen kunnen zich ook voordoen met verschillende software van dezelfde fabrikant. De eerste versie van Windows NT heette bijvoorbeeld " Windows NT 3.1 " omdat deze op de markt kwam na Windows 3.1 en dezelfde grafische gebruikersinterface als deze gebruikte. In Windows 7 werd om technische en psychologische redenen afgeweken van het interne versienummer ("Windows NT 6.1") en werd "Windows 9" als productnaam overgeslagen.
Er worden ook andere manieren gebruikt om programmaversies van elkaar te onderscheiden, omdat ze gemakkelijker te onthouden zijn:
- Tijden zoals jaren, of in combinatie met z. B. maanden, bijvoorbeeld als:
- tweecijferige jaren, bijvoorbeeld: Windows 95 (1995); Microsoft Office 95 (1995);
- viercijferige jaren, bijvoorbeeld: Windows 2000 ; Microsoft Office 2000; SoftMaker Office 2006;
- Jaren en maanden, bijvoorbeeld: Ubuntu - Linux 6 . 04 (voor april 2006), OPNsense 15 . 1 (voor januari 2015) [3] of Windows 10 15 07 (voor juli 2015);
- Jaren en semester, bijvoorbeeld: Windows 10 20 H2 (voor 2e semester 2020);
- alfanumerieke identificatiecodes, bijvoorbeeld: Adobe Photoshop CS2, Adobe Flash MX; WindowsXP ;
- Codenamen , bijvoorbeeld: Mac OS X Panther (sinds 2016 macOS ); Windows Vista ;
- Systematische codenamen: Ubuntu gebruikt naast het versienummer ook "adjectief + dierennamen". Bij elke nieuwe versie wordt de letter één plaats opgeschoven in het alfabet. “ Cosmic Cuttlefish ” volgde op “ Bionic Beaver ”.
- Het versienummer van TeX nadert π ; die van het Euler-getal e van Metafont .
- Sinds enige tijd gebruikt de Linux-kernel een versienummer dat geen verband houdt met de werkelijke voortgang. Elke twee miljoen git commits wordt het eerste versienummer met één verhoogd. [4]
- In de GIMP geeft een even tweede cijfer (bijv. versie 2.2, 2.4, 2.6, etc.) een stabiele versie aan, terwijl in ontwikkelaarsversies het tweede cijfer oneven is.
toevoegingen
Afhankelijk van de ontwikkelingsfase van de software zijn er nog extra toevoegingen:
- alfa
- tijdens de ontwikkeling van de software, zeer vroeg stadium
- bèta
- bedoeld om te testen, beperkte gebruikersgroep
- RC
- Vrijgavekandidaat ( rc ), definitieve testversie
- Vrijgeven (definitief)
- definitieve versie ( Engelse release voor publicatie)
- Lapje
- ook patchlevel , pl , Duits correctieniveau
Individueel bewijs
- ^ Linda Westfall: The Certified Software Quality Engineer Handbook , Verlag ASQ Quality Press, 2008, ISBN 9780873897303 , pp. 509-510 online
- ↑ Versienummers in .NET (Engels)
- ↑ Updates. In: OPNsense-documentatie. Geraadpleegd op 15 februari 2021 .
- ↑ https://fossbytes.com/linus-torvalds-linux-kernel-5-0-release-date-meaningless/
web links
- https://semver.org/lang/de/ Semantische versiebeheer (SemVer)