Concetto: Integrazione di software
Questa linea descrive alcuni approcci all'integrazione di componenti software nel sistema.
Relazioni
Elementi correlati
Descrizione principale

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.