Unified Modeling Language -Index -

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Unified Modeling Language -Index -"

Transcript

1 Unified Modeling Language -Index - Henry Muccini Università degli Studi dell'aquila Engineering IgTechnology Imola Informatica Maggioli Informatica Micron Technology Neta Nous Informatica ObjectWay SED TechnoLabs Taiprora Master in Web Technology IV Edizione 2007/08 Dipartimento di Informatica Università degli Studi dell Aquila

2 Copyright Notice» Il materiale riportato in queste slide puo essere riutilizzato, parziale o totalmente, a patto che le fonti e gli autori vengano citati Henry Muccini 2

3 Index 1/2: UML for OO systems» Index» Best Practices e Overview su UML: > Cos e > Quando e perche nasce» Introduzione alle Web Application» Use Case diagram» Class diagram» Sequence diagram» State diagram» Tools» Esempi» Bibliografia 3

4 Index 2/2: UML-Web» Design Decisions» Uml & Web: Approccio WAE: Conallen» Uml & Web: Applicazione Approccio WAE» Uml & Web: Approccio UWE: Koch et al.» Applicazione Approccio UWE» Uml & Web: Approccio WebML 4

5 Other» UML and Software Architecture» UML and Data Modeling» UML and Security 5

6 Pianificazione Master 6

7 Pianificazione Lezioni L01:Overview e Use Case Diagram L02: Class Diagram L03: Sequence e State Diagram L04: Design Decisions L05: Esempio da discutere in classe L06: WAE L07: WAE L08: UWE L09: UWE L10: Revisione Progetto L11: WebML L12: Revisione Progetto 7

8 Pianificazione» Lezione 1: > Identificazione esigenze e skill dei discenti > Presentazione 01.1: Indice > Presentazione 01.2: Best Practices e Overview su UML > Presentazione 01.3: Introduzione alle Applicazioni Web > Presentazione 01.4: Use Case Diagram > Esercitazione da fare a casa (IntelliHome) - Da discutere durante la Lezione 5 Venerdi 19 Ottobre Mattina» Lezione 2: > Considerazioni su Lezione precedente > Presentazione 02: Class Diagram > Acquisizione di familiarità con il Tool > Esercitazione da fare a casa (IntelliHome) - Da discutere durante la Lezione 5 Giovedi 25 Ottobre Pomeriggio 8

9 Pianificazione Venerdi 26 Ottobre Mattina» Lezione 3: > Considerazioni su Lezione precedente > Presentazione 03.1: Sequence Diagram > Presentazione 03.2: State Diagram > Acquisizione di familiarità con il Tool > Esercitazione da fare a casa (IntelliHome) - Da discutere durante la Lezione 5 9

10 Pianificazione Sabato 27 Ottobre Pomeriggio» Lezione 4: > Considerazioni su Lezione precedente > Presentazione 04: Design Decision > Esercitazione da fare a casa (IntelliHome) - Da discutere durante la Lezione 5 > Studio capitoli 1-3 del libro - Moran and Carroll Eds. (1996), Design Rationale (Lawrence Erlbaum Associates) 10

11 Pianificazione Venerdi 09 Novembre Pomeriggio» Lezione 5: > Considerazioni su Lezione precedente > Controllo esercitazione fatta a casa - UML Modeling - Design Decisions > Presentazione 05.1: Tools > Presentazione 05.2: CaseStudy(E-commerce) > Presentazione 05.3: Bibliografia 11

12 Pianificazione Sabato 10 Novembre Mattina» Lezione 6: > Considerazioni su Lezione precedente > Considerazioni su Lezione precedente > Presentazione 06: Approccio WAE Conallen - Parte 1 > Case Study > Tool 12

13 Pianificazione Giovedi 15 Novembre Pomeriggio» Lezione 7: > Considerazioni su Lezione precedente > Considerazioni su Lezione precedente > Presentazione 07: Approccio WAE Conallen - Parte 2 > Case Study > Tool 13

14 Pianificazione» Lezione 8 e Lezione 9: > Considerazioni su Lezione precedente > Presentazione 08 e 09: Approccio UWE > Case Study > Tool Venerdi 16 Novembre Mattina Sabato 17 Novembre Pomeriggio 14

15 Pianificazione Giovedi 22 Novembre Pomeriggio» Lezione 10: > Considerazioni su Lezione precedente > Revisione di Progetto 15

16 Pianificazione Giovedi 23 Novembre Pomeriggio» Lezione 11: > Considerazioni su Lezione precedente > Presentazione 11: WebML > Case Study > Tool 16

17 Pianificazione Sabato 24 Novembre Mattina» Lezione 12: > Considerazioni su Lezione precedente > Revisione di Progetto 17

18 Gestione del Corso» Metodo di insegnamento: > Slide, lavagna, interazione diretta, uso di PC» Piu domande fate, piu impariamo insieme > Se non mi rendo conto che non capite, non vi posso aiutare!» Esempi: > Diversi esempi d uso verranno proposti» Esercitazioni: > Da verificare a lezione 18

19 Progetti» 1 Esercitazione: > UML modeling (senza voto) - Gruppi da 2 - Sistema: Intelligent Home - Consegna: - Discussione: prima della lezione 5»1 Progetto con voto: > Web Modeling con WAE: - Gruppi Internazionali e Locali - Gruppi (in totale) da 4 -Sistema: Intelligent Home - Consegna: - Dicembre

20 Altro» Mailing list > > Da creare subito» Permesso di entrata per il Sabato > Vostri nomi e cognomi» Questionario elettronico > Per controllare i vostri skill» Sito: > Troverete gia : questionario, sistema IntelliHome, Design Decisions 20

21 Tempistica» Deadlines: > 24 Ottobre: questionari e mailing lists > 25 Ottobre: use case diagram dell IntelliHome > 27 ottobre: lettura dei tre capitoli su design decision > 05 novembre: formazione gruppi: - Gruppi locali - Gruppi internazionali > 09 novembre: UML dell IntelliHome > Consegna progetti - 21 Dicembre: internazionali - 28 Gennaio: locali 21

22 Progetti» Dovrete consegnare: > UML WAE dell IntelliSystem > Design Decision > Communications log > Consistency log > Personal Journal > Controllate: - General Project Guidelines.zip che riassume i vari documenti da consegnare ed i ruoli - Roles.zip che spiega i vari ruoli - Documents.zip che spiega i vari documenti da consegnare - TemplateForTheDesignSpace.zip che fornisce il template per il Design Space 22

23 Unified Modeling Language -Best Practice- Henry Muccini Università degli Studi dell'aquila Engineering IgTechnology Imola Informatica Maggioli Informatica Micron Technology Neta Nous Informatica ObjectWay SED TechnoLabs Taiprora Master in Web Technology IV Edizione 2007/08 Dipartimento di Informatica Università degli Studi dell Aquila

24 Copyright Notice» Il materiale riportato in queste slide puo essere riutilizzato, parziale o totalmente, a patto che le fonti e gli autori vengano citati Henry Muccini 2

25 Agenda» Problemi Attuali» Modellazione» Diagrammi UML: overview» Caratteristiche di UML 3

26 Situazione Sviluppo SW» Negli USA ogni anno si spendono circa $ milioni sullo sviluppo di applicazioni IT» Costo medio > $ per aziende grandi > $ per medie aziende > $ per piccole aziende» 31.1% dei progetti cancellati prima che finiscano» 52.7% dei progetti costano il 189% delle previsioni iniziali» Perdita di costi approssimativamente 3 bilioni di dollari Fonte Standish Group,

27 Piu recentemente» NIST (National Institute of Standards and Technology) study in 2002 [NIST], > software errors cost the U.S. economy $59.5 billion every year.» Standish Chaos report [Standish] > a clear statement of requirements is one of the three main reasons that lead to project success, as well as incomplete requirements are one of the main reason of projects deletion. [NIST] The economic impacts of inadequate infrastructure for software testing. In NIST Planning Report affairs/releases/n02-10.htm. [Standish] The standish group report: Chaos

28 What do they have in common?» Ariane 5» X-ray machine» Denver Airport» Air Traffic Control» Word 3.0 for MAC» NSA» First launch of space shuttle» Airbus 320» Audi 5000» Mariner 1 launch» AT&T telephone network They All Failed! [Fatal Defect, Ivars Peterson, 1995] $85 Billion in lost productivity due to faulty software last year 6

