Sicuramente il version control è fondamentale, anche quando lavori solo.
Ma in team potrebbe non bastare.
Esponici quindi esattamente i problemi che state avendo.
Intanto ti posso elencare i punti fondamentali che caratterizzano un corretto lavoro in team o in autonomia, ma chiaramente nel primo caso se non si seguono emergono più problemi che in autonomia potrebbero pesarti meno:
- Definire e sviluppare una solida architettura, disaccoppiata, testabile ed estendibile. In tal caso è importante approfondire i principi SOLID, i design pattern e le più comuni architetture software OOP.
- Definire convenzioni e standard, come naming convention, che tutto il team deve seguire. In tal caso è buona norma partire dagli standard del linguaggio in uso, e da li definire delle proprie personalizzazioni.
- Usa in maniera adeguata il sistema di versionamento, nei progetti particolarmente grossi si mette vicino anche un build server che automaticamente compila, testa, crea il pacchetto e deploya le versioni pian piano committate
- Project Management, avere quindi definite le attività da svolgere, con priorità, dipendenze, effort, scadenze seguendo una metodologia come quelle agili che vanno per la maggiore ormai ad esempio scrum, kanban, XP.
- Adeguata metodologia di test (unit test, integration test, component test, system test, funcional test) e per la maggior parte automatizzati
Chiaramente nei progetti fatti per hobby si può essere un pò più blandi nei punti specifici, ma almeno tutte queste componenti devono essere presenti per lavorare bene.
|