Dall idea al software, dall artigianato al processo industriale
|
|
- Marta Cattaneo
- 7 anni fa
- Visualizzazioni
Transcript
1 Operatore giuridico d impresa Informatica Giuridica A.A 2002/2003 II Semestre Dall idea al software, dall artigianato al processo industriale prof. Monica Palmirani Hardware e Software - prima definizione Hardware: parte fisica del computer costituita da parti elettroniche e meccaniche Firmware: insieme di microprogrammi registrati sulle memorie permanenti dei dispositivi elettronici, solitamente introdotti dal costruttore e cablati nell hardware Software: Insieme di programmi scritti in qualche linguaggio di programmazione eseguibili dal computer 1
2 Software - seconda definizione Istruzioni che eseguite da un computer svolgono una funzione prestabilita con prestazioni prestabilite - (programma) strutture dati mediante le quali i programmi trattano adeguatamente le informazioni - (schemi logici e fisici dei dati) documenti che descrivono le operazioni e l uso dei programmi - (documentazione tecnica e manuale utente) [R.S. Pressman,Principi di Ingegneria del software, McGraw-Hill 2000] Tipologia del software Software di base software al servizio di altri software sistema operativo: insieme di programmi che governano le funzioni e le risorse primarie del calcolatore esecuzione di programmi operazioni di ingresso/uscita gestione di file protezione rilevazione errori Software applicativo: dedicato ad uno scopo applicativo 2
3 Strati del software Utente Programmi applicativi Linguaggi e ambienti di programmazione Sistema operativo Firmware HARDWARE Tipologie di software software real-time - software dedicato alla sorveglianza, all analisi e all elaborazione di eventi esterni (rilevamento di temperature di una piastra di acciaio durante la lavorazione) software gestionale - elaborazione dei dati e dei processi aziendali - 70% software scientifico - astronomia, calcolo parallelo, etc. 3
4 Tipologie di software software di Intelligenza Artificiale - basati su algoritmi non numerici - sistemi esperti, reti neruali, dimostratori di teoremi, etc. software embedded - programmi residenti in prodotti industriali (lavatirici, forno, termostati ambientali, etc.) software per PC - applicativi di office-automation (fogli elettronici, elaboratori di testi, etc.) software basato su WEB - B2B, B2C, portali, etc. Categorie di software Generici prodotti software standardizzati venduti sul mercato le specifiche vengono dettate dal mercato e dal produttore stesso Dedicati progetti ad hoc creati per un determinato cliente le specifiche vengono dettate dal cliente 4
5 Azioni Oggetti problema ANALISI Schema di percorso: dal problema ai risultati Comprendere il problema Elenco di istruzioni per ottenere la soluzione algoritmo PROGRAMMAZIONE Tradurre la soluzione in un linguaggio comprensibile al calcolatore software ELABORAZIONE risultati Algoritmo tradotto in un linguaggio eseguibile dal calcolatore Fase di esecuzione del programma da parte del computer Esempio Problema- Prelevare contanti in banca Analisi - si possono prelevare contanti in diversi modi:bancomat, mediante assegno, chiedendo un prestito, fare una rapina, etc. Algoritmo - si decide per il bancomat, si descrivono i passi operativi e le istruzioni che attivano il bancomat Elaborazione- esecuzione delle operazioni Risultati - i contanti 5
6 Algoritmo - definizione intuitiva Elenco preciso di operazioni, comprensibile da un esecutore, che definisce una sequenza finita di passi i quali risolvono ogni problema di un dato tipo (classe di problemi). algoritmo deriva dal nome di un matematico arabo - alkhuwarizmi vissuto nel nono secolo d.c. Esempio: operazioni necessarie per compiere una telefonata, per prelevare denaro dal bancomat, per iscriversi ad un esame, etc. Esempio - bancomat macro operazioni 1. Estrazione della tessera bancomat 2. Inserimento della tessera nell apposito macchinario 3. Scelta dell operazione da eseguire 4. Inserimento del codice segreto 5. Conclusione operazione 6. Prelievo tessera 7. Prelievo contanti 6
7 Algoritmo - definizione rigorosa Sequenza ordinata finita di passi, ripetibili e non ambigui, che se eseguita con determinati dati in ingresso (input) produce in uscita(output) dei risultati ovvero la soluzione di una classe di problemi dati algoritmo risultati Soluzione ad una classe di problemi Caratteristiche dell algoritmo Un algoritmo si suppone sempre che comunichi con l ambiente acquisendo dati e restituendo risultati Le operazioni di cui è composto l algoritmo si dicono istruzioni Ogni istruzione opera su dei dati o prodotti dall algoritmo stesso o acquisiti dall esterno 7
8 Costanti e variabili Un dato può essere: costante- un dato che assume un valore all inizio dell algoritmo e lo mantiene per tutta l esecuzione di questo importo x 1936,27 rate di conversione 1936,27 variabile - è una coppia <nome, valore> valore nome Variabili Il valore delle variabili deve appartenere a una categoria che solitamente sono: numeri interi - 60 numeri reali - 220,56 sequenze di caratteri - Mario Rossi valori booleani - vero, falso I valori una volta che appartengono ad una categoria di dati devono rispettare le regole della categoria Esempio i numeri si possono moltiplicare fra loro i caratteri no 8
9 Istruzioni - (I) Istruzioni di inizio e di fine sono le istruzione di apertura e di chiusura dell algoritmo Istruzioni di ingresso e di uscita sono le istruzioni che consentono l acquisizione dei dati (ingresso) e l emissione dei risultati (uscita) lettura del codice, inserimento della carta, stampa del fogliettino, emissione dei soldi Istruzioni -(II) Istruzioni operative - istruzioni che eseguono azioni che producono risultati anche parziali moltiplica, conta, trasforma, etc. Istruzioni di controllo istruzioni che guidano l andamento dell esecuzione se piove allora resto a casa - if then... Istruzioni di salto istruzioni che spostano il punto di esecuzione da una parte all altra dell algoritmo salto condizionato, salto incondizionato - goto... 9
10 Condizione Condizioni e decisioni è una espressione che si verifica o vera o falsa ogni tipo di dati ha i suoi operatori di confronto Le condizioni Operatori di confronto dei numeri: uguale = X==3 maggiore > X>3 maggiore uguale => X>=3 minore < X<3 minore uguale <= X<=3 diverso <> X<>3 Operatori di confronto dei caratteri: uguale = casa ==Y diverso <> casa <>Y 10
11 Gli operatori booleani - (I) Operatori booleani: and canta e danza ossia la condizione è vera quando il soggetto canta e danza contemporaneamente or canta o danza - in modo alternativo ossia sono valide le seguenti situazioni: canta e non danza, oppure danza e non canta, oppure canta e danza not non canta - negazione xor canta o danza - in modo esclusivo ovvero sono valide le seguenti situazioni canta e non danza oppure danza e non canta Gli operatori booleani - (II) A = l insieme degli avvocati B = l insieme dei professori A B A B A AND B NOT B A B l insieme degli avvocati che sono anche professori A l insieme degli avvocati che non sono professori B A OR B A XOR B l insieme di tutti e due l insieme dei soli avvocati e dei soli professori 11
12 Programmazione strutturata La programmazione strutturata è quel procedimento che permette di ottenere algoritmi facilmente documentabili e comprensibili si basa su tre costrutti: Sequenza Selezione Ripetizione regole base: I salti sono rigorosamente proibiti esiste una sola fine di tutto il programma le selezioni si chiudono sempre Programmazione strutturata Le tre strutture presentate consentono di esprimere qualsiasi algoritmo teorema di Bohm-Jacopini: Ogni diagramma a blocchi non strutturato è sempre trasformabile in un diagramma a blocchi strutturato equivalente. 12
13 Il metodo top-down Metodo top-down: scomposizione progressiva del problema e delle azioni (istruzioni) che lo risolvono. Favorisce la divisione del lavoro: Analisi: definizione della struttura generale del programma, dei moduli principali che lo compongono, e delle operazioni astratte svolte da ciascuno di essi, le cosiddette specifiche. Programmazione: realizzazione dei programmi che svolgono le singole operazioni individuate nella fase di analisi Ingegneria del software Il termine viene coniato durante una conferenza NATO nel 1968 in Germania a Garmish - crisi del software - costi, controllo, governabilità, qualità, manutenzione La IEEE (1993) definisce gli ambiti dell ingegneria del software: (a) disciplina che regola in modo scientifico lo sviluppo, la gestione e la manutenzione del software, (b) studio delle strategie di cui al punto a). Insieme di passi che definiscono il percorso di creazione del software Strategia di base STUMENTI METODI PROCESSO QUALITA TOTALE Tools automatizzati di supporto ai metodi e ai processi -CASE Tecniche per governare i passi 13
14 Motivazioni incrementare la qualità del software ossia rendere maggiormente industrializzato un processo che è ancora molto artigianale governare la complessità ossia non far fallire progetti di grandi dimensioni o di nuova concezione minimizzare i costi di produzione e manutenzione ossia consentire un facile intervento da parte di persone diverse dallo sviluppatore originario riciclare il software ossia riutilizzo di lavoro già fatto Fasi del processo di sviluppo sw Analisi - analisi dei requisiti -3%* Progettazione - specifiche -8% Implementazione - sviluppo del codice -7% Validazione - collaudo -15% Installazione e documentazione 20% correzioni Modificazione - 67% del costo 10% adattamenti Smaltimento 70% nuove funzioni * Ricerca Bloor 14
15 Modelli di processo Modello a cascata - le fasi elencate sono in stretta sequenza - 70 Modello prototipale - le fasi si intersecano e producono ciclicamente prototipi da sottoporre al cliente - usa e getta o esplorativa Modello incrementale - produce versioni intermedie di prodotto raffinabile fino alla versione finale Modello a spirare di Boehm - 88 ogni ciclo della spirale rappresenta una fase suddivisa per funzioni che mirano a controllare il rischio Modello a cascata 15
16 Modello prototipale Modello incrementale Fase 3 Fase 2 Fase 1 16
17 Modello a spirale Prodotti del processo A t t i v i t a D o c u m e n t i P r o d o t t i A n a lis i re q u is iti S tu d io d i fa ttib ilita, S c h e m a d i re q u is iti D e f in iz io n e r e q u is it i D o c u m e n t i d e i r e q u is it i S p e c if ic a d e l s is te m a S p e c if ic h e f u n z io n a li, p ia n o d i a c c e t ta z io n e, D r a f t d e l m a n u a le u t e n te P r o g e t t o a r c h it e t tu r a le S p e c if ic a a r c h it e t t u r a le, p ia n o d i te s t in g d e l sistem a P ro g e tto in te rfa c c ia S p e c ific a in te rfa c c ia, p ia n o d i in te g r a z io n e P r o g e t t o d e t ta g lia t o, S p e c if ic a d e l p r o g e t t o, p ia n o d i te s t in g u n ita C o d if ic a C o d ic e d e l p r o g r a m m a T e s t in g d e lle u n it a R a p p o r t o s u l t e s t d e lle u n it a T e s t in g d e i m o d u li R a p p o r to s u l te s t d e i m o d u li T e s t in g d i in t e g r a z io n e R a p p o r to s u l te s i d i integrazione,m anuale T e s t in g d e l s is t e m a R a p p o r to s u i te s t d e l sistem a T e s t d i a c c e t ta z io n e S is t e m a f in a le e d o c u m e n t a z io n e 17
18 Prodotti del processo e clausole contrattuali Studio di fattibilità - deve essere accettato dal cliente- nei casi di gara di appalto pubblica l AIPA indica lo schema da seguire e il documento diviene la base per comporre il capitolato tecnico Elenco dei requisiti di sistema - deve essere approvato dal clientedefinisce la base delle funzioni su cui si effettuerà il collaudo finale Specifiche di interfaccia - è bene farle firmare dal cliente Verbale di avanzamento lavori - deve essere prodotto dal fornitore e vidimato dal cliente al fine di documentare ritardi, modificazioni, integrazioni, etc. rispetto all elenco dei requisiti di sistema Verbale di collaudo finale - deve essere approvato dal cliente e solitamente è il passo che da vita al pagamento Manutenzione - è buona norma inserire una clausola di regolamentazione della manutenzione Documentazione tecnica e documentazione utente - occorre sempre richiederla - non sempre viene infatti fornita Clausole per la tutela della prodotto marchio e logo proprietà - colui che è proprietario del bene uso - clausole che regolamentano l uso del bene differenziando anche la destinazione d uso (per ricerca, scopo di lucro, etc.) accesso - clausole che regolamentano l accesso ai dati connessi al bene (banche dati) rivendita/cessione - clausole che regolamentano la rivendita a terzi territorialità - clausole che regolamentano la territorialità geografica delle clausole sopra esposte modificazioni - clausole che regolamentano la modificabilità del software - personalizzazioni su cliente integrabilità - clausole che regolamentano la possibilità di integrare il software altri programmi 18
Ciclo di vita del software: Tipologie di software
Operatore Informatico Giuridico Informatica Giuridica A.A 2004/2005 I Semestre Ciclo di vita del software: Tipologie di software Lezione 2 prof. Monica Palmirani Hardware e Software - prima definizione
DettagliCiclo di vita del software
Operatore Informatico Giuridico Informatica Giuridica A.A 2003/2004 I Semestre Ciclo di vita del software Lezione 2 prof. Monica Palmirani Hardware e Software - prima definizione Hardware: parte fisica
DettagliDall Algoritmo al programma
Dall Algoritmo al programma Lezione n. 3bis Algoritmo - definizione intuitiva Elenco preciso di operazioni, comprensibile da un esecutore, che definisce una sequenza finita di passi i quali risolvono ogni
DettagliCiclo di vita del software: Tipologie di software
Operatore Giuridico d Impresa Informatica Giuridica A.A 2005/2006 II Semestre Ciclo di vita del software: Tipologie di software Lezione 2 prof. Monica Palmirani Hardware e Software - prima definizione
DettagliAnalisi e Programmazione
Algoritmi 1 Analisi e Programmazione I Calcolatori Elettronici si differenziano da altri tipi di macchine per il fatto che possono essere predisposti alla risoluzione di problemi di diversa natura. A tale
DettagliAlgoritmi. Andrea Passerini Conoscenze informatiche e relazionali Corso di laurea in Scienze dell Ingegneria Edile
Algoritmi Andrea Passerini passerini@dsi.unifi.it Conoscenze informatiche e relazionali Corso di laurea in Scienze dell Ingegneria Edile Elaboratore Un elaboratore o computer è una macchina digitale, elettronica,
DettagliAlgoritmi. Andrea Passerini Informatica. Algoritmi
Andrea Passerini passerini@disi.unitn.it Informatica Elaboratore Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni sui dati digitale
DettagliAltrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.)
Elaboratore Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni sui dati digitale l informazione è rappresentata in forma numerica
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
DettagliFondamenti di Informatica e Programmazione. P ro f. G i a n n i D A n g e l o
Fondamenti di Informatica e Programmazione CPU e Linguag gio Macchina P ro f. G i a n n i D A n g e l o Email: giadangelo@unisa.it A.A. 2018/19 Elaborazione dell Informazione L'elaborazione delle informazioni
DettagliLaboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale
Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Laboratorio di Laurea in Ingegneria Civile e Ambientale Algoritmi e Algebra di Boole Stefano Cagnoni Il problema di fondo Descrizione
DettagliProgrammazione strutturata
Corso di Fondamenti di Informatica Corso di Laurea in Ingegneria Gestionale (L-Z) 3. (testo di riferimento: Bellini-Guidi) Ing. Michele Ruta 1di 29 Linguaggi di programmazione Un programma è un algoritmo
DettagliFasi 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
DettagliSoftware e Algoritmi
Software e Algoritmi Lezione n. 3 Obiettivi 3.1 Definizione di Software 3.2 Definizione di algoritmo, sue proprietà e formalismi 3.3 Metodo top-down, e programmazione strutturata 3.4 Complessità degli
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
DettagliSviluppo di programmi
Sviluppo di programmi FASE 1: Dare un nome al problema partendo dall analisi del problema FASE 2: Scrivere la specifica funzionale FASE 3: Scrittura dell algoritmo FASE 3.1: Introduzione delle variabili
DettagliFlow-chart. Introduzione agli algoritmi e ai diagrammi a blocchi.
Flow-chart Introduzione agli algoritmi e ai diagrammi a blocchi ugo.rinaldi@gmail.com 1 Sommario Fasi dello sviluppo di un programma Algoritmo Dati: Variabili e Costanti Le operazioni tipiche Diagramma
Dettagli(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B
Compito: Domanda 1 Per l'algoritmo fornito di seguito, qual è il valore assunto dalla variabile contatore quando l'algoritmo termina: Passo 1 Poni il valore di contatore a 1 Passo 2 Ripeti i passi da 3
DettagliCos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia
Programmazione Un programma descrive al computer, in estremo dettaglio, la sequenza di passi necessari a svolgere un particolare compito L attività di progettare e realizzare un programma è detta programmazione
DettagliSoftware e Algoritmi. Lezione n. 3
Software e Algoritmi Lezione n. 3 Obiettivi 3.1 Definizione di Software 3.2 Definizione di algoritmo, sue proprietà e formalismi 3.3 Metodo top-down, e programmazione strutturata 3.4 Complessità degli
DettagliElementi di Informatica e Programmazione
Università degli Studi di Brescia Elementi di Informatica e Programmazione Concetto di Algoritmo Docente: Marco Sechi E mail: marco.sechi@unibs.it Vers. 21/08/2016.A050917* Dipartimento di Ingegneria Meccanica
DettagliMODULO 1. Punto 1.0 del Syllabus 5.0 Fondamenti. Prof.ssa Francesca Lascialfari
MODULO 1 Punto 1.0 del Syllabus 5.0 Prof.ssa Francesca Lascialfari Un computer è un aggregato di circuiti elettrici, elettronici e meccanici. Un computer è in grado esclusivamente di eseguire un ordine,
DettagliLaboratorio di Informatica. Introduzione
Introduzione 1 Informatica: definizione Informatica: disciplina che cerca di dare un fondamento scientifico ad argomenti come la progettazione di computer, la programmazione, l elaborazione delle informazioni,
DettagliInformatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura
Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE Francesco Tura francesco.tura@unibo.it 1 Lo strumento dell informatico: ELABORATORE ELETTRONICO [= calcolatore = computer] Macchina multifunzionale Macchina
DettagliCaratteristiche di un calcolatore elettronico
Prof. Emanuele Papotto Caratteristiche di un calcolatore elettronico È una macchina, costituita da circuiti elettronici digitali e da componenti elettromeccaniche, ottiche e magnetiche. È velocissimo,
DettagliIntroduzione. 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,
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
DettagliIntroduzione. 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,
DettagliINFORMATICA. L informatica comprende:
Varie definizioni: INFORMATICA Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Definizione proposta: Scienza della rappresentazione e dell elaborazione dell informazione
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
DettagliAnalisi strutturata 1
Gli algoritmi Analisi e programmazione Gli algoritmi Proprietà ed esempi Costanti e variabili, assegnazione, istruzioni, proposizioni e predicati Vettori e matrici I diagrammi a blocchi Analisi strutturata
DettagliISTITUTO ISTRUZIONE SUPERIORE
ISTITUTO ISTRUZIONE SUPERIORE Federico II di Svevia Liceo Scientifico Classico Linguistico e Scienze Applicate Via G.Verdi, 1 85025 MELFI (PZ) Tel. 097224434/35 Cod. Min.: PZIS02700B Cod. Fisc. 85001210765
DettagliHardware, software e periferiche. Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre
Hardware, software e periferiche Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre Riepilogo - Concetti di base dell informatica L'informatica è quel settore scientifico disciplinare
DettagliSalvatore Cuomo Prolusione
Salvatore Cuomo Prolusione 1 Lezione n. Parole chiave: Algoritmo, Esecutore Corso di Laurea: Informatica Insegnamento: Programmazione II, modulo di Laboratorio Email Docente: salvatore.cuomo@unina. it
DettagliCorso di Informatica
Corso di Informatica CdL in Matematica e CdL in Matematica per le Applicazioni Prof. G. Nicosia Dipartimento di Matematica e Informatica Facoltà di Scienze MM.FF.NN. Università degli Studi di Catania A.
DettagliPROBLEMI E ALGORITMI VESPIA CATERINA LICEO CLASSICO AGLI ANGELI
PROBLEMI E ALGORITMI prof.ssa VESPIA CATERINA LICEO CLASSICO AGLI ANGELI C O N T E N U T I Problemi. Concetto di algoritmo. Caratteristiche di un algoritmo. Descrizione di algoritmi - Diagrammi di flusso.
DettagliIl concetto di informatica. Graziano Pravadelli (2012)
Il concetto di informatica Graziano Pravadelli (2012) Informatica e telecomunicazione Cos è l informatica? lo studio sistematico degli algoritmi che descrivono e trasformano l informazione: la loro teoria,
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
DettagliConcetti di base dell ICT
Informatica Linguaggio di programmazione Computer Bit Algoritmo Linguaggio macchina Informatica: Informazione automatica Gli anglosassoni usano il termine Computer Science = Scienza dei Calcolatori Computer:
DettagliUniversità degli Studi di Brescia INFORMATICA. Dipartimento di Ingegneria Meccanica e Industriale
Università degli Studi di Brescia INFORMATICA Concetto di Algoritmo Docente: Marco Sechi E mail: marco.sechi@unibs.it Vers. 21/08/2016.A050917* Dipartimento di Ingegneria Meccanica e Industriale DIPARTIMENTO
DettagliSommario Obiettivo della programmazione e ciclo di sviluppo di programmi. Programmi. Ciclo di sviluppo di programmi. Obiettivo
Sommario Obiettivo della programmazione e ciclo di sviluppo di programmi Istruzioni variabili e tipi Sottoprogrammi Strutture di controllo Ricorsione 1 2 Obiettivo Ciclo di sviluppo di programmi Risoluzione
DettagliInf matica C.I. Metodologia Scientifica & Linguistica Mario&Pavone& &
Programmazione+1+ + Mario&Pavone& & Dipar/mento+di+Matema/ca+ed+Informa/ca+ Università+degli+Studi+di+Catania+ mpavone@dmi.unict.it+ hap://www.dmi.unict.it/mpavone/+ Definizioni Algoritmo: una sequenza
Dettaglio Introduzione agli algoritmi o Rappresentazione delle Informazioni o Architettura del calcolatore o Reti di Calcolatori
Programma del corso o Introduzione agli algoritmi o Rappresentazione delle Informazioni o Architettura del calcolatore o Reti di Calcolatori o Elementi di Programmazione Algoritmi e programmi o Algoritmo
DettagliIntroduzione ai Calcolatori Elettronici
Introduzione ai Calcolatori Elettronici Elementi di Base dell ICT Information and Communication Technology Concetti Introduttivi A.A. 2013/2014 Domenica Sileo Università degli Studi della Basilicata Elementi
DettagliGestione dello sviluppo software Modelli Base
Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione GESTIONE DEI SISTEMI ICT Paolo Salvaneschi A4_1 V1.0 Gestione dello sviluppo software Modelli Base Il contenuto
DettagliCdL in Medicina Veterinaria - STPA AA
CdL in Medicina Veterinaria - STPA AA 2007-08 Programmi e algoritmi I Calcolatori: cos hanno di speciale? 1 Elaborazione dell Informazione Dati, informazione e istruzioni Un esempio: Dr Rossi 328275456
DettagliProgramma svolto di INFORMATICA. Classe 3M - indirizzo MERCURIO A.S. 2010/2011
ISTITUTO TECNICO COMMERCIALE N. DELL ANDRO - Santeramo in Colle (BA) Programma svolto di INFORMATICA Classe 3M - indirizzo MERCURIO A.S. 2010/2011 Proff. Rosalia Barbara Schiavarelli, Antonio Antonicelli
DettagliA.A. 2018/2019. CPU e Linguaggio Macchina FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante
A.A. 2018/2019 Docente Prof. Raffaele Pizzolante FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE Architettura di Von Neumann Modello concettuale di un architettura di computer che permette di rappresentare,
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
DettagliProf. Pagani Corrado LINGUAGGIO C: SELEZIONE E CICLI
Prof. Pagani Corrado LINGUAGGIO C: SELEZIONE E CICLI IF Ogni linguaggio di programmazione presenta almeno una struttura di controllo decisionale. La sintassi del linguaggio C è la seguente. if ()
DettagliSistemi Informativi Aziendali. Programma del corso
Sistemi Informativi Aziendali Corso di Laurea in Ingegneria Gestionale Programma del corso Anno Accademico 2008/09 Docente: Massimo Cossentino Programma del corso a.a. 2008-09 Introduzione al corso ICT
DettagliIl primo programma C++
Il primo programma C++ Un programma in qualsiasi linguaggio evoluto è una sequenza di istruzioni che la CPU dopo opportune conversioni esegue. La sintassi dei linguaggi di programmazione è molto piu rigida
DettagliInformatica/ Ing. Meccanica/ Prof. Verdicchio/ 14/02/2012 / Foglio delle domande / VERSIONE 1
Informatica/ Ing. Meccanica/ Prof. Verdicchio/ 14/02/2012 / Foglio delle domande / VERSIONE 1 1) Il bus in un computer trasporta a) solo dati b) solo istruzioni c) sia dati sia istruzioni 2) In una sequenza
Dettagli1 Esercizi in pseudocodice
Questa dispensa propone esercizi sulla scrittura di algoritmi in un linguaggio semiformale, utile all acquisizione delle abilità essenziali per implementare algoritmi in qualsiasi linguaggio di programmazione.
DettagliLinguaggi algoritmici A. Ferrari
Linguaggi algoritmici A. Ferrari Caratteristiche di un linguaggio algoritmico Non ambiguità Capacità di esplicitare il flusso di esecuzione delle istruzioni Deve contenere istruzioni di tipo: operativo
DettagliSISTEMI DI ELABORAZIONE DELLE INFORMAZIONI Algoritmi e programmazione Prof. Andrea Borghesan
SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI Algoritmi e programmazione Prof. Andrea Borghesan venus.unive.it/borg borg@unive.it Ricevimento mercoledì, 14.00-15.30. Studio 34, dip. statistica Modalità esame:
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
Dettagli3. Programmi e algoritmi
3. Programmi e algoritmi Andrea Marongiu (andrea.marongiu@unimore.it) Paolo Valente Contiene slides del corso «Fondamenti di Informatica» del Prof. Montessoro (Università degli Studi di Udine) Recall:
DettagliInf matica C.I. Metodologia Scientifica & Linguistica Mario&Pavone& &
Programmazione+1+ + Mario&Pavone& & Dipar/mento+di+Matema/ca+ed+Informa/ca+ Università+degli+Studi+di+Catania+ mpavone@dmi.unict.it+ hap://www.dmi.unict.it/mpavone/+ Definizioni Algoritmo: una sequenza
DettagliDescrizione di un algoritmo
Descrizione di un algoritmo Si descrive un algoritmo cercando di sintetizzare il più possibile la sua sequenza di passi; Non si utilizza un linguaggio di programmazione specifico, ma è meglio utilizzare
DettagliELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE)
1 LEZIONE 9 ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE) Laboratorio di Informatica per l Educazione A. A. 2014/2015 IN SINTESI (ELABORAZIONE) Con i COMPUTER, le macchine diventano
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
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
DettagliRappresentazione degli algoritmi
Rappresentazione degli algoritmi Universitá di Ferrara Ultima Modifica: 21 ottobre 2014 1 1 Diagramma di flusso Utilizzare il diagramma di flusso per rappresentare gli algoritmi che risolvono i seguenti
DettagliSoftware e Algoritmi. Lezione n. 3
Software e Algoritmi Lezione n. 3 Software definizione informatica Istruzioni che eseguite da un computer svolgono una funzione prestabilita con prestazioni prestabilite - (programma di alto livello ed
DettagliProgramma svolto di INFORMATICA. Classe 3 - indirizzo MERCURIO A.S. 2009/2010
ISTITUTO TECNICO COMMERCIALE N. DELL ANDRO - Santeramo in Colle (BA) Programma svolto di INFORMATICA Classe 3 - indirizzo MERCURIO A.S. 2009/2010 Proff. Rosalia Barbara Schiavarelli, Antonio Antonicelli
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
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
DettagliLezione 5. La macchina universale
Lezione 5 Algoritmi Diagrammi di flusso La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale=
DettagliDal Problema all Algoritmo. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni
Dal Problema all Algoritmo Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Cosa Impareremo Informazioni e codici Definizione e soluzione di un problema Individuazione dei dati Definizione
DettagliProblemi, algoritmi, calcolatore
Problemi, algoritmi, calcolatore Informatica e Programmazione Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin Problemi, algoritmi, calcolatori Introduzione
DettagliAlgoritmo. 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
DettagliIntroduzione agli Algoritmi
Introduzione agli Algoritmi Informatica Sara Zuppiroli A.A. 2012-2013 Informatica () Introduzione agli Algoritmi A.A. 2012-2013 1 / 25 Risoluzione dei problemi Dalla descrizione del problema all individuazione
DettagliInformatica A. Allievi Gestionali A.A Nozioni di Base
Informatica A Allievi Gestionali A.A. 2015-16 Nozioni di Base Nell immaginario collettivo Ingegnere Meccanico 2 Nell immaginario collettivo Ingegnere Fisico/Matematico 3 Nell immaginario collettivo Ing.
DettagliMacchine Astratte. Nicola Fanizzi Dipartimento di Informatica Università degli Studi di Bari. Linguaggi di Programmazione feb, 2016
Macchine Astratte Nicola Fanizzi Dipartimento di Informatica Università degli Studi di Bari Linguaggi di Programmazione 010194 29 feb, 2016 Sommario 1 Introduzione Macchina astratta Interprete Implementazione
DettagliModulo 1. Concetti base della Tecnologia dell informazione. Prof. Nicolello Cristiano. Modulo 1
Concetti base della Tecnologia dell informazione Algoritmi Come interpreta un computer un problema? Algoritmi Algoritmo: sequenza ordinata di istruzioni per risolvere un problema (tradotto: sequenza di
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)
DettagliPag. 1. Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni. Architettura del calcolatore (parte II)
1 Università degli studi di Parma Dipartimento di Ingegneria dell Informazione Informatica a.a. 2012/13 La inserita nella architettura dell elaboratore Informatica Facoltà di Medicina Veterinaria a.a.
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
DettagliCorso 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
DettagliLez. 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
DettagliProgrammazione a blocchi. Algobuild Prof. Sergio Roselli
Programmazione a blocchi Algobuild Prof. Sergio Roselli Blocchi base Inizio programma I Fine programma F Input IN A Output Esecuzione OUT A A = 5 + 1 L interprete Algobuild Algobuildpermette di trascrivere
DettagliCosa è l Informatica?
Cosa è l Informatica? Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Scienza della rappresentazione, memorizzazione, elaborazione e trasmissione dell informazione Elaboratore
DettagliSTRUTTURE DI CONTROLLO IN C. Docente: Giorgio Giacinto AA 2009/2010
Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2
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
DettagliPag. 1. La formalizzazione dell informazione: Dati e Diagrammi di Flusso. Codifica degli algoritmi
1 Università degli studi di Parma Dipartimento di Ingegneria dell Informazione Informatica a.a. 2012/13 Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni La formalizzazione
DettagliAPPUNTI DI INFORMATICA
Definizione Informatica APPUNTI DI INFORMATICA Si definisce l informatica come la scienza della rappresentazione e dell elaborazione dell informazione. Questa impostazione consente di mettere in evidenza
DettagliCAPITOLO 3 - ALGORITMI E CODIFICA
FASI DI SVILUPPO DEL SOFTWARE Problema Idea (soluzione) Algoritmo (soluzione formale) Programma (traduzione dell algoritmo in una forma comprensibile da un elaboratore elettronico) Test (criteri di verifica)
DettagliLezione 7: La Formalizzazione degli Algoritmi - Strutture di Controllo e Selettive La Programmazione Strutturata (3 p) Giovedì 21 Ottobre 2010
Università di Salerno Corso di FONDAMENTI DI INFORMATICA Corso di Laurea Ingegneria Corso B Docente : Ing. Anno Accademico 2010-2011 Lezione 7: La Formalizzazione degli Algoritmi - Strutture di Controllo
DettagliConcetti 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
DettagliSommario. Rappresentazione degli Algoritmi e Programmazione Strutturata. Diagrammi di Flusso. Rappresentazione degli algoritmi. Diagrammi di Flusso
Sommario Diagrammi di lusso Rappresentazione degli lgoritmi e 1 2 Rappresentazione degli algoritmi Diagrammi di lusso Negli esempi, gli algoritmi sono rappresentati in un linguaggio simile a quello naturale
DettagliIntroduzione all informatica
Introduzione all informatica INFORMATICA Varie definizioni Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Definizione proposta Scienza della rappresentazione e dell
DettagliAlgoritmi. Un tema centrale dell informatica è lo studio degli algoritmi.
Algoritmi Un tema centrale dell informatica è lo studio degli algoritmi. Ora nostro obiettivo sarà quello di esplorare a sufficienza questa materia fondamentale per poter capire e apprezzare appieno l
DettagliCostrutti di Programmazione Strutturata. Informatica 1 / 22
Costrutti di Programmazione Strutturata Informatica 1 / 22 Costrutti di Base Ricordi? Un algoritmo è detto strutturato se usa solo Sequenze di istruzioni Selezioni (se predicato allora fai istruzioni altrimenti
DettagliRappresentazione degli algoritmi
Rappresentazione degli algoritmi Universitá di Ferrara Ultima Modifica: 21 ottobre 2014 1 1 Diagramma di flusso Utilizzare il diagramma di flusso per rappresentare gli algoritmi che risolvono i seguenti
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
DettagliLaboratorio di Programmazione
Laboratorio di Programmazione Laurea in Bioinformatica Docente: Carlo Drioli Web: www.scienze.univr.it/fol/main?ent=oi&id=39990 Programmazione: Dati Strutture di controllo Algoritmi Materiale tratto dai
Dettagli