29 Aeroporto di Denver» Grande due volte Manhattan» Software > 35 km di rotaie per 4000 tele-carrelli > circa 100 calcolatori, 400 ricevitori, 5000 fotocellule > costo software: 193 milioni di dollari» Ritardo 9 mesi nell apertura dell aeroporto dovuto al malfunzionamento del software per lo smistamento automatico dei bagagli» Perdite di oltre 1/2 milione di dollari al giorno News a Giugno

30 Cause di fallimento» Gestione non disciplinata dei requisiti» Comunicazione ambigua ed imprecisa» Architetture instabili» Complessità ingestibile» Incoerenze tra requisiti, progettazione e implementazione» Test insufficienti 8

31 Soluzione: Best practice Utilizzo dell Ingegneria del Software, per: 1. Sviluppare il SW in modo iterativo 2. Gestire i requisiti 3. Utilizzare architetture basate su componenti 4. Modellare il software in modo visuale 5. Verificare la qualità del SW 6. Controllare le modifiche apportate al SW UML contribuisce in tutte queste aree 9

32 Risultati sperati Risparmio di 17,2 milioni di dollari Aumento % della produttivita Costo delle correzioni (% del costo totale) La Raytheon ha risparmiato 17,2 milioni di dollari e raddoppiato la produttivita utilizzando procedimenti rigorosi

33 Introduzione all UML» Introduzione a UML > Modelli > Cosa è > Obiettivi iniziali > Caratteristiche > Un po di storia» Elementi di UML (cenni) 11

34 UML: Cosa è?» Acronimo Unified Modeling Language > Language: linguaggio > Unified: standard, modello unificato > Modeling: per la modellazione» Linguaggio per > Visualizzare > Specificare > Costruire > Documentare gli elaborati di un sistema software 12

35 Modelli» Obiettivo non è costruire documenti ma SW che soddisfi le richieste dell utente con tempi e modi prevedibili» Modelli aiutano a costruire del buon SW» Modellazione tecnica di ingegneria provata e accettata > Modelli matematici per previsioni > Modelli per costruire macchine, automobili 13

36 Modelli» Cosa è > Un modello è una semplificazione della realtà» Perché > Si costruiscono modelli per meglio comprendere il sistema che si sta sviluppando 14

37 Modelli nella Metereologia 15

38 Modeling a bridge 16

39 Hardware Modeling 17

40 Modelli» Scopi > Documentano le decisioni prese - Aiutano a visualizzare un sistema così com è e così come lo vogliamo - Permettono di specificare la struttura o il comportamento di un sistema - Danno un template che guida alla costruzione di un sistema > Possono essere usati per analisi 18

41 Esempi» Documentazione: > Invece di avere 500 pagine di documenti, abbiamo i modelli (SOLO quelli che servono)» Disambiguare le specifiche: > Le propedeudicita sono state eliminate - Ma l esame iniziale e una propedeudicita? - Ma tutte le propedeudicita sono state eliminate, o solo quelle relative a certi corsi? - 19

42 Analizzare» Basti pensare ai modelli di ingegneria civile, ai modelli di Gaudi 20

43 Principi di modellazione» La scelta di quale modello utilizzare ha una profonda influenza su come un problema è attaccato e risolto» Ogni modello può essere espresso a diversi livelli di precisione» I migliori modelli sono connessi alla realtà» Un solo modello non è sufficiente. Vari piccoli modelli indipendenti 21

44 Diagrammi UML: overview 22

45 Tipi di diagrammi» Diagrammi statici > Rappresentano la struttura base del sistema oggetto di realizzazione» Diagrammi dinamici > Enfatizzano il comportamento del sistema 23

46 24

47 Modello statico» Costruisce e documenta l aspetto statico di un sistema» Riflette la base, lo scheletro di un sistema SW» Crea una rappresentazione degli elementi del dominio del problema» Diagrammi statici in UML > Use-case diagrams > Class diagrams > Object diagrams > Component e Deployment diagrams 25

48 Modello Dinamico» Creare diagrammi che mostrano il comportamento di un sistema» Diagrammi dinamici in UML > Interaction diagrams - Sequence diagrams - Collaboration diagrams > State-chart diagrams > Activity diagrams 26

49 Altri elementi in UML» Package: meccanismo general-purpose per organizzare gli elementi in gruppi» Commenti (note) in UML» Meccanismi di estensione > Stereotipi: permette di estendere l UML > Tagged value: estende le proprietà di un elemento in UML > Constraint: estende la semantica di un elemento in UML 27

50 Modelli Statici 28

51 Use-case diagram Perform card tra nsactio n Custo mer Retail institu tion Process customer bill Reconcile transaction Individual Customer Corporate Customer Sponsoring financial institution Manage customer account 29

52 Class diagram 30

53 Object diagram» Mostrano un insieme di oggetti e le loro relazioni» Rappresentano un fotografia statica delle cose trovate nel class diagram» Vengono utilizzati qualora il class diagram è complesso e uno scenario semplifica la comprensione 31

54 Component diagram 32

55 Deployment diagram 33

56 Modelli Dinamici 34

57 Sequence diagram 35

58 Communication diagram 36

59 State-chart diagram 37

60 Activity diagram 38

61 Caratteristiche di UML 39

62 Caratteristiche» E un linguaggio di modellazione e non un processo, quindi può essere utilizzato in diversi processi > Un processo buono in un contesto, può essere un disastro in un altro contesto > La selezione di un processo dipende fortemente dal dominio del problema 40

63 Caratteristiche (1/4) Linguaggio di modellazione grafica che permette semplicità d uso ed elevata espressività semantica Linguaggio grafico Diagrammi Ogni simbolo ha una sua semantica ben definita 41

64 Caratteristiche cognome nome Id_ut chiave-pubblica sesso chiave-pub-restart residenza UTENTE 1,1 indirizzo orario-okfunz data-nascita importo 1,1 STIPULA 1,n stato-sociale intervallo-tempo-okfunz professione 1,n CONTRATTO data scadenza tipo-contratto Id_pr PROVIDER chiave-pubblica cod-operatore chiave-pub-restart COLLEGATO 1,n Ip_rt Router Master 0,n tipo PREVEDE chiave-pubblica chiave-pub-restart ROUTER localizzazione 1,n CHIAMA orario-okfunz 0,n 1,1 ATTIVA CONNESSO 1,(1) 1,n 1,n 0,n SERVIZIO tipo-servizio denominazione 1,n chiave-pubblica chiave-pub-restart Id-cs numero-telefono 1,n CENTRO SERVIZI tipologia 1,n localizzazione chiave-pub-restart chiave-pubblica Ip-sv SERVER CHIAMA 42 1,n

65 Caratteristiche UTENTE indirizzo 1,1 43

66 Caratteristiche residenza sesso indirizzo UTENTE data-nascita 1,1 STIPULA stato-sociale professione residenza Problema Simboli Standard sesso indirizzo data-nascita utente stipula stato-sociale professione 44

67 Caratteristiche residenza sesso indirizzo UTENTE data-nascita 1,1 STIPULA stato-sociale professione Problema Semantico Cosa indica la notazione 1,1? Cosa indica il simbolo romboidale?... 45

68 Caratteristiche residenza sesso indirizzo data-nascita UTENTE 1,1 STIPULA Problema stato-sociale professione Composizione Notazione 1,1 UTENTE STIPULA 46

69 Caratteristiche (2/4)» Meccanismi di estensibilita e specializzazione» Poter comunque introdurre concetti nuovi» Indipendenza da linguaggi di programmazione particolari» E un linguaggio di progettazione non di programmazione 47

70 Caratteristiche (3/4)» Linguaggio standard, risultato di un lavoro di collaborazione fra diversi team: > Incoraggiamento dello sviluppo del mercato dei tools per sistemi OO > Riuso» Adeguatezza nella rappresentazione di sistemi reali 48

71 Caratteristiche (4/4)» Per gestire e controllare la complessita del sistema > Differenti viste del sistema - Diagrammi differenti per Statica, Dinamica, Deployment, > Differenti livelli di rappresentazione - Nella fase dei Requisiti e per il Design 49

72 Storia» Un po di storia > Anni 70 Approccio Strutturato > Anni 80 Information Engineering > Anni 90 Approccio Object-Oriented : da 10 a 50 linguaggi di modellazione (guerra dei metodi)» Metà degli anni 90: Booch 93, OOSE e OMT-2 iniziano a prevalere sulle altre tecniche > OOSE è un sistema per l analisi dei requisiti (Use-Case) > OMT-2 orientato all analisi di sistemi data-intensive > Booch 93 utile nella fase di disegno e di costruzione del sistema SW 50

