Un linguaggio per la rappresentazione formale di vincoli su scenari d'uso

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Un linguaggio per la rappresentazione formale di vincoli su scenari d'uso"

Transcript

1 Un linguaggio per la rappresentazione formale di vincoli su scenari d'uso Relatore: Benedetto Intrigila Realizzato da: Postoronca Maxim Anno accademico: 2009/2010

2 Introduzione Introduzione Lo scopo della mia tesi è di aggiungere alle metodologie di ingegneria del software il supporto per i vincoli OCL (Object Constraint Language) (1). L ingegneria del software ha diversi processi di sviluppo e quasi tutti utilizzano i vincoli OCL. Gli strumenti attuali sul mercato cercano di aiutare i sviluppatori fornendo un ambiente integrato con tutto quello che li può servire per sviluppare. Il grosso del lavoro viene comunque fatto manualmente ed è prono ad errori. Grazie alla metodologia SMDP si cerca di automatizzare molti passi dei processi di sviluppo, ma si deve tenere in mente che sviluppare un software è un processo creativo e artigianale, per questo non si potrà mai arrivare ad una completa automatizzazione. Una volta ottenuti i vincoli OCL si può: generare in modo automatico il codice sorgente. generare in modo automatico i test case. trasformali in vincoli testuali che possono essere capiti anche da qualcuno senza conoscenze informatiche(per esempio: il manager). verificare col cliente che è effettivamente ciò che vuole. Ho sviluppato un modello per salvare i vari vincoli OCL e che può essere implementato, per esempio, da uno schema XML, cosi come il linguaggio SDML implementa il processo SMDP. Se si vorrà aggiungere questa funzionalità anche al linguaggio SDML si potranno riutilizzare molte strutture già presenti. Estrarre i vincoli OCL da un linguaggio naturale non è un compito facile. Il linguaggio naturale è molto vago e la stessa cosa può essere espressa in più modi. Purtroppo l equivalenza di due o più vincoli OCL è un problema che al momento è risolvibile soltanto dalla mente umana, cosi come l interpretazione perfetta di un testo scritto. Nonostante questo, date delle frasi scritte in un modo semplice, SMDP potrebbe estrarre i vincoli OCL. Anche se il sistema non identificherebbe tutti i vincoli, fa risparmiare comunque molto tempo agli sviluppatori e anche al cliente. 4

3 Capitolo 1 - Ingegneria del software 1.1 Cosa è il software? Il software è un programma eseguibile su un computer comprendente la documentazione relativa e i dati di configurazione per una corretta esecuzione del programma stesso. Il sistema software consiste di una serie di: programmi, file di configurazione, documentazione di sistema, documentazione utente e siti web. Ci sono 2 tipi di software: Prodotti generici - sviluppati per essere utili ad un insieme ampio di persone (elaboratori di testo, database, etc...), vengono venduti a qualsiasi cliente in grado di comprarli. Prodotti personalizzati - vengono sviluppati in base ai requisiti di un cliente. Spesso molte aziende cominciano con un prodotto generico per poi personalizzarlo ai loro requisiti. La differenza sostanziale tra i due tipi è che nella creazione di software generico sono gli sviluppatori stessi a controllare le specifiche, mentre nella creazione di software personalizzato è l'acquirente che controlla le specifiche. La linea di confine, comunque, si assottiglia sempre di più. 1.2 Cos è l ingegneria del software? L ingegneria del software (2) è la disciplina tecnologica e manageriale che riguarda la produzione sistematica e la manutenzione dei prodotti software entro tempi e costi previsti (3). Questa disciplina prende in considerazione non soltanto il processo tecnico dello sviluppo del software ma anche le attività come il management del progetto e lo sviluppo di strumenti, metodi e teorie per facilitare lo sviluppo. L ingegneria del software si occupa della realizzazione di sistemi software di dimensioni e complessità tali da richiedere nella loro realizzazione, l impiego di più gruppi di sviluppatori. Nella definizione ci sono due concetti chiave: disciplina ingegneristica: gli ingegneri cercano di trovare soluzioni ai problemi, anche quando non esistono teorie applicabili e metodi adatti. tutti gli aspetti della produzione del software: la produzione di software si articola in varie fasi di sviluppo. Gli ingegneri del software possono privilegiare approcci più creativi e meno formali, perché sono più efficaci. I problemi attuali dell ingegneria del software sono: eterogeneità: sviluppare un software affidabile che può coesistere con i vecchi sistemi legacy(spesso non sostituibili). fiducia: riuscire a produrre certificati che dimostrino agli utenti l'affidabilità del software. tempi di consegna: ridurre i tempi per produrre progetti complessi e portarli sul mercato senza comprometterne la qualità(figura 1 Dimensioni di progetti software). 5

4 Figura 1 Dimensioni di progetti software 1.3 Che differenza c'è tra ingegneria del software e informatica? L'informatica si occupa di teorie e metodi che sono alla base dei sistemi software e di quelli informatici, mentre l'ingegneria del software si occupa dei problemi pratici relativi allo sviluppo del software e alla sua produzione. Non è sempre possibile applicare le teorie dell informatica ai problemi reali e complessi. 1.4 Che differenza c'è tra ingegneria del software e ingegneria dei sistemi? L'ingegneria dei sistemi si occupa di tutti gli aspetti legati allo sviluppo e all'evoluzione di sistemi complessi. Questi sistemi includono sviluppo hardware, progettazione delle politiche dei processi e della messa in opera del sistema. L'ingegneria del software fa parte di questo processo. 1.5 Responsabilità etica e professionale dell'informatico Come tutte le discipline ingegneristiche, anche l'ingegneria del software viene svolta in un ambito legale e sociale che limita la libertà degli ingegneri. Il loro lavoro comporta responsabilità, portandoli ad agire in maniera eticamente e moralmente responsabile se vogliono essere rispettati come professionisti. Ci sono delle nozioni di responsabilità professionale da rispettare: 6

