Milestone #37
Updated by Daniele Cruciani 3 months ago
# Risultati e metodologie introdotte
Durante gli anni che vanno dal 2017 al 2023, ho introdotto ed adottato metodologie per lo sviluppo software moderno.
Queste sono (metodologie e tool):
- Gestione dei progetti aperta e visibile, con possibilità di revisione e retrospettiva per ogni progetto
- Gestione del codice tramite repository accessibile e consultabile, per l'analisi dello storico
- Gestione delle relazioni, onboarding developer, comunicazioni
- Gestione delle specifiche su una base di conoscenza comune
- Gestione dello stato di avanzamento dei vari progetti, con log di eventi e dismissione progetto
- Pratiche e Tool DevOps per automazione di esecuzione di test (CI), ed automazione Deployment (CD)
- Semplificazione dei rollback in caso di malfunzionamento inatteso
I risultati raggiunti grazie all'adozione di queste metodologie e tool sono:
- Semplificazione delle comunicazioni
- Possibilità di fare retrospettive
- Documentazione delle feature, delle scelte tecniche, dei cambiamenti storici, della performance in fase di deployment
- Misurazione delle performance di rilascio
- Misurazione e conteggio degli incidenti in fase di rilascio di nuove feature.
- Misurazione e conteggio di risoluzione bug.
- Conteggio di commenti, revisione strategia, revisione analisi feature, rapporto tempi brainstorming / sviluppo
## Percezione e realtà
L'azienda, ovvero le persone occupate nell'azienda, non ha una piena consapevolezza dell'impatto di queste metodologie, e di quanto siano state produttive per lo sviluppo.
Non ha gli strumenti per misurare le performance di deployment, perché storicamente non ha mai proceduto a fare retrospettive.
Se parlo di retrospettive, la percezione da parte del management è che si stiano assegnando colpe, e non ricercando fallace nel processo e nelle metodologie applicate.
Per quanto riguarda lo storico, l'azienda ha una percezione assolutamente rosea, "i bei tempi", ma sono tempi durante i quali non c'è nessun log sistematico storico, dove non esistono tool di gestione del software, tempi per i quali non è possibile fare misurazioni.
La piattaforma che rende possibile misurare (Redmine) è stata usata da me per quanto riguarda lo sviluppo software, tutti gli altri ambiti dell'azienda non hanno log in Redmine. Questo include anche la selezione del personale, salvo il caso specifico di Andrea Lunetta, del quale ho curato la selezione personalmente, e redatto la lista delle domande tecniche.
Spesso le comunicazioni avvenivano via email o via chat private, rendendo impossibile avere uno storico, una cosa non affrontabile per una full-remote company, ma del tutto tossica per ogni tipo di azienda: non avere uno storico permette di sviluppare conflitti basati sull'emotività, non puntare ai risultati, essere del tutto distaccati dalla realtà.