Survey sui Framework per Testing di Sistemi Basati su Web Services

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Survey sui Framework per Testing di Sistemi Basati su Web Services"

Transcript

1 Survey sui Framework per Testing di Sistemi Basati su Web Services Severoni Francesco Facoltà di Scienze Dipartimento di Informatica Università degli Studi - L Aquila L Aquila, Italia

2 Argomenti Trattati Introduzione Coyote: un framework basato su XML Test Harness: testing funzionale, del carico di lavoro e delle performance Auditorium: framework per testare l interoperabilità dei Web Services Tecnica di progressive group testing Automatic conformance testing Testing di Web Services basato sui contratti Stress test in applicazioni Web Services Testing dei Web Services basato sugli Scenari, con l utilizzo di agenti distribuiti Classificazione dei Framework Conclusioni

3 Introduzione Architetture Orientate ai Servizi e Web Services sono le tecnologie emergenti che hanno ereditato complessivamente vantaggi e svantaggi dell approccio basato su componenti, potenziando gli aspetti di libera associazione, distribuzione e dinamismo di componenti I Web Services supportano comunicazioni interoperabili fra applicazioni software La rilevanza dell interoperabilità è messa in luce dall emergenza delle iniziative WS-I, un consorzio che raggruppa le organizzazioni più importanti nella comunità Web Services L obiettivo delle WS-I è l introduzione di regole e profili specifici che dovrebbero ridurre i problemi di interoperabilità, per lo meno a livello di formati dei messaggi WS-I ha definito un profilo base che specifica differenti regole, anche nell organizzazione degli aspetti, e delle relazioni che devono essere considerare tra le parti di informazioni contenute nei relativi file WSDL, messaggi SOAP e UDDI entries, per facilitare la comunicazione fra diversi servizi.

4 Web Services & Testing Un Web services è un sistema software, modellato per permettere l interoperabilità macchina macchina. Ha una interfaccia descritta in un formato WSDL. Altri sistemi interagiscono con il Web Service nel modo prescritto dalla sua descrizione, usando messaggi SOAP, tipicamente convertiti con l uso di Http e serializzazione XML insieme agli altri standard relativi al Web Il Testing è la verifica dinamica del comportamento di un sistema, eseguita su un insieme finito di casi di test, opportunamente selezionati fra un dominio di input, rispetto alla specifica di un comportamento atteso

5 Testing di Web Services Disciplina immatura Forte bisogno di ricerca, sia nel campo accademico che in quello industriale La ricerca non da attenzione alla comunità di testing dei WSs Cause: Continua sovrapposizione con gli altri paradigmi emergenti ( CBSE) Dettagli tecnici che questa disciplina implica Il testing dei Web Services é una disciplina difficile Architetture debolmente accoppiate richiedono alta qualità Comportamento run time: scoperta e collegamento con altri Web Services Invocazioni da unità sconosciute, con richieste imprevedibili tra fornitore e richiedente Esecuzione concorrente e condivisione di oggetti Problemi di performance Problemi di sicurezza

6 Concetti Base L architettura dei Web Service è basata su tre elementi principali: WSDL (Web Service Description Language): linguaggio usato per descrivere WSs Basato su XML Specifica: Servizi offerti, Punti di accesso, Formato dei parametri di input/output Meccanismi usati per scambiare i messaggi UDDI (Universal Description and Discovery Integration): tecnologia sviluppata dal consorzio OASIS Definisce un meccanismo comune per fornire e recuperare le informazioni dei WS SOAP (Simple Object Access Protocol): protocollo usato per scambiare messaggi basati su XML Fornisce la comunicazione tra Web Services

7 Responsabile dello sviluppo e della pubblicazione del Web Service attraverso il Service Broker Architettura dei Web Services Coinvolge 3 Attori Service Requestor Responsabile dell invocazione del servizio Localizza il Web Service attraverso il service broker Invoca i servizi e li esegue Service Broker Comunemente conosciuto come registro dei servizi Responsabile della registrazione, ricerca e localizzazione dei servizi Service Provider

8 COYOTE FRAMEWORK DI TESTING BASATO SU XML

9 Coyote: un Framework di Testing basato su XML Usato per testare Web Services in modo rapido Composto da due componenti: Test Master: permette ai tester di specificare gli scenari ed i casi di test. Permette di eseguire analisi: delle dipendenze, di completezza e di consistenza, e convertire le specifiche WSDL in scenari di test Test Engine: interagisce con il Web Service sotto test e fornisce le informazioni esaminate Si focalizza sul testing di integrazione

10 Architettura di Coyote Test Master Mappa le specifiche WSDL in scenari di test Estrae le informazioni dalle interfacce del file WSDL e mappa gli scenari di test Test Engine Legge lo script di test prodotto dal test master ed esegue il test sul Web Services Registra traccia dell esecuzione Invia i risultati al test master

11 WS S TEST HARNESS A FUNCTIONAL, LOAD, AND PERFORMANCE TESTING FRAMEWORK FOR WSs

12 Web Service's Test Harness Supporta: Testing delle performance, Testing del carico di lavoro Stress testing CHO testing (ore continue di operazione) per Web Services. E un framework configurabile Permette la simulazione di utenti multipli Può variare il numero di iterazioni dei casi di test

13 THE AUDITION FRAMEWORK FOR TESTING WSs INTEROPERABILITY

14 The Audition Framework: per testare l Interoperabilità dei WSs Estendere il ruolo dell UDDI dal corrente servizio di directory passivo Valida i comportamenti dei WSs prima della registrazione reale Si focalizza sull interoperabilità dei WSs L audizione dipende dalle specifiche del Web Service Propone l estensione del WSDL Introduzione di Protocol State Machine: diagramma di comportamento appena introdotto in UML 2.0

15 Protocol State Machine Introdotto in UML 2.0 allo scopo di supportare lo sviluppo basato su componenti E un particolare tipo di macchina a stati che si focalizza su Transazione Stati Regole Dirige l ordine di esecuzione delle operazioni Fornisce regole chiare per descrivere interazioni di comunicazione tra differenti oggetti Etichette sulle transizioni [ pre condizione]operazione/[post condizione]

16 Architettura dell Audition

17 TESTING WSs USING PROGRESSIVE GROUP TESTING

18 Testing Web Services usando Progressive Group Testing Si focalizza sullo unit, e sull integration testing Propone tecniche di progressive group testing Testare un numero elevato di WSs L idea è testare in gruppo i WSs che realizzano stesse funzionalità Aumento progressivo dei casi di test Consiste di due fasi: Prescreening Testing group a run time Prescreening: processo veloce e sbrigativo Elimina immediatamente i candidati improbabili La fase di group testing: processo elaborato I risultati del test sono valutati con un meccanismo di voto basato su una maggioranza pesata Obiettivo: selezionare il WS migliore fra tutti quelli disponibili

