Analisi Strutturata. Generalità. Analisi strutturata
|
|
- Federigo Falco
- 7 anni fa
- Visualizzazioni
Transcript
1 Generalità 1 Analisi strutturata "primo" tentativo di fornire linee guida per le attività di sviluppo software utilizzo di modelli (semi)formali e diagrammatici l'attenzione è rivolta soprattutto alla componente funzionale, mentre i dati giocano un ruolo subordinato Caratteristiche: definizione delle interazioni tra il sistema (il dominio applicativo di interesse) e il mondo esterno scomposizione gerarchica del sistema in processi (funzioni, attività nel dominio applicativo) collegati tramite flussi di dati descrizione con l uso del diagramma di flusso di dati - "Data Flow Diagram" anni 70 (metà) Analisi strutturata Gane - Sarson, De Marco 1984 Analisi strutturata per McMenamin - Palmer eventi 1985 Analisi strutturata per sistemi in tempo reale Ward - Mellor 2 1
2 Elementi di base dei DFD Si basano su una notazione grafica che mostra il flusso dei dati e le trasformazioni applicate ad essi dall ingreso all uscita del sistema; ciascun elemento è identificato da un nome (etichetta) processo (process) deposito (data store) agente esterno (external agent) flusso di dati (data flow) esempio: cliente ordine del cliente acquisisci ordine ordine acquisito fornitore 3 Processo (Funzioni / Trasformazioni) E' un'attività di trasformazione, che acquisisce dati in input e li trasforma in dati di output. Ogni processo: deve essere collegato ad almeno un flusso di dati in input e ad almeno uno in output i flussi in output devono essere diversi rispetto ai flussi di input (in quanto oggetto di una trasformazione) input 1 input 2 processo output 1 4 2
3 Flusso di dati Indica un flusso di materiale (dati) omogeneo: ha una direzione connette due elementi del sistema uno dei due elementi è necessariamente un processo (o un agente esterno) che produce il flusso o lo acquisisce emetti fattura fatture cliente 5 Deposito (data store) è un archivio, di dati permanenti, a cui i processi del sistema possono accedere, in lettura e/o in aggiornamento è, per definizione, statico: mentre il flusso trasporta i dati, che sono quindi "in movimento", nel deposito i dati sono messi "a riposo", disponibili per essere trattati dai processi acquisizio ne ricevuti 6 3
4 Agente Esterno (external agent) è un elemento/sistema esterno, con il quale il sistema da analizzare scambia informazioni in input e/o in output (sorgente o pozzo di flussi) può essere una persona, un'organizzazione, un sistema hardware / software, un oggetto qualsiasi come ogni sistema, potrebbe essere analizzato, ma: l'agente esterno è da considerarsi come una "scatola nera", della quale non ci interessano le caratteristiche interne ci interessano solo gli scambi di dati (flussi) tra l'agente esterno ed il sistema da analizzare cliente sistema contabilità generale sensore banca 7 Processo: tipologie di trasformazione listino prezzi emetti ricevuta ricevuta fiscale 1) produzione in output di dati diversi rispetto a quelli di input listino prezzi sconto o maggiorazione aggiorna listino listino prezzi aggiornato 2) produzione in output di dati della medesima tipologia di quelli di input, ma con valori diversi 8 4
5 Processo: tipologie di trasformazione dizionario parole da controllare controllo ortografia parole corrette parole errate 3) partizionamento di un flusso in input via posta via telefono accettazio ne ricevuti 4) unione di più flussi in input 9 Composizione del flusso di dati il flusso può riferirsi a: dati organizzati in strutture (es. memorizzati in un archivio) o non strutturati (es. reclami, risposte) zero, una o più occorrenze (es. dal deposito possono essere letti da zero a molti ) di un dato reclami ricevuti tratta reclami risposte 10 5
6 Ruolo del deposito Consente la connessione asincrona tra due processi acquisizio ne ricevuti ricevuti evasione il processo che accede ai dati contenuti nel deposito (es. evasione ) può iniziare la propria attività in un momento successivo al termine dell'attività del processo che li memorizza (es. acquisizione ) Quando la connessione tra processi avviene senza il tramite di un deposito, i processi sono "sincroni": acquisizio ne ricevuti evasione il secondo processo inizia la propria attività immediatamente al termine dell'attività del primo 11 Deposito e flussi di dati i flussi di dati che entrano in un deposito lo aggiornano, mentre quelli che ne escono lo leggono i flussi in input al deposito, e in output dal deposito, aggiornano o leggono un sottoinsieme dei dati contenuti nel deposito, non necessariamente l'intero deposito: flussi diversi possono aggiornare e/o leggere il medesimo deposito: ciascuno di essi corrisponde ad un determinato sottoinsieme del deposito via posta via telefono da evadere già evasi è anche lecito che il medesimo flusso aggiorni e legga il deposito contratti stipulati contratti contratti stipulati 12 6
7 Ruolo degli agenti esterni l'individuazione degli agenti esterni è la base per la definizione del contesto del sistema gli agenti esterni corrispondono alle particolari entità del "mondo esterno" con cui il sistema è in relazione definire gli agenti esterni, e i flussi di dati che essi scambiano con il nostro sistema, permette di precisare i "confini" del sistema che stiamo analizzando: le attività che producono i flussi indirizzati verso gli agenti esterni sono interne al sistema le attività che producono i flussi che arrivano dagli agenti esterni sono al di fuori del sistema 13 Diagramma di contesto ogni sistema è in relazione con il "mondo esterno", dal quale riceve input e verso il quale produce output X "il sistema" Z Y Deposito W il diagramma di contesto rappresenta le interazioni tra il sistema e il "mondo esterno" un solo processo, che rappresenta il sistema nella sua globalità tutti gli agenti esterni i flussi che agenti esterni e sistema si scambiano eventuali depositi 14 7
8 Scomposizione dei processi ogni processo può essere scomposto in sottoprocessi ( eplosione di un processo): la scomposizione origina un nuovo diagramma regola di scomposizione: i flussi di input e di output collegati al processo "padre" devono essere collegati anche ai processi "figli" (padri e figli devono avere i medesimi input ed output "netti - regola di continuità dei flussi) la scomposizione è reversibile: è cioè possibile aggregare più processi in un macro-processo DFD articolati su più livelli il meccanismo di scomposizione dei processi permette di rappresentare le funzionalità di un sistema a diversi livelli di dettaglio: dal diagramma più sintetico, con un unico processo (contesto) attraverso una serie di diagrammi intermedi fino ai diagrammi di dettaglio, che evidenziano i processi elementari (non ulteriormente scomposti) 15 Scomposizione dei processi x y processo 2 z Diagramma di scomposizione del processo 2 Ciascuna processo è identificato oltre che dal nome da un numero; i processi figli sono identificati con lo stesso numero del padre seguito da un altro numero progressio, con una notazione punto Es. n.ro padre 2 n.ri figli 2.1, 2.2, 2.3 n.ro padre 2.2 n.ri figli 2.2.1, 2.2.2, x 2.1 deposito "X" y z 16 8
9 x diagramma di contesto x z 0 y z DFD articolati su più livelli diagramma di scomposizione di primo livello x x 1 y 2 3 z z scomposizione processo scomposizione processo scomposizione processo * connessione logica AND tra flussi OR esclusivo tra flussi Altri simboli utilizzati OR tra flussi A C A C B * P D B E P D F A C B E * P D 18 9
10 Problemi della scomposizione 1. In che modo (secondo quali criteri) è opportuno partizionare un processo? sono state proposte diverse tecniche per aiutare l'analista nella scomposizione. "eventi" a cui il processo deve rispondere, e definizione di un sottoprocesso per ciascun evento, che tratti l'evento in modo completo producendo tutte le "risposte" necessarie per soddisfarlo scomposizione in base a partizionamenti nel dominio applicativo 2. In quanti sottoprocessi bisogna partizionare ciascun processo? non esiste una regola vera e propria. Il numero dei sottoprocessi dipende dal tipo di processo e dai criteri (dalla tecnica) utilizzata per il partizionamento poiché ogni scomposizione genera un nuovo diagramma, è importante che il diagramma risultante risulti comprensibile, e che pertanto il numero di (sotto) processi contenuti non sia troppo elevato l'applicazione ai DFD di studi di psicologia sperimentale hanno portato a proporre un numero indicativo di 7 (+ o - 2) sottoprocessi per ogni processo (sono numeri da prendere con buon senso, non da applicare in modo meccanico) Fino a che livello di dettaglio spingersi nella scomposizione? Ogni processo può essere più o meno complesso, e generare quindi un numero di sottoprocessi elementari molto diverso da quelli originati da un altro processo Le tecniche utilizzate per il partizionamento influenzano anche il numero di diagrammi prodotti nella scomposizione, ed il livello di dettaglio necessario. Il livello analitico da raggiungere è comunque fortemente condizionato dal processo di sviluppo utilizzato, e dalle modalità di passaggio previste tra l'analisi e il disegno
11 Qualche regola Non considerare operazioni di inizializzazione, terminazione del sistema, di gestione di errori o eccezioni il sistema va immaginato in uno stato stabile ed invariante in cui idati di uscita sono prodotti da quelli di ingresso individuare entrate ed uscite nette dal sistema o sua parte evidenziarle, ad esempio, disegnandole più estrne assegnare ai flussi nomi significativi, assegnare ai processi nomi significativi, che esprimano le trasformazioni sui dati evitare nomi generici ed ambigui, usare la terminologia del dominio applicativo verificare la correttezza e la consistenza del DFD, percorrendo i flussi sia dagli ingressi alle uscite, sia risalendo dalle uscite fino agli ingressi dai quali essi dipendono 21 Punti di forza e criticità dei DFD Punti di forza attenzione posta sull'interazione tra il sistema e il mondo esterno (approccio "sistemico", e definizione chiara del contesto capacità di rappresentare qualunque tipo di sistema, a diversi livelli di astrazione intuitività, immediatezza come strumento di comunicazione costituiscono una linea guida per gli analisti, in quanto costringono a porsi le domande a cui l'analisi deve dare risposta Criticità l'approccio top-down può risultare inadeguato per sistemi dai requisiti instabili rischi di orientamento alle soluzioni tecniche ( "come bisogna implementare" anziché al "cosa deve fare il sistema"), particolarmente nei livelli più dettagliati le "regole sintattiche" sono limitate: la qualità dei modelli prodotti dipende fortemente dall'esperienza di chi li utilizza 22 11
12 Dizionario dei dati Per descrivere i dati di un DFD La struttura dei dati è descritta usando notazioni e metodi dei linguaggi formali Definizione A Β A è definito come B Sequenza/ Composizione A + B A in sequenza con (o composto da) B Selezione [A B] A oppure B Ripetizione j { A } i A ripetuto da min i a max j volte Ripetizione A* 1 o più occorrenze di A Opzionalità [A] A oppure nulla Esempio N.ro telefonico [numero locale numero esterno centralino] Centralino 0 numero locale [interno conferenza] 9 interno { cifra } 4 cifra [ ] conferenza { # interno } # + # numero esterno 9 + [prefisso] + esterno prefisso 0 + { cifra } 1 3 esterno { cifra } Descrizione dei processi In modo: informale (linguaggio naturale) semiformale (pseudocodice, liguaggio naturale strutturato) formale 24 12
13 Esercizio Disegnare il DFD del sistema Ambulatorio 25 13
Introduzione ai Data Flow Diagram
Introduzione ai Data Flow Diagram versione 16 marzo 2009 http://www.analisi-disegno.com Introduzione ai Data Flow Diagram Pag. 1 Obiettivo Fornire elementi di base sui DFD (Data Flow Diagram) Il tema è
DettagliDiagrammi di Flusso dei Dati
Ingegneria del Software Diagrammi di Flusso dei Dati Corso di Ingegneria del Software Anno Accademico 2012/2013 Lucidi liberamente tratti dalle dispense online del prof. Lucio Sansone, Univ. di Napoli
DettagliGestione del workflow
Gestione del workflow Stefania Marrara Corso di Sistemi Informativi 2003/2004 Progettazione di un Sistema Informativo Analisi dei processi Per progettare un sistema informativo è necessario identificare
DettagliModellazione funzionale con Data Flow Diagram
Modellazione funzionale con Data Flow Diagram 1 1 I Data Flow Diagram Traggono origine dalla teoria dei grafi e sono stati utilizzati anche precedentemente all avvento dei computer per la gestione delle
DettagliGestione del workflow
Gestione del workflow Stefania Marrara Corso di Tecnologie dei Sistemi Informativi 2004/2005 Progettazione di un Sistema Informativo Analisi dei processi Per progettare un sistema informativo è necessario
DettagliSistemi Informativi. Introduzione. Processi fisici. Tipologie di processi. Processi informativi. Processi aziendali
Introduzione Sistemi Informativi Linguaggi per la modellazione dei processi aziendali Paolo Maggi Per progettare un sistema informativo è necessario identificare tutti i suoi elementi
DettagliSISTEMI INFORMATIVI E DATABASE
SISTEMI INFORMATIVI E DATABASE SISTEMA INFORMATIVO AZIENDALE (S.I.) In una realtà aziendale si distingue: DATO elemento di conoscenza privo di qualsiasi elaborazione; insieme di simboli e caratteri. (274,
DettagliCorso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a
Dott.ssa Maria Carmela De Bonis a.a. 2013-14 Programmi Un elaboratore riceve dei dati in ingresso, li elabora secondo una sequenza predefinita di operazioni e infine restituisce il risultato sotto forma
DettagliIngegneria del Software
Ingegneria del Software Analisi Strutturata - DFD Data Flow Diagram Rappresenta le trasformazioni che i dati subiscono nel loro flusso all interno del sistema Ogni sistema di elaborazione effettua una
DettagliRAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO
RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO Rappresentazione degli algoritmi Problema Algoritmo Algoritmo descritto con una qualche notazione Programma Defne del procedimento
DettagliProgettazione esterna
Progettazione esterna Processi: Successive scomposizioni funzionali: Data Flow Diagram fino all ennesimo livello (DFD) Tutte le bolle di un DFD dell applicazione devono essere ulteriormente scomposte applicando
DettagliAlgoritmi e soluzione di problemi
Algoritmi e soluzione di problemi Dato un problema devo trovare una soluzione. Esempi: effettuare una telefonata calcolare l area di un trapezio L algoritmo è la sequenza di operazioni (istruzioni, azioni)
DettagliCiclo di vita di un sistema informativo
Ciclo di vita di un sistema informativo 1) Studio di fattibilità definire, in maniera per quanto possibile precisa, i costi delle varie alternative possibili stabilire le priorità di realizzazione delle
DettagliModellazione 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
DettagliAnalisi, rappresentazione e progettazione delle procedure
Analisi, rappresentazione e progettazione delle procedure PROCEDURA secondo una prospettiva organizzativa/aziendale: un insieme di operazioni (o attività) per ottenere determinati scopi o svolgere determinate
DettagliANALISI FUNZIONALE E DIAGRAMMI DI FLUSSO DEI DATI DFD 1
ANALISI FUNZIONALE E DIAGRAMMI DI FLUSSO DEI DATI DFD 1 Nelle lezioni precedenti Abbiamo definito il modello Entità- Associazione che serve a descrivere la struttura dei dati Abbiamo usato il modello per
DettagliLez. 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
DettagliPROBLEMI ALGORITMI E PROGRAMMAZIONE
PROBLEMI ALGORITMI E PROGRAMMAZIONE SCIENZE E TECNOLOGIE APPLICATE CLASSE SECONDA D PROGRAMMARE = SPECIFICARE UN PROCEDIMENTO CAPACE DI FAR SVOLGERE AD UNA MACCHINA UNA SERIE ORDINATA DI OPERAZIONI AL
DettagliDiagrammi a blocchi 1
Diagrammi a blocchi 1 Sommario Diagrammi di flusso, o a blocchi. Analisi strutturata. Esercizi. 2 Diagrammi a blocchi È un linguaggio formale di tipo grafico per rappresentare gli algoritmi. Attraverso
DettagliUnità A2. Progettazione concettuale. Obiettivi. Astrazione. Astrazione per aggregazione
Obiettivi Unità A2 Progettazione concettuale Imparare ad astrarre i dati per definire entità. Saper distinguere tra astrazione per classificazione, per aggregazione e per generalizzazione. Saper distinguere
DettagliIl Software programmabili programma algoritmo
Il Software La proprietà fondamentale dei calcolatori e` quella di essere programmabili cioè in grado di svolgere compiti diversi a seconda delle istruzioni fornite dall utente mediante un programma, ossia
DettagliIntroduzione alla programmazione
Introduzione alla programmazione Risolvere un problema Per risolvere un problema si procede innanzitutto all individuazione Delle informazioni, dei dati noti Dei risultati desiderati Il secondo passo consiste
DettagliLinguaggi, Traduttori e le Basi della Programmazione
Corso di Laurea in Ingegneria Civile Politecnico di Bari Sede di Foggia Fondamenti di Informatica Anno Accademico 2011/2012 docente: Prof. Ing. Michele Salvemini Sommario Il Linguaggio I Linguaggi di Linguaggi
DettagliAlgoritmi. Pagina 1 di 5
Algoritmi Il termine algoritmo proviene dalla matematica e deriva dal nome di in algebrista arabo del IX secolo di nome Al-Khuwarizmi e sta ad indicare un procedimento basato su un numero finito operazioni
DettagliMODELLO 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
DettagliProgettazione concettuale. Facoltà di Scienze Matematiche, Fisiche e Naturali. Progettazione concettuale. Acquisizione e analisi dei requisiti
Facoltà di Scienze Matematiche, Fisiche e Naturali Progettazione concettuale Laurea in Bioinformatica Basi di Dati Anno Accademico 2008/2009 Barbara Oliboni Progettazione concettuale Analisi dei requisiti
DettagliDall algoritmo al programma
Dall algoritmo al programma Il concetto di algoritmo Un algoritmo è una sequenza di passi necessari per risolvere un problema o eseguire una computazione In alcuni casi, lo stesso problema/computazione
DettagliDiagrammi a blocchi 1
Diagrammi a blocchi 1 Sommario Diagrammi di flusso, o a blocchi." Analisi strutturata." Esercizi. 2 Diagrammi a blocchi È un linguaggio formale di tipo grafico per rappresentare gli algoritmi." Attraverso
DettagliProdotto/servizio. Ogni prodotto/servizio è. Il risultato, intermedio o finale,, di un processo operativo La risposta ad una domanda ORGANIZZAZIONE
Prodotto/servizio Ogni prodotto/servizio è Il risultato, intermedio o finale,, di un processo operativo La risposta ad una domanda FORNITORE ORGANIZZAZIONE Prodotto Servizio CLIENTE Una Nuova Terminologia
DettagliCap. 1-I 1 I sistemi informatici
Libro di testo A. Chianese,V. Moscato, A. Picariello, L. Sansone Basi di dati per la gestione dell informazione McGraw-Hill, 2007 Informazioni sul corso http://www.docenti.unina.it/lucio.sansone Ricevimento
DettagliCos è la programmazione?
La programmazione Cos è la programmazione? Termine usato per indicare le attività che trasformano l esigenza di risolvere un Problema in un Programma, inteso come sistema informatico capace di risolvere
DettagliPROCESSI e PROCEDURE METODOLOGIE
PROCESSI e PROCEDURE METODOLOGIE Dr. Paolo Fusaroli Responsabile UO Epidemiologia ed Igiene Ospedaliera AUSL di Ravenna Procedure Uno strumento con cui le strutture rendono il più possibile oggettivo,
DettagliI DATI E LA LORO INTEGRAZIONE 63 4/001.0
I DATI E LA LORO INTEGRAZIONE 63 4/001.0 L INTEGRAZIONE DEI DATI INTEGRAZIONE DEI DATI SIGNIFICA LA CONDIVISIONE DEGLI ARCHIVI DA PARTE DI PIÙ AREE FUNZIONALI, PROCESSI E PROCEDURE AUTOMATIZZATE NELL AMBITO
DettagliDESCRIZIONI RIGOROSE c7
DESCRIZIONI RIGOROSE c7 Es. cucinare la pasta asciutta per una famiglia La descrizione rigorosa della strategia risolutiva prevede Analisi del problema (con chiara individuazione degli obiettivi e dei
DettagliSTA II ANNO: AA Ecologia e Fondamenti dei. Sistemi. Ecologici Introduzione ai. Sistemi. Informativi Geografici. Lezione del
STA II ANNO: AA 2016-2017 Ecologia e Fondamenti dei Sistemi Ecologici Introduzione ai Sistemi Informativi Geografici Lezione del 29.05.2017 GIS: INTRODUZIONE Sistemi Informativi (S.I.) Nelle scienze territoriali
DettagliIntroduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software
Introduzione alla programmazione Algoritmi e diagrammi di flusso F. Corno, A. Lioy, M. Rebaudengo Sviluppo del software problema idea (soluzione) algoritmo (soluzione formale) programma (traduzione dell
DettagliTeoria dell Informazione
Corso di Laurea Magistrale in Scienze dell Informazione Editoriale, Pubblica e Sociale Teoria dell Informazione Cosa è l informazione L informazione è qualcosa che si possiede e si può dare ad un altro
DettagliPROBLEMA: «Stabilire se un numero è pari o dispari?»
PROBLEMA: «Stabilire se un numero è pari o dispari?» 1 COSTRUZIONE DI UN ALGORITMO Il problema potrebbe essere schematizzato semplicemente così: PARI O DISPARI? Questo è il dilemma! 1 -ACQUISISCO PARI!
DettagliLe basi di dati. Lez. 2: Progettazione di un DB. Laboratorio di informatica gestionale
Le basi di dati Lez. 2: Progettazione di un DB Cos è un dato? Un dato (dal latino datum) è la descrizione elementare di una cosa, di un avvenimento. Un dato è utilizzabile se esiste una chiave di interpretazione.
DettagliLaboratorio di Informatica. Esercitazione su algoritmi e diagrammi di flusso
Laboratorio di Informatica Esercitazione su algoritmi e diagrammi di flusso Algoritmi, programmi e dati Algoritmo = insieme di istruzioni che indicano come svolgere operazioni complesse su dei dati attraverso
DettagliDISPENSE DI PROGRAMMAZIONE
DISPENSE DI PROGRAMMAZIONE Modulo 1 Risolvere problemi con l elaboratore: dal problema all algoritmo (Parte II) I Linguaggi di descrizione degli algoritmi - Notazioni grafiche (parte 1) Il linguaggio dei
DettagliCorso di Informatica. Problemi ed algoritmi. Ing Pasquale Rota
Corso di Problemi ed algoritmi Ing Pasquale Rota Argomenti Problemi ed algoritmi Proprietà degli algoritmi Pseucodice Diagrammi di flusso Problemi ed algoritmi - Ing. Pasquale Rota 2 Proprietà degli algoritmi
DettagliSistemi Web per il turismo - lezione 3 -
Sistemi Web per il turismo - lezione 3 - Software Si definisce software il complesso di comandi che fanno eseguire al computer delle operazioni. Il termine si contrappone ad hardware, che invece designa
Dettaglin Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati
Algoritmi 1 Cos è n Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati n Un algoritmo è un metodo per la soluzione di un problema adatto
DettagliBibliografia. INFORMATICA GENERALE Prof. Alberto Postiglione. Scienze della Comunicazione Università di Salerno. Definizione di DB e di DBMS
INFORMATICA GENERALE DBMS: Introduzione alla gestione dei dati Bibliografia 4 ott 2011 Dia 2 Curtin, Foley, Sen, Morin Vecchie edizioni: 8.4, 8.5, 8.6, 8.7, 8.8 Edizione dalla IV in poi: 6.5, 21.1, 19.4,
DettagliSQL e linguaggi di programmazione. Cursori. Cursori. L interazione con l ambiente SQL può avvenire in 3 modi:
SQL e linguaggi di programmazione L interazione con l ambiente SQL può avvenire in 3 modi: in modo interattivo col server attraverso interfacce o linguaggi ad hoc legati a particolari DBMS attraverso i
DettagliBasi di Dati Concetti Introduttivi
Università Magna Graecia di Catanzaro Informatica Basi di Dati Concetti Introduttivi Docente : Alfredo Cuzzocrea e-mail : cuzzocrea@si.deis.unical.it Tel. : 0984 831730 Lucidi tratti da: Atzeni, Ceri,
DettagliProblema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.
Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe. 1) Comprendere il problema 2) Stabilire quali sono le azioni da eseguire per risolverlo 3) Stabilire la
DettagliAnalisi 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
DettagliAnalisi dei Requisiti e Definizione delle Specifiche
e Definizione delle Specifiche Scopi della fase Processo di specifica dei requisiti Analisi del problema Specifica dei requisiti Caratteristiche dell SRS la Validazione delle specifiche 1 Analisi e Specifica
DettagliWeb Application Engineering
Web Application Engineering analisi del dominio cristian lucchesi IIT-CNR Pescara, 15-16 Maggio 2007 Alei Ud A 1 Analisi del dominio l'obiettivo è di arrivare alla definizione sufficientemente rigorosa
DettagliMetodologie e modelli di progetto
Metodologie e modelli di progetto Ingg. Francesco Gullo, Giovanni Ponti D.E.I.S Università della Calabria fgullo@deis.unical.it gponti@deis.unical.it 1 I Sistemi Informativi Un sistema informativo èun
DettagliIL 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
DettagliChe cosa è e a cosa serve un GIS?
Che cosa è e a cosa serve un GIS? Dare una definizione di GIS non è immediato. Può essere utile analizzare l acronimo GIS per capire di cosa stiamo parlando: italianizzando la sigla, otteniamo SIG, da
DettagliSviluppo di programmi
Sviluppo di programmi Per la costruzione di un programma conviene: 1. condurre un analisi del problema da risolvere 2. elaborare un algoritmo della soluzione rappresentato in un linguaggio adatto alla
DettagliStrategie top-down. Primitive di trasformazione top-down. Primitive di trasformazione top-down
Strategie top-down A partire da uno schema che descrive le specifiche mediante pochi concetti molto astratti, si produce uno schema concettuale mediante raffinamenti successivi che aggiungono via via più
DettagliProgrammazione modulare
Programmazione modulare 2016 2017 Indirizzo: 1 BIENNIO Informatica e Telecomunicazioni Disciplina: SCIENZE E TECNOLOGIE APPLICATE Classi: 2 C - 2 D - 2 F Ore settimanali: 3 ore Prerequisiti per l'accesso
DettagliAlgoritmi e Linguaggi
Algoritmi e Linguaggi Programmi e linguaggi Un calcolatore è solo un esecutore rapidissimo di istruzioni Un programma è un insieme di istruzioni codificate in un opportuno linguaggio 2 / 21 Linguaggi e
DettagliAtzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Progettazione concettuale
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 Capitolo 7: Progettazione concettuale 17/10/2002 Progettazione concettuale Requisiti della base di dati Schema concettuale Progettazione
DettagliEsempio di Patto Formativo per la classe terza
Esempio di Patto Formativo per la classe terza COMPETENZE TRASVERSALI rispettare le consegne e la puntualità nell esecuzione dei compiti assegnati lavorare costruttivamente in gruppo e individualmente
DettagliTraccia delle soluzioni. Si consideri il seguente enunciato: Spett Ditta,
Corso di Ingegneria del software Primo appello 8 gennaio 2008 V. Ambriola, L. Semini Dipartimento di Informatica, Università di Pisa a.a. 2007/08 La prova si svolge a libri chiusi (non è permessa la consultazione
DettagliProgrammazione di INFORMATICA e Laboratorio
ISIUO ECNICO SAALE settore ECNOLOGICO ad indirizzo: Elettronica ed Elettrotecnica - Informatica e elecomunicazioni Meccanica, Meccatronica ed Energia "VIORIO EMANUELE III" Via Duca della Verdura, 48-90143
DettagliFunction Block Diagram
Function Block Diagram Marco Mauri Politecnico di Milano P.zza Leonardo da Vinci, 32 22-23 Maggio 2001 1 Sommario Struttura del linguaggio e notazioni grafiche Come esprimere espressioni semplici e complesse
DettagliCONCETTI FONDAMENTALI
CONCETTI FONDAMENTALI Algoritmo Procedura di trasformazione di un insieme di dati iniziali in un insieme di risultati finali mediante una sequenza di istruzioni. Linguaggio di programmazione Programma
DettagliRappresentazione con i diagrammi di flusso (Flow - chart)
Rappresentazione con i diagrammi di flusso (Flow - chart) Questo tipo di rappresentazione grafica degli algoritmi, sviluppato negli anni 50, utilizza una serie di simboli grafici dal contenuto evocativo
DettagliProgramma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza
DettagliProblemi e algoritmi. Il che cosa ed il come. Il che cosa ed il come. Il che cosa e il come
Problemi e algoritmi Il che cosa e il come Problema: descrive che cosa si deve calcolare Specifica (di un algoritmo): descrive che cosa calcola un algoritmo Algoritmo: descrive come effettuare un calcolo
DettagliSCUOLA SECONDARIA DI I GRADO ALIGHIERI - TANZI MOLA DI BARI ANNO SCOLASTICO 2011/1012
SCUOLA SECONDARIA DI I GRADO ALIGHIERI - TANZI MOLA DI BARI ANNO SCOLASTICO 2011/1012 ASSE SCIENTIFICO-TECNOLOGICO (Scienze, Geografia, Tecnologia, Scienze Motorie) L asse scientifico-tecnologico ha l
DettagliAppunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso
Università Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso Marco Liverani (liverani@mat.uniroma3.it)
DettagliFormalismi per la descrizione di algoritmi
Formalismi per la descrizione di algoritmi Per descrivere in passi di un algoritmo bisogna essere precisi e non ambigui Il linguaggio naturale degli esseri umani si presta a interpret non univoche Si usano
DettagliCosa si intende con stato
Il concetto di stato Cosa si intende con stato I una particolare configurazione delle informazioni di una macchina, che in qualche modo memorizza le condizioni in cui si trova, e che cambia nel tempo passando
DettagliAtzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw -Hill, Progettazione concettuale
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw -Hill, 1996-2002 Capitolo 7: Progettazione concettuale 17/10/2002 Progettazione concettuale Requisiti della base di dati Schema concettuale Progettazione
DettagliCorso di Laurea Specialistica in Ingegneria Informatica. Corso di Ingegneria del Software A. A Introduzione ad UML E.
Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Introduzione ad UML E. TINELLI UML È un linguaggio (e notazione) universale per rappresentare qualunque
DettagliLA METAFORA DELL UFFICIO
LA METAFORA DELL UFFICIO Lavagna di lavoro Lavagna di programma Sportello utenti Impiegato Capo Ufficio LAVAGNA DI LAVORO Chiamiamo variabili le posizioni sulla lavagna, identificate ognuna da un nome
DettagliLINGUAGGI DI ALTO LIVELLO. Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware
LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware 1 LINGUAGGI DI ALTO LIVELLO Barriera di astrazione Fortran Cobol Basic Pascal Python C
Dettagliin termini informali: un algoritmo è una sequenza ordinata di operazioni che risolve un problema specifico
Click to edit Algoritmo Master title style algoritmo: un insieme ordinato di operazioni non ambigue ed effettivamente computabili che, quando eseguito, produce un risultato e si arresta in un tempo finito
DettagliDal problema a un programma comprensibile dal calcolatore. Il Progetto degli Algoritmi. Dall analisi del problema all esecuzione
Il Progetto degli Algoritmi Fondamenti di Informatica A Ingegneria Gestionale Università degli Studi di Brescia Docente: Prof. Alfonso Gerevini Dal problema a un programma comprensibile dal calcolatore
DettagliRequisiti normativi, standard, template
Schemi di rappresentazione delle procedure Costituiscono al tempo stesso modalità di analisi (o descrizione) e di progettazione. Sono schemi di rappresentazione utilizzati anche per descrivere i workflow.
DettagliLinguaggi di Programmazione
Linguaggi di Programmazione Linguaggi di Programmazione Programmazione. Insieme delle attività e tecniche svolte per creare un programma (codice sorgente) da far eseguire ad un computer. Che lingua comprende
DettagliArchitettura degli Elaboratori
circuiti combinatori: ALU slide a cura di Salvatore Orlando, Marta Simeoni, Andrea Torsello 1 ALU ALU (Arithmetic Logic Unit) circuito combinatorio all interno del processore per l esecuzione di istruzioni
DettagliReti Logiche 1. Prof. B. Buttarazzi A.A. 2009/2010. Reti Sequenziali
Reti Logiche Prof. B. Buttarazzi A.A. 29/2 Reti Sequenziali Sommario Analisi di Reti Sequenziali Sintesi di Reti Sequenziali Esercizi 3/6/2 Corso di Reti Logiche 29/ 2 Analisi di Reti Sequenziali Passare
DettagliC++ Barriera di astrazione. Barriera di astrazione. Basic. Basic. Lisp. Lisp. Pascal. Prolog. Pascal. Prolog. Cobol. Fortran IMPERATIVI FUNZIONALI
Linguaggi di alto livello Barriera di astrazione C Fortran Cobol Modula-2 Basic Pascal Algol Ada Lisp Smalltalk Simula67 Scheme C++ Prolog ML AN - 1995 Linguaggi di alto livello IMPERATIVI C Fortran Modula-2
DettagliModelli di interazione tra processi
Modelli di interazione tra processi Modello a memoria comune (ambiente globale, global environment) Modello a scambio di messaggi (ambiente locale, message passing) 1 Modello a memoria comune Il sistema
DettagliIl linguaggio di programmazione Python
Università Roma Tre Dipartimento di Matematica e Fisica Percorso Abilitante Speciale Classe A048 Matematica Applicata Corso di Informatica Il linguaggio di programmazione Python Marco Liverani (liverani@mat.uniroma3.it)
DettagliProgettazione del Sofware
Corso Serale Progettazione del Sofware Perché Modellare un Sistema Necessità di realizzare un artefatto, indipendentemente dalla sua dimensione e settore di interesse (una casa, un particolare macchinario,
DettagliFISICA E LABORATORIO INDIRIZZO C.A.T. CLASSE PRIMA. OBIETTIVI U. D. n 1.2: La rappresentazione di dati e fenomeni
FISICA E LABORATORIO INDIRIZZO C.A.T. CLASSE PRIMA Le competenze di base a conclusione dell obbligo di istruzione sono le seguenti: Osservare, descrivere ed analizzare fenomeni appartenenti alla realtà
DettagliDFD DISPENSA DEL CORSO DI SISTEMI INFORMATIVI UNIVERSITÀ DEGLI STUDI DI VERONA FACOLTÀ DI MM.FF.NN LAUREA SPECIALISTICA IN INFORMATICA
UNIVERSITÀ DEGLI STUDI DI VERONA FACOLTÀ DI MM.FF.NN LAUREA SPECIALISTICA IN INFORMATICA DISPENSA DEL CORSO DI SISTEMI INFORMATIVI Prof. Carlo Combi DFD Appunti a cura di E. Peri M. Devincenzi Indice 1
DettagliLINGUAGGI DI ALTO LIVELLO
LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware Linguaggi di alto livello Barriera di astrazione C Fortran Modula-2 Cobol Algol Basic Ada
DettagliAUTOMA A STATI FINITI
Gli Automi Un Automa è un dispositivo, o un suo modello in forma di macchina sequenziale, creato per eseguire un particolare compito, che può trovarsi in diverse configurazioni più o meno complesse caratterizzate
Dettagli3. Indicare cosa sta a significare la figura geometrica del rombo in un diagramma a blocchi
0.1.1.1 Definire un algoritmo 1. Con il termine algoritmo si intende: a) il software utilizzato in un calcolatore b) l elenco finito di istruzioni necessario per risolvere un problema c) un elaboratore
Dettagli2- Identificazione del processo. (o dei processi) da analizzare. Approcci: Esaustivo. In relazione al problema. Sulla base della rilevanza
PROCESS MAPPING (2) Approcci: 2- Identificazione del processo Esaustivo (o dei processi) da analizzare Mappatura a largo spettro (es.: vasta implementazione di un ERP) In relazione al problema ad es. i
DettagliMetodologie per la Progettazione Concettuale
Metodologie per la Progettazione Concettuale Raccolta e analisi dei requisiti Scegliere il corretto livello di astrazione Standardizzare la struttura delle frasi Evitare frasi contorte Individuare sinonimi
DettagliCasi d uso: esercizi
Casi d uso: esercizi Angelo Di Iorio A.A. 2013-2014 Ingegneria del Software () Casi d uso: esercizi A.A. 2013-2014 1 / 35 Tools UML ArgoUML, http://argouml.tigris.org/ Eclipse MDT UML2, http://www.eclipse.org/uml2/
DettagliLaboratorio di Programmazione Laurea in Bioinformatica
Laboratorio di Programmazione Laurea in Bioinformatica 15 dicembre 2008 1 Programmazione strutturata 1.1 Esercizio 1 Si scriva lo pseudocodice di un programma che calcola la media di due numeri reali.
DettagliIl Concetto Intuitivo di Calcolatore. Esercizio. I Problemi e la loro Soluzione. (esempio)
Il Concetto Intuitivo di Calcolatore Elementi di Informatica e Programmazione Ingegneria Gestionale Università degli Studi di Brescia Docente: Prof. Alfonso Gerevini Variabile di uscita Classe di domande
DettagliInformatica Industriale Modello funzionale: Informazione Modello Entità-Relazione
DIIGA - Università Politecnica delle Marche A.A. 2006/2007 Informatica Industriale Modello funzionale: Informazione Modello Entità-Relazione Luca Spalazzi spalazzi@diiga.univpm.it www.diiga.univpm.it/~spalazzi/
DettagliERP, ENTERPRISE RESOURCE PLANNING
ERP, ENTERPRISE RESOURCE PLANNING SISTEMA INFORMATIVO Def. Sistema Informativo - Il sistema informativo è l insieme di persone, apparecchiature, applicazioni e procedure che permettono all azienda di disporre
DettagliLaboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale
Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Algebra di Boole Stefano Cagnoni Algebra di Boole L algebra
DettagliUniversità degli Studi di Verona. Algoritmie Diagrammidiflusso. Gennaio Sergio Marin Vargas. Dipartimento di Biotecnologie
Università degli Studi di Verona Dipartimento di Biotecnologie Laurea in Biotecnologie Corso di Informatica2014/2015 Algoritmie Diagrammidiflusso Gennaio 2015 - Sergio Marin Vargas Problemi e soluzioni
Dettagli