47 votes

Comment savez-vous quel numéro de version utiliser?

En voici un sur lequel je me suis toujours demandé ...

Veuillez excuser ma naïveté, mais - Comment décidez-vous du numéro de version pour nommer votre logiciel?

Je suppose que, lorsque quelqu'un crée une version "finale" d'une application / d'un programme, il s'agit de la version 1.0? - Ensuite, que se passe-t-il lorsque vous le mettez à jour, comment décidez-vous de l'appeler 1.1 ou 1.03, etc.

Est-ce principalement pour le développeur?

54voto

Adam Wright Points 31715

J'ai tendance à le poids le chiffres significatifs comme suit....

w.x.y.z (ou w.xyz)

  • w - version Majeure, avec de nombreuses nouvelles les fonctionnalités. Une mise à jour payante. La première version publique du logiciel est 1.X (les pré-versions sont 0.X)
  • x - Version, mais sans de nouvelles fonctionnalités révolutionnaires.
  • y - Correction des communiqués de
  • z - Version communiqués de presse (la fixation d'une urgence bug, peut-être juste pour un client).

Si vous choisissez d'utiliser le w.xyz format, vous obtenez seulement 9 chiffres avant débordement. Toutefois, si vous êtes à la libération que souvent, vous pouvez avoir un gros problème.

Illustrons avec FooApp, mon nouveau produit!

  • 0.9 - La première version bêta publique
  • 0.91 - La deuxième version bêta publique
  • 0.911 - Le d'urgence, la version bêta de correction d'un crash sur le Motorola 68010
  • 1.0 - La première version publique
  • 1.1 - Ajout de nouvelles BlahBaz fonctionnalité
  • 1.11 - Corrections de bugs
  • 2.0 - Totalement réaménagé interface.

25voto

George Stocker Points 31258

Jeff Atwood a un post de blog à ce sujet, où il préconise seulement de l'utilisation de dates, et de ne pas confondre l'utilisateur avec des numéros de version. Cependant, il ne discuter de l'approche de Microsoft a pris: à l'Aide de dates à déterminer les numéros de version. Il va dans un peu de profondeur dans son post, donc je ne vais pas dupliquer son travail ici. Comme pour la gestion des versions:

Versions (au moins dans .NET, quelque chose comme ça):

1.2.3.4 où:

1 est la version majeure
2 est la version mineure
3 est le build le numéro
4 est la révision numéro

Version majeure Signifie "complète" du système avec toutes les fonctionnalités que la version est censé avoir. Normalement, tout ultérieure les "grands" sont les versions réécrit, ou des modifications de l'architecture, ou (excusez la redondance) des changements importants pour le logiciel.

Mise à jour mineure - Signifie que moins nombreux de presse, avec peut-être des corrections de bug, des petites fonctionnalités ajoutées, ou n'importe quel nombre d'autres "mineure" des événements. Cela pourrait inclure des modifications de l'interface et des ajouts. Normalement, les applications devraient être un peu compatibles dans leur "version majeure' de l'arbre, de sorte que les versions mineures de la même version majeure doit être à l'architecture même.

Le Numéro de Build - Généralement signifie juste des corrections de bug, des petites corrections, et sont insignifiants dans leur champ d'application. Il pourrait être quelque chose d'aussi simple que de changer le contraste entre le premier plan et d'arrière-plan de l'application. En général, les versions sont des désignations internes tels que les nightly builds, afin d'avoir toujours une place pour en revenir à la situation qui est stable.

Numéro de révision - signifie que lorsque les corrections de bugs sont libérés ou TRÈS légères améliorations sont apportées. Ceux-ci sont généralement réservée seulement des corrections de bug -- de ne pas inclure de nouvelles fonctionnalités majeures comme les révisions.

9voto

Ryan Taylor Points 3091

Nous attribuons chaque version d'une application unique en quatre parties, le numéro de version définis comme des Grands.Mineure.De l'entretien.Construire.

Majeur - Le nombre Majeur est associée à d'importants changements à la demande. Ce nombre détermine également la compatibilité avec les autres applications de la même "suite". Ce nombre est incrémenté lorsque de nouvelles versions sont fabriqués. Cela signifie généralement des changements architecturaux majeurs ont eu lieu.

Mineur - Le numéro Mineur est associé avec de nouvelles fonctionnalités et de rupture des corrections de bug. Chaque fois que de nouvelles fonctionnalités sont introduites ou lors de la rupture de la correction de bug est appliqué, ce nombre sera avancé et le Maintien numéro sera mis à zéro.

Entretien - L'Entretien numéro est associé à la non-rupture des corrections de bug. Ce numéro sera avancé à chaque fois une version qui ne contient que des non-rupture des corrections de bug.

Construire - Le numéro de Build est associée à la subversion de l'ensemble de modifications (numéro de révision) à partir de laquelle l'application a été compilée. Cela permettra de fournir un moyen facile de correspondance le numéro de version à un ensemble précis de code dans la subversion.

Le nombre que les développeurs sont vraiment intéressés par ce programme est le Construire. numéro. En liant les Construire nombre pour le numéro de révision subversion, nous pouvons garantir que le code a été utilisé pour créer la sortie de l'application.

8voto

cdecker Points 1371

Je pense que le noyau Linux est une bonne référence pour ce:

Le numéro de version du noyau Linux actuellement composé de quatre chiffres, à la suite d'un changement récent dans l' politique de longue date de trois-numéro de schéma de gestion des versions. Pour illustration, le laisser supposer que la version le numéro est composé ainsi: A. B. C[.D] (par exemple, 2.2.1, 2.4.13 ou 2.6.12.3).

* The A number denotes the kernel version. It is rarely changed, and

seulement lorsque des changements majeurs dans le code et le concept du noyau se produire. Il a été modifié à deux reprises dans le l'histoire du noyau: En 1994 (version 1.0) et en 1996 (version 2.0).

* The B number denotes the major revision of the kernel.
      o Prior to the Linux 2.6.x series, even numbers indicate a stable

la libération, c'est à dire celui qui est jugé apte pour une utilisation en production, tels que la 1.2, 2.4 ou 2.6. Nombres impairs ont historiquement été les versions de développement, tels que la 1.1 ou 2.5. Ils ont été pour tester de nouvelles les caractéristiques et les pilotes jusqu'à ce qu'ils sont devenus suffisamment stable pour être inclus dans une version stable. C'était un pair/impair numéro de version du schéma. o de le démarrer avec Linux 2.6.la série x, il n'y a pas d'importance pour des numéros pairs ou impairs, avec de nouvelles fonctionnalité en cours de développement dans le même les noyaux de la série. Linus Torvalds a a déclaré que ce sera le modèle pour un avenir prévisible.

* The C number indicates the minor revision of the kernel. In the old

trois-numéro de schéma de contrôle de version, ce a été changé lorsque les correctifs de sécurité, bug de bugs, nouvelles fonctionnalités ou de nouveaux pilotes ont été mis en œuvre dans le noyau. Avec l' nouvelle politique, cependant, c'est seulement changé lorsque de nouveaux pilotes ou des fonctionnalités introduction; corrections mineures sont géré par le D nombre.

* A D number first occurred when a grave error, which required immediate

de fixation, a été rencontrée dans 2.6.8 NFS code. Cependant, il n'y avait pas assez de d'autres modifications à légitimer l' sortie d'une nouvelle révision mineure (qui aurait été 2.6.9). Donc, 2.6.8.1 a été publié, avec le seul changement étant la correction de l'erreur. Avec 2.6.11, il a été adopté comme la nouvelle officielle de la politique de gestion des versions. Les corrections de bogues et les correctifs de sécurité sont maintenant gérés par le quatrième nombre, alors que les grands les modifications sont mises en œuvre dans les mineures des modifications (le C). Le D le numéro est également associé avec le nombre de fois que le compilateur a construit le noyau, et donc est appelé le "numéro de build."

Aussi, parfois après la version il y aura d'autres lettres, comme " rc1 " ou "mm2'. La " rc " se réfère à la version release candidate, et indique une la non-publication officielle. D'autres lettres sont généralement (mais pas toujours) l' les initiales d'une personne. Cela indique un la direction du développement du noyau par que personne. par exemple, ck est synonyme de Con Kolivas, ca signifie Alan Cox, alors que mm se tenait pour Andrew Morton. Parfois, les lettres sont liées à la principale zone de développement de l' direction le noyau est construit à partir de, pour exemple, wl indique sans fil test réseau à construire.

À partir de http://en.wikipedia.org/wiki/Linux_kernel#Version_numbering

4voto

Norman Ramsey Points 115730

Quel que soit le schéma de numérotation que vous choisissez, il est essentiel de faire comprendre à vos utilisateurs lorsqu'une nouvelle version est compatible avec l'ancien code de client contre , lorsqu'une nouvelle version nécessite des modifications pour les clients existants. La plupart des projets, je sais remonter le tout premier numéro lorsque le code client doit changer.

Au-delà de la compatibilité, moi aussi, je pense qu'il y a beaucoup à dire en faveur de l'utilisation de dates. Bien que cela devient gênant si, comme moi, votre calendrier de sortie est une fois tous les deux ans (mais c'est un outil d'abord publié en 1989).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X