Operazione: Select and Acquire Tools
Questa attività descrive come selezionare e acquisire i tool che supportano il processo di sviluppo per il progetto.
Scopo

Lo scopo di questo compito è di:

  • Selezionare i tool che si adattano alle necessità del progetto.
  • Acquisire i tool per il progetto.
  • (Facoltativamente) Sviluppare tool speciali internamente per supportare particolari necessità, fornire automazione aggiuntiva per attività tediose e inclini all'errore e fornire una migliore integrazione tra i tool.
Relazioni
RuoliPrincipale: Aggiuntivo: Assistenza:
InputObbligatorio:
  • Nessuno
Facoltativo: Esterno:
  • Nessuno
Output
Descrizione principale

Molti dei passi nel processo si possono continuare soltanto con il supporto del tool adatto. I tool devono essere selezionati in modo che si adattino alle particolari necessità di un'organizzazione, basate principalmente su attività specifiche o prodotti di lavoro necessari per il processo. In Concetto: Tool di supporto viene offerta una breve panoramica dei diversi tipi di tool di supporto necessari per un progetto.

Alcune volte è necessario sviluppare tool speciali internamente per supportare particolari necessità, fornire automazione aggiuntiva per attività tediose e inclini all'errore e fornire una migliore integrazione tra i tool. Tale sviluppo di tool può procedere con un processo di produzione più semplice rispetto a quello utilizzato per lo sviluppo del prodotto.

La selezione e l'acquisizione dei tool viene fatta di pari passo con l'implementazione del processo nell'organizzazione. Per ulteriori dettagli, consultare Implementazione di un processo in un progetto.

Passi
Identificazione di necessità e vincoli

Identificare le necessità per il supporto di tool e vincoli, osservando i seguenti punti:

  • Il processo di produzione. Quale supporto di strumento è necessario per lavorare in modo efficiente. Ad esempio, se l'organizzazione decide di servirsi di un processo di produzione iterativo, è necessario automatizzare i test, poiché si eseguiranno verifiche diverse volte durante il progetto.
  • Piattaforma/e host (o di sviluppo). 
  • Piattaforma/e di destinazione.
  • Linguaggio/i di programmazione da utilizzare.
  • Tool esistenti. Valutare qualsiasi tool esistente e sperimentato e decidere se può continuare a essere utilizzato.
  • La distribuzione dell'organizzazione dello sviluppo. L'organizzazione è distribuita fisicamente? I tool di sviluppo supportano di solito un'organizzazione distribuita fisicamente in modo diverso.
  • Dimensione dello sforzo per lo sviluppo. Gli strumenti supportano grandi organizzazioni più o meno bene.
  • Vincoli di budget e di tempo.

In Valutazione dello sviluppo dell'organizzazione vengono fornite alcune informazioni utili per questo passo. 

Raccolta di informazioni sui tool

Raccogliere informazioni sui tool candidati e i rispettivi fornitori. Alcune di queste informazioni sono dati che si possono ottenere dal fornitore o da pubblicazioni indipendenti.   

Funzioni e caratteristiche di tool

Creare un elenco di funzioni e caratteristiche per il tipo di tool che si sta studiando. Nella maggior parte dei casi sono i fornitori dei tool a offrire tali elenchi. La tabella successiva mostra una parte di un elenco per i tool di gestione configurazione. 

Caratteristiche & Funzioni 

Versioni di tutti gli oggetti del file system 
Versioni delle directory 
Combinazione di tipi di file 
Comprime testo e binari 
... 

Criteri di tool e fornitore

Raccolta di informazioni su ogni tool per i seguenti criteri. 

Tool
Criteri 

Commenti 

Caratteristiche  &
Funzioni 
La funzionalità fornita dal tool. Questa dovrebbe essere la conclusione complessiva della tabella 'Caratteristiche di tool'.  
Integrazione  Il livello di integrazione con gli altri tool. In che modo vengono trasferite le informazioni tra i diversi tool? Come si adatta il tool ai tool esistenti e a quelli in fase di valutazione. Il livello di integrazione è spesso più importante delle caratteristiche. Tool bene integrati sono più facili da utilizzare e da gestire. 
Applicabilità 

