UML: Extension Mechanism Corso IS I - 2002/03 Gianna Reggio Versione 0.0.

Slides:



Advertisements
Presentazioni simili
Programmazione ad oggetti
Advertisements

Calcolo Relazionale.
DFD (Data Flow Diagram)
Interazione Uomo - Macchina
JavaScript 3. Le basi di JavaScript.
Unified Modeling Language
Recupero debito quarto anno Primo incontro
Informatica Recupero debito quarto anno Terzo incontro.
Commenti C#.
Recupero debito quarto anno Primo incontro Esercizi
Lezione 18 MIDI e XML Programmazione MIDI (Prof. Luca A. Ludovico)
Document Type Definition per XML Presentazione 8.1 Informatica Generale (Prof. Luca A. Ludovico)
Structured Query Language (SQL) Presentazione 13.1 Informatica Generale (Prof. Luca A. Ludovico)
PHP.
Specifiche Algebriche
UML: Class Diagram 1 Corso IS I /03
Corso IS I /03 Esame Scritto - Parte generale 10 Giugno 2003 Punteggio massimo totale punti 18; soglia superamento prova 10 Avvertenza Si vuole sempre.
29 febbraio 2008 Progettare tipi di dato astratti.
Le gerarchie di tipi.
Generalità Linguaggio e Macchina Astratta
DOCUMENTAZIONE DI SCHEMI E/R
Il mio nome è Alain Fergnani e nel corso della tesi mi sono occupato della dinamica delle ontologie per il Web Semantico, e in particolare dell’approccio.
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica MOMIS: servizi di wrapping.
Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria di Modena Corso di Laurea in Ingegneria Informatica Integrazione di WordNet Domains.
Fondamenti di Informatica
Cagliari 4 Ottobre 2002 Krenesiel ESPERIENZA e LINEE KRENESIEL Workshop NAME Alessandra Spada
Ontologie per la costruzione di un portale sull'Adobe.
Metodologie per la gestione di conoscenza ontologica Prof. M.T. PAZIENZA a.a
XML Prof. Barbara Pernici Politecnico di Milano. Introduzione a XML.
Analisi dettagliata e design B. Pernici M.G. Fugini AA
Informatica.science.unitn.it Un esempio di architettura basata sulluso di XML e XSL per la pubblicazione di un sito web.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Introduzione a JAVA Anno Accademico 2009/2010.
UML: Class Diagram Corso IS I /03
UML: Esempio “Briscola” Corso IS I /03
Corso IS I /03 Esame Scritto - Parte generale 4 Febbraio 2003 Punteggio massimo totale punti 18; soglia superamento prova 10 Avvertenza Si vuole.
Oggetti e dati primitivi Programmazione Corso di laurea in Informatica.
Approfondimento delle classi
Basi di dati 2002 EER Vogliamo aumentare lespressività degli Entity Model EER: Entity Model Esteso.
Modello E-R Generalizzazioni
Architettura Java/J2EE
Introduzione alla modellazione di sistemi interattivi
Chomsky La grammatica/sintassi è una proprietà della mente Distinta dalla capacità di comunicare E una facoltà autonoma ed innata La comunicazione è solo.
Descrizione Semantica ad Alto Livello di Ambienti Virtuali in X3D
UML: Collaboration diagram Corso IS I /03 Gianna Reggio Versione 1.0.
Programmazione ad oggetti
CORSO Di WEB DESIGN prof. Leonardo Moriello
Diagramma delle Classi
4/21/20151 Metodi formali nel software a.a.2013/2014 Prof.Anna Labella.
Introduzione a Javascript
Tecnologie di InternetDocument Type Definition Dott. Nicola Dragoni Document Type Definition  Document Type Definition (DTD)  Documento XML valido 
Analisi dettagliata e design
Ugo de'Liguoro - Informatica 2 a.a. 03/04 Lez. 7 Tipi di dato e strutture dati Specifica e realizzazione di strutture informative come classi.
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
1 Interpretazione astratta: un approccio sistematico all’analisi statica.
Ingegneria del software Modulo 1 -Introduzione al processo software Unità didattica 3 -Modelli di fase d’analisi Ernesto Damiani Università degli Studi.
Ingegneria del software Modulo 1 -Introduzione al processo software Unità didattica 4 - Progettazione del software Ernesto Damiani Università degli Studi.
Ingegneria del software Modulo 1 -Introduzione al processo software Unità didattica 4 -Progettazione del software Ernesto Damiani Università degli Studi.
UML: Constraints-OCL Corso IS I /03
UML: Introduzione Corso IS I /03 Gianna Reggio Versione 0.0.
Specifiche Algebriche Introduzione Versione 1.0 Gianna Reggio
Ingegneria del software Modulo 1 - Introduzione al processo software Unità didattica 4 - Progettazione del software Ernesto Damiani Università degli Studi.
1 Linguaggi: guardando la semantica §esistono un insieme di concetti semantici e di strutture di implementazione in termini dei quali si descrivono in.
Intelligenza Artificiale Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
4/18/ :18 AM.
Eprogram informatica V anno. Introduzione a PHP Introduzione La diffusione di PHP ha avuto un notevole incremento dalla fine degli anni Novanta a oggi,
Standard e strumenti per lo sviluppo del software Marco Carezzano Andrea Andrenacci (ZEROPIU, Business Partner di Telecom Italia) Milano, 2 febbraio 2005.
1 Lixto tools evaluations for HTML data Integration in Momis Lixto tools evaluations for HTML data Integration in Momis Università degli Studi di Modena.
Introduzione all’Ereditarietà Pietro Palladino. Richiami UML Classe: descrizione di un insieme di oggetti software con caratteristiche simili Definisce.
Introduzione alle Classi e agli Oggetti in Java 1.
Transcript della presentazione:

UML: Extension Mechanism Corso IS I /03 Gianna Reggio Versione 0.0

v. 0.0 Suporto allestensione di UML UML è stato definito per essere estensibile, cioè ha già dei costrutti per definire delle sue versioni specializzate in modo standard (almeno a livello sintattico) –la semantica come sempre a parole meccanismo di base –definire una variante di un model element (cioè uno dei costrutti a livello di sintassi astratta di UML) *es. classifier, operation –per mezzo di tre costrutti *stereotype *tagged value *constraint (implicite che modificano la semantica/significato)

v. 0.0 Tagged Value è una coppia che permette di attaccare informazioni arbitrarie ad ogni model element (Tag, Value) –per esempio *informazioni su autore, data, versione, …. *opzioni per la generazione del codice *…. –linterpretazione di una tag è intenzionalmente al di fuori di UML *deve essere determinata dai tools o da convenzioni rappresentati come { tag1 = val1, …, tagn=valn} tag = nome (stringa) arbitrario

v. 0.0 Stereotype fornisce un modo di classificare (marcare) model elements, così che per certi aspetti si comportino come nuovi model element virtuali datatype sia S uno stereotipo di M –S conserva tutte le caratteristiche di M –S può soddisfare delle constraint addizionali e avere dei nuovi tagged values –S può semplicemente essere usato per definire una differenza nella semantica di M o nel modo duso di M notazione –standard si aggiunge > alla rappresentazione visuale di M –viene fornita una nuova rappresentazione utilizzando una nuova icona o una differente disposizione degli elementi di M

v. 0.0 Esempio datatype –si vuole avere un modo per rappresentare i tipi di dato (valori classificati dal tipo + funzioni per operare su di essi) – > stereotipo di classe *tutte le operazioni devono essere query (constraint statica) *le istanze sono valori e non oggetti, pertanto ˚non esistono due istanze differenti cha hanno gli stessi valori per tutti gli attributi *lo stato di una istanza non può essere modificato *notazione standard Carta seme: String valore: Int ritornaValore(): Int {query} >

v. 0.0 Esempio classi/oggetti attivi (~processi) –oggetti caratterizzati da un proprio thread of control –si vuole avere un modo per rappresentare questi oggetti speciali – > stereotipo di classe *differenza semantica *notazione Torneo ……. ………. > Torneo ……. ………. oppure

v. 0.0 UML profilo (1) variante di UML per –dominio applicativo particolare (WEB systems) –tecnologia particolare (Enterprise Java Beans, Corba) –metodo si sviluppo software particolare (quello che useremo nel corso) –uso particolare (modellazione del Business di unimpresa) –…..

v. 0.0 UML profilo (2) definizione –model element selezionati (quelli che verranno specializzati) –Stereotypes –Tagged Values –Constraints, specializzano la semantica (significato) di un model, ma tale interpretazione ha significato solo in tale profilo –Descrizione (a parole) della semantica usata dal profilo per i vari model element utilizzati –Heavyweight extensions (introduzione di model element completamente nuovi, non varianti di quelli esistenti) –Notation, il profilo può specializzare anche la notazione *es. nuove icone per gli stereotype –Rules (come si usa o cosa si fa con i modelli fatti con il profilo) *concernenti modi per trasformare i modelli in codice *per validare i modelli rispetto alluso supportato dal profilo (es. è vietato usare relazioni ternarie [certo tool, che non le supporta] o la specializzazione multiple [per Java]) *concernenti la presentazione visuale *per supportare luso di una certa metodologia [tutti gli attributi sono privati nel nostro metodo]

v. 0.0 Esempi quello usato dal nostro metodo per requisiti e design per usare EJB ….

v. 0.0 –Notation, il profilo può specializzare anche la notazione –es. nuove icone per gli stereotype –Rules (come si usa) *concernenti modi per trasformare i modelli in codice *per validare i modelli rispetto alluso supportato dal profilo (es. è vietato usare relazioni ternarie [certo tool, che non le supporta] o la specializzazione multiple [per Java]) *concernenti la presentazione visuale *per supportare luso di una certa metodologia [tutti gli attributi sono privati nel nostro metodo]