In che modo gli standard e i miglioramenti dei processi devono essere introdotti in un'organizzazione senza di essi?

10

Ho ricevuto il compito di migliorare il processo di sviluppo del software attraverso l'implementazione di miglioramenti del processo, dei quali utilizzeremo molto probabilmente CMMI per lo sviluppo, versione 1.3 come linea guida e adozione delle migliori pratiche in tutto o in parte. Qual è il modo migliore per introdurre standard e miglioramenti dei processi in modo da ridurre al minimo il grado di respingimento e resistenza da parte degli sviluppatori?

    
posta rjzii 09.02.2012 - 14:33
fonte

4 risposte

2
  1. Avvia il progetto di miglioramento dei processi software (SPI) . Definire il suo scopo e i suoi obiettivi. Aiuterà sicuramente se la standardizzazione ha i suoi obiettivi e le misure applicabili alla tua organizzazione.
  2. Assegna la persona responsabile dell'adozione degli standard . Potrebbe anche trattarsi di più persone o di un dipartimento nel caso di una grande organizzazione. La cosa importante è che tutti i responsabili della standardizzazione sarebbero:
    • abbastanza professionale per vedere l'intera immagine
    • abbastanza influente per gestire i team e aiutarli ad adottare / negoziare le modifiche
  3. Sviluppa corsi di formazione che riguardano sia lo standard che desideri adottare, sia le sue specifiche applicate alla tua organizzazione. Ed è davvero importante finché tutte le persone che non sono state addestrate sono potenzialmente resistenti ai cambiamenti. Ad esempio, quando lavoravo in una grande azienda, istruivo tutti i dipendenti nuovi arrivati sui processi di controllo qualità, CMMI, ISO e sistema di gestione della qualità. Tale formazione era obbligatoria. Ha contribuito a migliorare la conoscenza dei processi di gestione della qualità e ad aumentare la consapevolezza dei dipendenti riguardo l'importante problema della qualità del software.
  4. Negozia le modifiche e personalizza le pratiche generalmente accettate per le tue esigenze specifiche. Aiuterà a evitare la burocrazia e l'implementazione di processi pesanti che nessuno ha davvero bisogno.
  5. Stabilisci il monitoraggio di come vengono implementati i miglioramenti dei processi e se sono sufficientemente efficaci nella tua organizzazione.

Aiuterà anche se troverai tutte le persone all'interno della tua organizzazione che sono veramente preoccupate per la qualità. Molto probabilmente, quelle sarebbero la risorsa più importante per aiutarvi a promuovere i cambiamenti e stabilire pratiche mature.

    
risposta data 09.02.2012 - 17:15
fonte
6

Un paio di pensieri dalla scuola dei duri battiti:

1) La maggior parte delle iniziative di miglioramento dei processi passano l'80% del loro tempo nella progettazione dei processi e il 20% nell'istruzione e nella socializzazione. Capovolgere queste percentuali. Uno standard mediocre che viene seguito batte quello perfetto che non lo è.

2) Identifica chiare ragioni per cui chiedi alle persone di cambiare il loro modo di lavorare. Qual è il business case? Idealmente beneficia ogni squadra individualmente. A volte è solo un miglioramento sistemico. In ogni caso, rendi visibile il caso.

3) Semplificare, quindi standardizzare, non il contrario.

4) Non è possibile delegare completamente questo a un PMO. I direttori diretti devono essere comprati e il capo della business unit dovrà rompere i legami quando entrano i reclami.

5) Trova i primi utenti amichevoli. La gente si lamenterà di quanto tempo ci vuole tutto. Hai bisogno di qualcuno a cui puoi puntare e dire "ci sono voluti solo 15 minuti"

6) Per le metriche, spingere strong per quantitativo su qualitativo. Altrimenti hai progetti che sono Green fino al giorno prima di Go Live, quando tutto scivola di un mese.

