Il termine "integrazione" si riferisce all'attività dello sviluppo di software in cui dei componenti software separati
vengono uniti. L'integrazione viene effettuata a diversi livelli e stadi di implementazione:
-
Integrazione del lavoro di un team che opera nello stesso sottosistema di implementazione prima di rilasciare il
sottosistema agli integratori di sistema.
-
Integrazione dei sottosistemi in un sistema completo.
L'approccio RUP (Rational Unified Process) all'integrazione è di integrare il software in modo incrementale.
Integrazione incrementale significa che il codice viene scritto e testato in piccole parti, e poi unito in un unico
corpo funzionante aggiungendo una parte alla volta.
L'approccio in contrasto con l'integrazione incrementale è l'integrazione a fasi. L'integrazione a fasi si basa
sull'integrazione di più componenti alla volta (nuovi e modificati). Il principale svantaggio dell'integrazione a fasi
è che introduce più variabili e rende più difficile la rilevazione degli errori. Ciò è dovuto principalmente al fatto
che un errore potrebbe essere in uno qualsiasi dei nuovi componenti, nell'interazione fra i nuovi componenti nel nucleo
del sistema o nell'interazione fra i nuovi componenti.
I vantaggi dell'integrazione incrementale sono:
-
Gli errori sono facili da individuare. Quando si verifica un nuovo problema durante un'integrazione
incrementale, il componente nuovo o modificato oppure l'interazione con i componenti precedentemente integrati sono
i luoghi ovvi in cui cercare l'errore. L'integrazione incrementale rende inoltre più probabile l'individuazione dei
difetti su base individuale, il che rende più facile identificare gli errori.
-
I componenti vengono testati più approfonditamente. I componenti vengono integrati non appena vengono
sviluppati e poi testati. Ciò significa che i componenti vengono provati più spesso di quanto non succeda
nell'integrazione effettuata in un unico passo.
-
Qualcosa va in esecuzione prima. Gli sviluppatori vedono dei risultati precoci del loro lavoro senza dover
attendere fino alla fine, e questo è meglio per il loro morale. Consente inoltre di ricevere il feedback il più
presto possibile.
E' importante capire che l'integrazione si verifica almeno una volta ad ogni interazione. Un piano di iterazione
definisce quali casi d'uso progettare e quali classi implementare. Il punto focale della strategia di integrazione è di
determinare l'ordine in cui le classi vengono implementate e combinate.
|