Thales banner

Grundlagen der Softwareversionierung

Als neue Softwareversionen bezeichnen Softwareanbietern Änderungen innerhalb eines Softwareangebots, die den Kern des Produkts nicht verändern, sondern vielmehr die Funktionalität erhöhen und Probleme beheben. Softwareupdates sind Teil des Lebenszyklus jeder Software. Im Laufe der Zeit werden neue Funktionen veröffentlicht, die Entwickler beheben Fehler und der Umfang der Software entwickelt sich durch spannende Updates und neue Versionen weiter. Daher ist die Softwareversionierung ein integraler Bestandteil der Produktion. 

Softwareversionierung und semantische VersionierungSoftwareversionierung ist wichtig, weil sie sowohl den Benutzern als auch den Anbietern hilft, die verschiedenen Versionen zu verfolgen, die das Unternehmen veröffentlicht. Die Benutzer verlassen sich darauf, dass die Softwareentwickler sie auf dem Laufenden halten, und sie erwarten, dass sie auf systematische Weise erfahren, wann welche Updates veröffentlicht werden. Für Softwareanbieter ist die Versionskontrolle sogar noch wichtiger. Sie verfolgen Softwareversionen und nutzen die gewonnenen Erkenntnisse für ihre Segmentierungs- und Monetarisierungspläne. Durch die Trennung von erforderlichen und sekundären Aktualisierungen können die Anbieter bestimmte Funktionen hervorheben, segmentieren und in Rechnung stellen. Softwareanbieter profitieren zudem davon, dass sie die Kunden eingrenzen können, welche Kunden bereits die neuesten Softwareversionen verwenden und welche noch keine Aktualisierung durchgeführt haben. Die Nachverfolgung der Versionsnutzung durch die Kunden verringert das Risiko, dass ein Kunde eine veraltete Software verwendet und eine schlechte Benutzererfahrung hat. 

Was ist Softwareversionierung?

Der Begriff Softwareversionierung bezieht sich auf die verschiedenen Versionen der Software, die das Unternehmen herausgibt. Jede Version einer Software, die veröffentlicht wird, erhält eine Softwareversionsnummer. Mit den unterschiedlichen Versionen und Änderungen vertraut zu sein, ist für Führungskräfte mit einem umfassenden Überblick über die Roadmap des Unternehmens und für Projektmanager, die sicherstellen müssen, dass die Projekte planmäßig vorankommen, von entscheidender Bedeutung. Einzelne Benutzer überprüfen darüber hinaus die Softwareversionen auf ihren Computern oder Smartphones, um sicherzustellen, dass sie die neuesten Systeme verwenden.

Jede Softwareversion hat einen Namen. Diese Namen werden in der Regel numerisch vergeben und es gibt mehrere Standardsysteme für die Abfolge von Softwareversionen. 

Wie benennt man Softwareversionen? 

Wie bereits erwähnt, verwenden verschiedene Unternehmen unterschiedliche Methoden zur Benennung ihrer Software. Die semantische Versionierung ist zwar das gebräuchlichste Benennungssystem, es gibt jedoch auch andere erwähnenswerte Methoden.

Unabhängig davon, für welche Methode Sie sich entscheiden, ist die Beibehaltung eines einheitlichen Nummerierungssystems eine unabdingbare Voraussetzung. Das ermöglicht es Ihrem Unternehmen, den Überblick zu behalten, und hilft den Benutzern, Updates und Releases für eine bestimmte Software zu verfolgen.

Einige der gängigsten Methoden zur Versionsnummerierung von Software sind:

  • Semantische Nummerierung: eine dreistellige Nummerierungstechnik mit den Komponenten Major.Minor.Patch
  • Date-of-Release: Die Versionsnummer der Software ist das Datum ihrer Veröffentlichung. Zum Beispiel 20.06 (Juni 2020)
  • Unäre Nummerierung
  • Alphanumerische Codes
  • Fortlaufende Nummerierung

Was ist semantische Versionierung?

semantische Versionierung