19 Testing Web Services usando Progressive Group Testing Il servizio di voto è usato come oracolo: principio di maggioranza Peso del Web Service entrante = 0 Peso degli altri Web Service = Reliability Il peso di un WS aumenta se l output prodotto è uguale all output di maggioranza La raffinatezza del testing aumenta progressivamente ed il vincitore finale sarà testato in maniera rigorosa Le strategie per escludere un Web Service si basano sul Numero di Casi di Test che un Web Service fallisce ad un livello della gerarchia Criticità dei Casi di Test che un Web Service fallisce ad un livello della gerarchia Importanza dei Casi di Test che un Web Service fallisce ad un livello della gerarchia

20 Progressive Group Testing e Group testing Schema Il numero di casi di test applicato ad un Web Service aumenta in maniera progressiva rispetto al livello della gerarchia CSn è un composite service composto da S1, s2,,sn S1 è funzionalmente equivalente a S11, S12,,S1m S1 viene valutato

21 AUTOMATIC CONFORMANCE TESTING OF WSs

22 Automatic Conformance Testing di Web Services Esegue conformance e stress testing Introduce agenzie di high-quality service discovery forniscono garanzie sulla compatibilità delle interfacce e l implementazione dei servizi Utilizza discovery service per il testing automatico per la validazione dei WS prima della fase di registrazione Prevede l aumento della descrizione sintattica e comportamentale del servizio Utilizzo di regole GT specificano le operazioni individuali del servizio

23 Dinamica dell Automatic Conformance Testing 1. P fa l upload del documento WSDL e delle regole GT 2. U genera automaticamente un insieme di specifiche di test dalle regole GT 3. I casi di test concreti, sono generati ed eseguiti in remoto usando la testing interface T P = Fornitore U = Discovery Service 4. I risultati dei casi di test sono giudicati sulla base dei Risultati ritornati Stati concettuali del servizio

24 Il testing è quindi usato per dimostrare la conformità della specifica con l implementazione Descrizione dei Web Services con Regole GT Modellano il comportamento del servizio fornito, ed i requisiti del client Raffinano le signature del servizio specificando l utilizzo e la modifica dei parametri e dei dati interni Specificano i comportamenti del Web Services a livello concettuale Note: Lo stato del servizio di cui è descritta l evoluzione, non coincide con lo stato concreto dei dati Il testing è eseguito sull implementazione del Web Services I casi di test sono generati dalla specifica

25 Generazione di Casi di Test L idea è generare casi di test per testare: la conformità dell implementazione con l utilizzo di regole individuali generare sequenze di test stressando le interazioni fra le regole E possibile fare una distinzione fra Generazione dei casi di test per servizi singoli, Generazione di test per sequenze di operazioni. La generazione dei casi di test per servizi singoli usa una strategia basata sul dominio, conosciuta anche come partition testing La generazione di casi di test per sequenze di operazioni, garantisce che lo stato del sistema evolverà secondo la specifica, almeno per quanto riguarda le coppie di invocazione dei servizi.

26 Esecuzione di Casi di Test Un caso di test ha una pre condizione consiste in un insieme di vincoli, i quali devono essere soddisfatti nello stato corrente Assumiamo che un Web Service fornisca un interfaccia di testing con tre caratteristiche addizionali di base: La possibilità di settare lo stato iniziale del servizio Un insieme di operazioni Un implementazione della funzione di astrazione Uno stato che permette l esecuzione di un dato caso di test è ottenuto scegliendo uno stato iniziale dall insieme degli stati forniti dal Web Service, e cercando una sequenza adeguata di richieste che cambiano lo stato scelto in uno che soddisfa la pre condizione dello stato del caso di test. Nell esecuzione di un caso di test, lo stato finale del Web Service è recuperato e confrontato con lo stato finale generato dalle regole, nel caso siano uguali il caso di test è stato superato con successo.

27 TOWARD CONTRACT-BASED TESTING OF WSs

28 Testing basato sui Contratti Il meccanismo per realizzare questa visione architettura aperta e dinamica conta su due assunzioni: Che i servizi forniti siano funzionalmente corretti rispetto alle loro descrizioni Che il matching fra descrizioni ed esigenze sia sufficiente per stabilire l interoperabilità fra fornitore e richiedente. Design by Contract è una tecnica OO che ha delle somiglianze nell instaurare contratti legali Un contratto descrive cosa una componente si aspetta dai suoi client e cosa un client può aspettarsi dalla componente

29 Contratti Un contratto è definito tipicamente con asserzioni e concetti associati Una asserzione è una espressione booleana valutata a run time durante l esecuzione del sistema. In un sistema software valido, tutte le asserzioni sono valutate a vero Nel design by contract identifichiamo tre tipi di asserzioni: Pre Condizione: specifica le condizioni da considerate prima dell esecuzione di un operazione Post Condizione: valutate dopo il completamento di una operazione Invariant: valutato sempre prima e dopo l esecuzione di una operazione

30 Contratti Durante il processo di sviluppo di un Web Service siamo di fronte alla rappresentazione di tre livelli differenti di contratti: Livello Implementazione: gli attuali Web Services, sono nella maggior parte dei casi basati su linguaggi di programmazione orientati agli oggetti, e la maggior parte di questi linguaggi supporta solo contratti sintattici Livello XML: i linguaggi di descrizione dei Web Service definiscono le interfacce come una collezione di porte, in termini di signature e operazioni Livello di modello: il cui scopo è derivare contratti a livello di implementazione in modo automatico dalle specifiche e cioè dal modello

31 Specifiche di Contratti basate su modelli Un modello di un Web Service dovrebbe comprendere Interfacce fornite Modello di dati visibili all esterno del servizio (tutti i tipi di dati necessari per comunicare con i suoi clienti) Operazioni offerte dal servizio Per descrivere un interfaccia sono state usate interfacce UML Per rappresentare i modelli di dati di si utilizzano Class Diagram Ai Class Diagram si applicano Regole GT

32 Contratti Forniti e Richiesti Fornitore La parte sinistra della regola specifica le pre condizioni La parte destra della regola descrive la post condizione Richiedente La parte sinistra della regola rappresenta l informazione che questo è disposto a fornire al servizio La parte destra della regola rappresenta la situazione che questo vuole raggiungere usando il servizio.

33 In Conclusione Usare design by contract, a livello di implementazione è un modo per introdurre informazioni delle specifiche nel codice stesso Questo approccio si interessa al testing funzionale derivato dai contratti Assicura che il prodotto consegnato corrisponda alle specifiche Ha senso usare i contratti forniti per la creazione di casi di test che per l oracolo del test Potrebbe divenire impossibile o troppo costoso chiamare altri Web Services al solo scopo del testing Obiettivo del framework: usare i contratti richiesti per guidare la simulazione

34 STRESS TESTING WEB SERVICES

35 Stress Testing su Web Services Lo stress testing è un metodo valido per scoprire difetti di codice Creato per affaticare il software allocando un carico di lavoro molto elevato Può scoprire bug poco noti, che altre tecniche di testing non avrebbero mai rilevato Considerato uno dei Testing più efficienti Il processo è spesso confuso da altri elementi del sistema o di testing funzionali I metodi impiegati, a volte, non sono correttamente implementati oppure non hanno un giusto approccio

