+ All Categories
Home > Documents > 1. UML 2 ed il Processo Unificato - isti.cnr.itpolini/downloads/SE0708/LIdS_1.pdf · 1. UML 2 ed il...

1. UML 2 ed il Processo Unificato - isti.cnr.itpolini/downloads/SE0708/LIdS_1.pdf · 1. UML 2 ed il...

Date post: 16-Sep-2018
Category:
Upload: vanthu
View: 249 times
Download: 3 times
Share this document with a friend
25
1. UML 2 ed il Processo Unificato Andrea Polini Laboratorio di Ingegneria del Software Corso di Laurea in Informatica (Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 1 / 25
Transcript

1. UML 2 ed il Processo Unificato

Andrea Polini

Laboratorio di Ingegneria del SoftwareCorso di Laurea in Informatica

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 1 / 25

Sommario

1 Informazioni Generali

2 Unified Modeling LanguageCostituenti fondamentaliMeccanismi ComuniArchitettura

3 Unified Process

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 2 / 25

Informazioni Generali

Sommario

1 Informazioni Generali

2 Unified Modeling LanguageCostituenti fondamentaliMeccanismi ComuniArchitettura

3 Unified Process

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 3 / 25

Informazioni Generali

Obiettivi Formativi

Al termine del corso il vostro bagaglio di competenze dovrebbeessersi arricchito con:

conoscenza delle problematiche della modellazione del softwareConoscenza del linguaggio di modellazione unificato

Al termine del corso dovreste esser capaci di:Applicare il processo unificato allo sviluppo di sistemi softwarecomplessiutilizzare lo Unified Modeling Language per specificare e progettarei diversi elementi di un sistema software complessoutilizzare strumenti specifici di supporto allo sviluppoper di sistemisoftwaresviluppare applicazioni web attraverso l’uso di ContentManagement Systems (CMS)

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 4 / 25

Informazioni Generali

Materiale di studio

Testo di riferimento:

Jim Arlow, Ila NeustadtUML2 e Unified Process - analisi e progettazione ObjectOriented, 2a Ed. ItalianaAddison-Wesley, 2006.

Testi di consultazione:

Craig LarmanApplicare UML ed i Pattern - Analisi e progettazione orientataagli oggetti, 3a Ed. ItalianaPrentice Hall, 2005.

Materiale fornito dal docente

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 5 / 25

Informazioni Generali

UML e UPcosa sono? a cosa servono? come sono interrelati?

UML - Unified Modeling Language: linguaggio di modellazionegrafico di sistemi software

Generale non è esclusivamente un linguaggio per definireapplicazioni software OOi diagrammi sono generalmente facilmente comprensibili agli utenticon un minimo di conoscenze nel campo

UP - Unified Process: specifica un processo di sviluppo delsoftware

indica le attività che devono essere eseguite, i manufatti etc etc

UP descrive attività e “raccomanda” uso di UML. Vivono bene insimbiosi ma non necessariamente uno implica l’altro.

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 6 / 25

Informazioni Generali

Un po’ di storia

. . . 1994: molti linguaggi di modellazione e molta confusione nelmondo dei metodi OO. Esistevano comunque alcuni primi dellaclasse - Booch e Rumbaugh per i linguaggi di modellazione eJacobson nelle metologie1994: primo tentativo di unificazione - il linguaggio Fusion1994: Booch e Rumbaugh si uniscono nella Rational Corporationdando vita a quello che chiamano UML1996: Object Management Group (OMG) lancia una primaproposta di standardizzazione di UML1997: OMG approva lo standard UML 1.02000: UML 1.4 - linguaggi di azione2006: UML 2.02006 . . . : Model Driven Architecture (MDA)

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 7 / 25

Informazioni Generali

Model Driven Architecture

Nel 2003 OMG parte iniziativa per MDA: obiettivo derivare codiceeseguibile direttamente dai modelli

Idee generali:CIM (Computer Independent Model) e PIM (Platform IndependentModel) specifiche del software che non contengono nessunriferimento a piattaforme realiPSM (Platform Specific Model) i modelli del punto precedentevengono trasformati per contenere informazioni dipendenti dallapiattaforma su cui il software verrà “deployed”Ogni volta che volete far girare su nuova piattaforma rigeneratePSM utilizzando opportuno trasformatore

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 8 / 25

Informazioni Generali

MDA. . . continua

Nella visione dello MDA è possibile derivare il 100% del codicesoltanto agento sui modelli. Esistono tool che generano tra il 70% ed il90% del codice.Per i curiosi/volenterosi esistono tool che permettono di cominciare agiocare con MDA:

AndroMDA (www.andromda.org)Eclipse Modeling Framework (www.eclipse.org/emf)

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 9 / 25

Unified Modeling Language

Sommario

1 Informazioni Generali

2 Unified Modeling LanguageCostituenti fondamentaliMeccanismi ComuniArchitettura

3 Unified Process

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 10 / 25

Unified Modeling Language

UML ed oggetti

Principio base di UML è che un sistema software possa essere vistocome un insieme di oggetti che collaborano.

Vengono considerati due aspetti fondamentali del sistema:Struttura statica: oggetti necessari e relazioni tra questiComportamento dinamico: come gli oggetti collaborano perraggiungere lo scopo

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 11 / 25

Unified Modeling Language

UML e la sua struttura

Costituenti Fondamentali: entità, relazioni, diagrammiMeccanismi comuni: techniche per personalizzare l’uso dell’UMLe raggiungere obiettivi specificiArchitettura: come UML descrive l’architettura di un sistema

In effetti l’UML in quanto linguaggio può essere modellato e progettatoutilizzando lo UML stesso! (Meta-Modello)

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 12 / 25

Unified Modeling Language Costituenti fondamentali

Costituenti FondamentaliEntità

Le entità costituiscono gli elementi di modellazione:entità strutturalientità comportamentalientità di raggruppamentoentità informative

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 13 / 25

Unified Modeling Language Costituenti fondamentali

Costituenti FondamentaliRelazioni

Relazione mostrano come due entità (o più) sono correlate. Dunque larelazione stabilisce un legame semantico tra diverse entità.

Esempi . . .

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 14 / 25

Unified Modeling Language Costituenti fondamentali

Costituenti FondamentaliDiagrammi

Forniscono viste su apsetti particolari del sistema che stateprogettando.

Attenzione il singolo diagramma non è il modello del sistema!!

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 15 / 25

Unified Modeling Language Costituenti fondamentali

Diagrammi UML

UML definisce tredici differenti tipi di diagramma:

Struttura di un diagramma UML (tipo, nome, parametri) . . .

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 16 / 25

Unified Modeling Language Meccanismi Comuni

Meccanismi Comuni

Specificheornamentidistinzioni comunimeccanismi di estendibilità

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 17 / 25

Unified Modeling Language Meccanismi Comuni

Meccanismi Comunispecifiche

Diagrammi due differenti dimensioni:grafica: strato sintatticotestuale: semantica

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 18 / 25

Unified Modeling Language Meccanismi Comuni

Meccanismi Comuniornamenti

Permettono di arricchire la vista di un elemento aggiungendoinformazioni presenti nel modello.

Differenti diagrammi prevedono differenti ornamenti (class diagram)

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 19 / 25

Unified Modeling Language Meccanismi Comuni

Meccanismi Comunidistinzioni comuni

Classificatore/IstanzaInterfaccia/Implementazione

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 20 / 25

Unified Modeling Language Meccanismi Comuni

Meccanismi ComuniClassificatori

AttoreClasseComponenteInterfacciaNodoSegnaleCaso d’uso

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 21 / 25

Unified Modeling Language Meccanismi Comuni

Meccanismi Comunimeccanismi di estendibilità

vincolivalori etichettatistereotipiprofili

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 22 / 25

Unified Modeling Language Architettura

Il modello “4+1 architectural view”

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 23 / 25

Unified Process

Sommario

1 Informazioni Generali

2 Unified Modeling LanguageCostituenti fondamentaliMeccanismi ComuniArchitettura

3 Unified Process

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 24 / 25

Unified Process

Il Processo Unificato

Caratteristiche principali:Processo Iterativo ed IncrementaleGuidato dai Casi d’usoè incentrato sull’architettura

(Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 25 / 25


Recommended