Die semantische Versionierung ist eine der gängigsten Methoden zur Nummerierung von Softwareversionen. Bei dieser Methode werden für jede Softwareversion drei Nummern in der Reihenfolge Major.Minor.Patch verwendet. Bei einem Major-, Minor- oder Patch-Update wird jeweils die entsprechende Zahl erhöht.

  • Größere Versionsänderungen (Major) beziehen sich auf inkompatible API-Änderungen.
  • Geringfügige Versionsänderungen (Minor) beziehen sich auf das Hinzufügen neuer Funktionen in einer abwärtskompatiblen Weise.
  • Patch-Versionsänderungen (Patch) beziehen sich auf Fehlerbehebungen, die ebenfalls abwärtskompatibel sind.

Die Versionsnummer wird um eine Ziffer erhöht, je nachdem, welche Art von Änderungen in der neuen Versionierung vorgenommen wurden.

So bedeutet beispielsweise die Softwareversion 1.3.1, dass die Software in ihrer ersten Hauptversion vorliegt, der drei zusätzliche Funktionen hinzugefügt wurden und bei der ein Patch vorgenommen wurde. Wenn ein Entwickler einen weiteren Bug in dieser Version behebt, wird die nächste Version als Version 1.3.2 bezeichnet.

Was bedeutet semantische Versionierung in der Softwareentwicklung?

Semantische Versionierung ist in der Softwareentwicklung weit verbreitet, um Softwareversionen adäquat zu nummerieren und dem Kunden die Nutzung so einfach wie möglich zu machen.

Einige Produkte verzichten auf die detaillierte Darstellung der Major-Minor-Patch-Nummerierung, sondern verwenden stattdessen ein einfacheres Major-Minor-System. Im Gegensatz dazu gehen einige Unternehmen mit häufigen Veröffentlichungen bei der Nummerierung noch einen Schritt weiter. Sie fügen am Ende des typischen semantischen Szenarios einen sogenannten Qualifier hinzu. Statt einer dreistelligen Zeichenkette würden die Updates der Softwareversion also vier Zahlen enthalten.

Die semantische Versionierung bietet Flexibilität innerhalb einer streng vorgegebenen Struktur. Jedes Unternehmen sollte den passenden Detaillierungsgrad bestimmen, den sie in ihren Updates veröffentlichen möchte, wobei darauf zu achten ist, dass die Version für die Endbenutzer informativ und nützlich bleibt.

Best Practices der Softwareversionierung

Bei der Entscheidung, welches Softwareversionierungstool Sie in Ihrem Unternehmen einsetzen möchten, sollten Sie immer auch Ihre Softwarebenutzer berücksichtigen. Letztendlich sind die Versionsnummern dazu da, ihnen zu helfen.

Was ist Softwareversionierung?

Was sind die Best Practices für die Softwareversionierung?

1.    Sorgen Sie dauerhaft für Transparenz und Einheitlichkeit

Die Benutzer möchten wissen, was sie von ihren Software-Updates und -Releases erwarten können. Jeder weiß zum Beispiel, dass Apple einmal im Jahr ein größeres iOS-Update herausbringt, und die Benutzer freuen sich auf diese Updates. Wenn Apple anfangen würde, wichtige Updates in unregelmäßigen Abständen zu veröffentlichen, wären die Benutzer verwirrt und enttäuscht. Dies würde allmählich zu einem Mangel an Vertrauen zwischen dem Unternehmen und dem Benutzer und damit zu einer geringeren Kundenzufriedenheit führen.

2.    Veröffentlichen Sie einen Versionszeitplan

Niemand möchte von einer Änderung überrascht werden. Die Veröffentlichung eines Versionszeitplans, der den Benutzern einen Überblick über die bevorstehenden Änderungen gibt, fördert die Kommunikation und das Vertrauen zwischen Ihrem Unternehmen und den Benutzern Ihrer Software. Ein Versionszeitplan ist außerdem hilfreich, wenn Ihre Kunden Ihnen das Feedback geben, dass Ihr Produkt aktualisiert oder geändert werden muss. Sie können auf den Veröffentlichungszeitplan verweisen und ihnen versichern, dass Sie bereits an der Lösung ihrer Probleme arbeiten.  