36 Bug Rilevati dallo Stress Testing Ci sono diversi tipi di bug che ci si aspetta di scoprire con lo stress testing Due di questi sono: Memory Leaks: estremamente difficile da rilevare con l utilizzo di semplici test funzionali. Richiede la ripetizione in successione di operazioni, al fine di un consumo elevato di memoria Concorrenza e Sincronizzazione: i test di stress primeggiano nella scoperta di problemi di concorrenza, dovuti ai differenti percorsi nel codice e alle condizioni temporali. Come regola generale, uno stress test esegue il più a lungo possibile, tutte, o quasi tutte le combinazioni dei path del codice, al fine di rilevare i problemi di concorrenza e sincronizzazione

37 Condizioni dello Stress Testing Ci sono quattro condizioni di base che i test di stress dovrebbero applicare: Ripetizione = Esecuzione ripetuta di una operazione (condizione più ovvia) Concorrenza = Esecuzione simultanea di differenti operazioni In pratica si eseguono diversi test nello stesso momento Dimensioni = Ammontare del carico di lavoro applicato ad ogni singola operazione Variazione Casuale = Elemento di casualità d ordine.

38 SCENARIO-BASED WEB SERVICE TESTING WITH DISTRIBUTED AGENTS

39 Testing di WSs basato sullo Scenario con Agenti Distribuiti Fornisce caratteristiche per effettuare testing funzionale e non funzionale Propone Verifica Automatica del Servizio con la Registrazione UDDI Estendere WSDL Dipendenze di input-output; Sequenze di invocazioni; Descrizioni funzionali gerarchiche; Specifiche di sequenze concorrenti. Scoperta e collegamento dinamico di WSs Analisi di Sistema Simulazione

40 Analisi e Specifica dello Scenario L interoperabilità dei Web Services definisce tre scenari di interazione One-Way Richiesta/Risposta Sincrona Basic Callback Per derivare gli scenari, il tester può usare tre passi Derivare le specifiche dello scenario per ogni sottosistema Specificare le interazioni fra ogni coppia di sottosistemi Derivare gli scenari globali per il sistema distribuito combinando gli scenari per i sottosistemi individuali

41 Testing di WSs basato sullo Scenario con Agenti Distribuiti

42 Componenti Utilizzate Test Master Amministra le informazioni d interazione e dipendenza tra i sistemi Genera gli script dei test e i casi di test Inizia il testing Verifica la struttura di interazione Test Agent Mappa le pre condizioni e gli eventi degli script dei test Esegue il testing Verifica i risultati confrontandoli con le post condizioni Invia i risultati del test al testmaster Test Monitor Controlla lo scambio dei messaggi Traccia i cambiamenti di stato del sistema

43 Algoritmo di Esecuzione Un tester specifica uno o un gruppo di scenari, ed inizia l esecuzione Il test master carica i dati dello scenario Il test master genera gli script di test con i dati dello scenario Il test master richiede al test agent di eseguire la funzione di sistema Il test agent unisce e invoca la funzione del sistema Il test monitor cattura i messaggi scambiati fra i sistemi, ed i cambiamenti di stato del sistema Il test monitor cattura le informazioni e le rimanda al test master e al test agent Il test master colleziona le informazioni relative allo scenario e verifica i risultati del test e l interazione fra i sistemi

44 ANALISI E CONFRONTO DEI FRAMEWORK ANALIZZATI

45 Componenti usate dai Framework Framework Testing Web Services Using Progressive Group Testing Coyote: An XML-Based Framework Web Service's test Harness: Testing di Web Service basato sullo Scenario con Agenti Distribuiti Componenti Usate WS- I Monitor: piazzato fra client e WS, registra tutti i messaggi: richieste e risposte; WS- I Analyzer: controlla ogni messaggio nel registro in previsione dei requisiti di interoperabilità. Test Master: permette ai tester di specificare gli scenari e i casi di test, così come eseguire le diverse analisi; Test Engine: interagisce con il WS sotto test e fornisce le informazioni esaminate. Configurator: fa il setting iniziale del test; Runtime Engine: amministra gli altri sottosistemi; Report Generator: processa i risultati dei test. Test Master: genera gli script e i casi di test; invia i commenti ai test agent; Test Agent: esegue e verifica i risultati del testing; Test Monitor: controlla lo scambio dei messaggi fra richiedenti e fornitore.

46 Definiscono generalmente interfacce chiare per specificare servizi, allo scopo di aumentare le probabilità che i servizi sviluppati indipendentemente potranno essere in grado di interoperare correttamente Stakeholder Interessati nel Testing dei Web Services Principalmente ci sono tre tipi di stakeholder: Sviluppatori di Web Services (Service Provider) Interessato nella valutazione del risultato, ed in particolare se questo corrisponde al risultato aspettato Valutazione in termini di funzionalità, interazione con altre componenti, e qualità del servizio Fornitore Intermediario del Servizio (Service Broker Provider) Interessate nel testing dei Web Services prima della registrazione Agenzie di Standard (Standards Body)

47 Stakeholder Interessati nel Testing dei Web Services Framework Sviluppatore Fornitore Intermedio Agenzia di Standard Audition Framework for Testing Web Services Interoperability X X Testing Web Services Using Progressive Group Testing X X X Coyote: An XML-Based Framework for Web Services Testing X Web Service's Test Harness X Automatic Conformance Testing of Web Services X X Towards Contract-based Testing of Web Services X X Stress Testing Web Services X X X Testing di Web Service basato sullo Scenario con Agenti Distribuiti X X X

48 Documenti Utilizzati per Derivare i Casi di Test Il documento su cui si basano i casi di test è il file WSDL Basato su XML Le informazioni all interno del file WSDL specificano Servizi offerti Punti di accesso, Formato dei parametri di input/output Meccanismi usati per scambiare i messaggi Queste informazioni sono usate per derivare casi di test, con cui verranno, poi, testati i Web Services Conclusione comune a tutti i framework Insufficienza e l inadeguatezza delle specifiche WSDL nel fornire informazioni adeguate su cui fondare i casi di test

49 Specifiche Utilizzate e Tipo di Estensioni Proposte Framework The Audition Framework for Testing Web Services Interoperability Testing Web Services Using Progressive Group Testing Coyote: An XML-Based Framework for Web Services Testing Specifiche e Documenti Utilizzati File WSDL + Protocol State Machine (PSM) File WSDL + Proposta di Estendere WSDL File WSDL Web Service's test Harness Automatic Conformance Testing of Web Services Towards Contract-based Testing of Web Services Stress Testing Web services Testing di Web Service basato sullo Scenario con Agenti Distribuiti File WSDL + Regole GT File WSDL + Contratto File WSDL + Proposta di Estendere WSDL

50 Tipi di Estensioni Proposte Protocollo State Machine Diagramma di comportamento UML Particolare tipo di macchina a stati Si focalizza nelle transazioni di stati e nelle regole Dirige l ordine di esecuzione delle operazioni Regole GT: specificano i comportamenti del Web Services a livello concettuale Raffina la signature del servizio A livello di modello, lo stato è rappresentato da un grafico degli attributi, visualizzato come un Object Diagram UML Contratto: accordo formale, in cui vengono espressi diritti e doveri di entrambe le parti Descrive cosa le componenti si aspettano dai Client e cosa questi possono aspettarsi dalle componenti

