UML un linguaggio universale per la modellazione del software. Adriano Comai



Documenti analoghi
Introduzione a UML. Iolanda Salinari

UML e (R)UP (an overview)

UML - Unified Modeling Language

Object Oriented Programming

UniRoma2 - Ingegneria del Software 1 1

Strumenti di modellazione. Gabriella Trucco

Introduzione ad UML. Perché modelliamo

Ingegneria del Software UML - Unified Modeling Language

Modellazione dei dati in UML

PROGETTAZIONE DEL SOFTWARE

Object Oriented Software Design

Concetti di base di ingegneria del software

Programmi e Oggetti Software

Introduzione a UML. Adriano Comai. versione 19 marzo Adriano Comai. Introduzione a UML Pag.

Appendice III. Competenza e definizione della competenza

Generazione Automatica di Asserzioni da Modelli di Specifica

Sviluppo di applicazioni internet:

ALLINEARSI: IL DRIVER PER UNA INNOVAZIONE DI SUCCESSO!

Database. Si ringrazia Marco Bertini per le slides

Implementazione di MVC. Gabriele Pellegrinetti

Dalla progettazione concettuale alla modellazione di dominio

Modellazione di sistema

Organizzazione degli archivi

Soluzione dell esercizio del 12 Febbraio 2004

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014

Progettaz. e sviluppo Data Base

La Metodologia adottata nel Corso

Rational Unified Process Introduzione

I.I.S. G. B. Vico - CHIETI

Raccolta dei Requisiti con i Casi D'uso. Corso di Ingegneria del Software Anno Accademico 2012/13

Progettazione orientata agli oggetti Introduzione a UML

Basi di Dati. Programmazione e gestione di sistemi telematici

Organizzazione aziendale Lezione 16 BPMN. Ing. Marco Greco Tel Stanza 1S-28

Project Cycle Management

Programma del Corso per Segretaria d Azienda:

L Integrazione dei Processi di Gestione delle Risorse Umane

Il controllo dei rischi operativi in concreto: profili di criticità e relazione con gli altri rischi aziendali

Indice. pagina 2 di 10

Il servizio di registrazione contabile. che consente di azzerare i tempi di registrazione delle fatture e dei relativi movimenti contabili

Piano di Sviluppo Competenze

Novità 2015 ARE YOU READY FOR ISO 9001:2015?

Il sistema Toyota per le PMI

LA GESTIONE EFFICACE DEI COLLABORATORI

Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica. Ingegneria del Software. La fase di Analisi

CAPITOLO 20 AGGIORNAMENTO DEL CODICE DI STOCCAGGIO

Project Cycle Management La programmazione della fase di progettazione esecutiva. La condivisione dell idea progettuale.

Corso di Amministrazione di Reti A.A. 2002/2003

03. Il Modello Gestionale per Processi

Come archiviare i dati per le scienze sociali

Il modello veneto di Bilancio Sociale Avis

IL RISCHIO D IMPRESA ED IL RISCHIO FINANZIARIO. LA RELAZIONE RISCHIO-RENDIMENTO ED IL COSTO DEL CAPITALE.

SCENARIO. Personas ALICE Lucchin / BENITO Condemi de Felice. All rights reserved.

Organizzazione aziendale Lezione 22 BPMN. Ing. Marco Greco Tel Stanza 1S-28

Valutazione del potenziale

Fasi del ciclo di vita del software (riassunto) Progetto: generalità. Progetto e realizzazione (riassunto)

Progettaz. e sviluppo Data Base

PRESENTAZIONE. Chi è B-Bright

Activity Diagrams. Ing. Orazio Tomarchio

Il concetto di sfera pubblica viene introdotto dal sociologo tedesco Jurgen Habermas

I casi d uso corrispondono ai compiti che l attore (che può essere una persona fisica e non) può svolgere.

L USO DELLA PNL IN AZIENDA: COME, QUANDO E PERCHE

Progetto PI , passo A.1 versione del 14 febbraio 2007

Attività destinata a raccogliere e a catalogare documenti con l'obiettivo di farli conoscere e diffonderli.

Lezione V. Aula Multimediale - sabato 29/03/2008

Diventa fondamentale che si verifichi una vera e propria rivoluzione copernicana, al fine di porre al centro il cliente e la sua piena soddisfazione.

IL MANAGER COACH: MODA O REQUISITO DI EFFICACIA. Nelle organizzazioni la gestione e lo sviluppo dei collaboratori hanno una importanza fondamentale.

Rapporto dal Questionari Insegnanti

Archivio WebQuest I Grafi e le Reti

UNI EN ISO 9001:2008 Sistemi di Gestione per la Qualità: requisiti e guida per l uso