3.    Erklären Sie Ihr Versionierungssystem 

Erklären Sie Ihren Benutzern die semantische Versionierung und bringen Sie ihnen bei, wie sie Ihre Versionsnummern lesen und verstehen können. Wenn Sie im B2C-Bereich tätig sind, ist es besonders wichtig, dass Sie Ihr System erklären, da Sie in diesem Fall davon ausgehen können, dass Ihre Kunden die semantische Versionierung nicht kennen – doch auch für den B2B-Bereich bringt es Vorteile.  

Die entsprechende Vorgehensweise unterscheidet sich je nach Unternehmen. Sie könnten diese Mitteilungen zum Beispiel in Ihre Dokumentation, Ihre Mailingliste oder sogar in Ihre Social-Media-Kanäle aufnehmen. 

4.    Informieren Sie die Benutzer über die Neuerungen Ihrer aktualisierten Versionen

Ganz gleich, ob Sie das unglaublichste Software-Update aller Zeiten oder nur eine Kleinigkeit veröffentlichen, lassen Sie Ihre Benutzer es wissen. Sie arbeiten hart daran, Ihre Benutzer zufriedenzustellen – teilen Sie ihnen das auch mit. Ihre Leistungen sind ein äußerst wirksames Mittel, um Ihren Kunden zu zeigen, wie sehr Ihnen ihr Erfolg am Herzen liegt. Das sollte den Benutzern klar kommuniziert werden, unabhängig davon, ob sie IT-Profis sind oder über keinen technischen Hintergrund verfügen.

5.    Fragen Sie Ihre Benutzer nach ihrer Meinung

Menschen fühlen sich gerne wertgeschätzt und es gibt keinen besseren Weg, ihnen das Gefühl zu geben, wichtig zu sein, als sie nach ihrer Meinung zu fragen. Außerdem besteht die Chance, dass Sie wertvolle Informationen aus einer völlig neuen Perspektive erhalten, wenn Sie das Feedback der Benutzer einholen.

Können Ihre Benutzer neue Softwareversionen leicht erkennen? Können sie mit dem Tempo der neuen Updates mithalten? Wissen sie, bei welchen Updates es sich lohnt, sie herunterzuladen und für ihren speziellen Anwendungsfall zu installieren?

Eine offenen Kommunikation zwischen Softwarebenutzern und Unternehmen kann den Prozess der Softwareversionierung erheblich verbessern und sicherstellen, dass Ihre Benutzer mit Ihrem Service zufrieden sind und bleiben.

Thales: Ihre Lösung für die Softwareversionierung

Mit den Lösungen für Softwaremonetarisierung von Thales ist es einfacher denn je, den Überblick über Ihre Softwareversionierung zu behalten.

Unsere zahlreichen Lösungen helfen Ihnen, Ihre Softwareupdates systematisch und organisiert durchzuführen, damit Sie Ihre Geschäftsziele erreichen, Ihren Umsatz maximieren und die Kundenzufriedenheit steigern können.

Softwarelizenzierung von Anfang an richtig gemacht - White Paper

Softwarelizenzierung von Anfang an richtig gemacht - Whitepaper

Bei geschäftskritischen Operationen gibt es keinen Raum für Fehler. Erfahren Sie, wie Sentinel-Lösungen es einfach machen, die Softwarelizenzierung gleich beim ersten Mal richtig zu machen.

casio case study

Casio schafft neue Möglichkeiten, seine Software mit Thales Sentinel zu lizenzieren und zu monetarisieren - Case Study

Als weltweiter Hersteller von Lösungen in den Bereichen Unterhaltungselektronik und Geschäftsausstattung hat Casio die Digitalisierung in sein Geschäftsmodell eingeführt. Den Startpunkt bildete hier ein Software- Lizenzmodell für seine renommierten wissenschaftlichen Rechner....