Analisi della causa della radice dei bug [chiusa]

3

Nel nostro gruppo di solito non riflettiamo troppo sul tipo di progetto o sulle decisioni di implementazione che hanno causato un bug, lo abbiamo semplicemente corretto. Ovviamente se qualche modulo produce costantemente bug, le persone iniziano a notarlo e, a volte, questo porta a importanti refactoring. Ma non abbiamo un processo in cui i bug vengono regolarmente analizzati per le loro cause principali.

La mia domanda è se un processo formale di analisi della causa della radice del bug è comune nello sviluppo del software, e se non perché no.

    
posta Eugene 16.06.2014 - 15:52
fonte

2 risposte

4

Se utilizzi lo sviluppo del software snello , allora l'esame della causa principale dei difetti dovrebbe far parte del tuo processo di sviluppo . I difetti sono uno dei rifiuti - i difetti che non vengono rilevati in quanto lo sviluppo avviene in termini di tempo, in particolare se passano da un'attività all'altra (difetti dei requisiti che scivolano attraverso la progettazione o persino nelle attività di integrazione e test di accettazione) o non rilevati come la complessità del sistema aumenta (con l'aggiunta di nuove funzionalità). Estendendo alcuni sforzi per capire perché i difetti non vengono rilevati all'inizio del processo e apportare modifiche per migliorare il rilevamento dei difetti nelle attività a monte è parte del mantenimento di un'organizzazione snella. Tuttavia, è anche importante notare che il costo dell'esecuzione di un'analisi di root cause viene valutato rispetto ai benefici: potrebbe non essere esaminato ogni difetto, ma forse a causa di una iterazione, ci sono stati un gran numero di difetti che possono essere categorizzati e analizzati in gruppi per migliorare le iterazioni future.

Per quanto riguarda i metodi strutturati, non esiste un unico approccio standard. Dipende dal problema e dalla squadra. Alcune metodologie includono Otto Discipline , DMAIC , Plan-Do-Check-Act e altri. Utilizzando queste metodologie, puoi utilizzare strumenti come classificazione di difetti ortogonali , analisi dell'albero dei guasti , 5 Whys , diagrammi di Ishikawa (lisca di pesce) e tecnica del gruppo nominale , tra gli altri (vedi i sette strumenti di base della qualità per esempi, anche se questi provengono principalmente da processi produttivi e industriali e possono non tutti traducono uno a uno per le attività di sviluppo del software), per restringere la portata del problema, identificare elementi comuni e arrivare alle cause e alle possibili soluzioni.

Se stai cercando un processo comune che esiste tra le organizzazioni, non ce n'è davvero uno. Tuttavia, molte metodologie e strumenti sono comuni. Sono semplicemente suddivisi o utilizzati in modo leggermente diverso tra organizzazioni e team. In definitiva, è necessario determinare ciò che funziona meglio per te e il tuo team, in termini di definizione del problema, determinazione dei metodi migliori per indagare e identificare le cause principali, sviluppare soluzioni e verificarne la correttezza e assicurare che abbiano un impatto positivo sul processo.

    
risposta data 16.06.2014 - 18:10
fonte
0

La natura delle cause è molto diversa e l'analisi della causa del bug viene spesso erroneamente analizzata dall'origine di un bug. Ad esempio, immagina l'adattamento errato di schemi di progettazione in contrasto con una progettazione di un'applicazione errata o semplici errori di programmazione.

Quindi penso che non ci sarà mai un processo formale. Forse il 5-Why-Method ti porterà alla causa principale, ma questa è più una tecnica che un processo formale.

    
risposta data 16.06.2014 - 16:34
fonte

Leggi altre domande sui tag