Gestione della politica monetaria: strumenti e obiettivi corso PAS. Mishkin, Eakins, Istituzioni e mercati finanziari, 3/ed.

L uso della Balanced Scorecard nel processo di Business Planning

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni

Attività relative al primo anno

Le strategie di marketing

SCHEDA PRODOTTO PAG. 1 J O B T I M E W F. Variazioni mensili al cartellino presenze. Versione 6.1. JOBTIME Work Flow

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati

La specifica del problema

Ciclo di vita dimensionale

ING SW. Progetto di Ingegneria del Software. e-travel. Requisiti Utente. Specifiche Funzionali del Sistema

ARCHIVI E DATABASE (prof. Ivaldi Giuliano)

Project Planning. Politecnico di Milano. Progetto di Ingegneria del Software novembre Elisabetta Di Nitto Raffaela Mirandola

REALIZZARE UN BUSINESS PLAN

Piano di gestione della qualità

DATABASE. nozioni di base

Soluzione dell esercizio del 2 Febbraio 2004

3D e Realtà Virtuale

Obiettivi dell esercitazione. Requisiti (cont.) Requisiti. Università di Roma La Sapienza A.A Facoltà di Ingegneria Sede di Latina

EXPLOit Content Management Data Base per documenti SGML/XML

GESTIONE AVANZATA DEI MATERIALI

P R O G E T T A Z I O N E E I M P L E M E N T A Z I O N E D E L L E I N T E R F A C C E U T E N T E

Insegnare con il blog. Materiale tratto da:

Ogni azienda ha la necessità di conoscere il proprio sistema dei costi sia per controllare la situazione esistente che per verificare il

1- Corso di IT Strategy

PROMUOVERSI MEDIANTE INTERNET di Riccardo Polesel. 1. Promuovere il vostro business: scrivere e gestire i contenuti online» 15

COME SVILUPPARE UN EFFICACE PIANO DI INTERNET MARKETING

Informatica 3. Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati. Lezione 10 - Modulo 1. Importanza delle strutture dati

Anagrafica. Check-List. Autocomposizione guidata

PROCESSO DI INDICIZZAZIONE SEMANTICA

CAPACITÀ DI PROCESSO (PROCESS CAPABILITY)

SOLUZIONE Web.Orders online

Transcript:

UML un linguaggio universale per la modellazione del software Adriano Comai

2 Finalmente uno standard per l analisi e disegno OO? L'obiettivo è ambizioso. Lo Unified Modeling Language (UML) vuole essere, secondo le intenzioni dei suoi autori, Booch Jacobson e Rumbaugh, "il linguaggio per la creazione di modelli software". Un linguaggio, cioè, "universale per la progettazione (modeling) dei sistemi, nel senso che può esprimere modelli di varia tipologia e creati per obiettivi diversi, proprio come un linguaggio di programmazione o un linguaggio naturale possono essere usati in molti modi diversi". Obiettivo ambizioso. Ma probabilmente realistico. Perché Grady Booch, Ivar Jacobson e Jim Rumbaugh, gli autori dell'unified Modeling Language, sono fra i più quotati metodologi Object Oriented, e il loro sforzo congiunto per la definizione dell'uml ha funzionato come un catalizzatore, attirando i contributi di altri metodologi di primaria importanza come Coad, Yourdon, Odell. Perché l'uml? Perché nel campo delle metodologie di analisi e disegno object oriented la confusione regna ancora sovrana. Qualcuno ne aveva contate più di cinquanta, ciascuna con i propri modelli ed i propri formalismi. Sebbene le più diffuse non superino la decina, non è facile per le aziende intenzionate a muoversi nel settore OO scegliere la più adeguata. La confusione esistente a livello metodologico si ripercuote poi a livello di strumenti CASE per la progettazione object oriented: sebbene l'orientamento prevalente tra i produttori sia quello di supportare notazioni diverse, l'assenza di uno standard riconosciuto rende rischiosa ogni valutazione di investimento in prodotti di questo genere. In questo confuso panorama, le proposte metodologiche avanzate individualmente da Booch, Rumbaugh e Jacobson risultavano già tra le più diffuse, il che costituisce un fattore positivo per le prospettive di accettazione dell'unified Modeling Language. Il "progetto UML" nasce nel 1994, con l'ingresso di Jim Rumbaugh nella società di Grady Booch, la Rational, e si perfeziona con l'acquisizione da parte della Rational, a fine 1995, dell'azienda svedese Objectory, in cui opera Ivar Jacobson. Caratteristiche dell'uml La prima versione dell'uml (0.8), resa pubblica da Booch e Rumbaugh nell'ottobre 1995, portava il titolo di "Unified Method". La versione attuale (0.9), uscita nel luglio 1996, a cui ha contribuito anche Jacobson, porta la nuova denominazione. Perché questo cambiamento? Perché l'uml intende essere, appunto, un linguaggio universale mediante il quale descrivere i diversi modelli prodotti nel corso dello sviluppo software, a prescindere dalle procedure utilizzate per realizzarli. Booch Jacobson e Rumbaugh precisano che definire "un unico processo per tutti gli stili di sviluppo non sembra possibile e neppure desiderabile. [...] Comunque, l'uml può venire utilizzato per esprimere gli output di tutti i diversi processi, cioè i modelli che vengono prodotti". Le fondamenta dell'uml sono costituite da un metamodello, che definisce le caratteristiche e le relazioni esistenti tra le diverse componenti di un progetto software