73 Storia» Grady Booch, James Rumbaugh e Ivar Jacobson furono spinti a creare un linguaggio di modellazione unificato per le seguenti motivazioni» Gennaio 1997: sottoposta all OMG la standardizzazione di UML 1.0» Versione attuale UML

74 OMG» Object Management Group (OMG) è un organizzazione internazionale con l intento di stabilire delle linee guida per le industrie al fine di fornire un framework comune per lo sviluppo di applicazioni» Composto da oltre 800 membri, fra sviluppatori, utenti e vendors» Fondato nel 1989» Promuove la teoria e la pratica di tecnologie Object-oriented» 52

75 UML & WEb -Web Applications - Henry Muccini Università degli Studi dell'aquila Engineering IgTechnology Imola Informatica Maggioli Informatica Micron Technology Neta Nous Informatica ObjectWay SED TechnoLabs Taiprora Master in Web Technology IV Edizione 2007/08 Dipartimento di Informatica Università degli Studi dell Aquila

76 Copyright Notice» Il materiale riportato in queste slide puo essere riutilizzato, parziale o totalmente, a patto che le fonti e gli autori vengano citati Henry Muccini 2

77 Agenda» Breve storia del Web» Introduzione ad Applicazioni Web e Glossario dei termini» Architettura di una Applicazione Web» Perche modellare una applicazione Web 3

78 Prima di cominciare 4

79 Storia di Internet in pillole» 1965: L'ARPA dà inizio di un progetto > comunicazione e lo scambio di risorse tra i computer dei vari laboratori universitari finanziati dall'agenzia. > Stimolare e finanziare la ricerca di base in settori che avrebbero potuto avere una ricaduta militare» 1969: Rete Arpanet in funzione 5

80 Storia di Internet in pillole» 1970: Protocollo FTP» 1972: Ray Tomlinson inventa la posta elettronica» 1974: nascita di TCP/IP» 1980: nasce il PC» 1988: nasce la chat di IRC» : > Posta elettronica, mailing list, newsletter, newsgroup, chat» 1989: nasce il WWW» : Netscape ed IE» 1999: file sharing in P2P 6

81 Internet: concetto di Rete» Reti tradizionali > I tubi del gas possono trasportare soltanto del gas > I cavi dell'enel possono trasportare soltanto l'energia elettrica > La rete idrica non può che trasportare dell'acqua > La rete telefonica trasporta la voce» La rete internet trasporta: > messaggi di posta elettronica, pagine Web > informazioni da agenzie di stampa > brani musicali, fotografie digitali > prenotazioni, acquisti, pagamenti > richieste a motori di ricerca e relative risposte 7