7) Enfatizzare le tecniche sugli strumenti. Una buona pianificazione è più importante di MS Project.

8) Inserisci un livello di processo relativo ai bisogni. Ogni ristorante ha bisogno di un processo, ma Nobu e la lavanderia francese hanno bisogno di un tipo diverso da quello di McDonalds. Lo stesso vale per le aziende di software.

Buona fortuna!

    
risposta data 09.02.2012 - 18:26
fonte
2

Fondare i propri sforzi sulla CMMI è probabilmente una buona idea, anche se non si è sottoposti alle valutazioni e si è formalmente verificati e valutati. C'è abbondanza di letteratura disponibile su CMMI , CMMI e altre tecniche di miglioramento dei processi come Lean e Six Sigma e CMMI e agile sviluppo del software . SEI ha un'intera collezione di risorse , alcune disponibili gratuitamente, su diversi aspetti della CMMI e indicazioni per diversi tipi di organizzazioni.

Suggerirei di analizzare in modo approfondito l'approccio continuo all'implementazione di CMMI, piuttosto che l'approccio graduale. Mi sembra un modo molto più efficace per determinare esattamente dove si trova la tua organizzazione ora e migliorare in aree che aggiungono il valore più aziendale. Ciò ti consentirà non solo di allineare i tuoi sforzi di miglioramento con gli obiettivi aziendali, ma di raggiungere rapidamente obiettivi intermedi e dimostrare gli effetti del miglioramento, aumentando il buy-in da tutti i livelli.

Qualcosa da tenere a mente, tuttavia, è che il miglioramento del processo ha generalmente più successo quando si tratta di uno sforzo di base. Quando le modifiche al processo sono dettate dall'alto - da persone che gli sviluppatori "nelle trincee" potrebbero vedere come fuori dal mondo del modo in cui le cose vengono fatte nelle trincee - probabilmente ci sarà un pushback, anche se l'idea è buona. Preparati per questo.

Potrebbe anche essere utile qualche tipo di gruppo di processi di progettazione . Riunire rappresentanti dei vari componenti e gruppi organizzativi interessati dal miglioramento in modo che la voce di tutti sia ascoltata. Ciò includerebbe non solo rappresentanti di ciascun ruolo, ma forse vari team di sviluppo prodotto. Senza sapere come è strutturata la tua organizzazione, non posso dire esattamente chi potresti voler guardare, ma includere persone di ogni livello dell'organizzazione nel gruppo. Inoltre, rendere le discussioni e le decisioni prese da questo gruppo disponibili per l'organizzazione per i commenti e l'aumento di eventuali problemi.

    
risposta data 09.02.2012 - 14:47
fonte
0

Per ogni modifica:

  • Chiama la modifica 1 e come migliorerà lo sviluppo.
  • Implementa la modifica.
  • Dimostra miglioramenti
  • Rimuovi le modifiche che non hanno dimostrato miglioramenti

Ovviamente l'analisi deve avvenire nel tempo, ma nessun cambiamento dovrebbe essere accettato fino a quando non si dimostrerà efficace. Questo è anche il motivo per cui implementerei non più di 2-3 cambiamenti per ciclo, altrimenti non è possibile misurare se ci sono stati miglioramenti o meno.

Nulla mi irrita più del seguire ciecamente le best practice senza fare analisi per dimostrare che in realtà è una best practice per il tuo ambiente. Una pratica migliore che non dimostri miglioramenti è nel migliore dei casi una perdita e nel peggiore dei casi dannosa.

Tutte le fasi del processo e tutte le pratiche in metodologia dovrebbero essere analizzate e dimostrate utili. Se non lo è dovrebbe essere rimosso. Questa analisi dovrebbe essere svolta su base continuativa, indipendentemente dall'aggiunta o rimozione di passaggi o pratiche.

    
risposta data 09.02.2012 - 19:54
fonte

Leggi altre domande sui tag