51 Tipo di Testing Supportato Prima classificazione Testing basato su codice Structural testing Testing basato sulla specifia Functional o conformance testing Seconda classificazione Unit Testing Integration Testing System Testing Recovery testing Security testing Stress testing Testing delle performance Regression testing Usato, di solito per verificare le funzionalità del sistema dopo aver effettuato modifiche.

52 Tipo di Testing Supportato Regression Testing Testing Funzionale Testing Carico di Lavoro Testing Performance Stress Testing Unit Testing Testing di Integrazione

53 Vantaggi e Innovazioni Framework The Audition Framework for Testing Web Services Interoperability Testing Web Services Using Progressive Group Testing Coyote: An XML-Based Framework for Web Services Testing Web Service's test Harness: A Functional, Load, and Performance Testing Framework for Web Services Vantaggi e Innovazioni Estende il ruolo dell UDDI dal vecchio servizio di directory passivo; Valuta dinamicamente l interoperabilità dei WS; Migliora le specifiche dei WS con i protocol state machine (PSM); Garantisce che tutti i servizi registrati possono collaborare. Introduce un sistema di voto pesato con il quale si costruisce l oracolo; I pesi dei voti si basano sull affidabilità dei WSs sotto test; Testa un gran numero di WSs; I WSs sono valutati sulla base di misure oggettive; Solo il migliore WS viene accettato; Il testing viene effettuato mentre il WS sta lavorando realmente nell ambiente operazionale reale, quindi non richiede tempo supplementare. Testa i WSs in modo rapido; Fornisce supporti per il regression testing; Può essere configurato per effettuare semplici test o testing distribuito. Supporta diversi tipi di testing: performance, carico di lavoro, stress testing e CHO testing; Si sta pensando di estendere Harness per applicazioni all infuori dei WSs.

54 Vantaggi e Innovazioni Automatic Conformance Testing of Web Services Towards Contract-based Testing of Web Services Stress Testing Web services Testing di Web Service basato sullo Scenario con Agenti Distribuiti Con questo framework il testing viene automatizzato; Aumento della descrizione sintattica del WS. Introduzione di regole di trasformazione grafiche per modellare il comportamento del servizio fornito ed i requisiti del client, permettendo la generazione automatica dei casi di test; Per risolvere il problema dei comportamenti scorretti di fornitori maliziosi, introduce un servizio High-Quality Service Discovery; Prevede la generazione di casi di test per servizi singoli e per sequenze di operazioni. Estende il WSDL con l uso di contratti; I contratti possono essere sviluppati su tre livelli differenti: implementazione, XML e di modello; Risolve i problemi: di costo nel chiamare altri WSs al solo scopo di testare un WS ed il problema che si verifica quando il WS sotto test chiama un WS non ancora conosciuto. Riesce a scoprire bug che altri testing non riescono a trovare; Fondamentale per migliorare la qualità dei WSs. Verifica automatica del servizio con la registrazione; Aggiunge quattro tipi di estensioni al WSDL: dipendenze di input/output, sequenze di invocazioni, descrizione funzionale gerarchica e specifiche di sequenze concorrenti di sequenze; Scoperta e collegamento dinamico dei WSs; Permette le seguenti analisi: completezza e consistenza, dei rischi, della tempestività, dell uso, e delle dipendenze. Migliora il servizio UDDI; Permette testing funzionale e non funzionale.

55 Svantaggi e Note Negative Framework The Audition Framework for Testing Web Services Interoperability Testing Web Services Using Progressive Group Testing Coyote: An XML-Based Framework for Web Services Testing Web Service's test Harness: A Functional, Load, and Performance Testing Framework for Web Services Svantaggi e Note Negative Richiede uno sforzo da parte degli sviluppatori dei servizi; La generazione automatica di un oracolo non è semplice e richiede molte informazioni; Se un fornitore disonesto sottomette migliaia di WS per ottenere la maggioranza, c è la possibilità che la maggioranza dei voti fallisca nello scegliere il miglior servizio. Ad una prima analisi non presenta grandi svantaggi. Ad una prima analisi non presenta grandi svantaggi.

56 Svantaggi e Note Negative Automatic Conformance Testing of Web Services Towards Contract-based Testing of Web Services Stress Testing Web services Testing di Web Service basato sullo Scenario con Agenti Distribuiti I fornitori del servizio possono fornire maliziosamente modelli migliori dei servizi. I contratti sviluppati a livello di Implementazione e XML sono difficili da leggere e da scrivere; Lascia molte questioni aperte: come la definizione di un linguaggio basato su XML per la rappresentazione di contratti; una notazione basata su UML per contratti; ed infine un motore di simulazione per i servizi richiesti. Non può essere visto come un Framework vero e proprio; Non è semplici da progettare; Richiede un esecuzione molto lunga. Non presenta note negative.

57 Conclusioni Problema dell inadeguatezza delle specifiche WSDL Idea: Trovare un formalismo comune che risolve il problema Inutile concentrare l attenzione sull architettura Presentazione IdealWSTF Impressioni sul lavoro svolto Realizzazione del lavoro e criteri utilizzati

58 DOMANDE?

Introduzione ai Web Services Alberto Polzonetti

Introduzione ai Web Services Alberto Polzonetti PROGRAMMAZIONE di RETE A.A. 2003-2004 Corso di laurea in INFORMATICA Introduzione ai Web Services alberto.polzonetti@unicam.it Introduzione al problema della comunicazione fra applicazioni 2 1 Il Problema

Dettagli

1 Vincenzo de Stefano SAP e Servizi Web http://desvino.altervista.org

1 Vincenzo de Stefano SAP e Servizi Web http://desvino.altervista.org 1 Vincenzo de Stefano SAP e Servizi Web http://desvino.altervista.org Prefazione. Da Hello World a Hello World Wide Web. Hello World è la prima frase stampata a video dal primo programma di esempio scritto

Dettagli

Sicurezza nei Web Services: Migrazione dell autenticazone di Web Services da ticket di sessione a WS-Security con token SAML

Sicurezza nei Web Services: Migrazione dell autenticazone di Web Services da ticket di sessione a WS-Security con token SAML Master Universitario di II livello in Interoperabilità Per la Pubblica Amministrazione e Le Imprese Sicurezza nei Web Services: Migrazione dell autenticazone di Web Services da ticket di sessione a WS-Security

Dettagli

Verifica e Validazione (V & V) Software e difetti. Processo di V & V. Test

Verifica e Validazione (V & V) Software e difetti. Processo di V & V. Test Software e difetti Il software con difetti è un grande problema I difetti nel software sono comuni Come sappiamo che il software ha qualche difetto? Conosciamo tramite qualcosa, che non è il codice, cosa

Dettagli

Gestione Requisiti. Ingegneria dei Requisiti. Requisito. Tipi di Requisiti e Relativi Documenti. La gestione requisiti consiste in

