Frage

Wir entwickeln eine Anwendung mit Komponenten auf mehreren physikalischen Ebenen, auf jeder Stufe einige exklusive viele Baugruppen sowie den Austausch haben.

Ich will wissen, was die typische Versionsstrategie für die Freigabe ist Hot-Fixes, oder nur einige Komponenten der Anwendung.

Unser Problem-Tracking-Software enthält eine Versionsnummer für das gesamte Produkt. Wenn die aktuelle Version 1.4.5 und ein Hotfix erforderlich ist, sind die Ausgaben für den Hotfix gegen 1.4.6 freigegeben werden. Alle Baugruppen von den Korrekturen für 1.4.6 betroffen sind 1.4.6 versioniert. Wenn wir nur die Dateien verteilt haben wir am Ende mit einigen Dateien auf Version 1.4.5 und einige auf 1.4.6 auf.

Eine Lösung könnte die gesamte Anwendung als 1.4.6 neu zu erstellen und freizugeben, aber dies würde mehrere Komponenten auf den mehreren Maschinen erforderlich unnötige Ausfallzeiten der Komponenten neu zu verteilende und führt, die nicht tatsächlich geändert haben.

Welche Strategien haben die Menschen für dieses Problem an Ort und Stelle setzen? Ist es nur eine Frage der Annahme, dass einige Dateien unterschiedliche Versionsnummern haben? In der Vergangenheit habe ich festgestellt, dass dies führt zu Verwirrung bei den Kunden (Ebene 1) Support-Team.

War es hilfreich?

Lösung

Sie stellen eine interessante Frage.

Es ist wirklich eine politische Entscheidung, die Sie machen müssen, um zu entscheiden, was Ihre Bereitstellung und Versionierung Strategie werden sein, und betrachten die Abwägungen verschiedenen Faktoren (von denen einige Sie haben bereits erwähnt, wie Kunden Verwirrung).

Eines der Dinge, die Sie tun können, ist die Freisetzung und Versionierung Ihrer individuellen Ebenen zu entkoppeln, die Sie konsistente Versionierung innerhalb einer Stufe mit reduziertem Hotfix Deployment-Overhead haben erlauben würde. Sie müßten auch die gemeinsamen Baugruppen in ein separates Paket und Version ausklammern, die unabhängig voneinander zu.

Dies könnte zu viel des Guten, so wäre eine Alternative Ihre Versionierung leichter zu erfassen zu machen. Zum Beispiel könnten Sie einen Teil Ihrer Versionsnummer, um anzuzeigen, Hotfixes zu reservieren. Zum Beispiel, wenn 1.4.5.0 die offizielle Veröffentlichung ist, wäre das Update 1.4.5.1 und dies einfach einen Teil der 1.4.5 offiziellen Release verstanden werden kann, sein.

Sie können auch andere Montagevarianten, wie zB die AssemblyInformationalVersion verwenden Versionsinformationen zu speichern, für die Benutzer. (Lesen Sie mein Blog-Post für weitere Details über AssemblyInformationalVersion und Montage Versionierung in .NET.)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top