5 riservatezza: occorre rispettare la riservatezza dei propri datori di lavoro e dei propri clienti. competenza: bisogna non mentire sul proprio livello di competenza. diritti di proprietà intellettuale: occorre rispettare i copyright sul software prodotto da terze persone. uso improprio del computer: non bisogna fare errato uso dei sistemi informatici. Organizzazioni come ACM, IEEE, BCS pubblicano un codice di condotta(codice etico), sottoscritto dagli associati all'atto dell'iscrizione. 1.6 Che cos è un processo software? Un processo software è un insieme di attività che producono un software complesso, il quale non può essere realizzato senza stabilire delle precise metodologie di processo lavorativo. Anche se i processi software sono molto diversi tra loro, esistono delle fasi nel ciclo di vita del software che sono comuni a tutti: specifica: il cliente e gli ingegneri definiscono cosa sviluppare e con quali vincoli. sviluppo: progettazione e programmazione. convalida: si verifica che il software corrisponde alle richieste del cliente. evoluzione: manutenzione del software e modifiche per soddisfare i cambiamenti dei requisiti del cliente e del mercato. 1.7 Che cosa è un modello di processo software? I modelli rappresentano i vari approcci (punti di vista) al ciclo di vita del software, ovvero sono una visione astratta del ciclo stesso. Alcuni esempi di processi software sono: Workflow : rappresenta le attività che vengono svolte insieme ai dati in input, output e le dipendenze. Dataflow: mostra le azioni eseguite da persone o da computer per elaborare i dati. Role-action: è il modello più vicino alla modellazione a oggetti che rappresenta i ruoli e le responsabilità delle persone coinvolte nel processo di sviluppo. I modelli di processi variano a seconda del software da scrivere e a seconda del contesto. Se il contesto è stereotipato si usa un metodo semplice, se è un contesto nuovo si deve combinare uno o più modelli. La gran parte dei modelli si basano su uno dei tre modelli generali: 1. Waterfall: conosciuto anche come modello a cascata. Nel Waterfall(Figura 2 Modello Waterfall) le attività come le specifiche, il design, l implementazione, il testing, ecc. vengono viste come processi separati. L idea è, descrivere con chiarezza l output di ogni fase che è l input di quella successiva. Dopo che ogni fase è stata definita e approvata si passa alla prossima senza poter tornare indietro. Il modello identifica le fasi e le attività da svolgere durante il progetto del software. Trae ispirazione dalle attività ingegneristiche tradizionali. 7

Ingegneria del Software

Ingegneria del Software Ingegneria del Software Introduzione e Concetti Fondamentali Porfirio Tramontana, 2009 Corso di Ingegneria del Software Slide 1 Riferimenti Ian Sommerville, Ingegneria del Software, Capitolo 1 Porfirio

Dettagli

Introduzione. Sommario. Il software. Definizione di Ingegneria del software

Introduzione. Sommario. Il software. Definizione di Ingegneria del software Sommario Introduzione Leggere Cap. 1 Ghezzi et al. Definizione Nascita dell ingegneria del software Ruolo Relazione con altre discipline Introduzione 2 Il software Il software e` definito come: i programmi,

Dettagli

Corso di Ingegneria del Software. Modelli di produzione del software

Corso di Ingegneria del Software. Modelli di produzione del software Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it 1. Concetti di base Sommario 2. 2.1 Modello a cascata 2.2 Modelli incrementali 2.3 Modelli evolutivi 2.4 Modelli agili

Dettagli

Esami. Ingegneria del Software. Obiettivi del corso. Sir Tony Hoare s suggestion. There are two ways of constructing a software design.

Esami. Ingegneria del Software. Obiettivi del corso. Sir Tony Hoare s suggestion. There are two ways of constructing a software design. Ingegneria del Software Materiale, link utili, avvisi http://www.dmi.unict.it/~tramonta/se Libri consigliati Sommerville. Software Engineering, 6th ed. Addison-Wesley Pressman. Principi di Ingegneria del

Dettagli

Lez. 5 La Programmazione. Prof. Salvatore CUOMO

Lez. 5 La Programmazione. Prof. Salvatore CUOMO Lez. 5 La Programmazione Prof. Salvatore CUOMO 1 2 Programma di utilità: Bootstrap All accensione dell elaboratore (Bootsrap), parte l esecuzione del BIOS (Basic Input Output System), un programma residente

Dettagli

Introduzione. Contenuti da Cap. 1 Ghezzi et al.

Introduzione. Contenuti da Cap. 1 Ghezzi et al. Introduzione Contenuti da Cap. 1 Ghezzi et al. Sommario l Definizione l Nascita dell ingegneria del software l Ruolo l Relazione con altre discipline 2 Il software l Il software e` definito come: i programmi,

Dettagli

La Raccolta dei Requisiti. Corso di Ingegneria del Software Anno Accademico 2012/2013

