Qu'est-ce que la gestion des versions?
La gestion des versions consiste à superviser et à contrôler les versions des logiciels dans le but de les synchroniser correctement et de maintenir le déploiement des nouvelles versions le plus en douceur possible. Les éditeurs de logiciels peuvent avoir un responsable chargé de gérer spécifiquement les nouvelles versions. Dans d'autres cas, les équipes de projet désignent un responsable pour coordonner ce travail. Un certain nombre de compétences sont nécessaires pour bien gérer les versions de logiciels, notamment la capacité d'accepter le fait qu'un produit sera soumis à une révision constante jusqu'à sa mise hors service.
Le processus de gestion des versions commence par les demandes transmises aux équipes de développement. Celles-ci peuvent inclure des demandes d'utilisateurs émanant de personnes souhaitant davantage de fonctionnalités, ainsi que des suggestions ou des demandes émanant de responsables de l'entreprise qui souhaitent anticiper et répondre aux besoins des utilisateurs. L’équipe examine ces demandes, discute des difficultés de mise en œuvre et donne des conseils sur la nécessité d’aller de l’avant ou de mettre de côté les demandes pour l’avenir. Éventuellement, ils développeront une liste de modifications à apporter au logiciel et pourront entrer dans la phase de développement.
Pendant le développement de la gestion des versions, les programmeurs apportent des modifications et testent le logiciel pour déterminer l'impact de ces modifications sur les fonctionnalités. L’objectif est de détecter les problèmes avant de publier le logiciel, en évitant les coûts et les dommages en termes de réputation associés à la création d’un correctif après une nouvelle version. Au fur et à mesure que les développeurs acquièrent une plus grande confiance en la stabilité d’une publication, ils peuvent l’envoyer à des groupes de testeurs plus importants pour la mettre à l’essai, avant de l’emballer pour la distribution et de fournir une assistance.
Les éditeurs de logiciels prennent souvent en charge simultanément plusieurs anciennes versions, tout en développant la prochaine version. Une partie de la gestion des versions implique de penser au timing. Les éditeurs de logiciels souhaitent généralement créer un calendrier de publication régulier pour assurer aux utilisateurs que des mises à jour et des modifications sont apportées, sans générer autant de versions que le logiciel devient difficilement gérable. Pour les versions particulièrement volumineuses, comme le passage d'une version 2.0 à une version 3.0, un décalage plus important peut apparaître entre les heures de publication car les développeurs apportent des modifications importantes.
Les responsables de publication suivent généralement une formation en informatique, même s'ils ne sont pas spécifiquement impliqués dans le développement de logiciels. Ils possèdent également des compétences en affaires et la capacité de travailler avec des développeurs de logiciels, des conseillers juridiques, des services de publicité et d'autres membres d'une société de logiciels. La flexibilité et la créativité sont des caractéristiques utiles, de même que la capacité de garder les personnes coordonnées, concentrées et concentrées tout au long du processus de gestion des versions, sans freiner l'innovation.