Come il tool supporta il processo di produzione. È necessario modificare il modo di lavorare per utilizzare il tool? È possibile accettare tale compromesso? La mancanza di applicabilità può comportare la modifica del modo di lavorare, "orientato ai tool". Ma ciò potrebbe convenire se il tool presenta altri vantaggi.

 
Estendibilità  La capacità di ampliare e personalizzare il tool. L'estendibilità è una buona caratteristica poiché consente di adattare il tool alle proprie necessità. Tuttavia, assicurarsi che non richieda troppo tempo per configurare il tool e renderlo  funzionante. 
Supporto di team  La capacità di supportare un team di utenti. Il tool supporta un team distribuito geograficamente?  
Utilizzabilità  La facilità di capire e utilizzare il tool. Concentrarsi sui modi di utilizzo più comuni del tool. Quanto tempo occorre per essere produttivi utilizzando il tool? Il tool è adatto alle persone che non lo utilizzano con frequenza? Assicurarsi di osservare le funzioni più comunemente utilizzate. Il fatto che alcune funzioni raramente utilizzate siano difficili da utilizzare, può spesso essere ignorato. 
Qualità  In base al tipo di tool, la sua qualità determinerà quella del prodotto che si sta creando. La qualità è importante, soprattutto quando ha un diretto impatto sul prodotto che  si sviluppa. Ad esempio, un compilatore che produce codice lento o un editor HTML che produce HTML non buono. 
Prestazioni  L'efficacia totale del tool, compresa la capacità, l'accessibilità e i tempi di risposta. Prestazioni non buone possono essere accettabili se coinvolgono funzioni o capacità utilizzate raramente.  
Maturità  Il livello di maturità del tool. Alcune organizzazioni non acquistano la versione 1 di un tool da un nuovo fornitore, indipendentemente da quanto possa essere valido.  

Fornitore
Criteri 

Commenti 

Stabilità  Si rischia il proprio futuro sul futuro del fornitore. Da quanto tempo è attiva l'azienda? Quanto stabile è l'azienda? Stanno investendo sul tool? Il tool costituisce l'attività principale dell'azienda o è un'attività secondaria? 
Disponibilità di supporto  Quale supporto è disponibile dal fornitore e/o dai potenziali partner? Potrebbe essere necessario dell'aiuto per installare e configurare il tool e di continuo supporto per gli utenti. 
Disponibilità di addestramenti  Quali addestramenti sono disponibili da parte del fornitore e/o dai potenziali partner?  
Direzione di crescita  Il modo in cui lo strumento supporta la direzione del proprio sviluppo. Considerare in quale direzione sta andando il proprio sviluppo. Il tool supporterà tale direzione e altre direzioni che si possono stabilire?  

Costo

I costi associati all'acquisto e al possesso del tool che includono i costi di acquisto, i costi di implementazione e i costi di gestione. Decidere di quanti utenti si dispone e per quanto tempo, per calcolare il costo. 

Costo

 

Commento 

Costo di acquisto  Il costo di acquisto del tool. 
Costo di implementazione  Il costo per avere il tool installato e integrato con l'ambiente di sviluppo esistente. Include il costo di addestramento degli utenti al tool, sia per gli utenti che per il personale che gestirà il tool. 
Costi di manutenzione  I costi correnti per assicurare che il tool funzioni e venga utilizzato. Include i costi di gestione del tool, di aggiornamento e di addestramento sia per il personale che gestisce il tool che per gli utenti. 

Confronto dei tool

Combinare i fattori e selezionare i tool migliori non è un problema banale. Per aiutare a prendere una decisione, si consiglia di creare una tabella per le caratteristiche.

Confronto di caratteristiche e funzioni

Utilizzando l'elenco di caratteristiche e funzioni, decidere l'importanza di ogni caratteristica o funzione. È possibile utilizzare la seguente gerarchia di gradi:

  • 'Necessaria'. Il tool deve avere tale caratteristica.
  • 'Buona'. Sarebbe piacevole avere tale caratteristica ma non è necessaria.
  • 'Non necessaria'. Non ha importanza se il tool dispone o meno di tale caratteristica. 

Indicare per ogni tool se dispone o meno della caratteristica utilizzando i seguenti simboli:

Simbolo  

Descrizione 

possiede la caratteristica 
-     non possiede la caratteristica 

Documentare tutte le caratteristiche e funzioni in una tabella e segnalare quanto sono importanti. Indicare per ogni tool se dispone o meno della caratteristica. La tabella successiva mostra una parte di un confronto fra tre tool di gestione configurazione. 

Caratteristiche & Funzioni 

Grado 

Tool 1 

Tool 2 

