web-dev-qa-db-fra.com

Que faire lorsque vous héritez d'une base de code immobile?

Dupliquer possible:
[.____] Techniques de reporter des ordures et maintenir la santé mentale?
[.____] j'ai hérité de lignes de code de Spaghetti - quoi maintenant?

Je travaille actuellement dans une entreprise avec 2 autres PHP Developers en dehors de moi et 1 développeur junior.

Le développeur senior qui a initialement construit le système que nous travaillons tous a démissionné et ne sera ici que pour une question de plusieurs semaines. L'autre développeur, qui est le seul autre type qui sait quoi que ce soit sur le système, est malheureux ici et est à la recherche d'un nouvel emploi. Je suis très réel danger d'être laissé derrière comme le seul développeur expérimenté sur cette basebase.

Depuis que j'ai rejoint cette société, j'ai essayé de faire pression pour de meilleures normes de codage, une documentation de projet, etc. et je pense que j'ai fait de l'avance, mais la grande majorité du code est tout simplement restaurée et non motivée. Beaucoup de cela a à voir avec la nécessité de faire avancer les choses rapidement aux points du projet avant de rejoindre, mais maintenant la dette technique est énorme, même avec les deux développeurs qui comprennent le système à bord. Sans eux, il sera simplement impossible de faire quoi que ce soit avec elle. Le développeur senior travaille à essayer de commenter au moins tout son code avant qu'il ne quitte, mais je pense que le codeBase est tout simplement trop vaste pour documenter correctement dans le temps restant. En outre, quand il commente, cela ne rend toujours pas les choses aussi claires que possible.

Si le système était mieux organisé et documenté, je pouvais probablement commencer à refroidir de manière incrémentielle, mais le tout est si étroitement associé qu'il est très difficile d'apporter des modifications dans un module sans avoir des effets infiltrés inattendus dans d'autres modules. Naturellement, il n'y a pas de test unitaire non plus, et je pense honnêtement que ce codeBase pourrait éventuellement être testé de toute façon, de toute façon, étant donné comment elle est mise en œuvre.

Il ne semble pas non plus y avoir assez de temps pour faire avancer les choses même avec 3 développeurs et 1 développeur junior. Avec un développeur et un junior, dont aucun n'avait une contribution importante dans la conception précoce du système, je ne vois pas comment nous pourrions éventuellement obtenir quelque chose de faire avec le système actuel de travail, mettant en œuvre de nouvelles fonctionnalités nécessaires et développant un remplaçant pour la base de code actuelle est mieux organisée.

Y a-t-il une approche que je peux prendre pour faire face à cette situation ou devrais-je avoir mon propre CV dans l'ordre aussi à ce stade? Si c'était juste moi et le designer junior qui serait laissé, je vais aller pour cette dernière option presque sans question. Cependant, il y a également une équipe de développeurs frontaux et de gestionnaires de contenu, et je suis inquiet, ce que j'inquiète de ce que je lesierais si je me suis parti et que je les ai mis dans une position où il n'y aurait pas de développeurs du tout. Le ministère pourrait simplement être complètement fermé dans de telles circonstances, puis j'aurais aussi leur chômage sur ma conscience!

12
GordonM

Depuis que j'ai rejoint cette entreprise, j'ai essayé d'appuyer sur de meilleures normes de codage, une documentation de projet, etc.

Si vous êtes le seul développeur expérimenté laissé sur le projet, cela ressemble à une opportunité d'or d'introduire une meilleure pratique de codage.

Soyez ouvert à l'équipe de direction et expliquez la situation dans laquelle vous vous trouvez, expliquez-leur que vous avez besoin de temps pour travailler grâce à la base de code existante avant de continuer à vous retirer de l'avant.

Il peut sembler décourageant de lutter contre la ligne de code par ligne sans aucun commentaire, mais ensuite votre compréhension de la manière dont le logiciel fonctionne considérablement, et vous trouverez des ajouts futurs une brise à mettre en œuvre!

Et enfin ... Parfois, un nouvel emploi peut être juste le billet, mais 3 mois, vous pourriez vous retrouver exactement dans la même position, mais avec moins d'influence sur des problèmes qui comptent (c'est-à-dire des normes de codage!).

1
Awalias