2013-06-12 22 views
5

C'è qualcuno che può dirmi qual è la differenza tra CMMI e Agile. Conosco qualche ovvia differenza, ma voglio saperne di più. Lo apprezzerò molto se qualcuno mi può aiutare! Grazie!Qual è la differenza tra CMMI e Agile?

+0

Ci sono alcuni che pensano che Agile sia a circa CMM livello 1 :-) – paxdiablo

+1

Il livello CMM 1 è caotico ma Agile no. Forse quel tipo di punto di vista non è davvero molto giusto secondo me. – lute

+0

Da qui la faccina sul mio commento, e perché l'ho fatto come commento piuttosto che come risposta. Non fraintendetemi, usiamo Agile (e XP) ma rimane ancora un modo di pensare tra alcuni che è tutto solo un trucco dei codificatori di cowboy per uscire dal lavoro da sgobbare (doco, design e così via). Noi sappiamo meglio – paxdiablo

risposta

8

CMMI è una metodologia di miglioramento dei processi che mira a portare i progetti oi team dal livello 1, "caotico", a un livello superiore, idealmente ma non necessariamente di livello 5, "ottimizzazione".

Consiste di varie funzionalità, ognuna delle quali è assegnata a un livello specifico. Ad esempio, CMM livello 2 richiede la capacità di pianificazione del progetto. I livelli sono fondamentalmente:

  1. Caotico, nessun controllo reale.
  2. Gestito, i processi a livello di progetto, per lo più reattivi.
  3. Definito, processi a livello di organizzazione, proattivo.
  4. Quantitativo, processi misurati e controllati.
  5. Ottimizzazione, anelli di retroazione e miglioramento continuo.

A mio parere , alti livelli di CMMI maturità sono piuttosto complessi e difficili da raggiungere. Mentre lavoravamo per una grande azienda che faceva outsourcing per una delle principali Telco, ottenemmo il livello 5 ma fu un grande lavoro per i rendimenti continuamente in diminuzione. Abbiamo finito per vederlo come un modo per ottenere il lavoro del governo e, in effetti, mi sono fatto un nome come piccolo specialista di progetti in cui potevamo ancora seguire CMMI ma non dover caricare megabucks per il cliente.

Agile, d'altra parte, è una metodologia di project management concentrandosi più sulla fornitura di ciò che i clienti hanno bisogno, piuttosto che una copiosa quantità di scartoffie :-)

vedo CMMI come un livello fino da Agile in quel Agile non è di per sé un massicciamente processo di auto-miglioramento.

E ha processi di miglioramento incorporati (come le retrospettive) ma non in modo tale che l'intera metodologia possa essere spiegazzata se non funziona.

In livelli CMMI più elevati, interi blocchi di metodi di gestione dei progetti (incluso Agile per esempio) possono essere sganciati o acquistati a seconda delle loro prestazioni e/o delle possibili efficienze.

+0

Grazie per la risposta. Aiuta davvero! – lute

+2

"Vedo CMMI come un livello superiore rispetto a Agile, in quanto l'Agile in sé non è un processo che si auto-migliora in maniera massiccia" - state dimenticando le retrospettive. Sono riunioni regolari per rivedere il processo e modificare le regole se necessario. – Sklivvz

+1

Beh, no, non l'ho dimenticato ma è ancora _part_ di Agile. Con CMMI, si potrebbe buttare via l'intera metodologia Agile se si mette di mezzo. Non è qualcosa che fai con le retrospettive, ed è per questo che ho affermato che CMMI era di un livello superiore. – paxdiablo

6

Agile è un insieme di quattro principi fondamentali:

  • Gli individui e le interazioni più di processi e strumenti
  • software di lavoro su una documentazione completa
  • collaborazione dei clienti nel corso di negoziazione del contratto
  • In risposta al cambiamento oltre a seguire un piano

Agile Manifesto

da cui derivano decine di softwaredevelopmentmethodologies.

CMMI è un modello di miglioramento del processo. È un processo meta- e non è, AFAIK, strettamente correlato allo sviluppo del software.

Come tale non ha assolutamente senso confrontare i due (un modello e un insieme di principi). Inoltre non ha senso chiedere quale sia il livello di maturità agile o persino quale livello di maturità sia una metodologia agile specifica.

Possiamo solo parlare dello specifico livello di maturità di una particolare metodologia software agile implementazione, ad es. "in questo team facciamo Scrum a un livello di maturità ottimizzante".

+0

Actuallty, sono totalmente d'accordo sul fatto che non ha senso fare confronto perché sono due cose diverse. Ma il mio professore mi ha detto di fare un'analisi approfondita delle loro differenze ... – lute

+0

Concordato.Metodologie agili, come Scrum, possono essere compatibili con [CMMI] (http://cmmiinstitute.com/cmmi-getting-started/cmmi-compatibility/cmmi-and-agile/cmmi-and-scrum/) –

0

Alcuni grandi risposte formali sono già qui, forse questo aiuterà a capire la differenza per quelli che cercano la comprensione:

Su un set nave pirata di principi che mantengono i pirati si muovono verso un obiettivo comune si chiama "codice pirata d'onore "- questo è un insieme di principi Agili.

Ma c'è sempre un ragazzo su una barca con strumenti di navigazione e una mappa, chissà dove siamo ora e come guidare la nave attraverso i mari - questa è CMMI.

+6

non è chiaro cosa cercando di dire? –

+1

Questo davvero non aggiunge alcun valore. Dovresti almeno provare a spiegare il problema e dare il colpo alla soluzione prima di dare delle analogie. – Robotron