Windows Confidential: Preparate le cavie

La manipolazione degli sviluppatori software può essere una strategia molto utile durante la fase di correzione degli errori nei progetti di sviluppo software.

Raymond Chen

Una parte importante di qualsiasi progetto software è correggere i bug. In realtà, la correzione dei bug è la maggior parte della maggior parte dei progetti software. Gestione dei bug e il processo per trattare con loro è quindi una parte importante del processo di sviluppo software in generale.

Nelle prime fasi di un progetto, si può essere piuttosto indulgente con gli insetti. Si può essere più inclini ad accettare qualsiasi cosa, non importa come insignificante. A un certo punto, però, vi accorgerete che avete un backlog di grandi bug per gestire. Sarà necessario ottenere sul tuo numero di bug più serio. Questo ciclo si può ripetere più volte nell'arco della durata di un progetto. Ci può essere un ciclo di abbuffata/purga per ogni fase di sviluppo.

Una fonte costante di backlog bug è un disturbo che un mio collega precedente soprannominato "insetto-avvolgente." Gli sviluppatori di trovano bug che si sentono che dovrebbe risolvere, ma semplicemente non hanno ottenuto intorno al lavoro su ancora. Come passa il tempo, questi bug ottenere più vecchio e polveroso. Gli sviluppatori di resistere ai tentativi di avere i bug dichiarata non vale la pena di fissaggio o rinviata alla prossima release, perché si sentono ancora che quei bug dovrebbe davvero essere fissata.

È la versione di sviluppo di software di accaparramento. Gli sviluppatori emotivamente legarsi agli insetti, nonostante la mancanza di qualsiasi base razionale per mantenere i loro intorno. Questi insetti tendono ad essere relativamente minore. Spesso sono in realtà le richieste di funzionalità travestite da bug — qualcosa come "quando faccio X, sarebbe bello se ci fosse un'opzione per fare Y."

Chiamare lo Sterminatore

Su molti progetti, lo sforzo per ridurre il numero di bug è segnato da un periodo (in genere una settimana), dove gli sviluppatori sono sfidati a correggere i bug come molti come possono. Normali regole per l'ordine in cui dovrebbe essere risolto bug sono sospese. Gli sviluppatori possono fissare qualsiasi bug che piace, indipendentemente dalla priorità.

Per questa settimana solo, il focus è sul quantitativo di bug fissata, non la gravità o la priorità. Ci possono essere premi assegnati agli sviluppatori che Difficoltà la maggior parte dei bug, Difficoltà i bug più antichi, finire la settimana con il minor numero di bug o ottenere il loro conteggio di insetto sotto il livello di destinazione. A volte, i gestori mettono in ossequi a mantenere gli sviluppatori motivati.

Il nome per questa settimana di bug-fixing focalizzato varia da squadra a squadra. Alcuni team di chiamare un Bug Bash, ma che a volte viene confuso con un altro uso del termine che descrive uno sforzo mirato a trovare nuovi bug piuttosto che Difficoltà quelli esistenti. Alcune squadre preferiscono chiamare la loro settimana bug-fixing Smash un Bug. Una squadra utilizzato l'acronimo MOABB (madre di tutti I Bug colpisce) per descrivere la settimana di bug-fixing concentrato.

Comunque si chiami, gli obiettivi sono gli stessi. L'obiettivo immediato è di sgombrare come molti bug possibile, fissandoli oppure decidere di non risolverli. L'obiettivo finale è quello di spostare in sulla settimana con un chiaro senso dello stato del progetto.

Huggers bug sono spesso bersaglio durante queste settimane bug-fixing. Affrontano un punto di decisione. Essa è la loro ultima chance per correggere i bug che hai sempre stata sinonimo di fissare "un giorno." Se essi non correggerli, gli insetti stanno per essere portato via. Alla fine della settimana, i bug non sarà più attivo, un modo o in altro.

Nascondere il formaggio

Durante questa settimana, gestione ottiene trattare gli sviluppatori di software come topi di laboratorio. Gli sviluppatori di software possono essere semplici creature. Pensiamo che siamo una forma avanzata di intelligenza umana, ma in realtà, noi stiamo come facilmente manipolati come burattini in mano. Gestori di buon senso possono manipolare huggers bug nella scelta tra dei loro caro bug o permettendo loro di andare.

Gestione realizza anche gli sviluppatori di provare il brivido di infrangere le regole. Sarò spesso impiegano un po ' psicologia inversa massaggiando la lista di bug, così sembra solo che un bug non è importante. Per esempio, essi possono riclassificare tutti i bug che veramente non si preoccupano come questioni specifiche così che essi non più contano come bug. Possono anche prendere importanti bug e dare loro una falsa priorità bassa per farle sembrare più attraenti.

In passato, quando alcuni sviluppatori appreso che un concorso bug-fixing era venuta presto, preparato correzioni di bug, ma non ha commesso le correzioni al progetto fin da subito. Al contrario, hanno atteso per dare libero sfogo durante la settimana del concorso. Non ci volle la gestione a lungo per scoprire questo piccolo trucco. Ora la gestione include bug fissato nella settimana che portano alla ufficiale concorso settimana nelle statistiche, in tal modo neutralizzare l'effetto (e scoraggiando implicitamente il comportamento non produttivo).

Questo gioco del gatto con il topo tra management e gli sviluppatori di software è tutto solo una distrazione dallo scopo principale della settimana: per correggere gli errori e migliorare il prodotto finale. E, nonostante la loro intelligenza, gli sviluppatori di solito non capiscono che sono i topi.

Lafe Low

**Raymond Chen**del sito Web, The Old New Thing e in modo identico intitolato libro (Addison-Wesley, 2007) trattare con la storia di Windows e programmazione Win32. Questo articolo è stato scritto sull'apparecchiatura che è stato in contatto con noci.

Contenuto correlato