ICT Professional Services



Disegno Object Oriented con UML


Descrizione

Il disegno è un momento cruciale dello sviluppo di un’applicazione, in cui si porta a pieno compimento la definizione della sua architettura. Nelle pratiche abituali, tuttavia, spesso si passa dalle fasi "alte" dell’analisi direttamente all’implementazione, avendo definito in modo sommario l’architettura e non affrontando con la dovuta attenzione e disciplina la fase di progettazione. Si ha così un impatto fortemente negativo su qualità essenziali del software quali le prestazioni, la manutenibilità, l’efficienza, la portabilità. Inoltre non viene favorito il riutilizzo, non solo del codice ma in senso lato. Il corso illustra inizialmente come si cala la fase di Disegno nei vari tipi di processo di sviluppo, definendone presupposti e risultati; vengono quindi esaminate le tecniche di Disegno ed i principi che guidano la realizzazione delle migliori architetture, attingendo abbondantemente alle "best practices" e ponendo particolare enfasi sui pattern di disegno. In tale ottica va anche visto l'utilizzo della notazione UML (lo Unified Modeling Language: qui viene fatto riferimento alla versione 2.0) e il riferimento all’approccio MDA, Model Driven Architecture, di cui UML è un fondamento. Il corso è completato da una serie di cenni all’implementazione e ai fondamenti di progettazione dell’interfaccia utente.

Destinatari

  • Architetti di sistema
  • Analisti applicativi
  • Analisti programmatori
  • Specialisti di metodi e standard

Prerequisiti

Corso di "Analisi Object Oriented con UML" o conoscenze equivalenti. E’ utile l’esperienza di programmazione con linguaggi OO.

Contenuti

  • Introduzione a UML e processi software;
  • Dall'Analisi al Disegno;
  • Il Disegno in un processo di tipo iterativo/incrementale, basato sull’architettura e sui casi d’uso. Estensione e affinamento in Disegno dei diagrammi UML "ereditati" dall'analisi. Documentare l’architettura applicativa: concetti base dell’approccio Model Driven Architecture (PIM, PSM, ...);
  • Principi per il disegno Object Oriented - Coesione e coupling delle componenti, Ruoli, Responsabilità e Collaborazioni: contratti e deleghe, distribuzione delle responsabilità, Framework e Pattern: concetti fondamentali; come usarli per ottenere economie in fase di progettazione e per favorire il riuso non solo del codice. Pattern fondamentali : MVC, Façade, Publish Subscribe, Proxy, Abstract Factory, GRASP, ecc. Quali usare, quando e come;
  • Disegno dell'applicazione - Disegno dell’architettura applicativa: partizionamento in Sottosistemi, stratificazione dei Sottosistemi, tecniche di interfacciamento e disaccoppiamento. Disegno delle componenti: individuazione delle componenti, definizione delle loro responsabilità e collaborazioni, realizzazione dei diagrammi di disegno (diagrammi di sequenza, delle classi, delle azioni, delle componenti);
  • Linee guida alla implementazione -Problemi applicativi: validazione dell’input, exception handling, accesso a fonti di dati eterogenee. Mapping a un DBMS relazionale: classi vs tabelle, riferimenti all’uso di chiavi artificiali, trigger e stored procedure. Cenni all’Aspect Oriented Programming;
  • Caso studio.

Durata

3 giorni

Questo sito fa uso di cookie anche di terze parti per poterti offrire una migliore esperienza di visita; cliccando su "Accetto" acconsenti all’ uso. Per approfondire clicca su Informativa.