82 Internet oggi» Terra: oltre 665 milioni di utenti - [fonte UIT, ottobre 2003]» Italia: 23 milioni di utenti - (fonte Associazione Italiana Editori, Rapporto 2005 sull'editoria digitale [www.aie.it])» Un milione di domini ".it" (News del CNR, gennaio 2005) 8

83 Servizi Internet» Siti Web: > Informazioni > News, Newsletter > Chat > Forum > Mailing list > Immagini, Icone, > Calendario degli eventi > Sondaggi > Domande e Risposte > Filmati ed Audio > PDA» Posta Elettronica» Chat e VoIP» Scrittura Condivisa e Remota 9

84 Vostre conoscenze sul mondo Web» Html» Object Oriented» Java» > Altro?» Domanda: ma il Web e solo Html? > Contenuti dinamici > Operazioni complesse, grandi quantita di dati, cambiamenti frequenti, 10

85 Sito Web 11

86 Siti Web Richiesta Browser Documento Web server File system Pagine HTML statiche 12

87 Limiti» Nessuna adattabilita : > Immaginiamo di non usare Templates» Difficolta nella Manutenzione: > Assumiamo di dover cambiare dei dati sulla mia pagina web > Perche e cosi difficile?» Discussione sui sistemi Web complessi reali > Quali siti visitate? > Quali servizi utilizzate? > Sareste in grado di realizzarli in Html base? 13

88 Esempio di Applicazione Web 14

89 L Applicazione ha al suo interno» Tecnologie Web > Grafica > Servizi > Database» Contenuti > Almeno 15 persone che lavorano full-time sui contenuti - 15

90 Grafica 16

91 Servizi» Meteo» SMS» Sondaggi» Ricerche» Forum» 17

92 Dati 18

93 Applicazioni Web Browser Richiesta Web server Application server Documento Pagine HTML Base di dati 19

94 Applicazione Web» Applicazione Web > Definizioni: - Applicazione scritta per operare su Internet - Estenzione dinamica ad un Web server - Un programma che prende in input dei dati dal richiamo di un link (GET) o dalla sottomissione di una form HTML (POST) e restituisce come output un documento HTML - A software program that uses HTTP for its core communication protocol and delivers Web-based information to the user in the HTML language. Also called a Web-based application (Microsoft). > Include applicazioni realizzate con varie tecnologie - piattaforma J2EE - CGI o Perl, ASP, JSP, JavaScript, 20

95 Web Application» Web site Web application» Web application = > web site con business logic > client che invia input che vengono eseguiti dall esecuzione di un modulo» Presenza di un Application Server che permette di gestire business logic» Chi esegue tale computazione??? 21

96 Architettura minimale: Client-Server 22

97 Limiti dell Approccio C/S» Ben presto ci si accorge che il modello architetturale C/S e inadatto ad applicazione di tipo Web» Nel modello C/S, l interfaccia utente ètotalmente implementata sul client, il database management è totalmente allocato sul server mentre il process management èin un qualche modo suddiviso tra client e server!» Cosa accade se vogliamo toccare la grafica senza modificare la logica (o viceversa)? > Tutto e mischiato e non sappiamo come muoverci 23

98 Soluzione: Tre livelli concettuali» Livello Presentazione: > si occupa di ricevere le GET e le POST dal server, per ottenere l input del programma > costruisce i documenti HTML che costituiscono l output del programma» Livello Logico: > calcola l output a partire dall input e dai dati memorizzati nel terzo livello > definisce la funzione del programma» Livello Dati: > costituito tipicamente da un database, mette a disposizione dell applicazione un supporto per memorizzare le informazioni 24

99 25

100 Vantaggi» Maggiore scalabililtà e modificabilità, dal momento che, cambiando la business logic, non si devono modificare tutti i clients» Clients leggeri, che forniscono soltanto funzionalità per la rappresentazione di dati e l interazione dell utente con il sistema» Possibilità di implementare logiche aggiuntive, estremamente interessanti 26

101 Perche modellare Applicazioni Web?» Browser» Protocolli (HTTP, )» Pagine Web (HTML, )» Web server (Apache, )» Programmi server» Application server» Data Base» 27

102 Unified Modeling Language UML2.0 -Use Case Diagrams - Henry Muccini Università degli Studi dell'aquila Engineering IgTechnology Imola Informatica Maggioli Informatica Micron Technology Neta Nous Informatica ObjectWay SED TechnoLabs Taiprora Master in Web Technology IV Edizione 2007/08 Dipartimento di Informatica Università degli Studi dell Aquila

103 Copyright Notice» Il materiale riportato in queste slide puo essere riutilizzato, parziale o totalmente, a patto che le fonti e gli autori vengano citati Henry Muccini 2

104 Sommario» Use Case Diagram > Attore > Use Case > Attore e Use Case > Relazione tra attori (generalizzazione) > Relazioni tra use case 3

105 Use Case Diagram» Specifica le funzionalita del sistema > Use Case» Specifica gli attori umani o automatici che utilizzano il sistema (e le sue funzionalita ) > Attori» Evidenzia come le funzionalità del sistema vengono messe a disposizione degli utilizzatori del sistema > Use Case Diagram = Use Case, attori, e relazioni tra loro» Catturano il comportamento di un sistema che si sta sviluppando, senza specificare come il sistema lo implementerà» Costituiscono il contratto tra il committente e l implementatore del sistema 4

106 Vantaggi» Strumento facilmente comprensibile dagli utenti e quindi utilizzati per comunicare ed ottenere la validazione dei requisiti» Permettono di definire chiaramente i confini del sistema ed evidenziarne i vari attori (umani e non)» Esprimono il comportamento del sistema, evidenziando eventuali incoerenze e lacune nella fase di analisi dei requisiti» Forniscono un ottima documentazione 5

107 Sistema» Prima di iniziare a modellare le funzionalità del sistema è necessario determinare i confini del sistema stesso» E necessario stabile i confini in modo tale che non si rischia di modellare entità che non fanno parte del sistema» Graficamente è rappresentato come un rettangolo che contiene tutti gli use case del sistema» E opzionale e viene fatto raramente 6

108 Sistema UML2.x: Questo box non rappresenta per forza un package. Puo rappresentare un qualsiasi modo di collezionare Use Cases 7

109 Attore» Insieme coerente di ruoli che un utente di un caso d uso (funzionalità) recita quando interagisce con esso» Non necessariamente persona fisica, può essere anche un altro sistema» E un entità esterna al sistema oggetto di modellazione» Rappresentato mediante un omino stilizzato (stick man) 8

110 Attore UML2.x: Icone specifiche possono essere introdotte per non-human actors Studente Universitario Legacy System Cliente Amministratore Billing System 9

111 Attore» Attori comunicano con il sistema inviando o ricevendo messaggi» Due tipi > Primari: utilizzano le funzioni proprie del sistema; sono detti attivi > Secondari: fruiscono di informazioni o notifiche generate da use case; sono detti passivi» Attore può essere attivo in uno use case e passivo in un altro 10

112 Use Case» Descrizione di un insieme di sequenze di azioni che un sistema esegue per ottenere un risultato osservabile di valore per un attore» Sequenza di azioni che l entità esegue interagendo con il relativo attore che sono necessarie per erogare un certo servizio» Rappresentano quindi i requisiti funzionali del sistema 11

113 Use Case» Graficamente è rappresentato mediante una ellisse» Ha un nome che identifica la funzionalità > Può essere semplice o con path (se appartiene ad un package) > Generalmente i nomi sono frasi brevi prese dal vocabolario del sistema che si sta modellando» Ha una breve descrizione che descrive il ruolo e lo scopo dello use case 12

114 Use Case Validate user Place Order Sensors::Calibrate location 13

115 Use Case» Descrive cosa un sistema fa (le sue funzionalità) ma non come, cioè la sequenza di azioni eseguita dal sistema per realizzare una determinata funzionalità» E necessario descrivere un flusso di eventi che modella il comportamento dello use case» Flusso di eventi può essere descritto > Formato testuale: generalmente rappresentato tramite pseudo-codice (cioè testo strutturato) > Formalmente: mediante activity oppure tramite sequence (generalmente vengono utilizzati successivamente alla descrizione testuale) 14

116 Use Case» Flusso di eventi è composto > Flusso principale (basic flow o happy path) Descrive quello che accade il più delle volte quando viene eseguito lo use case > Flussi alternativi Generalmente descrivono i flussi eccezionali (cioè che gestiscono situazioni di errori) oppure flussi che si verificano raramente. Sono utilizzati anche per organizzare use case complessi 15

117 Use Case» Pre-condizioni > Definiscono lo stato in cui si deve trovare il sistema prima che inizi lo use case > Possono essere descritte in forma testuale oppure formale (es. O.C.L.)» Post-condizioni > Definiscono una lista di possibili stati in cui si deve trovare il sistema dopo che è terminato lo use case > Possono essere descritte in forma testuale oppure formale (es. O.C.L.) 16

118 Esempio UML2.0: Notazione alternativa per Use Cases Studente Registrazione Corsi Catalogo Corsi 17

119 Bacheca Virtuale: funzionalita analizzate dai gruppi > Il sistema deve permettere di: - Anagrafica messaggi: - Inserire, modiicare, cancellare e leggere messaggi - Anonimato - Identificare categorie di messaggi - Autenticazione, Registrazione, modifica, controllo diritti di accesso - Scadenza messaggi - Ricerca (con certi criteri) di messaggi - Moderazione sui messaggi - Newsletter sulla categoria di interesse - Profilo utente - Contatto: , sms, chat - Amministrazione del sito 18

120 Considerazioni» Solo funzionalita, non altro! > Cos e una funzionalita?» Non tutte le funzionalita sono allo stesso livello di astrazione» Una funzionalita puo contenere altre sotto-funzionalita» Alcune funzionalita possono essere simili» Alcune funzionalita possono richiedere altre funzionalita come pre-condizione» Non tutte le funzionalita hanno la stessa importanza» Diversi attori richiedono diverse funzionalita» Accorpare funzionalita 19

121 Attore e Use Case» Attori sono entità esterne al sistema che interagiscono con esso» Le interazioni consistono in uno scambio di messaggi» Attore è connesso con gli use case mediante una relazione di associazione che permette di attivare (attore attivo) lo use case o di ricevere (attore passivo) i risultati 20

122 Attore e Use Case» Relazione di associazione è l unica relazione possibile tra attore e use case» Può avere la proprietà di navigazione (cioè può esserci una freccia) la quale indica, per convenzione, la direzione dell inizio della comunicazione tra lo use case e l attore» Per una comunicazione che coinvolge una risposta non è necessario inserire la freccia nella parte che ha attivato la funzionalità» Se la comunicazione iniziale avviene da entrambe le direzioni le frecce vengono omesse 21

123 Attore e Use Case Effettua Ordine Cliente Venditore Verifica Ordine 22

124 Generalizzazione tra attori» Può succedere che attori presentino diverse e significative similitudini» E possibile raccogliere a fattor comune tale similitudini creando un attore padre ed esprimere gli altri attori in termini di estensione del primo» Rappresentato come la relazione di generalizzazione tra classi 23

125 Generalizzazione tra attori Venditore Studente Supervisore Studente full-time Studente part-time 24

126 Generalizzazione tra attori Inserimento Ordine Venditore Verifica Stato Ordine Annullamento Ordine Supervisore Generazione Report 25

127 Generalizzazione tra attori Inserimento Ordine Venditore Verifica Stato Ordine Annullamento Ordine Supervisore Generazione Report 26

128 Relazioni tra Use Case» Generalizzazione» Inclusione» Estensione» Realizzazione > Collaboration 27

129 Generalizzazione» Può capitare che diversi use case presentino somiglianze e condividano comportamento» E possibile utilizzare la generalizzazione per creare uno use case genitore (che contiene le somiglianze) ed estenderlo (modificando il comportamento o aggiungendo dei passi allo use case) mediante casi d uso figli» Rappresentata come la generalizzazione tra classi» L esecuzione degli use case fratelli è esclusiva 28

130 Generalizzazione Cliente Validazione Utente Check Password Scansione Retina 29

Unified Modeling Language - Index -

Unified Modeling Language - Index - Unified Modeling Language - Index - Master in Web Technology Corso di: Modellazione UML per il Web http://www.di.univaq.it/muccini/mwt08 V Edizione 2008/09 Dipartimento di Informatica Università degli

Dettagli

Rational Unified Process Introduzione

Rational Unified Process Introduzione Rational Unified Process Introduzione G.Raiss - A.Apolloni - 4 maggio 2001 1 Cosa è E un processo di sviluppo definito da Booch, Rumbaugh, Jacobson (autori dell Unified Modeling Language). Il RUP è un

Dettagli

Ingegneria del Software UML - Unified Modeling Language

Ingegneria del Software UML - Unified Modeling Language Ingegneria del Software UML - Unified Modeling Language Obiettivi. Presentare un approccio visuale alla progettazione. Illustrare i vantaggi dell utilizzo di diagrammi nella fase di progettazione. Rispondere

Dettagli

UML - Unified Modeling Language

UML - Unified Modeling Language UML E CASI D USO UML - Unified Modeling Language Linguaggio stardardizzato per identificare e modellizzare le specifiche di un S.I. Coerente con il paradigma della programmazione ad oggetti Definito a

Dettagli

UML e (R)UP (an overview)

UML e (R)UP (an overview) Lo sviluppo di sistemi OO UML e (R)UP (an overview) http://www.rational.com http://www.omg.org 1 Riassumento UML E un insieme di notazioni diagrammatiche che, utilizzate congiuntamente, consentono di descrivere/modellare

Dettagli

PROGETTAZIONE DEL SOFTWARE

PROGETTAZIONE DEL SOFTWARE PROGETTAZIONE DEL SOFTWARE EMILIANO CASALICCHIO DIPARTIMENTO DI INFORMATICA E SISTEMISTICA SAPIENZA UNIVERSITÀ DI ROMA SEDE DI RIETI HTTP://WWW.CE.UNIROMA2.IT/COURSES/PSW! Cos è UML UNIFIED MODELING LANGUAGE!

Dettagli

Object Oriented Programming

Object Oriented Programming OOP Object Oriented Programming Programmazione orientata agli oggetti La programmazione orientata agli oggetti (Object Oriented Programming) è un paradigma di programmazione Permette di raggruppare in

Dettagli

Il diagramma dei casi d uso

Il diagramma dei casi d uso Il diagramma dei casi d uso Laboratorio di Ingegneria del Software Prof. Paolo Ciancarini Dott. Sara Zuppiroli A.A. 2010/2011 Lab di Ingegneria del Software () Il diagramma dei casi d uso A.A. 2010/2011

Dettagli

UniRoma2 - Ingegneria del Software 1 1

UniRoma2 - Ingegneria del Software 1 1 Object Oriented Analysis - OOA La fase di OOA definisce, secondo un approccio ad oggetti, COSA un prodotto software deve fare (mentre la fase di OOD definisce, sempre secondo un approccio ad oggetti, COME

Dettagli

Casi d uso (use cases)

Casi d uso (use cases) Casi d uso (use cases) proposti da Ivar Jacobson nel 1992 termine nuovo, ma tecnica consolidata (studio degli scenari di operatività degli utilizzatori di un sistema) sono i modi in cui il sistema può

Dettagli

Analisi dei Requisiti

Analisi dei Requisiti Analisi dei Requisiti Pagina 1 di 16 Analisi dei Requisiti Indice 1 - INTRODUZIONE... 4 1.1 - OBIETTIVO DEL DOCUMENTO...4 1.2 - STRUTTURA DEL DOCUMENTO...4 1.3 - RIFERIMENTI...4 1.4 - STORIA DEL DOCUMENTO...4

Dettagli

Progettazione del Software A.A.2008/09

Progettazione del Software A.A.2008/09 Laurea in Ing. Informatica ed Ing. dell Informazione Sede di latina Progettazione del Software A.A.2008/09 Domenico Lembo* Dipartimento di Informatica e Sistemistica A. Ruberti SAPIENZA Università di Roma

Dettagli

Progettazione orientata agli oggetti Introduzione a UML

Progettazione orientata agli oggetti Introduzione a UML Progettazione orientata agli oggetti Introduzione a UML Claudia Raibulet raibulet@disco.unimib.it Il processo di sviluppo software Rappresenta un insieme di attività per la specifica, progettazione, implementazione,

Dettagli

Ingegneria del Software I. UML - Use Case Diagram

Ingegneria del Software I. UML - Use Case Diagram Requisiti e casi d uso Unified Modeling Language Use Case Diagram 1 Il primo passo di qualsiasi processo di sviluppo è la definizione dei requisiti Definizione del Business Model Solitamente informale

Dettagli

Modellazione dei dati in UML

Modellazione dei dati in UML Corso di Basi di Dati e Sistemi Informativi Modellazione dei dati in UML Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Introduzione UML (Unified Modeling Language):

Dettagli

Modellazione di sistema

Modellazione di sistema Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Modellazione di sistema E. TINELLI Contenuti Approcci di analisi Linguaggi di specifica Modelli di

Dettagli

Introduzione a UML. Iolanda Salinari

Introduzione a UML. Iolanda Salinari Introduzione a UML Iolanda Salinari Perché modelliamo Un modello è una semplificazione della realtà I modelli ci aiutano a visualizzare un sistema come è o come vorremmo che fosse ci permettono di specificare

Dettagli

Siti web centrati sui dati (Data-centric web applications)

Siti web centrati sui dati (Data-centric web applications) Siti web centrati sui dati (Data-centric web applications) 1 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente

Dettagli

Applicazioni web centrati sui dati (Data-centric web applications)

Applicazioni web centrati sui dati (Data-centric web applications) Applicazioni web centrati sui dati (Data-centric web applications) 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente lo strumento di riferimento

Dettagli

Obiettivo della lezione. Casi d uso. Casi d uso (use cases) Scenari d interazione

Obiettivo della lezione. Casi d uso. Casi d uso (use cases) Scenari d interazione Obiettivo della lezione Casi d uso La modellazione dei requisiti funzionali I casi d uso Gli attori Gli scenari Come scrivere casi d uso Casi d uso (use cases) Scenari d interazione Proposti da Ivar Jacobson

Dettagli

Progetto. Struttura del documento di specifica dei requisiti, Casi d uso. manuel.comparetti@iet.unipi.it

Progetto. Struttura del documento di specifica dei requisiti, Casi d uso. manuel.comparetti@iet.unipi.it Progetto Struttura del documento di specifica dei requisiti, Casi d uso manuel.comparetti@iet.unipi.it 1 Documenti da produrre Il progetto deve comprendere i seguenti documenti: Documento di specifica

Dettagli

Introduzione ad UML. Perché modelliamo

Introduzione ad UML. Perché modelliamo Introduzione ad UML Pag. 1 Perché modelliamo Un modello è una semplificazione della realtà I modelli ci aiutano a visualizzare un sistema come è o come vorremmo che fosse ci permettono di specificare la

Dettagli

La specifica del problema

La specifica del problema 2.9 (Caso di studio facoltativo) Pensare a oggetti: esame del problema Iniziamo ora a esaminare il nostro caso di studio di progettazione e implementazione orientate agli oggetti. Le sezioni Pensare a

Dettagli

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

Raccolta dei Requisiti con i Casi D'uso. Corso di Ingegneria del Software Anno Accademico 2012/13 Raccolta dei Requisiti con i Casi D'uso Corso di Ingegneria del Software Anno Accademico 2012/13 I casi d uso I casi d'uso (use case) sono una tecnica utilizzata per identificare i requisiti funzionali

Dettagli

Informatica Industriale Modello funzionale Casi d uso

Informatica Industriale Modello funzionale Casi d uso DIIGA - Università Politecnica delle Marche A.A. 2006/2007 Informatica Industriale Modello funzionale Casi d uso Luca Spalazzi spalazzi@diiga.univpm.it www.diiga.univpm.it/~spalazzi/ Informatica Industriale

Dettagli

Università degli Studi di Salerno Ingegneria del Software: Tecniche Avanzate

Università degli Studi di Salerno Ingegneria del Software: Tecniche Avanzate Università degli Studi di Salerno Ingegneria del Software: Tecniche Avanzate Mystic Pizza Gestione Pizzeria Scheda di Progetto Version 1.0 Data 19/03/2007 Indice degli argomenti 1. Introduzione 3 a. Scenario

Dettagli

Piattaforma ilearn di Hiteco. Presentazione Piattaforma ilearn

Piattaforma ilearn di Hiteco. Presentazione Piattaforma ilearn Presentazione Piattaforma ilearn 1 Sommario 1. Introduzione alla Piattaforma Hiteco ilearn...3 1.1. Che cos è...3 1.2. A chi è rivolta...4 1.3. Vantaggi nell utilizzo...4 2. Caratteristiche della Piattaforma

Dettagli

Basi di Dati. Programmazione e gestione di sistemi telematici

Basi di Dati. Programmazione e gestione di sistemi telematici Basi di Dati. Programmazione e gestione di sistemi telematici Coordinatore: Prof. Paolo Nesi Docenti: Prof. Paolo Nesi Dr.sa Michela Paolucci Dr. Emanuele Bellini UML La prima versione ufficiale risale

Dettagli

La piattaforma MOODLE. Le risorse e le attività di un corso

La piattaforma MOODLE. Le risorse e le attività di un corso La piattaforma MOODLE Le risorse e le attività di un corso Università di Brescia 9/10 aprile 2013 Per iniziare Le sezioni Formato Settimanale vs. per Argomenti Numero di sezioni di un corso, visibilità

Dettagli

Progetto di Applicazioni Software

Progetto di Applicazioni Software Progetto di Applicazioni Software Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma Anno Accademico 2008/2009 I lucidi del corso sono stati prodotti sulla base del

Dettagli

Paradigma object-oriented

Paradigma object-oriented Paradigma object-oriented Dati & Comportamento Implementazione trasparente dei servizi Facile mantenimento Omogeneità nella gerarchia dati-funzioni Procedural approach OO approach Data hierarchy Replaced

Dettagli

Obiettivi. Sistemi Informativi SPECIFICA DEI REQUISITI FUNZIONALI. Obiettivi Specifica dei Requisiti UML Use Case Esercizi

Obiettivi. Sistemi Informativi SPECIFICA DEI REQUISITI FUNZIONALI. Obiettivi Specifica dei Requisiti UML Use Case Esercizi Sistemi Informativi SPECIFICA DEI REQUISITI FUNZIONALI Obiettivi Specifica dei Requisiti UML Use Case Esercizi Obiettivi Nelle lezioni precedenti abbiamo modellato il dominio business e i dati L obiettivo

Dettagli

SOMMARIO. www.trustonline.org. 1. Introduzione 3. 2. Caratteristiche generali della piattaforma 3. 2.1. Amministrazione degli utenti 5

SOMMARIO. www.trustonline.org. 1. Introduzione 3. 2. Caratteristiche generali della piattaforma 3. 2.1. Amministrazione degli utenti 5 www.trustonline.org SOMMARIO 1. Introduzione 3 2. Caratteristiche generali della piattaforma 3 2.1. Amministrazione degli utenti 5 2.2. Caricamento dei corsi 5 2.3. Publishing 6 2.4. Navigazione del corso

Dettagli

Ciclo di Vita Evolutivo

Ciclo di Vita Evolutivo Ciclo di Vita Evolutivo Prof.ssa Enrica Gentile a.a. 2011-2012 Modello del ciclo di vita Stabiliti gli obiettivi ed i requisiti Si procede: All analisi del sistema nella sua interezza Alla progettazione

Dettagli

Progettazione del Software. Emiliano Casalicchio. Dipartimento di Informatica e Sistemistica SAPIENZA Università di Roma Sede di Rieti

Progettazione del Software. Emiliano Casalicchio. Dipartimento di Informatica e Sistemistica SAPIENZA Università di Roma Sede di Rieti Progettazione del Software L3.1 Emiliano Casalicchio Dipartimento di Informatica e Sistemistica SAPIENZA Università di Roma Sede di Rieti http://www.ce.uniroma2.it/courses/psw (Basato su materiale didattico

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Introduzione ai Database! Tipologie di DB (gerarchici, reticolari, relazionali, oodb) Introduzione ai database Cos è un Database Cos e un Data Base Management System (DBMS)

Dettagli

Strumenti di modellazione. Gabriella Trucco

Strumenti di modellazione. Gabriella Trucco Strumenti di modellazione Gabriella Trucco Linguaggio di modellazione Linguaggio formale che può essere utilizzato per descrivere (modellare) un sistema Il concetto trova applicazione soprattutto nell

Dettagli

Testo Esercizio. Un modello è ragionevole quando contiene queste tre caratteristiche.

Testo Esercizio. Un modello è ragionevole quando contiene queste tre caratteristiche. Testo Esercizio Un negozio di musica vende anche libri e riviste musicali. Si intende automatizzare l intero processo, dall approvvigionamento alla vendita. Si analizzino i requisiti e se ne rappresentino

Dettagli

Introduzione all elaborazione di database nel Web

Introduzione all elaborazione di database nel Web Introduzione all elaborazione di database nel Web Prof.ssa M. Cesa 1 Concetti base del Web Il Web è formato da computer nella rete Internet connessi fra loro in una modalità particolare che consente un

Dettagli

Il World Wide Web. Il Servizio World Wide Web (WWW) WWW WWW WWW WWW. Storia WWW: obbiettivi WWW: tecnologie Le Applicazioni Scenari Futuri.

Il World Wide Web. Il Servizio World Wide Web (WWW) WWW WWW WWW WWW. Storia WWW: obbiettivi WWW: tecnologie Le Applicazioni Scenari Futuri. Il Servizio World Wide Web () Corso di Informatica Generale (Roberto BASILI) Teramo, 20 Gennaio, 2000 Il World Wide Web Storia : obbiettivi : tecnologie Le Applicazioni Scenari Futuri La Storia (1990)

Dettagli

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico MANUALE MOODLE STUDENTI Accesso al Materiale Didattico 1 INDICE 1. INTRODUZIONE ALLA PIATTAFORMA MOODLE... 3 1.1. Corso Moodle... 4 2. ACCESSO ALLA PIATTAFORMA... 7 2.1. Accesso diretto alla piattaforma...

Dettagli

Moodle per docenti. Indice:

Moodle per docenti. Indice: Abc Moodle per docenti Indice: 1. 2. 3. 4. ACCEDERE ALL INTERNO DELLA PIATTAFORMA MOODLE. pag 1 INSERIRE UN FILE (es. Piano di lavoro e Programmi finali)... pag 4 ORGANIZZARE UN CORSO DISCIPLINARE (inserire

Dettagli

Linguaggi di Programmazione I Lezione 5

Linguaggi di Programmazione I Lezione 5 Linguaggi di Programmazione I Lezione 5 Prof. Marcello Sette mailto://marcello.sette@gmail.com http://sette.dnsalias.org 1 aprile 2008 Diagrammi UML 3 UML: richiami..........................................................

Dettagli

INGEGNERIA DEL SOFTWARE. Prof. Paolo Salvaneschi

INGEGNERIA DEL SOFTWARE. Prof. Paolo Salvaneschi Università di Bergamo Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica INGEGNERIA DEL SOFTWARE Prof. Paolo Salvaneschi 1 Obiettivi Scopi del corso: - Fornire gli elementi di base della disciplina,

Dettagli

TECNICO SUPERIORE PER LO SVILUPPO DEL SOFTWARE

TECNICO SUPERIORE PER LO SVILUPPO DEL SOFTWARE ISTRUZIONE E FORMAZIONE TECNICA SUPERIORE SETTORE I.C.T. Information and Communication Technology TECNICO SUPERIORE PER LO SVILUPPO DEL SOFTWARE STANDARD MINIMI DELLE COMPETENZE TECNICO PROFESSIONALI DESCRIZIONE

Dettagli

Facoltà di Farmacia - Corso di Informatica

Facoltà di Farmacia - Corso di Informatica Basi di dati Riferimenti: Curtin cap. 8 Versione: 13/03/2007 1 Basi di dati (Database, DB) Una delle applicazioni informatiche più utilizzate, ma meno conosciute dai non informatici Avete già interagito

Dettagli

Lezione 10 Business Process Modeling

Lezione 10 Business Process Modeling Lezione 10 Business Process Modeling Ingegneria dei Processi Aziendali Modulo 1 - Servizi Web Unità didattica 1 Protocolli Web Ernesto Damiani Università di Milano Step dell evoluzione del business process

Dettagli

Componenti Web: client-side e server-side

Componenti Web: client-side e server-side Componenti Web: client-side e server-side side Attività di applicazioni web Applicazioni web: un insieme di componenti che interagiscono attraverso una rete (geografica) Sono applicazioni distribuite logicamente

Dettagli

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

UML un linguaggio universale per la modellazione del software. Adriano Comai 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,

Dettagli

ISTITUTO TECNICO ECONOMICO MOSSOTTI

ISTITUTO TECNICO ECONOMICO MOSSOTTI CLASSE III INDIRIZZO S.I.A. UdA n. 1 Titolo: conoscenze di base Conoscenza delle caratteristiche dell informatica e degli strumenti utilizzati Informatica e sistemi di elaborazione Conoscenza delle caratteristiche

Dettagli

Sistemi Informativi I Caso di studio con applicazione di UML

Sistemi Informativi I Caso di studio con applicazione di UML 9 CASO DI STUDIO CON APPLICAZIONE DI UML...2 9.1 IL CASO DI STUDIO...2 9.1.1 Il sistema attuale...2 9.2 IL PROBLEM STATEMENT...3 9.2.1 Formulazione del Problem statement per il caso proposto...3 9.3 USE

Dettagli

GUIDA ALL USO DELLA PIATTAFORMA E-Learning DOCEBO

GUIDA ALL USO DELLA PIATTAFORMA E-Learning DOCEBO GUIDA ALL USO DELLA PIATTAFORMA E-Learning DOCEBO GUIDA A DOCEBO ACCESSO A DOCEBO L indirizzo di DOCEBO dell IPSSAR è il seguente: www.ipssarvieste.info/docebo. C è un apposito link nella parte bassa della

Dettagli

Sequence Diagram e Collaboration Diagram

Sequence Diagram e Collaboration Diagram Sequence Diagram e Collaboration Diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Sommario Interaction

Dettagli

Introduzione a Internet e al World Wide Web

Introduzione a Internet e al World Wide Web Introduzione a Internet e al World Wide Web Una rete è costituita da due o più computer, o altri dispositivi, collegati tra loro per comunicare l uno con l altro. La più grande rete esistente al mondo,

Dettagli

Use Case Driven Object Modeling: ICONIX

Use Case Driven Object Modeling: ICONIX Use Case Driven Object Modeling: ICONIX Un esempio di specifica, analisi, progetto e sviluppo utilizzando ICONIX Ditta di Noleggio Dvd Un sistema per la gestione di una ditta di noleggio dvd che ha più

Dettagli

RIFERIMENTI ATTORI GLOSSARIO. ERRORI COMUNI REV. REQUISITI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova

RIFERIMENTI ATTORI GLOSSARIO. ERRORI COMUNI REV. REQUISITI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova RIFERIMENTI ERRORI COMUNI REV. REQUISITI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2014 2015 I riferimenti devono essere precisi

Dettagli

Introduzione a UML. Adriano Comai. http://www.analisi-disegno.com. versione 19 marzo 2010. Adriano Comai. Introduzione a UML Pag.

Introduzione a UML. Adriano Comai. http://www.analisi-disegno.com. versione 19 marzo 2010. Adriano Comai. Introduzione a UML Pag. Introduzione a UML versione 19 marzo 2010 http://www.analisi-disegno.com Introduzione a UML Pag. 1 Obiettivo di questa introduzione fornire alcuni elementi di base su UML introdurre i diagrammi fornire

Dettagli

SOFTWARE MAINTENANCE DESIGN

SOFTWARE MAINTENANCE DESIGN SOFTWARE MAINTENANCE DESIGN INTRODUZIONE... 1 1.1 Identificazione della richiesta di modifica... 2 1.2 Assegnazione di un numero di identificazione alla Change Request... 2 1.3 Classificazione del tipo

Dettagli

Software. Definizione, tipologie, progettazione

Software. Definizione, tipologie, progettazione Software Definizione, tipologie, progettazione Definizione di software Dopo l hardware analizziamo l altra componente fondamentale di un sistema di elaborazione. La macchina come insieme di componenti

Dettagli

Elementi di UML (2) Università degli Studi di Bologna Facoltà di Scienze MM. FF. NN. Corso di Laurea in Scienze di Internet Anno Accademico 2004-2005

Elementi di UML (2) Università degli Studi di Bologna Facoltà di Scienze MM. FF. NN. Corso di Laurea in Scienze di Internet Anno Accademico 2004-2005 Elementi di UML (2) Università degli Studi di Bologna Facoltà di Scienze MM. FF. NN. Corso di Laurea in Scienze di Internet Anno Accademico 2004-2005 Laboratorio di Sistemi e Processi Organizzativi UML

Dettagli

Gestione WEB Viaggi e Turismo

Gestione WEB Viaggi e Turismo Pag. 1 di 11 Gestione WEB Viaggi e Turismo Pag. 2 di 11 SOMMARIO 1. INTRODUZIONE...3 2. CARATTERISTICHE E VANTAGGI DI IN.TOUR...4 3. FUNZIONALITA E STRUTTURA SOFTWARE E HARDWARE...6 4. STRUTTURA E CONTENUTI

Dettagli

filrbox Guida all uso dell interfaccia WEB Pag. 1 di 44

filrbox Guida all uso dell interfaccia WEB Pag. 1 di 44 filrbox Guida all uso dell interfaccia WEB Pag. 1 di 44 Sommario Introduzione... 4 Caratteristiche del filrbox... 5 La barra principale del filrbox... 7 Elenco degli utenti... 8 Il profilo... 9 Le novità...

Dettagli

OASIS è una fabbrica per il bene comune dei dati attraverso l uso delle applicazioni proposte.

OASIS è una fabbrica per il bene comune dei dati attraverso l uso delle applicazioni proposte. 1 Guida Utente 1.1 Panoramica di OASIS OASIS è una fabbrica per il bene comune dei dati attraverso l uso delle applicazioni proposte. Grazie a OASIS, sarai in grado di acquistare o selezionare, dallo store,

Dettagli

02 L Informatica oggi. Dott.ssa Ramona Congiu

02 L Informatica oggi. Dott.ssa Ramona Congiu 02 L Informatica oggi Dott.ssa Ramona Congiu 1 Introduzione all Informatica Dott.ssa Ramona Congiu 2 Che cos è l Informatica? Con il termine Informatica si indica l insieme dei processi e delle tecnologie

Dettagli

Corso basi di dati Introduzione alle ASP

Corso basi di dati Introduzione alle ASP Corso basi di dati Introduzione alle ASP Gianluca Di Tomassi Email: ditomass@dia.uniroma3.it Università di Roma Tre Web statico e Web interattivo In principio il Web era una semplice collezione di pagine

Dettagli

SIAGAS Manuale Utente Utente non autenticato

SIAGAS Manuale Utente Utente non autenticato SIAGAS Manuale Utente Utente non autenticato 27 marzo 2007 v.1.7 SIAGAS: Manuale Utente: utente non autenticato 1/10 1 Introduzione 1.1 Destinatario del prodotto SIAGAS è uno Sportello Informativo per

Dettagli

Progetto di Applicazioni Software

Progetto di Applicazioni Software Progetto di Applicazioni Software Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma Anno Accademico 2010/2011 I lucidi del corso sono stati prodotti

Dettagli

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

I casi d uso corrispondono ai compiti che l attore (che può essere una persona fisica e non) può svolgere. UML e i Casi d USO I casi d uso specificano una sequenza di azioni che producono un risultato visibile agli attori del sistema. Essi nascono per fornire descrizioni delle capacità del sistema. I casi d

Dettagli

Manuale di utilizzo della piattaforma e-learning

Manuale di utilizzo della piattaforma e-learning Manuale di utilizzo della piattaforma e-learning Rivolto ai discenti Azienda Ospedaliera Regionale San Carlo Di Potenza Sommario 1. Cos è Moodle... 3 1.1. Accesso alla piattaforma Moodle... 4 1.2. Come

Dettagli

E-learning Guida pratica all utilizzo

E-learning Guida pratica all utilizzo E-learning Guida pratica all utilizzo Riccardo Picen 2014-2015 Sommario Cos è MOODLE?... 2 Come collegarsi alla pagina dei servizi... 2 PIATTAFORMA E-LEARNING... 3 1. Effettuare la registrazione (valida

Dettagli

1) Una periferica di input è: A) il mouse B) il monitor C) la stampante