La Raccolta dei Requisiti. Corso di Ingegneria del Software Anno Accademico 2012/2013 La Raccolta dei Requisiti Corso di Ingegneria del Software Anno Accademico 2012/2013 Introduzione La raccolta dei requisiti è il processo della determinazione in forma testuale (anche grafica) di che cosa

Dettagli

UML Introduzione a UML Linguaggio di Modellazione Unificato. Corso di Ingegneria del Software Anno Accademico 2012/13

UML Introduzione a UML Linguaggio di Modellazione Unificato. Corso di Ingegneria del Software Anno Accademico 2012/13 UML Introduzione a UML Linguaggio di Modellazione Unificato Corso di Ingegneria del Software Anno Accademico 2012/13 1 Che cosa è UML? UML (Unified Modeling Language) è un linguaggio grafico per: specificare

Dettagli

Introduzione all informatica

Introduzione all informatica Introduzione all informatica INFORMATICA Varie definizioni Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Definizione proposta Scienza della rappresentazione e dell

Dettagli

Ingegneria del Software 2010

Ingegneria del Software 2010 Ingegneria del Software 2010 Materiale, link utili, avvisi http://www.dmi.unict.it/~tramonta/se Forum su SDAI http://www.sdai.unict.it leggere gli avvisi partecipare alle discussioni fare domande Lezioni

Dettagli

Automatic generation of test cases

Automatic generation of test cases Tecniche Automatiche per la Correttezza del Software 2016/2017 Automatic generation of test cases Prof. Salvatore La Torre Alessandro Sacco Overview Testing Manual Testing vs Automated Testing Generazione

Dettagli

TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE

TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE Riccardo Dondi Dipartimento di Scienze dei linguaggi, della comunicazione e degli studi culturali Università degli Studi di Bergamo Informazione sul corso

Dettagli

Lez. 8 La Programmazione. Prof. Pasquale De Michele (Gruppo 2) e Raffaele Farina (Gruppo 1) 1

Lez. 8 La Programmazione. Prof. Pasquale De Michele (Gruppo 2) e Raffaele Farina (Gruppo 1) 1 Lez. 8 La Programmazione Prof. Pasquale De Michele (Gruppo 2) e Raffaele Farina (Gruppo 1) 1 Dott. Pasquale De Michele Dott. Raffaele Farina Dipartimento di Matematica e Applicazioni Università di Napoli

Dettagli

Informatica di base 6/ed

Informatica di base 6/ed Informatica di base 6/ed Autori: Dennis P. Curtin, Kim Foley, Kunal Sen e Cathleen Morin A cura di: Agostino Marengo e Alessandro Pagano Capitolo 1 L informatica oggi: una panoramica Capitolo 1 L informatica

Dettagli

Tecnico della progettazione implementazione e manutenzione di sistemi di gestione di database

Tecnico della progettazione implementazione e manutenzione di sistemi di gestione di database CORSO DI FORMAZIONE Tecnico della progettazione implementazione e manutenzione di sistemi di gestione di database Sequenza delle UF e dei moduli Introduzione database Sistemi di Gestione dei database Linguaggi

Dettagli

Lezione 1 Ingegneria del Software II- Introduzione e Motivazione. Ingegneria del Software 2 Introduzione e Motivazioni 1

Lezione 1 Ingegneria del Software II- Introduzione e Motivazione. Ingegneria del Software 2 Introduzione e Motivazioni 1 Lezione 1 Ingegneria del Software II- Introduzione e Motivazione Ingegneria del Software 2 Introduzione e Motivazioni 1 Riferimenti bibliografici I. Sommerville Ingegneria del Software 8a edizione Cap.1

Dettagli

Capitolo 7. Ingegneria del Software. Mauro Giacomini Pearson Addison-Wesley. All rights reserved

Capitolo 7. Ingegneria del Software. Mauro Giacomini Pearson Addison-Wesley. All rights reserved Capitolo 7 Ingegneria del Software Mauro Giacomini 2007 Pearson Addison-Wesley. All rights reserved Capitolo 7: Ingegneria del Software 7.1 Disciplina dell ingegneria del Software 7.2 Il ciclo di vita

Dettagli

Calcolo numerico e programmazione Programmazione

Calcolo numerico e programmazione Programmazione Calcolo numerico e programmazione Programmazione Tullio Facchinetti 11 maggio 2012 14:05 http://robot.unipv.it/toolleeo La programmazione la programmazione è l insieme delle

Dettagli

Lo sviluppo del progetto informatico

Lo sviluppo del progetto informatico Lo sviluppo del progetto informatico Il progetto Il controllo di qualità Le qualità per i prodotti di software Le figure professionali La metodologia La conoscenza degli obiettivi L analisi La progettazione

Dettagli

Progetto software 2007/2008 Lezione I. Dott.ssa Marianna Nicolosi Asmundo

Progetto software 2007/2008 Lezione I. Dott.ssa Marianna Nicolosi Asmundo Progetto software 2007/2008 Lezione I Dott.ssa Marianna Nicolosi Asmundo Obiettivi del corso Coinvolgervi nello sviluppo di un progetto software in cui mettere a frutto le conoscenze che avete acquisito

Dettagli

Alcuni diagrammi. OCL (Object Constraint Language)