Gestione Requisiti. Ingegneria dei Requisiti. Requisito. Tipi di Requisiti e Relativi Documenti. La gestione requisiti consiste in Ingegneria dei Requisiti Il processo che stabilisce i servizi che il cliente richiede I requisiti sono la descrizione dei servizi del sistema Funzionalità astratte che il sistema deve fornire Le proprietà

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

automation using workflow technology and web services Vassilacopoulos Med. Inform. (September 2003) vol. 28, no. 3,

automation using workflow technology and web services Vassilacopoulos Med. Inform. (September 2003) vol. 28, no. 3, Emergency healthcare process automation using workflow technology and web services M. Poulymenopoulou, F. Malamateniou, G. Vassilacopoulos Med. Inform. (September 2003) vol. 28, no. 3, 195 207 Processo

Dettagli

Considera tutti i requisiti funzionali (use cases) NON deve necessariamente modellare i requisiti non funzionali

Considera tutti i requisiti funzionali (use cases) NON deve necessariamente modellare i requisiti non funzionali Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Progettazione OO E. TINELLI Punto di Partenza Il modello di analisi E una rappresentazione minima del

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

Web Service Architecture

Web Service Architecture Giuseppe Della Penna Università degli Studi di L Aquila dellapenna@di.univaq.it http://dellapenna.univaq.it Engineering IgTechnology Info92 Maggioli Informatica Micron Technology Neta Nous Informatica

Dettagli

Laboratorio di Progettazione di Sistemi Software Introduzione

Laboratorio di Progettazione di Sistemi Software Introduzione Laboratorio di Progettazione di Sistemi Software Introduzione Valentina Presutti (A-L) Riccardo Solmi (M-Z) Indice degli argomenti Introduzione all Ingegneria del Software UML Design Patterns Refactoring

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

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

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

Appendice D. D. Web Services

Appendice D. D. Web Services D. D.1 : cosa sono I cosiddetti sono diventati uno degli argomenti più attuali nel panorama dello sviluppo in ambiente Internet. Posti al centro delle più recenti strategie di aziende del calibro di IBM,

Dettagli

Software Testing. Lezione 2 Livelli di test. Federica Spiga. federica_spiga@yahoo.it. A.A. 2010-2011 Autori: F.Rabini/F.Spiga

Software Testing. Lezione 2 Livelli di test. Federica Spiga. federica_spiga@yahoo.it. A.A. 2010-2011 Autori: F.Rabini/F.Spiga Software Testing Lezione 2 Livelli di test Federica Spiga federica_spiga@yahoo.it A.A. 2010-2011 Autori: F.Rabini/F.Spiga 1 2 Livelli di test Unit Testing Integration Testing System Testing Unit Testing

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

5. Requisiti del Software II

5. Requisiti del Software II 5. Requisiti del Software II Come scoprire cosa? Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 5. Requisiti del Software II 1 / 22 Sommario 1 Generalità

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

ALLEGATO C STANDARD TECNICI DELLA BORSA CONTINUA NAZIONALE DEL LAVORO

ALLEGATO C STANDARD TECNICI DELLA BORSA CONTINUA NAZIONALE DEL LAVORO ALLEGATO C STANDARD TECNICI DELLA BORSA CONTINUA NAZIONALE DEL LAVORO Standard tecnici Gli standard tecnici di riferimento adottati sono conformi alle specifiche e alle raccomandazioni emanate dai principali

Dettagli

Seminario di Sistemi Distribuiti: RPC su SOAP

Seminario di Sistemi Distribuiti: RPC su SOAP Corso di Sistemi Distribuiti Prof. S. Balsamo Seminario di Sistemi Distribuiti: RPC su SOAP [ 777775] 1 INTRODUZIONE 3 2 RPC 3 3 SOAP (SIMPLE OBJECT ACCESS PROTOCOL) 3 4 UTILIZZO DI SOAP COME PROTOCOLLO

Dettagli

Corso di Laurea Triennale in Ingegneria Informatica. Corso di Ingegneria del software A. A. 2004-2005. Marina Mongiello

Corso di Laurea Triennale in Ingegneria Informatica. Corso di Ingegneria del software A. A. 2004-2005. Marina Mongiello Corso di Laurea Triennale in Ingegneria Informatica Corso di Ingegneria del A. A. 2004-2005 1 La progettazione È applicata indipendentemente dal modello di processo utilizzato. Parte dal punto in cui sono

Dettagli

Web Services. Scoperta del servizio UDDI. Descrizione del servizio WSDL. Accesso al servizio SOAP XML. Starto di comunicazione HTTP

Web Services. Scoperta del servizio UDDI. Descrizione del servizio WSDL. Accesso al servizio SOAP XML. Starto di comunicazione HTTP Web Services I web services servono a rendere interoperabili le applicazioni e favoriscono la loro integrazione. I servizi web sono applicazioni software che possono essere scoperte, descritte e usate

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

Principi dell ingegneria del software Relazioni fra

Principi dell ingegneria del software Relazioni fra Sommario Principi dell ingegneria del software Leggere Cap. 3 Ghezzi et al. Principi dell ingegneria del software Relazioni fra Principi Metodi e tecniche Metodologie Strumenti Descrizione dei principi

Dettagli

Progetto interregionale ICAR Interoperabilità e Cooperazione Applicativa tra le Regioni.

Progetto interregionale ICAR Interoperabilità e Cooperazione Applicativa tra le Regioni. <Task AP3> Progetto interregionale ICAR Interoperabilità e Cooperazione Applicativa tra le Regioni AP3-Documento Descrittivo degli Accordi di Servizio Versione AP3-specificaADSv1.2.1.doc Pag. 1

Dettagli

Processi (di sviluppo del) software. Fase di Analisi dei Requisiti. Esempi di Feature e Requisiti. Progettazione ed implementazione

Processi (di sviluppo del) software. Fase di Analisi dei Requisiti. Esempi di Feature e Requisiti. Progettazione ed implementazione Processi (di sviluppo del) software Fase di Analisi dei Requisiti Un processo software descrive le attività (o task) necessarie allo sviluppo di un prodotto software e come queste attività sono collegate

Dettagli

Modeling and Testing of Web Services

Modeling and Testing of Web Services Modeling and Testing of Web Services Andrea Polini Dipartimento di Matematica ed Informatica Università degli Studi di Camerino andrea.polini@unicam.it (Andrea Polini) Modeling and Testing of Web Services

Dettagli

Correttezza. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 10. A. Miola Novembre 2007

Correttezza. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 10. A. Miola Novembre 2007 Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 10 Correttezza A. Miola Novembre 2007 http://www.dia.uniroma3.it/~java/fondinf1/ Correttezza 1 Contenuti Introduzione alla correttezza

Dettagli

Presentazione di Cedac Software

Presentazione di Cedac Software Agenda Presentazione di Cedac Software SOA ed ESB Analisi di un caso studio Esempi Q&A Presentazione di Cedac Software 1 2 Presentazione di Cedac Software S.r.l. Divisione Software Azienda nata nel 1994

