Números de versión en software
Todas nuestras divisiones hacen software y quien más, quien menos, trabaja todo el día con versiones de aplicaciones. La versión de desarrollo, la versión de un determinado cliente, el parche que arregla el problema, la versión de ayer, la nueva y revolucionaria versión.
Todas las versiones deberían llevar un nombre, un nombre que nos permita:
- Firmar: Identificar inequívocamente un estado de nuestra aplicación en un momento dado.
- Integrar: Conocer con quien “se lleva” bien esta versión.
- Trazar: Permitir conocer en que ciclo/iteración se ha desarrollado.
- Distinguir: Marca comercial principal (año, funcionalidades principales).
Existen muchos tipos de numeración de versiones:
En Visual estamos unificando el criterio a la siguiente configuración:
Que esté compuesto por cuatro dígitos que nos permitan tener la suficiente flexibilidad para cubrir todas las necesidades de las distintas configuraciones. Por ejemplo:
11.3.0.9323
11.xx.xx.xx - Versión mayor
Cambio mayor de la aplicación con cambios importantes. Esta numeración suele estar marcada por cambios estratégicos comerciales en la división que pueden ir acompañados por una buena campaña de comunicación.
xx.3.xx.xx - Versión menor
Es el ciclo básico de trabajo y son los cambios programados para ese ciclo de desarrollo, se supone que va acompañado con pruebas, novedades y documentación, videos, etc.
xx.xx.0.xx - Parche
Son los inevitables parches que arreglan un problema y deben poder publicarse rápidamente, no se acompañan de novedades, ni de documentación, ya que estas versiones deben poder sacarse rápidamente, aunque lo ideal sea no necesitar sacar ninguna.
xx.xx.xx.9323 - Sello
Es lo que identifica inequívocamente a la versión, evita que existan en la calle dos aplicaciones distintas con el mismo número de versión. Muy cómodo cuando en soporte o programación usan decenas de versiones en el día a día. Es un número consecutivo que puede ser el Build, Changelist, etc.
FAQ
A mi me gusta lo de Snow Leopard, Lion, froyo, gingerbread. ¿Por qué no usamos nombres frikis?
Todo nombre friki (comercial) tiene un número de versión “técnico”.
Menudo rollo, por la fecha del fichero se puede saber, y es más cómodo que aprender todo esto.
En algunos casos la fecha puede servir, pero al mover los ficheros de sistemas esa fecha puede cambiar y la sorpresa a la hora de poner en un cliente puede ser monumental.
¿Qué número le pongo a una beta que no quiero que se ponga en un cliente?
Si tienes una versión interna de pruebas y no quieres que se le ponga a un cliente, tenemos que decidir poner algo en el número de parche que identifique esa circunstancia por ejemplo 11.3.99999.9423. Donde 99999 nos indica que es un parche "especial".