OOAD - Sistema orientato agli oggetti
Sappiamo che la tecnica di modellazione orientata agli oggetti (OOM) visualizza le cose in un'applicazione utilizzando modelli organizzati attorno agli oggetti. Qualsiasi approccio allo sviluppo del software passa attraverso le seguenti fasi:
- Analysis,
- Design e
- Implementation.
Nell'ingegneria del software orientata agli oggetti, lo sviluppatore del software identifica e organizza l'applicazione in termini di concetti orientati agli oggetti, prima della loro rappresentazione finale in qualsiasi linguaggio di programmazione o strumento software specifico.
Fasi nello sviluppo di software orientato agli oggetti
Le fasi principali dello sviluppo del software che utilizza la metodologia orientata agli oggetti sono l'analisi orientata agli oggetti, la progettazione orientata agli oggetti e l'implementazione orientata agli oggetti.
Analisi orientata agli oggetti
In questa fase, viene formulato il problema, vengono identificati i requisiti dell'utente e quindi viene costruito un modello basato su oggetti del mondo reale. L'analisi produce modelli su come dovrebbe funzionare il sistema desiderato e su come deve essere sviluppato. I modelli non includono alcun dettaglio di implementazione in modo che possa essere compreso ed esaminato da qualsiasi esperto di applicazioni non tecniche.
Design orientato agli oggetti
La progettazione orientata agli oggetti comprende due fasi principali, vale a dire la progettazione del sistema e la progettazione degli oggetti.
System Design
In questa fase viene progettata l'intera architettura del sistema desiderato. Il sistema è concepito come un insieme di sottosistemi interagenti che a loro volta è composto da una gerarchia di oggetti interagenti, raggruppati in classi. La progettazione del sistema viene eseguita secondo il modello di analisi del sistema e l'architettura del sistema proposta. Qui, l'enfasi è sugli oggetti che compongono il sistema piuttosto che sui processi nel sistema.
Object Design
In questa fase viene sviluppato un modello di progettazione basato sia sui modelli sviluppati nella fase di analisi del sistema, sia sull'architettura progettata nella fase di progettazione del sistema. Vengono identificate tutte le classi richieste. Il progettista decide se:
- nuove classi devono essere create da zero,
- qualsiasi classe esistente può essere utilizzata nella sua forma originale, o
- le nuove classi dovrebbero essere ereditate dalle classi esistenti.
Vengono stabilite le associazioni tra le classi identificate e vengono identificate le gerarchie delle classi. Inoltre, lo sviluppatore progetta i dettagli interni delle classi e le loro associazioni, cioè la struttura dei dati per ogni attributo e gli algoritmi per le operazioni.
Implementazione e test orientati agli oggetti
In questa fase, il modello di progettazione sviluppato nella progettazione a oggetti viene tradotto in codice in un linguaggio di programmazione o strumento software appropriato. Vengono creati i database e vengono accertati i requisiti hardware specifici. Una volta che il codice è in forma, viene testato utilizzando tecniche specializzate per identificare e rimuovere gli errori nel codice.