Ya un point important qu'est la gestion de projet, parce que tu peux coder très bien, ce n'est pas ça qui fait un projet. Il est préférable d'utiliser les outils de modélisation, comme diagrammes UML, ou encore shémas MCD pour structurer ce que l'on va faire avant de la faire.
Et il faut faire ce que mes profs appellent du développement pyramidal, c'est à dire analyse des besoins et du cahier des charges, création d'un shéma comportemental de l'application et des tests associés, création d'un shéma plus détaillé de chaque partie du programme et des tests unitaires, ensuite codage, exécution des tests unitaires (si ça marche pas, on revient au shéma détaillé), exécution des tests globaux (si ça ne marche pas, on revient au shéma comportemental), et à la fin rédaction de la doc. C'est le shéma standard actuel d'une gestion de projet.
Et c'est en opposition avec, tjs d'après mes profs d'info, le développement en spirale, qui consiste en un développement et une revue permanente des shémas, ce qui est viable pour des petits projets, mais catastrophique pour des gros projets.