Dettagli

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

Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica. Ingegneria del Software. Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Ingegneria del Software La fase di Test Giulio Destri Ing. del Software: Test - 1 Scopo del modulo Definire

Dettagli

Indice. Prefazione alla seconda edizione italiana XVII. Introduzione. Parte 1 Introduzione all UML e all UP 1

Indice. Prefazione alla seconda edizione italiana XVII. Introduzione. Parte 1 Introduzione all UML e all UP 1 00PrPag 19-07-2006 15:22 Pagina V Prefazione alla seconda edizione italiana Introduzione XV XVII Parte 1 Introduzione all UML e all UP 1 Capitolo 1 UML 3 1.1 Contenuto del capitolo 3 1.2 Cos è l UML? 3

Dettagli

Web Services con Axis Delia Di Giorgio Anna Celada 1 marzo 2005

Web Services con Axis Delia Di Giorgio Anna Celada 1 marzo 2005 Sommario Web Services con Axis Delia Di Giorgio Anna Celada 1 marzo 2005 Introduzione.................................................................................. 1 SOAP........................................................................................

Dettagli

Processi BPEL. Obiettivi

Processi BPEL. Obiettivi Università degli studi di Roma Tor Vergata Facoltà di Ingegneria Processi BPEL Corso di Sistemi Distribuiti Stefano Iannucci Anno accademico 2009/10 Email: sd@chmod.it Obiettivi Esercitazione pratica su:

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 DERIVAZIONE DEI REQUISITI FUNZIONALI. Obiettivi Specifica dei Requisiti Assembly Lines Esercizi

Sistemi Informativi DERIVAZIONE DEI REQUISITI FUNZIONALI. Obiettivi Specifica dei Requisiti Assembly Lines Esercizi Sistemi Informativi DERIVAZIONE DEI REQUISITI FUNZIONALI Obiettivi Specifica dei Requisiti Assembly Lines Esercizi Obiettivi Nelle lezioni precedenti abbiamo descritto come modellare i requisiti funzionali

Dettagli

Interoperabilità e cooperazione applicativa tra sistemi informativi

Interoperabilità e cooperazione applicativa tra sistemi informativi Interoperabilità e cooperazione applicativa tra sistemi informativi Michele Ruta Dipartimento di Ingegneria Elettrica e dell Informazione Politecnico di Bari 1di 29 Indice Introduzione ai Port Community

Dettagli

Architettura SW Definizione e Notazioni

Architettura SW Definizione e Notazioni Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Stili Architetturali E. TINELLI Architettura SW Definizione e Notazioni Definizione ANSI/IEEE Std Std1471-2000

Dettagli

Realizzazione di un prototipo di un software web based per la gestione di un inventario comunale

Realizzazione di un prototipo di un software web based per la gestione di un inventario comunale tesi di laurea inventario comunale Anno Accademico 2009/2010 relatore Ch.mo prof. Porfirio Tramontana correlatore Ch.mo Ing. Luigi Pontillo candidato Michele Vitelli Matr. 534 2170 Redazione dell Inventario

Dettagli

COME FARE PER. ARMONIZZARE IL SITO COL SISTEMA DI GESTIONE DOCUMENTALE DELL ENTE

COME FARE PER. ARMONIZZARE IL SITO COL SISTEMA DI GESTIONE DOCUMENTALE DELL ENTE COME FARE PER. ARMONIZZARE IL SITO COL SISTEMA DI GESTIONE DOCUMENTALE DELL ENTE Flavia Marzano marzano@cibernet.it 10/05/2004 ARPA Club Forum PA 2004 Contenuti Cenni normativi Sistema di gestione documentale:

Dettagli

SISTEMI OPERATIVI DISTRIBUITI

SISTEMI OPERATIVI DISTRIBUITI SISTEMI OPERATIVI DISTRIBUITI E FILE SYSTEM DISTRIBUITI 12.1 Sistemi Distribuiti Sistemi operativi di rete Sistemi operativi distribuiti Robustezza File system distribuiti Naming e Trasparenza Caching

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

Real Time Control (RTC): modalità di invio dei dati

Real Time Control (RTC): modalità di invio dei dati C EQAS - CNR External Quality Assessment Schemes CNR - Istituto di Fisiologia Clinica Real Time Control (RTC): modalità di invio dei dati R. Conte, A. Renieri v.1.1-15/11/2012 Introduzione Il programma

Dettagli

4. Requisiti del Software

4. Requisiti del Software 4. Requisiti del Software Cosa? Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 4. Requisiti del Software 1 / 35 Sommario 1 Generalità 2 Categorizzazione

Dettagli

Fasi di creazione di un programma

Fasi di creazione di un programma Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo 41 Sviluppo di programmi Per la costruzione di un programma

Dettagli

Java Enterprise Edi.on. Gabriele Tolomei DAIS Università Ca Foscari Venezia

Java Enterprise Edi.on. Gabriele Tolomei DAIS Università Ca Foscari Venezia Java Enterprise Edi.on Gabriele Tolomei DAIS Università Ca Foscari Venezia Java Web Services Web Services: SOAP vs. RESTful 2 diversi.pi di Web Services I Web Services SOAP sono quelli classici Si basano

Dettagli

Sistemi e schedulazione in tempo reale

Sistemi e schedulazione in tempo reale Sistemi e schedulazione in tempo reale 1 Sistemi in tempo reale Sistemi di calcolo in cui la correttezza del funzionamento dipende criticamente dal tempo in cui i risultati sono prodotti. Possibili campi

Dettagli

Caso di Studio: Avant Dernier

Caso di Studio: Avant Dernier Caso di Studio: Avant Dernier Specifiche: Nel gioco si affrontano 4 giocatori, ciascuno individuato con un numero progressivo (da 1 a 4). Inizialmente, i giocatori ricevono 5 carte ciascuno, e una carta

Dettagli

Idee guida. Finite State Machine (1) Un automa a stati finiti è definito da una 5- pla: FSM = , dove: Finite State Machine (2)

Idee guida. Finite State Machine (1) Un automa a stati finiti è definito da una 5- pla: FSM = <Q,,, q0, F>, dove: Finite State Machine (2) Idee guida ASM = FSM con stati generalizzati Le ASM rappresentano la forma matematica di Macchine Astratte che estendono la nozione di Finite State Machine Ground Model (descrizioni formali) Raffinamenti

Dettagli

ISO Revisions Whitepaper

ISO Revisions Whitepaper ISO Revisions ISO Revisions ISO Revisions Whitepaper Processi e procedure Verso il cambiamento Processo vs procedura Cosa vuol dire? Il concetto di gestione per processi è stato introdotto nella versione

Dettagli

Metodologia Classica di Progettazione delle Basi di Dati

Metodologia Classica di Progettazione delle Basi di Dati Metodologia Classica di Progettazione delle Basi di Dati Metodologia DB 1 Due Situazioni Estreme Realtà Descritta da un documento testuale che rappresenta un insieme di requisiti del software La maggiore

Dettagli

Introduzione alla Progettazione per Componenti