Alcuni diagrammi. OCL (Object Constraint Language) UML e Java UML Alcune discipline ingegneristiche dispongono di validi mezzi di rappresentazione (schemi, diagrammi di prestazioni e consumi,...) Il software non dispone ancora di tecniche efficaci per

Dettagli

A. Ferrari sistemi informativi e sistemi informatici

A. Ferrari sistemi informativi e sistemi informatici sistemi informativi e sistemi informatici informatica sistema informativo e sistema informatico o sistema informativo o patrimonio di informazioni o generate o elaborate o e memorizzate dai processi o

Dettagli

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA SETTORE ECONOMICO PROFESSIONALE 1 Servizi di informatica Processo Sviluppo e gestione di prodotti e servizi informatici Sequenza di

Dettagli

IL PROCESSO di PROGETTAZIONE

IL PROCESSO di PROGETTAZIONE IL PROCESSO di PROGETTAZIONE In questa lezione vedremo: Ruolo della modellazione nella comunicazione tipi di modello nel progetto I modelli del prodotto Interpretazione delle informazioni del progetto

Dettagli

Materiale didattico. Sommario

Materiale didattico. Sommario Diploma Universitario in Ingegneria Informatica Corso di Ingegneria del Software Docente: ing. Anna Rita Fasolino Dipartimento di Informatica e Sistemistica Università degli Studi di Napoli Federico II

Dettagli

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA QUALIFICAZIONE PROFESSIONALE Denominazione qualificazione Analista programmatore 5 Settore Economico Professionale Area di Attività

Dettagli

Ingegneria del Software 2014

Ingegneria del Software 2014 Ingegneria del Software 2014 Materiale, link utili, avvisi http://www.dmi.unict.it/~tramonta/se Forum http://forum.informatica.unict.it leggere gli avvisi partecipare alle discussioni fare domande E. Tramontana

Dettagli

MATRICE TUNING competenze versus unità didattiche, Corso di Laurea in Informatica (classe L-31), Università degli Studi di Cagliari

MATRICE TUNING competenze versus unità didattiche, Corso di Laurea in Informatica (classe L-31), Università degli Studi di Cagliari A: CONOSCENZA E CAPACITA DI COMPRENSIONE Conoscere e saper comprendere i fondamenti della matematica discreta (insiemi, interi, relazioni e funzioni, calcolo combinatorio) Conoscere e saper comprendere

Dettagli

Tesi di Laurea Triennale in Ingegneria Informatica REALIZZAZIONE DI UN APPLICATIVO PER LA GESTIONE DI FOGLI DI LAVORO INTEGRATO IN OUTLOOK 2010

Tesi di Laurea Triennale in Ingegneria Informatica REALIZZAZIONE DI UN APPLICATIVO PER LA GESTIONE DI FOGLI DI LAVORO INTEGRATO IN OUTLOOK 2010 UNIVERSITÀ DEGLI STUDI DI TRIESTE FACOLTÀ DI INGEGNERIA Corso di laurea in Ingegneria Informatica Tesi di Laurea Triennale in Ingegneria Informatica REALIZZAZIONE DI UN APPLICATIVO PER LA GESTIONE DI FOGLI

Dettagli

Catia Trubiani. Laboratorio di Ingegneria del Software a.a

Catia Trubiani. Laboratorio di Ingegneria del Software a.a Università degli Studi dell Aquila Laboratorio di Ingegneria del Software a.a. 2013-2014 Catia Trubiani Dipartimento di Ingegneria e Scienze dell'informazione e Matematica (DISIM) - Università degli Studi

Dettagli

Verifica e Validazione del Software

Verifica e Validazione del Software Verifica e Validazione del Software Testing processes 1 Riferimenti Ian Sommerville, Ingegneria del Software, capitoli 22-23-24 (più dettagliato sui processi) Pressman, Principi di Ingegneria del Software,

Dettagli

MODELLO e RAPPRESENTAZIONE

MODELLO e RAPPRESENTAZIONE MODELLO e RAPPRESENTAZIONE I calcolatori elaborano informazione e restituiscono nuova informazione: questa deve essere rappresentata in forma simbolica Esempio : Per poter gestire una biblioteca dobbiamo

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 partire

Dettagli

PROGETTISTA MECCANICO

PROGETTISTA MECCANICO PROGETTISTA MECCANICO identificativo scheda: 08-006 stato scheda: Validata Descrizione sintetica Il, in collaborazione con altri specialisti, idea e sviluppa impianti, macchinari o semplici componenti

Dettagli

UML2. Concetti base. Andrea Polini. Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L31 Università di Camerino

UML2. Concetti base. Andrea Polini. Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L31 Università di Camerino UML2 Concetti base Andrea Polini Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L31 Università di Camerino (Labortorio di Ingegneria del Software) UML2 - Concetti Base 1 / 12 Cos

Dettagli

Il Software. E il software che implementa le funzionalità di un sistema di elaborazione Due categorie fondamentali di Software (SW)

Il Software. E il software che implementa le funzionalità di un sistema di elaborazione Due categorie fondamentali di Software (SW) Il Software E il software che implementa le funzionalità di un sistema di elaborazione Due categorie fondamentali di Software (SW) Il software di sistema Linguaggi di programmazione Sistemi operativi (SO)

Dettagli

Use Case Diagram. Catia Trubiani. Laboratorio di Ingegneria del Software a.a