1) Una periferica di input è: A) il mouse B) il monitor C) la stampante CONOSCENZE DI INFORMATICA 1) Una periferica di input è: A) il mouse B) il monitor C) la stampante 2) Una memoria in sola lettura con la particolarità di essere cancellata in particolari condizioni è detta:

Dettagli

Introduzione. Il software e l ingegneria del software. Marina Mongiello Ingegneria del software 1

Introduzione. Il software e l ingegneria del software. Marina Mongiello Ingegneria del software 1 Introduzione Il software e l ingegneria del software Marina Mongiello Ingegneria del software 1 Sommario Il software L ingegneria del software Fasi del ciclo di vita del software Pianificazione di sistema

Dettagli

Il social learning con edmodo

Il social learning con edmodo Il social learning con edmodo gestire ed utilizzare una classe virtuale Cos'è edmodo cos è edmodo È un social network adatto per la creazione di comunità di apprendimento; permette di lavorare e mantenere

Dettagli

Flavio De Paoli depaoli@disco.unimib.it

Flavio De Paoli depaoli@disco.unimib.it Flavio De Paoli depaoli@disco.unimib.it 1 Il web come architettura di riferimento Architettura di una applicazione web Tecnologie lato server: Script (PHP, Pyton, Perl), Servlet/JSP, ASP Tecnologie lato