Introduzione alla Progettazione per Componenti Introduzione alla Progettazione per Componenti Alessandro Martinelli 6 ottobre 2014 Obiettivo del Corso Il Progetto Software Reale Il Componente Software La Programmazione Ad Oggetti Fondamenti di Informatica

Dettagli

Ingegneria del Software Requisiti e Specifiche

Ingegneria del Software Requisiti e Specifiche Ingegneria del Software Requisiti e Specifiche Obiettivi. Affrontare i primi passi della produzione del software: la definizione dei requisiti ed il progetto architetturale che porta alla definizione delle

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

Allegato 1 CIG 58703795FF PROCEDURA DI AFFIDAMENTO PER LA FORNITURA DI UNA PIATTAFORMA PER SERVICE MASHUP AND DELIVERY CAPITOLATO TECNICO

Allegato 1 CIG 58703795FF PROCEDURA DI AFFIDAMENTO PER LA FORNITURA DI UNA PIATTAFORMA PER SERVICE MASHUP AND DELIVERY CAPITOLATO TECNICO PROCEDURA DI AFFIDAMENTO PER LA FORNITURA DI UNA PIATTAFORMA PER SERVICE MASHUP AND DELIVERY CAPITOLATO TECNICO SOMMARIO 1 Oggetto della Fornitura... 3 2 Composizione della Fornitura... 3 2.1 Piattaforma

Dettagli

Guida al livellamento delle risorse con logica Critical Chain (1^ parte)

Guida al livellamento delle risorse con logica Critical Chain (1^ parte) Paolo Mazzoni 2011. E' ammessa la riproduzione per scopi di ricerca e didattici se viene citata la fonte completa nella seguente formula: "di Paolo Mazzoni, www.paolomazzoni.it, (c) 2011". Non sono ammesse

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

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

Manuale di Integrazione IdM-RAS

Manuale di Integrazione IdM-RAS IdM-RAS Data: 30/11/09 File: Manuale di integrazione IdM-RAS.doc Versione: Redazione: Sardegna IT IdM-RAS Sommario 1 Introduzione... 3 2 Architettura del sistema... 4 2.1 Service Provider... 4 2.2 Local

Dettagli

Il linguaggio per la moderna progettazione dei processi aziendali

Il linguaggio per la moderna progettazione dei processi aziendali Il linguaggio per la moderna progettazione dei processi aziendali Organizzare un azienda sotto il profilo dei processi è oramai diventata una disciplina a cavallo tra la competenza aziendalistica ed informatica.

Dettagli

Evoluzione dei sistemi operativi (5) Evoluzione dei sistemi operativi (4) Classificazione dei sistemi operativi

Evoluzione dei sistemi operativi (5) Evoluzione dei sistemi operativi (4) Classificazione dei sistemi operativi Evoluzione dei sistemi operativi (4) Sistemi multiprogrammati! più programmi sono caricati in contemporaneamente, e l elaborazione passa periodicamente dall uno all altro Evoluzione dei sistemi operativi

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

Ministero del Lavoro e delle Politiche Sociali

Ministero del Lavoro e delle Politiche Sociali Ministero del Lavoro e delle Politiche Sociali Prospetto Informativo on-line Standard tecnici del sistema informativo per l invio telematico del Prospetto Informativo Documento: UNIPI.StandardTecnici Revisione

Dettagli

tesi di laurea Anno Accademico 2009/2010 relatore Ch.mo prof. Porfirio Tramontana candidato Pasquale Ludi Matr. 534\000438

tesi di laurea Anno Accademico 2009/2010 relatore Ch.mo prof. Porfirio Tramontana candidato Pasquale Ludi Matr. 534\000438 tesi di laurea Anno Accademico 2009/2010 relatore Ch.mo prof. Porfirio Tramontana candidato Pasquale Ludi Matr. 534\000438 Obbiettivi del progetto: Sviluppo di un applicazione Flex in AdobeFlashBuilder

Dettagli

CdL MAGISTRALE in INFORMATICA

CdL MAGISTRALE in INFORMATICA 05/11/14 CdL MAGISTRALE in INFORMATICA A.A. 2014-2015 corso di SISTEMI DISTRIBUITI 7. I processi : il naming Prof. S.Pizzutilo Il naming dei processi Nome = stringa di bit o di caratteri utilizzata per

Dettagli

SVILUPPO ONTOLOGIE PER LA GESTIONE DOCUMENTALE E LORO INTEGRAZIONE ALL INTERNO DI UNA PIATTAFORMA WEB

SVILUPPO ONTOLOGIE PER LA GESTIONE DOCUMENTALE E LORO INTEGRAZIONE ALL INTERNO DI UNA PIATTAFORMA WEB Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica SVILUPPO ONTOLOGIE PER LA GESTIONE DOCUMENTALE E LORO INTEGRAZIONE ALL INTERNO DI UNA PIATTAFORMA WEB Relatore Chiarissimo

Dettagli

Problemi, Algoritmi e Programmi

Problemi, Algoritmi e Programmi MASTER Information Technology Excellence Road (I.T.E.R.) Problemi, Algoritmi e Programmi Maurizio Palesi Salvatore Serrano Master ITER Informatica di Base Maurizio Palesi, Salvatore Serrano 1 Introduzione

Dettagli

BPEL: Business Process Execution Language

BPEL: Business Process Execution Language Ingegneria dei processi aziendali BPEL: Business Process Execution Language Ghilardi Dario 753708 Manenti Andrea 755454 Docente: Prof. Ernesto Damiani BPEL - definizione Business Process Execution Language

Dettagli

7. Architetture Software

7. Architetture Software 7. Architetture Software progettare la struttura Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 7. Architetture Software 1 / 20 Scopo della fase di design

Dettagli

Seminario di Sistemi Distribuiti RPC su SOAP

Seminario di Sistemi Distribuiti RPC su SOAP Seminario di Sistemi Distribuiti RPC su SOAP Massimiliano Vivian [777775] Massimiliano Vivian 1 Introduzione La comunicazione delle informazioni è l elemento fondamentale per lo sviluppo dei sistemi. SOAP

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

Università degli studi di Ferrara. Sviluppo di un Web Service per la classificazione del suolo e sua integrazione sul Portale SSE

Università degli studi di Ferrara. Sviluppo di un Web Service per la classificazione del suolo e sua integrazione sul Portale SSE Università degli studi di Ferrara Facoltà di scienze MM.FF.NN. Corso di Laurea Specialistica in Informatica Sviluppo di un Web Service per la classificazione del suolo e sua integrazione sul Portale SSE

Dettagli

I metodi formali nel processo di sviluppo del software

I metodi formali nel processo di sviluppo del software I metodi formali nel processo di sviluppo del software I metodi formali consentono di creare una specifica più completa, uniforme e non ambigua di quelle prodotte usando i metodi convenzionali ed orientati

Dettagli

Il problema. ! Si chiede di sviluppare un applicazione per la

Il problema. ! Si chiede di sviluppare un applicazione per la Il problema! Si chiede di sviluppare un applicazione per la gestione del sistema bibliotecario universitario. La soluzione deve implementare le operazioni basilari per la gestione della biblioteca ed inoltre