3 (es. classi, attributi, procedure, moduli,...). Il metamodello costituisce la base per l'implementazione dell'uml da parte dei produttori di strumenti per lo sviluppo (CASE tools, ambienti visuali), e per l'interoperabilità tra i diversi strumenti. L'intenzione degli autori è di produrre una specifica formale del metamodello al momento della sottomissione dell'unified Modeling Language all'omg per la sua approvazione come standard (fine '96 - inizio '97). Sulla base di quanto definito nel metamodello, vengono poi proposti alcuni modelli diagrammatici: Livello LOGICO Livello FISICO Diagramma dei casi d'uso (Use Case Diagram) Diagramma delle classi (Class Diagram) Diagramma di sequenza (Sequence Diagram) Diagramma di collaborazione tra oggetti (Collaboration Diagram) Diagramma di transizione di stato (State Diagram) Diagramma delle componenti software (Component Diagram) Diagramma di allocazione delle componenti (Deployment Diagram) I modelli diagrammatici presentano ovviamente una notazione unificata, frutto di un compromesso tra quelle originarie proposte singolarmente da Booch Jacobson e Rumbaugh, e già adottate dalla maggior parte degli strumenti CASE Object Oriented. In realtà, il progetto dei tre metodologi non limita l'utilizzo dell'uml al solo ambito Object Oriented. Il loro obiettivo era quello di definire un linguaggio di progettazione che fosse in grado di supportare anche linguaggi e componenti non OO, come file e moduli software tradizionali, ed ogni tipo di componente software a livello fisico. Anche in questo caso i risultati non si sono fatti attendere, in quanto Microsoft e Hewlett Packard hanno aderito al "progetto UML", che acquista così una ulteriore capacità di attrazione anche per le realtà, praticamente tutte, non ancora strettamente object oriented. Quale sarà l'impatto dell'uml? Il primo risultato dell'uml, già raggiunto almeno in parte, è la riduzione della confusione nel campo delle metodologie di sviluppo object oriented. E' estremamente probabile che l'uml diventi un vero e proprio standard, visto che l'object Management Group (OMG), un consorzio che raggruppa tutti i produttori di software OO, ha chiesto alla Rational (la società di Booch Jacobson e Rumbaugh) di sottoporre l'uml ad una valutazione mirata a farlo diventare standard OMG. Un secondo risultato prevedibile è un'accelerazione nella diffusione degli strumenti CASE

4 object oriented, come conseguenza dell'emergere di modelli e di una notazione ampiamente accettati come standard. E' la fine dei flow chart? Ma cosa cambierà nel mondo reale delle aziende che producono software? Naturalmente è ancora presto per dirlo. In molte realtà la produzione di software è ancora basata su una definizione delle specifiche di analisi in formato testuale (o addirittura vocale...), e sulla loro immediata implementazione in righe di codice. In altre, il flow chart costituisce da sempre l'unica forma di documentazione. In altre ancora, l'avvento e l'utilizzo dei linguaggi visuali ha fatto pensare che la documentazione del sistema fosse un'attività ormai trascurabile. Ma per tutte le aziende in cui esiste la consapevolezza del fatto che lo sviluppo e la manutenzione del software sono attività complesse, la definizione e la condivisione di modelli formali per le specifiche di analisi e disegno è un requisito preliminare a ogni produzione di codice. Le aziende più attente, che da anni documentano i propri sistemi utilizzando modelli derivati dall'approccio strutturato, erano rimaste un po' disorientate, nel passaggio a tecniche di sviluppo orientate agli oggetti, dalla confusione riguardante le scelte metodologiche e gli aspetti di documentazione. In questi contesti, la standardizzazione portata dall'uml, supportata dai futuri strumenti di sviluppo, costituirà senza dubbio un elemento positivo di razionalizzazione.

Tecnet Dati s.r.l. C.so Svizzera 185 10149 - Torino (TO), Italia Tel.: +39 011 7718090 Fax.: +39 011 7718092 P.I. 05793500017 C.F. 09205650154 www.tecnetdati.com