Réponse courte: Il n'y a rien que vous puissiez faire pour changer d'avis en fonction des critères que vous avez énumérés dans la question qui sont tous techniques . C'est l'équivalent d'un débat religieux . Le chemin le plus rapide vers l'échec est de présenter un argument qui n'est pas du point de vue du public, en l'occurrence les propriétaires d' entreprise .
Réponse plus longue: le changement dans les affaires est motivé par une seule et unique chose. Profitez de la ligne du bas.
... comment puis-je au moins convaincre mon patron de l'assemblage que des choses comme les variables fortement typées, les classes personnalisées et les champs privés ne sont pas une perte totale de temps et d'énergie?
Ils peuvent non seulement être une perte de temps et d'énergie, mais surtout ils vous coûtent de l' argent ! Vous devez être en mesure de montrer quantitativement que vos suggestions conduiront à un profit substantiel au fil du temps. Il ne suffit pas de prétendre que le code propre est «meilleur» , car le code propre coûte beaucoup plus cher à produire.
Si vous pouvez expliquer comment entraînera le coût d'utilisation de la technologie moderne ($COST + X) * TIME = $PROFIT
, où se X
trouve un nombre positif non trivial et TIME
relativement court, vous pouvez créer un scénario convaincant.
Une autre façon de calculer le ROI (Return On Investment)
Si ce ROI / ROR est un nombre trivial, en particulier sur une longue période de temps, vous n'avez pas non plus beaucoup de business case.
Comment votre entreprise gagne-t-elle réellement son argent?
combien de lignes de code? combien de clients? combien de revenus par an ce logiciel génère-t-il? les revenus sont-ils principalement des contrats de support? ou de nouvelles licences? le marché cible est-il stable? expansion? contracter? le logiciel est-il un chef de file pour un autre produit beaucoup plus rentable?
Il est difficile pour un bon homme d'affaires d'ignorer l'argent déposé sur la table.
Bien sûr, vous devez être en mesure de sauvegarder vos déclarations avec des faits concrets. Cela signifie que vous devez être en mesure de fournir des chiffres réels qui montrent que vous comprenez vraiment l'entreprise réelle et pas seulement les détails techniques académiques.
Pas seulement les pros
Fournir également une analyse détaillée des risques et ce que ces risques feraient $COST
s'ils se produisaient, les convaincrait que vous avez un cas réaliste et ne vous contentez pas de pleurnicher que vous ne voulez plus faire de VB6.
Enseigner de nouveaux trucs aux vieux chiens
... Que puis-je dire pour souligner au mieux que le passage à .NET est une bonne décision si et seulement si notre paradigme de programmation actuel commence également à changer? ...
Changer ou ne pas changer le paradigme de programmation pour être aussi idiomatique que possible de la nouvelle technologie fait partie de l'analyse des risques. Mais il s'agit d'un argument distinct uniquement après avoir prouvé qu'il y a beaucoup d' argent à faire en effectuant un changement en premier lieu.
Les gens d'affaires ont tendance à écouter les analyses de rentabilisation tout comme les techniciens ont tendance à écouter les études de cas techniques. Tous vos cas dans votre question épousent des mérites techniques qui sont au mieux académiques dans votre situation.
Prédiction
Je fais quelques hypothèses ici.Application VB6, petite boutique, peu de développeurs, 2 développeurs / propriétaires d'entreprise plus âgés pointent vers une application de niche qui est probablement mature (les bogues et les solutions sont connus), assez complet et relativement stable, peu importe du "gâchis" la base de code est. Cela m'amène à croire que la petite base d'utilisateurs ne croît pas non plus de façon spectaculaire d'une année à l'autre, ce qui m'amène à la conclusion suivante.
Qu'il n'y aura vraiment aucune raison commerciale impérieuse de changer la direction technique avec cette application. Et le portage vers VB.Net est également une perte de temps parce que vous aurez juste le bordel mais maintenant avec plus de lui, et 2/3 de l'équipe de développement ne se consacre pas à l'apprentissage de quelque chose de nouveau. Bonne chance.