Use Case Diagram. Catia Trubiani. Laboratorio di Ingegneria del Software a.a Università degli Studi dell Aquila Laboratorio di Ingegneria del Software a.a. 2013-2014 Catia Trubiani Dipartimento di Ingegneria e Scienze dell'informazione e Matematica (DISIM)- Università degli Studi

Dettagli

Introduzione al corso

Introduzione al corso Luca Cabibbo Ingegneria del Software Ingegneria del software: Introduzione al corso Dispensa IDS 0 ottobre 2008 1 Ingegneria e Ingegneria del software Ingegneria gli ingegneri fanno funzionare le cose,

Dettagli

ELEMENTI DI INFORMATICA L. Ing. Claudia Chiusoli

ELEMENTI DI INFORMATICA L. Ing. Claudia Chiusoli ELEMENTI DI INFORMATICA L Ing. Claudia Chiusoli Materiale Lucidi delle lezioni Date degli appelli Esempi di Testi di esame Informazioni e contatti http://www.lia.deis.unibo.it/courses/ Programma del corso

Dettagli

Sistemi di elaborazione delle informazioni

Sistemi di elaborazione delle informazioni Sistemi di elaborazione delle informazioni Luca Bortolussi Dipartimento di Matematica e Informatica Università degli studi di Trieste Informazioni Utili Docente: Luca Bortolussi Dipartimento di Matematica

Dettagli

Corso di Ingegneria del Software. Modelli di produzione del software

Corso di Ingegneria del Software. Modelli di produzione del software Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it 1. Sommario 2. 2.1 Modello a cascata 2.2 Modelli incrementali 2.3 Modelli evolutivi 2.4 Modelli agili 3. Comparazione

Dettagli

Ingegneria del Software

Ingegneria del Software Ingegneria del Software Analisi e Specifica dei Requisisti Analisi e Specifica dei Requisisti Scopi dell Attività: Definizione di funzioni, vincoli, prestazioni, interfacce e qualsiasi altra caratteristica

Dettagli

Corso di Linguaggi di Programmazione + Laboratorio

Corso di Linguaggi di Programmazione + Laboratorio Corso di inguaggi di Programmazione + aboratorio Capitolo 1 - Introduzione Si ringrazia il Dott. Marco de Gemmis per la collaborazione nella predisposizione del materiale didattico Apprendimento di un

Dettagli

INFORMATICA TECNOLOGIE DELLA COMUNICAZIONE SAPERI MINIMI DISCIPLINARI

INFORMATICA TECNOLOGIE DELLA COMUNICAZIONE SAPERI MINIMI DISCIPLINARI TECNOLOGIE DELLA COMUNICAZIONE SAPERI MINIMI DISCIPLINARI 1 TECNOLOGIE DELLA COMUNICAZIONE SAPERI MINIMI DISCIPLINARI CLASSE I ITE Sistemi informatici. - Informazioni, dati e loro codifica. - Architettura

Dettagli

Unità di apprendimento 6. Dal problema al programma

Unità di apprendimento 6. Dal problema al programma Unità di apprendimento 6 Dal problema al programma Unità di apprendimento 6 Lezione 1 Conosciamo gli algoritmi e i linguaggi In questa lezione impareremo: cos è un problema come affrontarlo come descrivere

Dettagli

Informatica (C.I. Metodologia Scientifica e Linguistica)

Informatica (C.I. Metodologia Scientifica e Linguistica) Informatica (C.I. Metodologia Scientifica e Linguistica) Mario F. Pavone Dipartimento di Matematica ed Informatica Università degli Studi di Catania mpavone@dmi.unict.it Cos è l Informatica Informatica

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 Sviluppo di programmi Per la costruzione di un programma

Dettagli

Presentazione del Corso Informazioni utili

Presentazione del Corso Informazioni utili Fondamenti di Informatica Canale A - L Alfonso Miola Presentazione del Corso Informazioni utili Gennaio 2002 1 Contenuti K Corso di Fondamenti di Informatica K Programma del corso K Materiale didattico

Dettagli

Modulo 1: Le I.C.T. UD 1.1b: Informatica, Sistemi Informativi, Software e Dati

Modulo 1: Le I.C.T. UD 1.1b: Informatica, Sistemi Informativi, Software e Dati Modulo 1: Le I.C.T. : Informatica, Sistemi Informativi, Software e Dati Prof. Alberto Postiglione Corso di Informatica Generale (AA 07-08) Corso di Laurea in Scienze della Comunicazione Università degli

Dettagli

Progetto sito web Gigli Elisa

Progetto sito web Gigli Elisa Progetto sito web Gigli Elisa 1 Progetto sito web Indice Introduzione Progetto e Project Management PMBOK o PROJECT CHARTER WBS o o PDM Lista delle attività Matrice delle responsabilità Diagramma di Gantt

Dettagli

Unified Modeling Language (UML)