Dettagli

ANALISI E PROGETTAZIONE OBJECT ORIENTED UNIFIED MODELLING LANGUAGE (UML)

ANALISI E PROGETTAZIONE OBJECT ORIENTED UNIFIED MODELLING LANGUAGE (UML) ANALISI E PROGETTAZIONE OBJECT ORIENTED UNIFIED MODELLING LANGUAGE (UML) a cura di Giacomo PISCITELLI Dipartimento di Elettrotecnica ed Elettronica Politecnico di Bari Questi appunti sono ricavati da una

Dettagli

Il File System. È la componente del S.O. che si occupa della gestione della memoria di massa e dell organizzazione logica dei dati

Il File System. È la componente del S.O. che si occupa della gestione della memoria di massa e dell organizzazione logica dei dati Il File System È la componente del S.O. che si occupa della gestione della memoria di massa e dell organizzazione logica dei dati Le operazioni supportate da un file system sono: eliminazione di dati modifica

Dettagli

Scaletta. Estensioni UML per il Web. Applicazioni web - 2. Applicazioni web. WAE: Web Application Extension for UML. «Client page»

Scaletta. Estensioni UML per il Web. Applicazioni web - 2. Applicazioni web. WAE: Web Application Extension for UML. «Client page» Scaletta Estensioni UML per il Web Michele Zennaro 14-05-2004 Le applicazioni web Scopo di un estensione UML per il web Due punti di vista Uno più astratto Uno più vicino ai file fisici conclusivo Commenti

