Imaginez que 90% de votre travail est simplement pour le triage des questions sur un très massif, très cassé site web. Imaginez que ce site est écrit dans les plus étroitement associés, moins cohérent code PHP que vous avez jamais vu, le type de code à ajouter les développeurs à l'origine de votre "claque sur la vue" liste. Imaginez que cette application web est composé de 4 éléments disparates (1 commerciale, 2 "redéfini", et 1 personnalisé) et une merde tonnes de virtuel ruban adhésif et les cales. Imaginez qu'il contient le type de pratiques de programmation dans lequel les principaux composants du site web réellement compter sur des choses qui ne fonctionnent PAS correctement, et la fixation de ces choses cassées généralement des pauses d'autres choses. Imaginez que vous savez de trop nombreuses mauvaises expériences que la modification de l'une apparence anodins partie du site web, tels que la division d'un champ "nom" en deux "premier" et "dernier" des champs, permettra d'amener le site à ses genoux et nécessitent des heures de restaurations, des fusions et des correctifs. Imaginez plaidant avec le client pour les années à juste fossé le code et tout recommencer mais étant rencontré au niveau de l'Entreprise désespoir et de la main-essorage. Alors imaginez-vous le plus vite possible/les billets d'URGENCE à mettre en œuvre de nouvelles fonctionnalités dans un autre site web serait de prendre 4 heures, mais vous le savez mieux avec ce site, donc vous citer de 40 heures, puis le coup, de même que le projet de loi 80 heures, mais c'est OK parce que le client est utilisé pour que, avec leur site web.
Voici quelques autres choses que vous devriez aussi imaginer:
- il n'existe pas de tests en ce moment
- il y a googleteen différentes couches de connexions. Certains clients ont en fait 3 comptes différents pour les différentes sections du site
- quand je dis "couplés", je veux dire les boucles d'inclure ou d'exiger des déclarations serait probablement la carte comme un noeud celtique
- quand je dis "moins cohérent", je veux dire des choses est organisé un peu comme MVC, mais ce n'est pas vraiment MVC. Dans certains cas, il peut vous prendre plusieurs heures juste pour savoir comment UN URI est mappé sur le fichier B
- l'INTERFACE utilisateur a été écrit comme "discret" et "inaccessible" ont été les maîtres-mots de la journée
En imaginant tout ce que, est-il même la peine d'essayer d'atteindre un niveau modéré de la couverture de test? Ou devriez-vous, dans cet imaginaire de scénario, juste continuer à faire du mieux que vous pouvez avec ce que vous avez été donné et en espérant, priant, peut-être même de sacrifice, que le client conviennent à une réécriture de l'un de ces jours et vous pouvez commencer à écrire des tests?
ADDENDUM
Puisque beaucoup d'entre vous en fait: j'ai abordé la possibilité d'une ré-écrire à chaque fois que je ai eu à ce jour. Le marketing de gens qui travaillent avec moi savent que leur code est de la merde, et ils savent que c'est la faute de "l'offre la plus basse" entreprise, ils sont allés à l'origine. J'ai probablement dépassé mes limites en tant qu'entrepreneur, en soulignant qu'ils passent une merde tonne d'argent sur moi pour fournir des soins palliatifs pour le site, ainsi que par le réaménagement de zéro, ils allaient voir un retour sur investissement très rapidement. J'ai aussi dit que je refuse de réécrire le site, car il n'a pas vraiment faire ce qu'ils veulent à faire de toute façon. Le plan est de le réécrire BDD style, mais aussi obtenir tous les acteurs clés dans un endroit qui est difficile, et je ne suis toujours pas sûr qu'ils savent ce dont ils ont besoin. En tout cas, je m'attends à ce que ce soit Un Très Gros Projet.
Merci pour tous les commentaires jusqu'à présent!