Unified Modeling Language (UML) Unified Modeling Language (UML) È una famiglia di notazioni grafiche che si basano su un singolo meta-modello Serve per definire, progettare, realizzare e documentare sistemi sw (in particolare quelli

Dettagli

Ingegneria del Software L-A

Ingegneria del Software L-A Ingegneria del Software L-A Corso di Laurea Triennale in Ingegneria Informatica III anno A.A. 2009/2010 Docente: Giuseppe Bellavia Collaboratore: Gabriele Zannoni Premessa Una domanda fondamentale Che

Dettagli

Metodi formali per la verifica dell affidabilità di sistemi: materiale didattico

Metodi formali per la verifica dell affidabilità di sistemi: materiale didattico Metodi formali per la verifica dell affidabilità di sistemi: materiale didattico Prima parte: verifica basata su logica temporale lineare Peled: Software Reliability Methods, cap. 1. Katoen: Concepts,

Dettagli

Introduzione. A Tecnologie 1

Introduzione. A Tecnologie 1 Indice Prefazione Introduzione XIII XIX A Tecnologie 1 1 Tecnologie per applicazioni Web 3 1.1 Introduzione 3 1.2 HTTP e HTML: i fondamenti delle tecnologie Web 4 1.2.1 Accesso a risorse remote: il protocollo

Dettagli

Relazioni. Andrea Polini. Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L-31 Università di Camerino

Relazioni. Andrea Polini. Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L-31 Università di Camerino Relazioni Andrea Polini Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L-31 Università di Camerino (Ingegneria del Software) Relazioni 1 / 13 Relazione Relazione - da teoria degli

Dettagli

Progettazione curricolo verticale percorso formativo per Unità di Apprendimento (UDA)

Progettazione curricolo verticale percorso formativo per Unità di Apprendimento (UDA) Progettazione curricolo verticale percorso formativo per Unità di Apprendimento (UDA) Dipartimento di Informatica e Telecomunicazioni Articolazione Telecomunicazioni L asse scientifico-tecnologico Allegato1

Dettagli

Le basi di dati. Definizione 1. Lezione 2. Bisogna garantire. Definizione 2 DBMS. Differenza

Le basi di dati. Definizione 1. Lezione 2. Bisogna garantire. Definizione 2 DBMS. Differenza Definizione 1 Lezione 2 Le basi di dati Gli archivi di dati Organizzato in modo integrato attraverso tecniche di modellazione di dati Gestiti su memorie di massa Con l obiettivo Efficienza trattamento

Dettagli

Introduzione. Fondamenti di Informatica 1. Dispensa 1 Gennaio Contenuti. Alfonso Miola. K Corso di Fondamenti di Informatica 1

Introduzione. Fondamenti di Informatica 1. Dispensa 1 Gennaio Contenuti. Alfonso Miola. K Corso di Fondamenti di Informatica 1 Alfonso Miola Dispensa 1 Gennaio 2001 1 Contenuti K Corso di K Programma del corso K Materiale didattico K Organizzazione didattica K Attività di laboratorio K Prove di valutazione ed esami 2 Corso di

Dettagli

Sistemi di Elaborazione delle Informazioni

Sistemi di Elaborazione delle Informazioni SCUOLA DI MEDICINA E CHIRURGIA Università degli Studi di Napoli Federico II Corso di Sistemi di Elaborazione delle Informazioni Dott. Francesco Rossi a.a. 2016/2017 1 I linguaggi di programmazione e gli

Dettagli

Ingegneria del Software

Ingegneria del Software Ingegneria del Software Settore dell Informatica che si occupa di sistemi sw - di dimensioni e complessità elevate - realizzati da squadre - disponibili in più versioni - di lunga durata - destinati a

Dettagli

Il sistema informativo aziendale

Il sistema informativo aziendale Il sistema informativo aziendale Informatica e azienda L azienda è caratterizzata da: Persone legate tra loro da una struttura gerarchica che definisce le dipendenze Attività produttive necessarie per

Dettagli

Il disegno nel ciclo di vita del prodotto

Il disegno nel ciclo di vita del prodotto Il disegno nel ciclo di vita del prodotto MERCATO INPUT Bisogni PROCESSO DI DI TRASFORMAZIONE Idea Progetto Produzione MERCATO OUTPUT Clienti Figura 1, pag. 19 Pianificazione Organizzazione CONTROLLO MANAGEMENT

Dettagli

Operations Management Team

Operations Management Team Operations Management Team www.omteam.it 1 OPERATIONS MANAGEMENT TEAM: un approccio scientifico per soluzioni pratiche Process Analysis & Improvement www.omteam.it 2 L Operations Management Team Nasce

Dettagli

Operations Management Team

Operations Management Team Operations Management Team www.omteam.it 1 OPERATIONS MANAGEMENT TEAM: un approccio scientifico per soluzioni pratiche Process Analysis & Improvement www.omteam.it 2 L Operations Management Team Nasce

Dettagli

LE BASI DI DATI. Prima parte Premesse introduttive I MODELLI DEI DATI

LE BASI DI DATI. Prima parte Premesse introduttive I MODELLI DEI DATI LE BASI DI DATI Prima parte Premesse introduttive I MODELLI DEI DATI MODELLAZIONE DEI DATI Un modello dei dati è un insieme di concetti utilizzati per organizzare i dati di interesse e descriverne la natura

Dettagli

indirizzo: Servizi Commerciali

indirizzo: Servizi Commerciali ISTITUTO DI ISTRUZIONE SUPERIORE I.P.S.I.A. INVERUNO Via G. Marcora,109 0010 INVERUNO (MI) C. F. 93018890157 - c.c.postale n. 49548 - cod. mec. MIIS016005 + 39 0 978818 + 39 0 9785314 fax + 39 0 9789464

Dettagli

Analisi e specifica dei requisiti

Analisi e specifica dei requisiti Analisi e specifica dei requisiti Processo che stabilisce i servizi che il committente richiede al sistema da sviluppare ed i vincoli con cui lo si utilizzera` e sviluppera` Requisiti funzionali o non

Dettagli

Indirizzo Liceo Scientifico opzione Scienze Applicate Classe 1 a sez. F Anno Scolastico

Indirizzo Liceo Scientifico opzione Scienze Applicate Classe 1 a sez. F Anno Scolastico Programma di TECNOLOGIE INFORMATICHE Indirizzo Liceo Scientifico opzione Scienze Applicate Classe 1 a sez. F Anno Scolastico 2016-2017 1. La scienza dell informazione 1.1 Cos è l informatica 1.2 Cosa vuol

Dettagli

Che cos e l Informatica

Che cos e l Informatica Che cos e l Informatica L Informatica (Computer Science) non è soltanto La scienza e la tecnologia dei calcolatori (che sono solo degli strumenti) L Informatica non coincide con nessuna delle applicazioni

Dettagli

preparazione pane frattau per 4 persone

preparazione pane frattau per 4 persone Algoritmi introduzione Quando, nella vita di tutti i giorni, ci troviamo di fronte alla necessità di risolvere un problema, seguiamo, anche se non ce ne rendiamo conto, una sequenza di passi abbastanza

Dettagli

Syllabus. Versione 1.0 novembre 2017 (Rev.2, gennaio 2018) Copyright AICA Associazione Italiana per l Informatica ed il Calcolo Automatico

Syllabus. Versione 1.0 novembre 2017 (Rev.2, gennaio 2018) Copyright AICA Associazione Italiana per l Informatica ed il Calcolo Automatico Syllabus Versione 1.0 novembre 2017 (Rev.2, gennaio 2018) 1 Obiettivo Il Syllabus e4job è costituito dagli argomenti che consentono di: avere una profonda cultura del mondo digitale e del tumultuoso cambiamento

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

Concetti Introduttivi. Il Computer

Concetti Introduttivi. Il Computer Concetti Introduttivi Il Computer Introduzione Informazione Notizia, dato o elemento che consente di avere conoscenza più o meno esatta di fatti, situazioni, modi di essere Messaggio Tutto ciò che porta

Dettagli

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA SETTORE ECONOMICO PROFESSIONALE 1 Servizi di informatica Processo Sviluppo e gestione di prodotti e servizi informatici Sequenza di

Dettagli

Algoritmo. Calcolabilità

Algoritmo. Calcolabilità Algoritmo In altri termini, l algoritmo può essere definito come la descrizione di un procedimento che ha le seguenti proprietà: deve essere esplicita e non ambigua per l interlocutore cui è destinata

Dettagli

Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A4_3 V2.1. Progettazione. Metodi e Linguaggi

Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A4_3 V2.1. Progettazione. Metodi e Linguaggi Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE Paolo Salvaneschi A4_3 V2.1 Progettazione Metodi e Linguaggi Il contenuto del documento è liberamente utilizzabile dagli studenti, per

Dettagli

all ingegneria del software Introduzione all'ingegneria del software

all ingegneria del software Introduzione all'ingegneria del software Ingegneria del Software Introduzione all ingegneria del software 1 2 Obiettivi - Obiettivi e argomenti introdurre l ingegneria del software motivare i temi fondamentali dell ingegneria del software Argomenti

Dettagli

2. Modellazione dei casi d uso

2. Modellazione dei casi d uso 2. Modellazione dei casi d uso Andrea Polini Laboratorio di Ingegneria del Software Corso di Laurea in Informatica (Laboratorio di Ingegneria del Software) 2. Modellazione dei casi d uso 1 / 20 Sommario

Dettagli

Corso di Ingegneria del Software. Modelli di produzione del software

Corso di Ingegneria del Software. Modelli di produzione del software Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it Le fasi - Disegno del software Figura: (waterfall model) Le fasi - Disegno del software In questa fase si stabilisce

Dettagli

Simulazione Parallela e Distribuita

Simulazione Parallela e Distribuita Introduzione allo Standard IEEE 1516 High Level Architecture (HLA) Gabriele D Angelo gda@cs.unibo.it http://www.cs.unibo.it/~gdangelo Dipartimento di Scienze dell Informazione Università degli Studi di

Dettagli

CORSO DI PROGRAMMAZIONE E INFORMATICA GENERALE 1

CORSO DI PROGRAMMAZIONE E INFORMATICA GENERALE 1 CORSO DI PROGRAMMAZIONE E INFORMATICA GENERALE 1 Lezione 1 (Introduzione e Definizioni) Docenti Docente: Prof. Michele Colajanni Lezioni (Aula IV): martedì 10:00-12:45 Esercitazioni (Laboratorio): mercoledì

Dettagli

Piano di lavoro classe prima

Piano di lavoro classe prima PIANO DI LAVORO DI INFORMATICA PRIMO BIENNIO Anno scolastico 2016/2017 Finalità e obiettivi dell insegnamento-apprendimento L alunno al termine del biennio con la disciplina informatica deve avere conoscenze

Dettagli

Ciclo di vita di un sistema informativo

Ciclo di vita di un sistema informativo Ciclo di vita di un sistema informativo Studio di fattibilità definisce le varie alternative possibili, i relativi costi e le priorità di realizzazione. Raccolta e analisi dei requisiti individua proprietà

Dettagli

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA QUALIFICAZIONE PROFESSIONALE Denominazione qualificazione Analista di sistemi informativi 5 Settore Economico Professionale Area di

Dettagli

UML I diagrammi implementativi

UML I diagrammi implementativi Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - UML I diagrammi implementativi E. TINELLI I diagrammi implementativi In UML 2.x esistono 3 tipi di

Dettagli

Corso di Laurea Ingegneria Civile

Corso di Laurea Ingegneria Civile Corso di Laurea Ingegneria Civile Presentazione del corso di Fondamenti di Informatica Dm. 270 6 cfu Carla Limongelli Marzo 2010 1 Benvenuti!!! 2 Docenti del corso Prof. Carla Limongelli limongel@dia.uniroma3.it

Dettagli

Ore settimanali di lezione: 3 h di cui 2 in compresenza con l insegnante di Lab. di Informatica prof.ssa E.De Gasperi

Ore settimanali di lezione: 3 h di cui 2 in compresenza con l insegnante di Lab. di Informatica prof.ssa E.De Gasperi Anno scolastico 2015/2016 Piano di lavoro individuale ISS BRESSANONE-BRIXEN LICEO SCIENTIFICO - LICEO LINGUISTICO - ITE Classe: III ITE Insegnante: Prof.ssa Maria CANNONE Materia: INFORMATICA Ore settimanali

Dettagli

Basi di Dati. Progettazione di una Base di Dati. Progettazione di una Base di Dati

Basi di Dati. Progettazione di una Base di Dati. Progettazione di una Base di Dati Basi di Dati Cosa vuol dire progettare una base di dati? Il DBMS non va progettato il DBMS si acquista o esiste già è impossibile pensare di sviluppare un DBMS anni di sviluppo necessità di elevate competenze

Dettagli

Programma corso di Informatica Prof.ssa Enrichetta Gentile

Programma corso di Informatica Prof.ssa Enrichetta Gentile Corso di Laurea in Scienze e Tecnologie per i beni culturali Programma corso di Informatica Prof.ssa Enrichetta Gentile OBIETTIVI FORMATIVI Le conoscenze delle nozioni fondamentali dell'informatica e le

Dettagli

UML come abbozzo. Introduzione all UML. UML come linguaggio x programmi. UML come progetto dettagliato

UML come abbozzo. Introduzione all UML. UML come linguaggio x programmi. UML come progetto dettagliato Introduzione all UML UML come abbozzo UML - Unified Modeling Language E una famiglia di notazioni grafiche per la modellazione visuale del software Modellazione: rappresentazione di elementi che corrispondono

Dettagli

3. Ciclo di Vita e Processi di Sviluppo

3. Ciclo di Vita e Processi di Sviluppo 3. Ciclo di Vita e Processi di Sviluppo come posso procedere nello sviluppo? Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 3. Ciclo di Vita e Processi di

Dettagli

Corso di Informatica di Base

Corso di Informatica di Base Corso di Informatica di Base A.A. 2011/2012 Algoritmi e diagrammi di flusso Luca Tornatore Cos è l informatica? Calcolatore: esecutore di ordini o automa Programma: insieme di istruzioni che possono essere

Dettagli

2. Finalità generali previste dalle indicazioni nazionali

2. Finalità generali previste dalle indicazioni nazionali 2. Finalità generali previste dalle indicazioni nazionali Le Linee Guida ministeriali per i curricola del Quinto anno dell Istituto Tecnico Tecnologico, Indirizzo Informatica e Telecomunicazioni - Articolazione

Dettagli

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA Processo Sequenza di processo Area di Attività Qualificazione regionale SETTORE ECONOMICO PROFESSIONALE 1 Servizi di informatica Sviluppo

Dettagli

23/02/2011. I/le corsisti/e dovranno dimostrare di conoscere le varie parti di un computer, saper utilizzare le normali funzioni del

23/02/2011. I/le corsisti/e dovranno dimostrare di conoscere le varie parti di un computer, saper utilizzare le normali funzioni del Programma (Abstract) Il corso di Informatica tratta dei concetti fondamentali delle Tecnologie dell Informazione e della Comunicazione (ICT), delle funzionalità di base degli elaboratori elettronici,nonché

Dettagli

Introduzione al Calcolo Scientifico

Introduzione al Calcolo Scientifico Introduzione al Calcolo Scientifico Francesca Mazzia Dipartimento di Matematica Università di Bari Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 1 / 14 Calcolo Scientifico Insieme degli

Dettagli

CALENDARIO DIDATTICO MODALITÀ ONLINE

CALENDARIO DIDATTICO MODALITÀ ONLINE CALENDARIO DIDATTICO MODALITÀ ONLINE (AA.AA. - / -2019) MASTER PART-TIME (DUE ANNI) 01 Esercizio preliminare di traduzione: traduzione convenzionale vs. traduzione applicata alle nuove tecnologie 15 dicembre

Dettagli

Evoluzione dei metodi dell usabilità Requisiti utente

Evoluzione dei metodi dell usabilità Requisiti utente Evoluzione dei metodi dell usabilità Requisiti utente Prof. Michele Visciola Requisiti funzionali, requisiti utente e requisiti d uso Il valore di un progetto di Web design e di progettazione di tecnologia

Dettagli

Introduzione alla programmazione Object Oriented. Luca Lista

Introduzione alla programmazione Object Oriented. Luca Lista Introduzione alla programmazione Object Oriented Luca Lista Concetti base del software OO Classi e oggetti Incapsulamento Relazione di ereditarietà Polimorfismo Cos è un Oggetto? Definizione da vocabolario:

Dettagli