Prodotto di lavoro: Processo di sviluppo
Questo prodotto di lavoro descrive il processo che un progetto deve seguire, per poter produrre i risultati di progetto desiderati. Questo prodotto di lavoro viene denominato anche processo di sviluppo di software.
Scopo
Lo scopo del processo di sviluppo è di fornire una guida ed un supporto ai membri del progetto. "Informazioni sulla punta delle dita" è una metafora che ben si allinea con lo scopo di questo prodotto di lavoro.
Relazioni
RuoliResponsabile: Modificato da:
Input inObbligatorio: Facoltativo:
  • Nessuno
Esterno:
  • Nessuno
Descrizione principale

Ogni processo è composto da una struttura suddivisa in n livelli. Il contenuto del metodo di base fornisce delle spiegazioni dettagliate che descrivono come ottenere degli obiettivi di sviluppo molto specifici, indipendentemente dalla collocazione di questi passi all'interno di un ciclo di sviluppo. I processi utilizzano gli elementi del metodo e li collegano a delle sequenze semi-ordinate che vengono personalizzate in base al tipo specifico di progetto. Quindi un processo è una serie di descrizioni di lavoro parzialmente ordinate, inteso a raggiungere un obiettivo di sviluppo superiore, come il rilascio di uno specifico sistema software. Un processo è incentrato sul ciclo di vita e sulla sequenza del lavoro in strutture di partizionamento.

Esistono diversi tipi di processi: Processo di produzione e Pattern di capacità.

Processo di produzione

Un processo di produzione descrive un approccio completo e integrato per l'esecuzione di un tipo specifico di progetto di sviluppo. Si tratta di un processo che copre un intero ciclo di sviluppo, dall'inizio alla fine. Viene utilizzato come modello per la pianificazione e l'esecuzione di un progetto. Fornisce un modello completo di ciclo di vita con delle fasi predefinite, delle iterazioni e delle attività descritte in dettaglio mettendo in sequenza il contenuto del metodo in strutture di partizionamento. Viene definito sulla base di esperienze con progetti o impegni passati, e/o sul miglior utilizzo di un approccio di sviluppo o di produzione. Definisce cosa deve essere prodotto, i metodi di produzione ed le risorse richieste in termini di lavoro integrato, prodotto di lavoro e strutture di frazionamento per il team. Ad esempio, un tecnico del processo può definire dei processi di produzione alternativi per dei progetti di sviluppo software che differiscono nella scala dell'impegno e delle risorse necessari, del tipo di applicazione software da sviluppare, dei metodi di sviluppo e delle tecnologie da utilizzare, ecc. Anche se il processo di produzione mira a coprire un intero progetto, mantiene libere determinate decisioni sono troppo specifiche per il progetto. Ad esempio, la struttura di partizionamento definisce quali elementi di partizionamento presentano più ricorrenze o è ripetibile tramite i relativi attributi ma non specifica quante ricorrenze e quante ripetizioni/iterazioni avrà. Queste decisioni devono essere prese da un responsabile di progetto durante la pianificazione di un progetto concreto, di una fase del progetto o delle iterazioni del progetto.

Pattern di capacità

Un pattern di capacità descrive un cluster di attività riutilizzabile nelle aree comuni di un processo. I pattern di capacità esprimono e trasmettono la conoscenza del processo relativa ad un'area chiave d'interesse, ad esempio una disciplina, e possono essere utilizzati direttamente dal creatore di un processo per guidare il suo lavoro. Vengono utilizzati anche come blocchi di creazione per assemblare processi di produzione o pattern di capacità più grandi, garantendo un riutilizzo ottimale e l'applicazione delle pratiche chiave trattate. Degli esempi di pattern di capacità potrebbero essere 'gestione dei requisiti basati sul caso d'uso', 'analisi del caso d'uso' o 'verifica unità'. Di solito, ma non necessariamente, i pattern di capacità hanno come ambito una disciplina, fornendo una suddivisione di attività complesse riutilizzabili, delle relazioni ai ruoli che eseguono i compiti all'interno di quelle attività, oltre ai prodotti di lavoro che vengono utilizzati e creati. Un pattern di capacità non è relativo ad una specifica fase o iterazione di un ciclo di sviluppo e non ne deve implicare. In altre parole, un pattern deve essere progettato in modo da poter essere applicabile in qualsiasi punto del processo di produzione. In questo modo le relative attività possono essere assegnate in maniera flessibile a qualsiasi fase presente nel processo di produzione a cui viene applicato.

E' buona norma progettare un pattern di capacità per la produzione di uno o più componenti distribuibili generici. La configurazione tipica è che ogni attività del pattern di capacità produce un componente distribuibile e l'ultimo descrittore di compiti nell'attività genera esplicitamente solo quel componente. Questo consente al tecnico del processo di selezionare i pattern o solo le attività decidendo quali componenti distribuibili sono richiesti. Offre inoltre un approccio semplice di integrazione: un'attività di un pattern di capacità viene collegata alla fase o all'iterazione richiesta per produrre il componente distribuibile dell'attività.

Proprietà
Facoltativo
PianificatoYes
Considerazioni chiave
Si può decidere di non catturare l'intero processo nel processo di sviluppo. In alcuni casi, buona parte della responsabilità e le decisioni relative al processo, in particolare i prodotti di lavoro, vengono delegati ai membri del progetto di sviluppo del software. Ad esempio, se si dispone di un buon responsabile di progetto, con esperienza, è possibile lasciare a lui le decisioni relative a quali piani produrre e le modalità. Allo stesso modo, molti responsabili di progetto non sono interessati a come ciascun membro progetta la sua parte del sistema, purché producano la funzionalità prevista nei tempi dovuti e con un livello di qualità ragionevole.

Un motivo per disporre di una descrizione del processo è che in questo modo diverse persone possono condividere le informazioni. In caso contrario, il costo di manutenzione della descrizione del processo potrebbe essere troppo elevato. Quindi si potrebbe decidere di non avere o gestire la descrizione del processo per una o più discipline. Questo non significa che non si applica dell'impegno lavorativo a quella particolare disciplina, né che non la si ritenga importante. Ad esempio, si potrebbe impiegare un eccellente responsabile di test, fornire tutto il supporto possibile ma lasciare a lui il compito di decidere come lavorare e quali prodotti di lavoro produrre.