Dettagli

Concetti di base di ingegneria del software

Concetti di base di ingegneria del software Concetti di base di ingegneria del software [Dalle dispense del corso «Ingegneria del software» del prof. A. Furfaro (UNICAL)] Principali qualità del software Correttezza Affidabilità Robustezza Efficienza

Dettagli

Lezione 1. Introduzione e Modellazione Concettuale

Lezione 1. Introduzione e Modellazione Concettuale Lezione 1 Introduzione e Modellazione Concettuale 1 Tipi di Database ed Applicazioni Database Numerici e Testuali Database Multimediali Geographic Information Systems (GIS) Data Warehouses Real-time and

Dettagli

Il funzionamento delle reti

Il funzionamento delle reti Il funzionamento delle reti La rete ci cambia la vita L Età dell Informazione ha prodotto profondi cambiamenti nessun luogo è remoto le persone sono interconnesse le relazioni sociali stanno mutando l

Dettagli

TECNICO SUPERIORE PER LE APPLICAZIONI INFORMATICHE

TECNICO SUPERIORE PER LE APPLICAZIONI INFORMATICHE ISTRUZIONE E FORMAZIONE TECNICA SUPERIORE SETTORE I.C.T. Information and Communication Technology TECNICO SUPERIORE PER LE APPLICAZIONI INFORMATICHE STANDARD MINIMI DELLE COMPETENZE TECNICO PROFESSIONALI