Tool 3 

Versioni di tutti gli oggetti del file system  Necessaria 
Versioni delle directory  Necessaria 
Combinazione di tipi di file  Necessaria 
Comprime testo e binari  Buona 
...  ...  ...  ...  ... 

Confronto dei criteri di tool e fornitori

È necessario confrontare i tool in tutti gli altri fattori, tranne le caratteristiche. Per ottenere una panoramica dei tool, si consiglia di documentare la panoramica in una tabella. come quella della tabella successiva. Descrivere brevemente le necessità e i vincoli per ogni fattore. Dare a ogni fattore un peso per indicarne l'importanza per le proprie necessità. Ad esempio, utilizzare una scala sa 1 a 5, dove 5 è il fattore più importante. 

Indicare il grado per ogni tool (e fornitore) nei criteri seguenti. È possibile utilizzare una scala da 1 a 5:

  1. Inutile in quest'area
  2. Poco utile o con seri difetti. 
  3. Adeguato in quest'area.
  4. Sopra la media in quest'area. 
  5. Eccellente in quest'area.

Documentare il confronto in una tabella come quella seguente. 

Criteri di tool 

Commenti 

Tool 1  

Tool 2 

Tool 3 

Caratteristiche& 
Funzioni 
           
Integrazione             
Applicabilità             
Estendibilità             
Supporto di team             
Utilizzabilità             
Qualità             
Prestazioni             
Maturità             

Criteri del fornitore 

           
Stabilità             
Disponibilità di supporto             
Disponibilità di addestramenti             
Direzione di crescita             

Confronto dei costi

Confrontare il costo di ogni tool e documentarlo in una tabella come quella successiva. Indicare il grado di ogni costo come 'Basso', 'Medio' o 'Alto'. 

Costo 

Commenti 

Tool 1  

Tool 2 

Tool 3 

Costo di acquisto             
Costo di implementazione             
Costi di manutenzione             

Selezione degli strumenti

Selezionare i tool che soddisfano meglio le proprie necessità e che possano adattarsi ai propri vincoli. Non cadere nell'errore di confrontare solo le caratteristiche e le funzioni. Gli altri criteri sono ugualmente o più importanti. A meno che la scelta del tool sia ovvia, si consiglia di verificare il tool (o i tool) individuato per adattarlo al meglio alle proprie necessità, prima di decidere di acquistarlo. 

Se si hanno dubbi sul tool, la soluzione migliore è sempre quella di verificarlo. Si possono cercare altre aziende che lo utilizzano per chiedere se possono fornirne una valutazione. Si possono anche chiedere referenze dei clienti che utilizzano il tool al fornitore. Sono disponibili informazioni anche su Internet, dove, ad esempio, riviste online pubblicano le loro recensioni.  

Una volta fatta la scelta, evitare i ripensamenti. Cambiare il tool nel mezzo del progetto è spesso molto costoso.

Acquisto dei tool

Acquistare i tool è una problematica non banale che riguarda questioni legali così come finanziarie. L'acquisto del tool non viene trattato in alcun dettaglio in questo documento. È necessario considerare le seguenti aree:   

  • Installazione. Quanta assistenza offrono per configurare i tool?
  • Supporto. Quale tipo di supporto offre il fornitore? Molti fornitori di tool offrono diversi livelli di supporto da scegliere. Più si paga e più supporto si ottiene. 
  • Impegno del fornitore. In che modo si è impegnato il fornitore nei vostri riguardi, come nuovi clienti? Se si verificano problemi con il tool, che tipo di aiuto può offrire? Quali sono i tempi e i relativi costi?
  • Influenza. Quale influenza si avrà sul futuro del tool? Di quale priorità si avrà bisogno?  
  • Manutenzione. In che modo il fornitore gestisce gli errori nel tool? Sono pianificati rilasci di "service pack"? 
  • Addestramento. Quale addestramento viene offerto? Qual è la disponibilità di corsi di addestramento? 
  • Futuro del prodotto. Esiste un piano che descriva l'evoluzione futura del tool?
  • Concessione della licenza. È necessario acquistare una licenza per uso territoriale limitato per tutti i membri del progetto oppure acquistare un tool per ogni persona? Alcuni tool offrono licenze "mobili" che impostano un limite al numero di utenti contemporanei in un'organizzazione.


Proprietà
Ricorrenze multiple
Attivato da evento
In corso
Facoltativo
Pianificato
Ripetibile