Dettagli

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it Automazione Industriale (scheduling+mms) scheduling+mms adacher@dia.uniroma3.it Introduzione Sistemi e Modelli Lo studio e l analisi di sistemi tramite una rappresentazione astratta o una sua formalizzazione

Dettagli

5. Requisiti del Software II

5. Requisiti del Software II 5. Requisiti del Software II Come scoprire cosa? Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 5. Requisiti del Software II 1 / 42 Sommario 1 Generalità

Dettagli

SISTEMI E RETI 4(2) 4(2) 4(2) caratteristiche funzionali

SISTEMI E RETI 4(2) 4(2) 4(2) caratteristiche funzionali CL AS SE INFORMATICA 6(3) 6(4) - 6(4) SISTEMI E RETI 4(2) 4(2) 4(2) TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI COMPETENZE 3 Essere in grado di sviluppare semplici applicazioni

Dettagli

Obiettivo Principale: Aiutare gli studenti a capire cos è la programmazione

Obiettivo Principale: Aiutare gli studenti a capire cos è la programmazione 4 LEZIONE: Programmazione su Carta a Quadretti Tempo della lezione: 45-60 Minuti. Tempo di preparazione: 10 Minuti Obiettivo Principale: Aiutare gli studenti a capire cos è la programmazione SOMMARIO:

Dettagli

Verifica e Validazione del Simulatore

Verifica e Validazione del Simulatore Verifica e del Simulatore I 4 passi principali del processo simulativo Formulare ed analizzare il problema Sviluppare il Modello del Sistema Raccolta e/o Stima dati per caratterizzare l uso del Modello

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

Le Basi di dati: generalità. Unità di Apprendimento A1 1

Le Basi di dati: generalità. Unità di Apprendimento A1 1 Le Basi di dati: generalità Unità di Apprendimento A1 1 1 Cosa è una base di dati In ogni modello di organizzazione della vita dell uomo vengono trattate informazioni Una volta individuate e raccolte devono

Dettagli

Metodologie di programmazione in Fortran 90

Metodologie di programmazione in Fortran 90 Metodologie di programmazione in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2007/2008 Fortran 90: Metodologie di programmazione DIS - Dipartimento di

Dettagli

TEORIA sulle BASI DI DATI

TEORIA sulle BASI DI DATI TEORIA sulle BASI DI DATI A cura del Prof. Enea Ferri Cos è un DATA BASE E un insieme di archivi legati tra loro da relazioni. Vengono memorizzati su memorie di massa come un unico insieme, e possono essere

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

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

Implementazione di un servizio VoIP in ambienti SOA per mobile computing

Implementazione di un servizio VoIP in ambienti SOA per mobile computing tesi di laurea Implementazione di un servizio VoIP in ambienti SOA per mobile computing Anno Accademico 2006/2007 relatore Ch.mo prof. Domenico Cotroneo correlatore ing. Marcello Cinque candidato Vittorio

Dettagli

Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni

Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni LA PROGETTAZIONE DI BASI DI DATI Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni La progettazione dei dati è l attività più importante Per progettare i dati al

Dettagli

Software testing. Lezione 3 Functional Testing Federica Spiga federica_spiga@yahoo.it. A.A. 2010-2011 Autori: A.Bei/F.Rabini/F.

Software testing. Lezione 3 Functional Testing Federica Spiga federica_spiga@yahoo.it. A.A. 2010-2011 Autori: A.Bei/F.Rabini/F. 1 Software testing Lezione 3 Functional Testing Federica Spiga federica_spiga@yahoo.it A.A. 2010-2011 Autori: A.Bei/F.Rabini/F.Spiga 2 Functional Testing Sotto la dicitura funzionale si raccolgono i criteri

Dettagli

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Ingegneria del Software A. A. 2008-2009. Class Discovery E.

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Ingegneria del Software A. A. 2008-2009. Class Discovery E. Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Class Discovery E. TINELLI Contenuti Classi di analisi: definizione ed esempi Tecniche per la definizione

Dettagli

01/05/2014. Dalla precedente lezione. Ruolo dei sistemi operativi. Esecuzione dei programmi

01/05/2014. Dalla precedente lezione. Ruolo dei sistemi operativi. Esecuzione dei programmi Marco Lapegna Laboratorio di Programmazione Dalla precedente lezione 6. I sistemi operativi LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica I Sistemi Operativi Il linguaggi di programmazione

Dettagli

Linguaggi e Paradigmi di Programmazione

Linguaggi e Paradigmi di Programmazione Linguaggi e Paradigmi di Programmazione Cos è un linguaggio Definizione 1 Un linguaggio è un insieme di parole e di metodi di combinazione delle parole usati e compresi da una comunità di persone. È una

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

Appunti di Sistemi Distribuiti

Appunti di Sistemi Distribuiti Appunti di Sistemi Distribuiti Matteo Gianello 27 settembre 2013 1 Indice 1 Introduzione 3 1.1 Definizione di sistema distribuito........................... 3 1.2 Obiettivi.........................................

Dettagli

Titolo della tesi Testing Black Box di un Web Service : sperimentazione su di un servizio con stato

Titolo della tesi Testing Black Box di un Web Service : sperimentazione su di un servizio con stato tesi di laurea Titolo della tesi Testing Black Box di un Web Service : sperimentazione su di un servizio con stato Anno Accademico 2005/2006 relatore Ch.mo prof. Porfirio Tramontana candidato Giuseppe

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 Questi lucidi sono stati prodotti sulla

Dettagli

Statechart Diagrams. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it

Statechart Diagrams. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Statechart Diagrams Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Agenda Cosa è uno Statechart Diagram Quando

Dettagli

Progettazione del Software

Progettazione del Software L4.4 Progettazione del Software Emiliano Casalicchio Dipartimento di Informatica e Sistemistica SAPIENZA Università di Roma Sede di Rieti http://www.ce.uniroma2.it/courses/psw Seconda Parte La fase di

Dettagli

Il.NET Framework. By Dario Maggiari. L architettura del.net Framework è riassunta, nel complesso, nella figura seguente:

Il.NET Framework. By Dario Maggiari. L architettura del.net Framework è riassunta, nel complesso, nella figura seguente: Il.NET Framework By Dario Maggiari L architettura del.net Framework è riassunta, nel complesso, nella figura seguente: Il cuore del.net Framework è costituito dal CLR (Common Language Runtime) che, secondo

Dettagli

WebRatio. L altra strada per il BPM. Web Models s.r.l. www.webratio.com contact@webratio.com 1 / 8

WebRatio. L altra strada per il BPM. Web Models s.r.l. www.webratio.com contact@webratio.com 1 / 8 WebRatio L altra strada per il BPM Web Models s.r.l. www.webratio.com contact@webratio.com 1 / 8 Il BPM Il BPM (Business Process Management) non è solo una tecnologia, ma più a grandi linee una disciplina

Dettagli

PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO 147 6/001.0

PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO 147 6/001.0 PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO 147 6/001.0 PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO ELEMENTI FONDAMENTALI PER LO SVILUPPO DI SISTEMI INFORMATIVI ELABORAZIONE DI

Dettagli