Dettagli

PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE

PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE Relatore: prof. Michele Moro Laureando: Marco Beggio Corso di laurea in Ingegneria Informatica Anno Accademico 2006-2007

Dettagli

DonkeyCode. Manuale amministratore di sistema. Versione 1.0.0

DonkeyCode. Manuale amministratore di sistema. Versione 1.0.0 DonkeyCode RescueMe: globale per la gestione di catastrofi naturali Manuale amministratore di Versione 1.0.0 Ingegneria Del Software AA 2010-2011 DonkeyCode - RescueMe Informazioni documento Titolo documento:

Dettagli

Processi di Gestione dei Sistemi ICT

Processi di Gestione dei Sistemi ICT Università di Bergamo Facoltà di Ingegneria GESTIONE DEI SISTEMI ICT Paolo Salvaneschi A3_1 V1.1 Processi di Gestione dei Sistemi ICT Il contenuto del documento è liberamente utilizzabile dagli studenti,

Dettagli

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo Come funziona il WWW Il funzionamento del World Wide Web non differisce molto da quello delle altre applicazioni Internet Anche in questo caso il sistema si basa su una interazione tra un computer client

Dettagli

Il modello di ottimizzazione SAM

Il modello di ottimizzazione SAM Il modello di ottimizzazione control, optimize, grow Il modello di ottimizzazione Il modello di ottimizzazione è allineato con il modello di ottimizzazione dell infrastruttura e fornisce un framework per

Dettagli

UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA. Elaborato di Tecnologie del Software per Internet

UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA. Elaborato di Tecnologie del Software per Internet UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA Elaborato di Tecnologie del Software per Internet JMSWEB 2 SISTEMA PER LO SCAMBIO DI MESSAGGI TRA APPLICAZIONI

Dettagli

02CIXPG Sistemi informativi aziendali

02CIXPG Sistemi informativi aziendali 02CIXPG Sistemi informativi aziendali Introduzione al Corso 1 http://bit.ly/sistinfo http://elite.polito.it/ teaching-mainmenu-69/ laurea-specialistica-mainmenu-83/117-02cix Fulvio Corno Dipartimento di

Dettagli

Unified Modeling Language

Unified Modeling Language Unified Modeling Language Luciano Baresi Luciano Baresi 1 OMT Booch UML Sono simili in molti aspetti: Prescrivono un approccio passo-passo Consentono il passaggio dall analisi al progetto in modo omogeneo

Dettagli

Infinity Application Framework Una nuova e diversa interpretazione delle soluzioni applicative aziendali

Infinity Application Framework Una nuova e diversa interpretazione delle soluzioni applicative aziendali Infinity Application Framework Una nuova e diversa interpretazione delle soluzioni applicative aziendali Infinity Application Framework è la base di tutte le applicazioni della famiglia Infinity Project

Dettagli

Documento di ANALISI DEI REQUISITI Progetto di un portale per una società di servizi dedicati al settore delle imprese edili

Documento di ANALISI DEI REQUISITI Progetto di un portale per una società di servizi dedicati al settore delle imprese edili Documento di ANALISI DEI REQUISITI Progetto di un portale per una società di servizi dedicati al settore delle imprese edili GRUPPO 2 Indice analitico - 1. Introduzione... 3-1.1 Obiettivi del sistema...

Dettagli

Formazione TIC / Docenti e ATA. Percorso C1

Formazione TIC / Docenti e ATA. Percorso C1 Formazione TIC / Docenti e ATA Percorso C1 Percorso C1-10 moduli Per creare una figura in grado di gestire le reti delle scuole nel loro uso quotidiano: configurare le stazioni di lavoro, installare e

Dettagli

Modello OAIS. Modello di riferimento. Il Modello. Prof.ssa E. Gentile a.a. 2011-2012. Un modello di riferimento dovrebbe descrivere:

Modello OAIS. Modello di riferimento. Il Modello. Prof.ssa E. Gentile a.a. 2011-2012. Un modello di riferimento dovrebbe descrivere: Modello OAIS Prof.ssa E. Gentile a.a. 2011-2012 Prof.ssa E. Gentile Progettazione e Produzione di Contenuti Digitali 1 Modello di riferimento Un modello di riferimento dovrebbe descrivere: le componenti

Dettagli

INFORMATICA. DOCENTE: CAVALLO Serena Classi: III E A.S.: 2013-2014 FINALITA

INFORMATICA. DOCENTE: CAVALLO Serena Classi: III E A.S.: 2013-2014 FINALITA INFORMATICA DOCENTE: CAVALLO Serena Classi: III E A.S.: 2013-2014 FINALITA L insegnamento di INFORMATICA nel secondo biennio si propone di: potenziare l uso degli strumenti multimediali a supporto dello

Dettagli

ISTITUTO ISTRUZIONE SUPERIORE "L. EINAUDI" - ALBA (CN) ANNO SCOLASTICO 2014/2015

ISTITUTO ISTRUZIONE SUPERIORE L. EINAUDI - ALBA (CN) ANNO SCOLASTICO 2014/2015 ISTITUTO ISTRUZIONE SUPERIORE "L. EINAUDI" - ALBA (CN) ANNO SCOLASTICO 2014/2015 CLASSE: 1 I Disciplina: Tecnologia dell Informazi one e della Comunicazione. PROGETTAZIONE DIDATTICA ANNUALE Elaborata e

Dettagli

SWIM v2 Design Document

SWIM v2 Design Document PROGETTO DI INGEGNERIA DEL SOFTWARE 2 SWIM v2 DD Design Document Matteo Danelli Daniel Cantoni 22 Dicembre 2012 1 Indice Progettazione concettuale Modello ER Entità e relazioni nel dettaglio User Feedback

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

CLOUD COMPUTING REFERENCE ARCHITECTURE: LE INDICAZIONI DEL NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY. Prima parte: Panoramica sugli attori

CLOUD COMPUTING REFERENCE ARCHITECTURE: LE INDICAZIONI DEL NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY. Prima parte: Panoramica sugli attori ANALISI 11 marzo 2012 CLOUD COMPUTING REFERENCE ARCHITECTURE: LE INDICAZIONI DEL NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY Nella newsletter N 4 abbiamo già parlato di Cloud Computing, introducendone

Dettagli

Contenuti. Applicazioni di rete e protocolli applicativi

Contenuti. Applicazioni di rete e protocolli applicativi Contenuti Architettura di Internet Principi di interconnessione e trasmissione World Wide Web Posta elettronica Motori di ricerca Tecnologie delle reti di calcolatori Servizi Internet (come funzionano

Dettagli

IS Governance. Francesco Clabot Consulenza di processo. francesco.clabot@netcom-srl.it

IS Governance. Francesco Clabot Consulenza di processo. francesco.clabot@netcom-srl.it IS Governance Francesco Clabot Consulenza di processo francesco.clabot@netcom-srl.it 1 Fondamenti di ISO 20000 per la Gestione dei Servizi Informatici - La Norma - 2 Introduzione Che cosa è una norma?

Dettagli