Je travaille sur un nouveau projet et nous utilisons une jolie belle pile. NHibernate, printemps, mvc ... la liste continue. P>
Une chose que j'ai remarquée, c'est que, dans les 6 mois, nous avons commencé, nous avons eu une nouvelle version de NHibernate, une nouvelle version d'une boîte à outils de contrôle tiers et de Windows 7 est à l'horizon. p>
Nous avons eu des problèmes auparavant où être coincé sur une ancienne version d'une technologie nous a coûté chèrement, alors je me demande quelles sont des techniques que nous pourrions utiliser pour vous aider à garantir que nos transitions sur les dernières versions des choses sont aussi plus indolore possible? P>
4 Réponses :
Enregistrez tout simplement une priorité et une mise à niveau au fur et à mesure que vous allez. Si vous continuez à vous tenir au courant de la dernière version, il y aura moins de modifications de rupture que si vous devez mettre à jour 5 versions à la fois. P>
Créer peut-être une succursale et effectuez une mise à jour de test vers Betas afin que vous soyez au courant des problèmes à venir lorsque cette version RTMS (si vous utilisez Bettas vous préoccupe). P>
La gestion des changements dans les succursales est définitivement une option.
"Mettre à jour tôt, mettre à jour souvent" p>
Si vous attendez, il sera de plus en plus difficile, de manière à mettre une priorité élevée sur la mise à jour du système. Les développeurs aiment surtout être sur le bord de saignement afin qu'elles n'en dérangent pas trop, le défi majeur est de vendre cette idée à la direction. P>
Il est toujours bon de faire une approche étape par étape dans laquelle vous mettez à niveau un à un seul outil. Ensuite, il est également plus facile si vous devez retourner à la version plus ancienne. L'approche Big Bang est plus difficile et beaucoup de choses peuvent aller mal. P>
Permet d'être réaliste, chaque mise à jour vous coûtera le temps ainsi que votre équipe pour effectuer le passage à la nouvelle version de l'outillage, mais après une équipe de temps apprend à traiter avec elle et le niveau de stress lors de la commutation des versions est beaucoup moins. p>
C'est bon en théorie, mais comment vous assurez-vous que vous n'introduisez pas de problèmes tôt et souvent?
@LOMAXX: Si vous ne testez pas la mise à niveau, vous êtes garanti pour introduire des problèmes plus tard. L'introduction de modifications fait simplement partie des tests et de l'assurance qualité. C'est facile et cela devrait faire partie de votre processus.
Je suis d'accord avec les autres commentaires ici sur la mise à jour souvent. Si vous attendez trop longtemps, ce sera suffisant que vous le remarquerez dans la productivité du projet. P>
La façon dont nous le faisons est ce qui suit. P>
De cette façon, nous ne perdons pas la productivité de l'équipe pendant la mise à niveau. Notez que cela serait beaucoup plus difficile sans tests d'unité. P>
Parler d'un point de vue de la gestion, ne mettez pas à niveau à moins d'une raison convaincante. Vous devez regarder ce que la mise à niveau apporte à votre projet. S'il n'y a pas d'avantages à la mise à niveau, ne le faites pas. De toute évidence, ce n'est pas une règle dure et rapide, mais la plupart des équipes que je sais n'ont pas le temps de passer le temps de passer des systèmes de mise à niveau sans raison, elles sont trop occupées avec les demandes de fonctionnalités et les corrections de bugs. Je recommande de travailler dans les mises à niveau sur la base suivante: p>
raisons spécifiques de ne pas mettre à niveau: p>
Je recommande de conserver une liste de tous les logiciels que votre projet utilise avec leur version et la date de mise à niveau (ainsi que d'autres informations importantes telles que les informations de licence, les informations de support, etc.). Évaluez chaque article de cette liste une fois par an afin de vous assurer que vous ne manquez aucune mises à jour correspondant à une raison de mettre à niveau que vous avez peut-être manqué. Les logiciels sur cette liste avec une ancienne version / date et une version plus récente disponible peuvent être suffisamment incitatifs pour convaincre la direction qu'une mise à niveau doit être effectuée. P>