UNIVERSITÀ DEGLI STUDI DELL INSUBRIA

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "UNIVERSITÀ DEGLI STUDI DELL INSUBRIA"

Transcript

1 UNIVERSITÀ DEGLI STUDI DELL INSUBRIA Facoltà Di Scienze Matematiche, Fisiche e Naturali Sede di Como Laurea Triennale in Scienze e Tecnologie dell Informazione I FUNCTION POINT E LE METRICHE FUNZIONALI: UN CASO DI STUDIO REALE Relatore: Prof. DAVIDE TAIBI Relatore Esterno: Dott. VIERI DEL BIANCO Laureando: Simone BERNASCONI matricola Anno Accademico

2 INDICE 2

3 RINGRAZIAMENTI Un sincero ringraziamento va a tutti coloro che, in momenti diversi e in vari modi, mi hanno prestato il loro aiuto e la loro assistenza nella realizzazione di questo lavoro. Ringrazio i miei genitori per avermi dato la possibilità di compiere questo ciclo di studi e per aver sempre avuto fiducia nelle mie capacità. Ringrazio i miei nonni per essere stati i primi ad aver sempre creduto in me. Ringrazio Arianna per avermi sopportato durante questo corso di studi ed essermi sempre stata vicina condividendo con me gioie e difficoltà. Ringrazio i miei colleghi di studi con cui ho condiviso preoccupazioni e speranze. In particolare Daniele, Marco e Gianni con i quali sono certo di continuare la forte e sincera amicizia che ci lega. Ringrazio l Università degli Studi dell Insubria, il Dipartimento di Scienze Matematiche e Fisiche di Como e tutti i Professori dei corsi di studio che ho seguito. Ringrazio il mio relatore Dott. Davide Taibi ed il mio correlatore Dott. Vieri Del Bianco per la disponibilità dimostrata nello sviluppo di questo lavoro. Ringrazio me stesso per avercela fatta. 3

4 Capitolo 1 1. INTRODUZIONE La misurazione permette ad ogni attività della nostra vita, dalla determinazione dei prezzi del sistema economico, alle rilevazioni mediche, allo scandire del tempo, non esiste attività che non richieda l utilizzo della misurazione. È possibile definire la misurazione come il processo di assegnazione di simboli, normalmente numeri, per rappresentare un attributo dell entità di interesse, secondo le regole definite. Per entità si intende l oggetto sul quale va effettuata l indagine, per attributo dell entità si intende l oggetto puntuale ed ultimo dell attività di misurazione. La forma usata per rappresentare l attributo è normalmente numerica e le regole sono necessarie per arrivare a determinare il valore dell attributo, la misura. Si esegue una misurazione per ottenere ulteriori informazioni relative alla realtà di interesse e poter agire con lo scopo di: Valutazione e miglioramento Previsione 4

5 1.1 MISURARE IL SOFTWARE Così, come per molte altre cose, anche per il software venne il momento di introdurre un unità di misura che permettesse di valutare il lavoro dei programmatori e di quantificare anche economicamente gli sforzi profusi da team di sviluppo e ingegneri del software. Inizialmente si pensò di utilizzare il calcolo delle LOC ( Lines Of Code) per la misurazione e la valutazione di un software ma questa unità di misura risultò avere numerose imperfezioni e impedimenti: basti pensare al fatto che si avevano numerose difficoltà a spostare le valutazioni da un linguaggio di programmazione all altro rendendo difficoltoso e talvolta impossibile, far confronti diretti tra software simili. Così nel corso degli anni si è sviluppato un nuovo modo di valutare il software, il Function Point. 1.2 OBBIETIVO DELLA TESI Scopo di questa tesi è analizzare le principali metriche di misurazione della dimensione funzionale del software. Verranno analizzati nel dettaglio il calcolo dei Function Point con il metodo IFPUG e con il metodo COSMIC, approfondendone analogie e differenze. Successivamente verrà analizzato un caso di studio reale, confrontando i dati ottenuti tramite l applicazione della metodologia IFPUG con i risultati ottenuti tramite l applicazione della metodologia COSMIC. 5

6 1.3 STRUTTURA DELLA TESI Nel primo capitolo sono state chiarite le motivazioni per le quali viene svolto il lavoro di tesi ponendo particolare attenzione sulle difficoltà che si possono incontrare nella misurazione del software. Nel secondo capitolo vengono analizzate le caratteristiche di qualità del sofware descritte dalla ISO 9126 e vengono introdotte le metriche di misurazione a partire dalle linee di codice, per poi analizzare la complessità ciclomatica ed infine arrivare alle metriche funzionali. Nel terzo capitolo vengono descritte nel dettaglio la IFPUG Function Points Analysis e la COSMIC Function Points Analysis, partendo dalle origini storiche fino ad approfondire ogni singolo aspetto necessario al calcolo della complessità funzionale. Il quarto capitolo è dedicato all analisi del caso di studio reale, ovvero al calcolo della complessità funzionale del software dedicato al calcolo dei function points. L ultimo capitolo è dedicato alle conclusioni. 6

7 Capitolo 2 2. METRICHE E QUALITÁ DEL SOFTWARE P er qualità si intende qualsiasi caratteristica, proprietà o condizione di una persona o di una cosa che serva a determinarne la natura e a distinguerla dalle altre. Nell ambito dell ingegneria del software, la qualità del software è qualsiasi caratteristica, proprietà o condizione di un prodotto o processo di sviluppo che serva a determinarne la natura e a distinguerlo da altri prodotti software. In generale non tutte le qualità possono essere misurate in modo semplice e assoluto. Possono invece dipendere da fattori esterni quali il contesto d uso o da valutazioni soggettive che fa l attore che esegue la misurazione. Le qualità del software si possono classificare a seconda della percezione che ne hanno gli utenti (qualità esterne) o gli sviluppatori (qualità interne). Le varie qualità possono comunque essere interrelate e mostrare contemporaneamente aspetti esterni ed interni. 7

8 Negli anni sono stati definiti molti modelli della qualità del software. Le norme ISO 9126 [Figura 1] descrivono un modello di qualità del software, definiscono le caratteristiche che la determinano e propongono metriche per la misurazione. Il modello definisce sei caratteristiche, suddivise a loro volta in sotto-caratteristiche, come mostrato nella figura seguente. Figura 1:Il modello di qualità ISO-IEC 9126 FUNZIONALITÀ La funzionalità rappresenta la capacità di fornire funzioni tali da soddisfare, in determinate condizioni, requisiti funzionali espliciti o impliciti. Gli attributi del software richiesti da questa caratteristica sono: Adeguatezza: presenza di funzioni appropriate per compiti specifici; Accuratezza: capacità di fornire risultati od effetti in accordo con i requisiti; Interoperabilità: capacità di interagire con altri sistemi; 8

9 Sicurezza: capacità di evitare accessi non autorizzati a programmi e dati; Aderenza alla funzionalità: capacità di aderire a standard e convenzioni relative alla funzionalità. AFFIDABILITÀ Per affidabilità si intende la capacità di mantenere le prestazioni stabilite nelle condizioni e nei tempi stabiliti. Le sotto-caratteristiche sono: Maturità: capacità di evitare che si verifichino errori o siano prodotti risultati incorretti in fase di esecuzione; Tolleranza ai guasti: capacità di mantenere livelli di prestazioni predeterminati in caso di fallimenti o di violazione delle regole di interfacciamento; Recuperabilità: capacità di ripristinare livelli di prestazione predeterminati e di recuperare I dati a seguito di errori; Aderenza all affidabilità: capacità di aderire a standard e convenzioni relative all affidabilità. USABILITÀ L usabilità è la capacità del software di essere compreso ed usato con soddisfazione dall utente in determinate condizioni d uso. Gli attributi del software richiesti da questa caratteristica sono: Comprensibilità: impegno richiesto agli utenti per capire il funzionamento del software; Apprendibilità: impegno richiesto agli utenti per imparare ad usare il software; 9

10 Operabilità: impegno richiesto agli utenti per imparare ad usare il software; Attrattività: capacità del software di risultare attraente per l utente. Aderenza all usabilità: capacità di aderire a standard e convenzioni relative all usabilità. EFFICIENZA Per efficienza si intende il rapporto fra prestazioni e quantità di risorse utilizzate, in condizioni normali di funzionamento. Le sotto-caratteristiche sono: Comportamento rispetto al tempo: capacità di fornire appropriati tempi di risposta, tempi di elaborazione e quantità di lavoro eseguendo le funzionalità previste sotto determinate condizioni di utilizzo; Utilizzo delle risorse: quantità e tipo di risorse usate per eseguire le funzioni richieste in determinate condizioni: Aderenza all efficienza: capacità di aderire a standard e convenzioni relative all efficienza. MANUTENIBILITÀ La manutenibilità è la capacità del software di essere modificato con un impegno contenuto. Le sotto-caratteristiche sono: Analizzabilità: capacità di poter effettuare la diagnosi sul software ed individuare le cause di errori o malfunzionamenti; Modificabilità: impegno richiesto per modificare, rimuovere errori o sostituire componenti; 10

11 Stabilità: capacità di ridurre il rischio di comportamenti inaspettati a seguito di modifiche; Provabilità: impegno richiesto per validare le modifiche apportate al software; Aderenza alla manutenibilità: capacità di aderire a standard e convenzioni relative alla manutenibilità. PORTABILITÀ Per portabilità si intende la facilita con cui il software può essere trasferito da un ambiente operativo ad un altro. Gli attributi del software richiesti da questa caratteristica sono: Adattabilità: capacità di essere adattato a differenti ambienti senza richiedere azioni specifiche diverse da quelle previste dal software per tali attività; Installabilità: impegno richiesto per installare il software in un particolare ambiente; Coesistenza: capacità di coesistere con altre applicazioni indipendenti in ambienti comuni e di condividere le risorse; Sostituibilità: capacità di sostituire un altro software specifico indipendente, per lo stesso scopo e nello stesso ambiente; Aderenza alla portabilità: capacità di aderire a standard e convenzioni relative alla portabilità. 11

12 2.1 ORIGINI DELLA MISURAZIONE DEL SOFTWARE Così, come per molte altre cose, anche per il software venne il momento di introdurre un unità di misura che permettesse di valutare il lavoro dei programmatori e di quantificare anche economicamente gli sforzi profusi da team di sviluppo e ingegneri del software. La prima occasione ufficiale di discussione sulla misurazione del software, fu la prima conferenza NATO sul Software Engineering nel La prima, misura del software è storicamente rappresentata dal numero di linee di codice (LOC, Lines Of Code); il primo tentativo di calcolo della produttività dei programmatori in termini di numero di LOC per mese-persona risale al Dagli anni 70 sono nate proposte specifiche per la misurazione della dimensione tecnica e della complessità del software quali il coefficiente ciclomatico di McCabe (1976) e la software science di Halstead (1977). Tra la fine degli anni 70 e la prima metà degli anni 80 sono dunque sorte varie proposte di misura funzionale, intesa come misura indipendente dal linguaggio di programmazione e da altri aspetti tecnico-implementativi come la misura FFP (Files, Flows, Processes) nel 1983 e la prima versione dei Function Point nel Nel corso di un ventennio la Function Point Analysis, standardizzata dall IFPUG a partire dal 1986, è evoluta generando molte varianti e proposte di miglioramento, più o meno diffuse. Nel 1998 è nato il Common Software Measurement Consortium Group, da cui venne pubblicato il metodo dei COSMIC Full Function Point. 12

13 2.2 LINEE DI CODICE Le Linee di Codice, (LOC) sono una metrica del software che viene utilizzata per misurare la grandezza di un programma tramite il conteggio del numero di line di codice sorgente. Uno dei principali inconvenienti nell utilizzo di questo metodo riguarda l usabilità in particolari situazioni: è infatti molto difficile confrontare software con un numero di line di codice diverso tra loro. La misura delle LOC si divide in due tipi: Physical LOC: si contano tutte le righe di testo del codice sorgente includendo anche i commenti e le linee bianche se la loro percentuale non supera il 25% delle linee. Logical LOC: si contano gli "statements", ovvero le effettive istruzioni Un aspetto controverso è legato all utilizzo di questo metodo di misurazione e i programmi che va a valutare: il metodo si utile per misurare con efficienza il costo per la realizzazione di un software ma non tiene conto di una variabile importante: l abilità dello sviluppatore. 2.3 COMPLESSITÀ CICLOMATICA La Complessità Ciclomatica è una metrica software utilizzata per valutare la complessità di un algoritmo in un metodo, ed è basata unicamente sulla struttura del grafo che rappresenta l algoritmo. È calcolata utilizzando il grafo di controllo di flusso del programma in cui I nodi corrispondono a gruppi indivisibili di istruzioni, mentre gli archi connettono due nodi se il secondo gruppo di istruzioni può essere eseguito immediatamente dopo il primo gruppo. 13

14 Può essere definita come il numero di casi di test necessari per testare esaurientemente il metodo. Riferendosi ad un grafo che rappresenta l algoritmo e posti: v(g) = numero ciclomatico relativo al grafo G e = numero di archi nel grafo n = numero di nodi del grafo si ha: p = numero dei componenti connesse v(g) = e n + 2p In un grafo G fortemente connesso, il numero ciclomatico v(g) è uguale al numero di percorsi linearmente indipendenti. In generale sono presenti tanti If loop e quindi saranno presenti tante scelte che generano dei percorsi multipli, ad ognuno dei quali è associato un caso di test. Generalmente viene ritenuto migliore un metodo con complessità ciclomatica bassa, sebbene a volte questo non è dovuto ad una bassa complessità del metodo bensì al fatto che il metodo differisce le decisioni inviando un messaggio. 14

15 A causa dell eredità non può essere usata per misurare la complessità di una classe; tuttavia la complessità di una classe può essere valutata usando la complessità di un singolo metodo combinata con altre metriche. 2.4 MISURAZIONE FUNZIONALE Il metodo di misurazione della dimensione funzionale (FSM) misura la visione logica esterna del software dal punto di vista degli utenti, valutando la quantità di funzionalità da consegnare. La capacità di quantificare in maniera precisa le dimensioni del software, sia nella fase iniziale che in quella finale del ciclo di vita evolutivo del software, è determinante per chi gestisce i progetti di software e deve assicurare una valutazione dei rischi, lo sviluppo delle stime (per esempio, impegno lavorativo, costo del progetto) e la possibilità di disporre anticipatamente degli indicatori del progetto (es. produttività). Il metodo di misurazione della dimensione funzionale più usato è quello noto come IFPUG Analisi dei Function Point (IFPUG FPA) che si basa su un metodo proposto da Alan Albrecht. Questo metodo può essere considerato il precursore dei metodi FSM. Questa tecnica venne messa a punto per misurare la quantità di dati a cui accede una singola funzione come indicatore della dimensione funzionale. Sebbene l IFPUG, Analisi dei Function Point, abbia ottenuto una fama crescente nell industria, la mancata applicabilità a tutti i tipi di software e la rapida evoluzione dei paradigmi di sviluppo hanno portato alla nascita di numerose variazioni in questo metodo. Per superare queste diversità il COSMIC- FFP ha introdotto la seconda generazione di metodi FSM, applicabile a diversi domini di software, ai moderni concetti di ingegneria di software. Nel prossimo capitolo verranno descritte in modo approfondito le modalità di misurazione funzionale più diffuse. 15

16 Capitolo 3 3. FUNCTION POINT I Function Point sono un unità di misura utilizzata nell ambito dell ingegneria del software utilizzata per definire le dimensioni del prodotto in termini di funzionalità fornite dall utilizzatore e basata sul numero e tipo delle informazioni in entrata, in uscita e in memorizzazione. L idea di misurare le funzionalità di un applicazione software solo dal punto di vista dell utente finale, senza tener conto degli aspetti tecnici e implementativi, appare affascinante a chiunque abbia avuto a che fare con lo sviluppo di software. Questa metrica è stata introdotta a partire dal 1975 presso IBM da Allan Albrecht, il quale ha pubblicato per la prima volta le sue idee nel 1979, quando i computers erano ancora considerati macchine misteriose. Albrecht suggeriva di misurare un applicazione solo sulla base delle funzionalità visibili dall esterno, come se fosse una black box. 16

17 I principali motivi che hanno spinto Albrecht a creare questo nuovo approccio di misurazione, e che spingono attualmente i programmatori ad utilizzare i Function Point, sono: Stima Il Function Point consente di fare confronti tra tecnologie diverse e quindi di poter fare valutazioni chiare e precise su quale tecnologia è preferibile impiegare nella realizzazione di un progetto e cosa fare per poter migliorare la qualità del lavoro. E importante considerare le risorse umane per stimare il costo in termini di forza lavoro e non solamente in termini di fattori fisici e tecnologici da impiegare nello sviluppo. Predizione Il Function Point consente di effettuare previsioni sulle tempistiche e quindi sui costi necessari allo sviluppo del progetto. Questo motivo è utile sia per effettuare previsioni interne all azienda sia per effettuare preventivi. Pianificazione Dopo aver stimato le dimensioni del progetto e aver definito le tempistiche e l impiego delle risorse è necessario pianificare il lavoro per evitare problemi relativi a ritardi sui tempi di consegna e in fase di sviluppo tra coloro che sviluppano il progetto. Controllo L ultimo punto consiste nel verificare il rispetto dei tempi di consegna, dei tempi previsti per la realizzazione delle variefasi del progetto e permette di valutare quanto la pianificazione, la stima e le previsioni fossero accurate. Le idee di Allan Albrecht furono prese in considerazione da alcuni gruppi di utenti che fondarono nel 1986 l IFPUG (International Function Point Users Group). Alcune delle idee iniziali di Albrecht sono state migliorate, altre abbandonate e col passare degli anni sono state sviluppate varianti del metodo 17

18 originario tra cui la variante COSMIC, sviluppata dal Common Software Measurement International Consortium. 18

19 3.1 IFPUG FUNCTION POINT EVOLUZIONE Come precedentemente accennato, l International Function Point Users Group (IFPUG) ha sviluppato le idee iniziali di Allan Albrecht e sono stati pubblicati vari documenti tra cui il Manuale di Conteggio (Counting Practices Manual, CPM), il quale ha raggiunto nel 2004 la versione 4.2. La soluzione che inizialmente ideò Albrecht per risolvere i problemi comportati dall uso delle LOC (Line Of Code) nel calcolo della produttività e stima dell effort di progetto, teneva conto di quattro componenti funzionali suddivisi in due tipologie: Dati: espressi dalla componente originariamente denominata Master File (MF); Transazioni: espressi da tre diverse tipologie di componenti: o External Input (EI): un processo elementare nel quale i dati attraversano il confine dall esterno verso l interno; o External Output (EO): un processo elementare nel quale dati derivati passano attraverso il confine dall interno verso l esterno; o External InQuiry (EQ): un processo elementare con entrambe le componenti di input e output, il quale a fronte di un interrogazione dell utente al sistema restituisce il risultato della query. Ogni componente veniva soppesato con l attribuzione di un numero di punti funzionali (UFP Unadjusted Function Point) ottenendo un valore che poteva essere corretto in base a 10 fattori detti GSC (General System Characteristics), ognuno con un peso pari a +- 5%, con un aggiustamento pari al 50% sugli UFP. 19

20 La somma delle GSC prende il nome di VAF (Value Adjustement Factor). 10 VAF = DI i i=1 FP = UFP * VAF Dove DI sta per Grado di Influenza dei singoli fattori, valutati su una scala 0-5 dove 0 indica nessuna influenza e 5 indica influenza massima. L evoluzione del metodo, nel 1984, ha comportato ad un allargamento da 4 a 5 componenti suddividendo la voce Master File in: Internal Logical File (ILF): gruppo di dati o di informazioni di controllo che vengono mantenuti all interno del confine applicativo; External Interface File (EIF): gruppo di dati o di informazioni di controllo che vengono mantenuti all esterno del confine applicativo. Un altra modifica al modello del 1979 consiste nella ponderazione dei singoli componenti assegnando un livello di complessità (bassa, media e alta) e l allargamento da 10 a 14 fattori correttivi che permettono una modifica della precedente formula: 20

21 14 VAF = DI i i=1 Nel 1990 venne costituito in Italia il Gruppo Utenti Function Point Italia (GUFPI) il quale si dedicò alla pubblicazione di documenti interpretativi e alla traduzione delle versioni del Manuale di Conteggio a partire dalla versione 4.0. Proprio la versione 4.0, pubblicata nel 1994, viene considerata una svolta storica rispetto alle precedenti e le pubblicazioni successive, le versioni e 4.2 variano solamente per alcuni dettagli. Uno degli elementi che il CPM dell IFPUG ha formalizzato è stata la procedura di conteggio con la lista di sette passi necessari per giungere a determinare il numero di Adjusted Function Point. La versione venne pubblicata nell anno 2000 ed è molto simile alla versione attuale. In seguito alla pubblicazione di tale documento, l IFPUG si è resa conto di alcune imprecisioni nelle definizioni di ILF e EIF ed è stato diffuso nel settembre 2001 un aggiornamento (Addendum) del manuale. La versione 4.2 è semplicemente la versione integrata con l Addendum, e le definizione fornite in tale documento sono talmente precise da poter essere formalizzate. 21

22 3.1.2 PROCEDURA DI MISURAZIONE Come precedentemente accennato esistono varie fasi per arrivare a determinare il numero di Function Point di un progetto software. Determinare il tipo di conteggio Il primo passo consiste nell identificare il tipo di conteggio tra tre tipi di progetto misurabili con la Function Point Analysis: Development: misura le funzionalità di un nuovo progetto quando questo è ultimato. Enhancement: misura le funzionalità aggiunte, cancellate o modificate da un progetto esistente. Application: misura le funzionalità di un applicazione già installata che viene indicata quale baseline per i conteggi successivi. 22

23 Individuare l ambito del conteggio e il confine applicativo Identificare l ambito del conteggio significa individuare le funzionalità che devono essere considerate nel conteggio. Per confine applicativo si intende la linea di separazione tra le applicazioniche si stanno misurando e le applicazioni esterne o l utente. Contare le funzioni di tipo dati In questa fase si procede all identificazione del numero di funzioni di tipo dati. Esistono due tipi di file: File Interni Logici ILF File Esterni di Interfaccia EIF Internal Logic File Un Internal Logic File è un gruppo di dati logicamente collegati o di informazioni di controllo che vengono mantenuti all interno del confine applicativo. L intento primario di un File Interno Logico è contenere dati mantenuti da uno o più processi elementari dell applicazione sottoposta al conteggio. Regole per identificare un ILF Devono essere verificate le seguenti regole per far si che un gruppo di dati o informazioni di controllo possa essere considerato un File Interno Logico: Il gruppo di dati o informazioni di controllo deve poter essere identificabile dall utente. Il gruppo di dati o informazioni di controllo è mantenuto all interno del confine applicativo. 23

24 External Interface File Un External Interface File è un gruppo di dati logicamente collegati che vengono mantenuti all esterno del confine applicativo. L intento primario di un File Esterno d Interfaccia è contenere dati referenziati da uno o più processi elementari situati nei confini dell applicazione sottoposta al conteggio. Un EIF rappresenta un ILF in un altra applicazione. Regole per identificare un EIF Devono essere verificate le seguenti regole per far si che un gruppo di dati o informazioni di controllo possa essere considerato un File Esterno di Interfaccia: Il gruppo di dati o informazioni di controllo deve poter essere identificabile dall utente. Il gruppo di dati o informazioni di controllo è referenziato dall applicazione che si sta misurando ed è ad essa esterno. Il gruppo di dati o informazioni di controllo non è mantenuto all interno del confine applicativo. Il gruppo di dati o informazioni di controllo è mantenuto in un ILF di un altra applicazione. Per determinare la complessità funzionale, e di conseguenza il numero di Unadjusted Function Point, è necessario considerare il numero di elementi di tipo dati (DET) ed elementi di tipo record (RET) associati. Data Element Type Un DET (Data Element Type) è definito come un campo unico riconoscibile dall utente, non ricorsivo. 24

25 Regole di conteggio DET Viene conteggiato un DET per ogni campo unico riconoscibile dall utente, non ricorsivo che viene mantenuto o recuperato da un ILF o da un EIF. Quando due applicazioni prendono in considerazione lo stesso ILF/EIF ma mantengono o referenziano DET separati, vengono conteggiati solamente i DET utilizzati da ciascuna applicazione. Viene conteggiato un DET per ogni dato richiesto dall utente per stabilire una relazione con un altro ILF o EIF. E importante considerare il progetto logico dei dati perché è necessario considerare anche le chiavi esterne come DET. Record Element Type Un RET (Record Element Type) viene definito come un sottogruppo di elementi dati in un ILF o EIF, riconoscibile dall utente. Regole di Conteggio dei RET Viene conteggiato un obbligatorio) di un ILF o EIF. RET per ciascun sottogruppo (opzionale o Se non ci sono sottogruppi, viene conteggiato come RET il ILF o EIF. Complessità ILF-EIF La valutazione del livello di complessità per un ILF o un EIF si basa sul numero di RET e DET. Di seguito è riportata la tabella per la valutazione del grado di complessità. 25

26 1-19 DET DET 51 + DET 1 RET BASSA BASSA MEDIA 2 5 RET BASSA MEDIA ALTA 6 + RET MEDIA ALTA ALTA Contare le funzioni di tipo transizionale In questa fase si procede all identificazione del numero di funzioni di tipo transizionale. Esistono tre tipi di file: External Input (Input Esterni) External Output (Output Esterni) ExternalInQuiry (Interrogazioni Esterne) External Input Un Input Esterno è un processo elementare che permette di elaborare dati o informazioni di controllo provenienti dall esterno del confine dell applicazione. L intento primario di un Input Esterno è quello di manutenere uno o più ILF oppure alterare il comportamento del sistema. Regole di conteggio EI I dati devono essere ricevuti dall esterno del confine applicativo. Deve essere mantenuto almeno un ILF attraverso un processo elementare dell applicazione. Il processo deve essere autonomo e lasciare l applicazione in uno stato consistente. 26

27 Deve essere verificata una delle seguenti affermazioni: o Il processo logico è lo stesso di altri processi logici eseguiti da altri EI. o Il gruppo di dati identificati deve essere diverso da quelli di altri EI. o Gli ILF o EIF referenziati sono differenti dai file referenziati da altri EI. External Output Un Output Esterno è un processo elementare che genera dati o informazioni di controllo, le quali vengono inviate all esterno del confine dell applicazione. L intento primario di un Output Esterno è quello di presentare all utente l informazione attraverso una logica elaborativa differente. Regole di conteggio EO I dati devono uscire dal confine applicativo. Il processo deve essere autonomo e lasciare l applicazione in uno stato consistente. Deve essere verificata una delle seguenti affermazioni: o Il processo logico è lo stesso di altri processi logici eseguiti da altri EO. o Il gruppo di dati identificati deve essere diverso da quelli di altri EO. o Gli ILF o EIF referenziati sono differenti dai file referenziati da altri EO. 27

28 External InQuiry Per ExternalInQuirysi intende un processo elementare composto da una combinazione di input ed output che manda dati o informazioni di controllo all esterno del confine di applicazione. L intento primario di un Interrogazione Esterna è quello di presentare all utente l informazione attraverso il recupero dati o informazioni di controllo. Regole di conteggio EQ I dati devono uscire dal confine applicativo. Il processo deve essere autonomoe lasciare l applicazione in uno stato consistente. I dati devono essere prelevati da uno o più ILF/EIF. Il processo non deve manutenere un ILF. Deve essere verificata una delle seguenti affermazioni: o Il processo logico è lo stesso di altri processi logici eseguiti da altri EQ. o Il gruppo di dati identificati deve essere diverso da quelli di altri EQ. o Gli ILF o EIF referenziati sono differenti dai file referenziati da altri EQ. Complessità transazionale Per determinare la complessità funzionale, e di conseguenza il numero di Unadjusted Function Point, è necessario considerare il numero di tipi di file referenziati (FTR) ed elementi di tipo dati (DET) associati. 28

29 File Type Referenced Un FTR (File Type Referenced) è un ILF o EIF letto o mantenuto da una funzione di tipo transazionale. Quindi un FTR può assumere due forme: Un ILF letto o mantenuto da una funzione di tipo transazione. Un EIF letto da una funzione di tipo transazione. Regole FTR per EI Viene conteggiato un FTR per ogni ILF mantenuto. Viene conteggiato un FTR per ogni ILF o EIF letto. Viene conteggiato solo un FTR per ogni ILF sia letto che mantenuto. Regole FTR per EO Viene conteggiato un FTR per ogni ILF mantenuto. Viene conteggiato un FTR per ogni ILF o EIF letto. Viene conteggiato solo un FTR per ogni ILF sia letto che mantenuto. Regole FTR per EQ Viene conteggiato un FTR per ogni ILF o EIF letto. Data ElementType Un DET (Data ElementType) è definito come un campo unico riconoscibile dall utente, non ricorsivo. 29

Introduzione al Project Management. AIPA Area Monitoraggio e Verifiche

Introduzione al Project Management. AIPA Area Monitoraggio e Verifiche Introduzione al Project Management AIPA Area Monitoraggio e Verifiche Contenuti del corso Impostazione del progetto; Pianificazione delle attività, risorse e costi; Coordinamento e controllo durante le

Dettagli

DBMS (Data Base Management System)

DBMS (Data Base Management System) Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire

Dettagli

Le funzionalità di un DBMS

Le funzionalità di un DBMS Le funzionalità di un DBMS Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: DBMS.pdf Sistemi Informativi L-A DBMS: principali funzionalità Le

Dettagli

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory FILE SYSTEM : INTERFACCIA 8.1 Interfaccia del File System Concetto di File Metodi di Accesso Struttura delle Directory Montaggio del File System Condivisione di File Protezione 8.2 Concetto di File File

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello del sistema 4 2.1 Requisiti hardware........................ 4 2.2 Requisiti software.........................

Dettagli

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

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica A.A. 2007-08 CORSO DI INGEGNERIA DEL SOFTWARE Prof. Giulio Destri http://www.areasp.com (C) 2007 AreaSP for

Dettagli

AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Unified Process. Prof. Agostino Poggi

AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Unified Process. Prof. Agostino Poggi AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Unified Process Prof. Agostino Poggi Unified Process Unified Software Development Process (USDP), comunemente chiamato

Dettagli

Anno di corso: 2004/2005. Istruzioni. Istruzioni per lo svolgimento dei progetti didattici. versione 1.1

Anno di corso: 2004/2005. Istruzioni. Istruzioni per lo svolgimento dei progetti didattici. versione 1.1 versione 1.1 per lo svolgimento dei progetti didattici Corso di Laboratorio di Programmazione II Prof. Luca Forlizzi Anno Accademico 2004-2005 GENERALITÀ...3 Scopo del documento...3 Struttura del documento...3

Dettagli

BPEL: Business Process Execution Language

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

Dettagli

I Valori del Manifesto Agile sono direttamente applicabili a Scrum:!

I Valori del Manifesto Agile sono direttamente applicabili a Scrum:! Scrum descrizione I Principi di Scrum I Valori dal Manifesto Agile Scrum è il framework Agile più noto. E la sorgente di molte delle idee che si trovano oggi nei Principi e nei Valori del Manifesto Agile,

Dettagli

Studente: SANTORO MC. Matricola : 528

Studente: SANTORO MC. Matricola : 528 CORSO di LAUREA in INFORMATICA Corso di CALCOLO NUMERICO a.a. 2004-05 Studente: SANTORO MC. Matricola : 528 PROGETTO PER L ESAME 1. Sviluppare una versione dell algoritmo di Gauss per sistemi con matrice

Dettagli

Il Business Process Management: nuova via verso la competitività aziendale

Il Business Process Management: nuova via verso la competitività aziendale Il Business Process Management: nuova via verso la competitività Renata Bortolin Che cosa significa Business Process Management? In che cosa si distingue dal Business Process Reingeneering? Cosa ha a che

Dettagli

GUIDA RAPIDA emagister-agora Edizione BASIC

GUIDA RAPIDA emagister-agora Edizione BASIC GUIDA RAPIDA emagister-agora Edizione BASIC Introduzione a emagister-agora Interfaccia di emagister-agora Configurazione dell offerta didattica Richieste d informazioni Gestione delle richieste d informazioni

Dettagli

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina Cosa è il DSS L elevato sviluppo dei personal computer, delle reti di calcolatori, dei sistemi database di grandi dimensioni, e la forte espansione di modelli basati sui calcolatori rappresentano gli sviluppi

Dettagli

Introduzione alle applicazioni di rete

Introduzione alle applicazioni di rete Introduzione alle applicazioni di rete Definizioni base Modelli client-server e peer-to-peer Socket API Scelta del tipo di servizio Indirizzamento dei processi Identificazione di un servizio Concorrenza

Dettagli

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN)

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) System Overview di Mattia Bargellini 1 CAPITOLO 1 1.1 Introduzione Il seguente progetto intende estendere

Dettagli

Informatica per la comunicazione" - lezione 9 -

Informatica per la comunicazione - lezione 9 - Informatica per la comunicazione" - lezione 9 - Protocolli di livello intermedio:" TCP/IP" IP: Internet Protocol" E il protocollo che viene seguito per trasmettere un pacchetto da un host a un altro, in

Dettagli

Applicazione: DoQui/Index - Motore di gestione dei contenuti digitali

Applicazione: DoQui/Index - Motore di gestione dei contenuti digitali Riusabilità del software - Catalogo delle applicazioni: Applicativo verticale Applicazione: DoQui/Index - Motore di gestione dei contenuti digitali Amministrazione: Regione Piemonte - Direzione Innovazione,

Dettagli

Copyright Università degli Studi di Torino, Progetto Atlante delle Professioni 2009 IT PROCESS EXPERT

Copyright Università degli Studi di Torino, Progetto Atlante delle Professioni 2009 IT PROCESS EXPERT IT PROCESS EXPERT 1. CARTA D IDENTITÀ... 2 2. CHE COSA FA... 3 3. DOVE LAVORA... 4 4. CONDIZIONI DI LAVORO... 5 5. COMPETENZE... 6 Quali competenze sono necessarie... 6 Conoscenze... 8 Abilità... 9 Comportamenti

Dettagli

ATTUAZIONE DEL PROGETTO E IL MANAGEMENT: alcune definizioni e indicazioni generali

ATTUAZIONE DEL PROGETTO E IL MANAGEMENT: alcune definizioni e indicazioni generali ATTUAZIONE DEL PROGETTO E IL MANAGEMENT: alcune definizioni e indicazioni generali Cos è un progetto? Un iniziativa temporanea intrapresa per creare un prodotto o un servizio univoco (PMI - Project Management

Dettagli

B.P.S. Business Process Server ALLEGATO C10

B.P.S. Business Process Server ALLEGATO C10 B.P.S. Business Process Server ALLEGATO C10 REGIONE BASILICATA DIPARTIMENTO PRESIDENZA DELLA GIUNTA REGIONALE UFFICIO SISTEMA INFORMATIVO REGIONALE E STATISTICA Via V. Verrastro, n. 4 85100 Potenza tel

Dettagli

Inter Process Communication. Laboratorio Software 2008-2009 C. Brandolese

Inter Process Communication. Laboratorio Software 2008-2009 C. Brandolese Inter Process Communication Laboratorio Software 2008-2009 C. Brandolese Introduzione Più processi o thread Concorrono alla relaizzazione di una funzione applicativa Devono poter realizzare Sincronizzazione

Dettagli

Panoramica su ITIL V3 ed esempio di implementazione del Service Design

Panoramica su ITIL V3 ed esempio di implementazione del Service Design Master Universitario di II livello in Interoperabilità Per la Pubblica Amministrazione e Le Imprese Panoramica su ITIL V3 ed esempio di implementazione del Service Design Lavoro pratico II Periodo didattico

Dettagli

Università di Venezia Corso di Laurea in Informatica. Marco Fusaro KPMG S.p.A.

Università di Venezia Corso di Laurea in Informatica. Marco Fusaro KPMG S.p.A. Università di Venezia Corso di Laurea in Informatica Laboratorio di Informatica Applicata Introduzione all IT Governance Lezione 5 Marco Fusaro KPMG S.p.A. 1 CobiT: strumento per la comprensione di una

Dettagli

Guida all uso del portale dello studente

Guida all uso del portale dello studente Guida all uso del portale dello studente www.studente.unicas.it Versione 1.0 del 10/04/2010 Pagina 1 Sommario PREMESSA... 3 PROFILO... 7 AMICI... 9 POSTA... 10 IMPOSTAZIONI... 11 APPUNTI DI STUDIO... 12

Dettagli

Release Management. Obiettivi. Definizioni. Responsabilità. Attività. Input

Release Management. Obiettivi. Definizioni. Responsabilità. Attività. Input Release Management Obiettivi Obiettivo del Release Management è di raggiungere una visione d insieme del cambiamento nei servizi IT e accertarsi che tutti gli aspetti di una release (tecnici e non) siano

Dettagli

Introduzione ad Access

Introduzione ad Access Introduzione ad Access Luca Bortolussi Dipartimento di Matematica e Informatica Università degli studi di Trieste Access E un programma di gestione di database (DBMS) Access offre: un supporto transazionale

Dettagli

Rischio impresa. Rischio di revisione

Rischio impresa. Rischio di revisione Guida alla revisione legale PIANIFICAZIONE del LAVORO di REVISIONE LEGALE dei CONTI Formalizzazione delle attività da svolgere nelle carte di lavoro: determinazione del rischio di revisione, calcolo della

Dettagli

Quando A e B coincidono una coppia ordinata é determinata anche dalla loro posizione.

Quando A e B coincidono una coppia ordinata é determinata anche dalla loro posizione. Grafi ed Alberi Pag. /26 Grafi ed Alberi In questo capitolo richiameremo i principali concetti di due ADT che ricorreranno puntualmente nel corso della nostra trattazione: i grafi e gli alberi. Naturale

Dettagli

Note e informazioni legali

Note e informazioni legali Note e informazioni legali Proprietà del sito; accettazione delle condizioni d uso I presenti termini e condizioni di utilizzo ( Condizioni d uso ) si applicano al sito web di Italiana Audion pubblicato

Dettagli

Metadati e Modellazione. standard P_META

Metadati e Modellazione. standard P_META Metadati e Modellazione Lo standard Parte I ing. Laurent Boch, ing. Roberto Del Pero Rai Centro Ricerche e Innovazione Tecnologica Torino 1. Introduzione 1.1 Scopo dell articolo Questo articolo prosegue

Dettagli

Business Process Management

Business Process Management Business Process Management Comprendere, gestire, organizzare e migliorare i processi di business Caso di studio a cura della dott. Danzi Francesca e della prof. Cecilia Rossignoli 1 Business process Un

Dettagli

Informatica. Scopo della lezione

Informatica. Scopo della lezione 1 Informatica per laurea diarea non informatica LEZIONE 1 - Cos è l informatica 2 Scopo della lezione Introdurre le nozioni base della materia Definire le differenze tra hardware e software Individuare

Dettagli

Flusso a costo minimo e simplesso su reti

Flusso a costo minimo e simplesso su reti Flusso a costo minimo e simplesso su reti La particolare struttura di alcuni problemi di PL può essere talvolta utilizzata per la progettazione di tecniche risolutive molto più efficienti dell algoritmo

Dettagli

Progettazione di un DB....in breve

Progettazione di un DB....in breve Progettazione di un DB...in breve Cosa significa progettare un DB Definirne struttura,caratteristiche e contenuto. Per farlo è opportuno seguire delle metodologie che permettono di ottenere prodotti di

Dettagli

IT FINANCIAL MANAGEMENT

IT FINANCIAL MANAGEMENT IT FINANCIAL MANAGEMENT L IT Financial Management è una disciplina per la pianificazione e il controllo economico-finanziario, di carattere sia strategico sia operativo, basata su un ampio insieme di metodologie

Dettagli

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO CLSMS SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO Sommario e introduzione CLSMS SOMMARIO INSTALLAZIONE E CONFIGURAZIONE... 3 Parametri di configurazione... 4 Attivazione Software...

Dettagli

Il ciclo di vita del software

Il ciclo di vita del software Il ciclo di vita del software Il ciclo di vita del software Definisce un modello per il software, dalla sua concezione iniziale fino al suo sviluppo completo, al suo rilascio, alla sua successiva evoluzione,

Dettagli

white paper La Process Intelligence migliora le prestazioni operative del settore assicurativo

white paper La Process Intelligence migliora le prestazioni operative del settore assicurativo white paper La Process Intelligence migliora le prestazioni operative del settore assicurativo White paper La Process Intelligence migliora le prestazioni operative del settore assicurativo Pagina 2 Sintesi

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

Dettagli

RUP (Rational Unified Process)

RUP (Rational Unified Process) RUP (Rational Unified Process) Caratteristiche, Punti di forza, Limiti versione del tutorial: 3.3 (febbraio 2007) Pag. 1 Unified Process Booch, Rumbaugh, Jacobson UML (Unified Modeling Language) notazione

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

Grandi dimensioni e dimensioni variabili

Grandi dimensioni e dimensioni variabili Grandi dimensioni e dimensioni variabili aprile 2012 1 Questo capitolo studia alcuni ulteriori aspetti importanti e caratteristici della gestione delle dimensioni in particolare, delle grandi dimensioni

Dettagli

Elementi di Statistica

Elementi di Statistica Elementi di Statistica Contenuti Contenuti di Statistica nel corso di Data Base Elementi di statistica descrittiva: media, moda, mediana, indici di dispersione Introduzione alle variabili casuali e alle

Dettagli

Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore)

Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore) Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore) Autore: Matteo Veroni Email: matver87@gmail.com Sito web: matteoveroni@altervista.org Fonti consultate: http://openmeetings.apache.org/

Dettagli

RESPONS.In.City - Methodology

RESPONS.In.City - Methodology RESPONS.In.City - Methodology THE METHODOLOGY OF A RESPONSIBLE CITIZENSHIP PROMOTION Metodologia di Promozione della Cittadinanza come Responsabilità Condivisa 1 Premessa La possibilità di partecipare

Dettagli

SIASFi: il sistema ed il suo sviluppo

SIASFi: il sistema ed il suo sviluppo SIASFI: IL SISTEMA ED IL SUO SVILUPPO 187 SIASFi: il sistema ed il suo sviluppo Antonio Ronca Il progetto SIASFi nasce dall esperienza maturata da parte dell Archivio di Stato di Firenze nella gestione

Dettagli

Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL

Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone SQL: il DDL Parti del linguaggio SQL Definizione di basi di dati (Data Definition Language DDL) Linguaggio per modificare

Dettagli

Configuration Management

Configuration Management Configuration Management Obiettivi Obiettivo del Configuration Management è di fornire un modello logico dell infrastruttura informatica identificando, controllando, mantenendo e verificando le versioni

Dettagli

I file di dati. Unità didattica D1 1

I file di dati. Unità didattica D1 1 I file di dati Unità didattica D1 1 1) I file sequenziali Utili per la memorizzazione di informazioni testuali Si tratta di strutture organizzate per righe e non per record Non sono adatte per grandi quantità

Dettagli

Sistemi di supporto alle decisioni

Sistemi di supporto alle decisioni Sistemi di supporto alle decisioni Introduzione I sistemi di supporto alle decisioni, DSS (decision support system), sono strumenti informatici che utilizzano dati e modelli matematici a supporto del decision

Dettagli

Permutazione degli elementi di una lista

Permutazione degli elementi di una lista Permutazione degli elementi di una lista Luca Padovani padovani@sti.uniurb.it Sommario Prendiamo spunto da un esercizio non banale per fare alcune riflessioni su un approccio strutturato alla risoluzione

Dettagli

La Valutazione Euristica

La Valutazione Euristica 1/38 E un metodo ispettivo di tipo discount effettuato da esperti di usabilità. Consiste nel valutare se una serie di principi di buona progettazione sono stati applicati correttamente. Si basa sull uso

Dettagli

capitolo 6 IL QUESTIONARIO PER LA VALUTV ALUTAZIONEAZIONE DEI CONTENUTI

capitolo 6 IL QUESTIONARIO PER LA VALUTV ALUTAZIONEAZIONE DEI CONTENUTI capitolo 6 IL QUESTIONARIO PER LA VALUTV ALUTAZIONEAZIONE DEI CONTENUTI 6.1 ISTRUZIONI PER IL VALUTATORE Il processo di valutazione si articola in quattro fasi. Il Valutatore deve: 1 leggere il questionario;

Dettagli

errore I = numero soggetti (I = 4) K = numero livelli tratt. (K = 3) popolazione varianza dovuta ai soggetti trattamento

errore I = numero soggetti (I = 4) K = numero livelli tratt. (K = 3) popolazione varianza dovuta ai soggetti trattamento Analisi della varianza a una via a misure ripetute (Anova con 1 fattore within) modello strutturale dell'analisi della varianza a misure ripetute con 1 fattore: y = μ ik 0 +π i +α k + ik ε ik interazione

Dettagli

Regolamento per l attribuzione dei crediti formativi altre attività

Regolamento per l attribuzione dei crediti formativi altre attività UNIVERSITA DEGLI STUDI DI GENOVA Scuola Politecnica, Dipartimento di Scienze per l Architettura Regolamento per l attribuzione dei crediti formativi altre attività Corso di Laurea TRIENNALE IN DISEGNO

Dettagli

Procedura per il ripristino dei certificati del dispositivo USB

Procedura per il ripristino dei certificati del dispositivo USB Procedura per il ripristino dei certificati del dispositivo USB 30/04/2013 Sommario - Limitazioni di responsabilità e uso del manuale... 3 1 Glossario... 3 2 Presentazione... 4 3 Quando procedere al ripristino

Dettagli

Modulo. Programmiamo in Pascal. Unità didattiche COSA IMPAREREMO...

Modulo. Programmiamo in Pascal. Unità didattiche COSA IMPAREREMO... Modulo A Programmiamo in Pascal Unità didattiche 1. Installiamo il Dev-Pascal 2. Il programma e le variabili 3. Input dei dati 4. Utilizziamo gli operatori matematici e commentiamo il codice COSA IMPAREREMO...

Dettagli

Processi di business sovra-regionali relativi ai sistemi regionali di FSE. Versione 1.0 24 Giugno 2014

Processi di business sovra-regionali relativi ai sistemi regionali di FSE. Versione 1.0 24 Giugno 2014 Processi di business sovra-regionali relativi ai sistemi regionali di FSE Versione 1.0 24 Giugno 2014 1 Indice Indice... 2 Indice delle figure... 3 Indice delle tabelle... 4 Obiettivi del documento...

Dettagli

Sistemi avanzati di gestione dei Sistemi Informativi

Sistemi avanzati di gestione dei Sistemi Informativi Esperti nella gestione dei sistemi informativi e tecnologie informatiche Sistemi avanzati di gestione dei Sistemi Informativi Docente: Email: Sito: Eduard Roccatello eduard@roccatello.it http://www.roccatello.it/teaching/gsi/

Dettagli

Project Management dei Progetti Software

Project Management dei Progetti Software Project Management dei Progetti Software 1 Obiettivi della lezione Il Project Management Tecniche per la stima dei costi sw Misurare le dimensioni di un progetto sw Linee di codice Function Point Stima

Dettagli

Parte 2. Determinante e matrice inversa

Parte 2. Determinante e matrice inversa Parte. Determinante e matrice inversa A. Savo Appunti del Corso di Geometria 013-14 Indice delle sezioni 1 Determinante di una matrice, 1 Teorema di Cramer (caso particolare), 3 3 Determinante di una matrice

Dettagli

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo g.cirillo@unina.it

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo g.cirillo@unina.it INTRODUZIONE, LINGUAGGIO, HANDS ON Giuseppe Cirillo g.cirillo@unina.it Il linguaggio C 1972-Dennis Ritchie 1978-Definizione 1990-ANSI C 1966 Martin Richars (MIT) Semplificando CPL usato per sviluppare

Dettagli

Rischi, requisiti e stima di un progetto software

Rischi, requisiti e stima di un progetto software Rischi, requisiti e stima di un progetto software Roberto Meli Abstract Lo scopo di questo lavoro è quello di fornire un contributo pratico a coloro che sono interessati a perseguire il successo di un

Dettagli

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it FIRESHOP.NET Gestione Utility & Configurazioni Rev. 2014.3.1 www.firesoft.it Sommario SOMMARIO Introduzione... 4 Impostare i dati della propria azienda... 5 Aggiornare il programma... 6 Controllare l integrità

Dettagli

How to Develop Accessible Linux Applications

How to Develop Accessible Linux Applications How to Develop Accessible Linux Applications Sharon Snider Copyright 2002 IBM Corporation v1.1, 2002-05-03 Diario delle Revisioni Revisione v1.1 2002-05-03 Revisionato da: sds Convertito in DocBook XML

Dettagli

Energy Studio Manager Manuale Utente USO DEL SOFTWARE

Energy Studio Manager Manuale Utente USO DEL SOFTWARE Energy Studio Manager Manuale Utente USO DEL SOFTWARE 1 ANALYSIS.EXE IL PROGRAMMA: Una volta aperto il programma e visualizzato uno strumento il programma apparirà come nell esempio seguente: Il programma

Dettagli

Esercizi per il corso di Algoritmi e Strutture Dati

Esercizi per il corso di Algoritmi e Strutture Dati 1 Esercizi per il corso di Algoritmi e Strutture Dati Esercizi sulla Tecnica Divide et Impera N.B. Tutti gli algoritmi vanno scritti in pseudocodice (non in Java, né in C++, etc. ). Di tutti gli algoritmi

Dettagli

AA 2006-07 LA RICORSIONE

AA 2006-07 LA RICORSIONE PROGRAMMAZIONE AA 2006-07 LA RICORSIONE AA 2006-07 Prof.ssa A. Lanza - DIB 1/18 LA RICORSIONE Il concetto di ricorsione nasce dalla matematica Una funzione matematica è definita ricorsivamente quando nella

Dettagli

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1 DIAGRAMMI A BLOCCHI TEORIA ED ESERCIZI 1 1 Il linguaggio dei diagrammi a blocchi è un possibile formalismo per la descrizione di algoritmi Il diagramma a blocchi, o flowchart, è una rappresentazione grafica

Dettagli

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1 Il gestionale come l'avete sempre sognato... Pag. 1 Le funzionalità di X-Cross La sofisticata tecnologia di CrossModel, oltre a permettere di lavorare in Internet come nel proprio ufficio e ad avere una

Dettagli

GLI ASSI CULTURALI. Allegato 1 - Gli assi culturali. Nota. rimessa all autonomia didattica del docente e alla programmazione collegiale del

GLI ASSI CULTURALI. Allegato 1 - Gli assi culturali. Nota. rimessa all autonomia didattica del docente e alla programmazione collegiale del GLI ASSI CULTURALI Nota rimessa all autonomia didattica del docente e alla programmazione collegiale del La normativa italiana dal 2007 13 L Asse dei linguaggi un adeguato utilizzo delle tecnologie dell

Dettagli

Lavoro Occasionale Accessorio. Manuale Utente Internet

Lavoro Occasionale Accessorio. Manuale Utente Internet Lavoro Occasionale Accessorio Internet 1. Introduzione... 3 1.1 Obiettivo del documento... 3 1.2 Normativa... 3 1.3 Attori del Processo... 4 1.4 Accesso Internet... 5 1.4.1 Accesso Internet da Informazioni...

Dettagli

La Carta di Montecatini

La Carta di Montecatini La Carta di Montecatini Le origini e le ragioni della Carta di Montecatini La Carta di Montecatini è il frutto del lavoro del secondo Campus che si è svolto nella città termale dal 27 al 29 ottobre 2005.

Dettagli

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Lezione 1 Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Definizione di utente e di programmatore L utente è qualsiasi persona che usa il computer anche se non è in grado di programmarlo

Dettagli

Applicazione: Share - Sistema per la gestione strutturata di documenti

Applicazione: Share - Sistema per la gestione strutturata di documenti Riusabilità del software - Catalogo delle applicazioni: Gestione Documentale Applicazione: Share - Sistema per la gestione strutturata di documenti Amministrazione: Regione Piemonte - Direzione Innovazione,

Dettagli

Le Reti Informatiche

Le Reti Informatiche Le Reti Informatiche modulo 10 Prof. Salvatore Rosta www.byteman.it s.rosta@byteman.it 1 Nomenclatura: 1 La rappresentazione di uno schema richiede una serie di abbreviazioni per i vari componenti. Seguiremo

Dettagli

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi alternative: function nome { lista-comandi } oppure nome ( ) {

Dettagli

Lavorare in gruppo. Corso di formazione per i dipendenti dell Università di Palermo

Lavorare in gruppo. Corso di formazione per i dipendenti dell Università di Palermo Lavorare in gruppo Corso di formazione per i dipendenti dell Università di Palermo Premessa La conoscenza del gruppo e delle sue dinamiche, così come la competenza nella gestione dei gruppi, deve prevedere

Dettagli

Ricerca non informata in uno spazio di stati

Ricerca non informata in uno spazio di stati Università di Bergamo Facoltà di Ingegneria Intelligenza Artificiale Paolo Salvaneschi A5_2 V2.4 Ricerca non informata in uno spazio di stati Il contenuto del documento è liberamente utilizzabile dagli

Dettagli

Ambienti di sviluppo integrato

Ambienti di sviluppo integrato Ambienti di sviluppo integrato Un ambiente di sviluppo integrato (IDE - Integrated Development Environment) è un ambiente software che assiste i programmatori nello sviluppo di programmi Esso è normalmente

Dettagli

Energy Data Management System (EDMS): la soluzione software per una gestione efficiente dell energia secondo lo standard ISO 50001

Energy Data Management System (EDMS): la soluzione software per una gestione efficiente dell energia secondo lo standard ISO 50001 Energy Data Management System (EDMS): la soluzione software per una gestione efficiente dell energia secondo lo standard ISO 50001 Oggi più che mai, le aziende italiane sentono la necessità di raccogliere,

Dettagli

Inizializzazione degli Host. BOOTP e DHCP

Inizializzazione degli Host. BOOTP e DHCP BOOTP e DHCP a.a. 2002/03 Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/~auletta/ Università degli studi di Salerno Laurea e Diploma in Informatica 1 Inizializzazione degli Host Un

Dettagli

Cos è l Ingegneria del Software?

Cos è l Ingegneria del Software? Cos è l Ingegneria del Software? Corpus di metodologie e tecniche per la produzione di sistemi software. L ingegneria del software è la disciplina tecnologica e gestionale che riguarda la produzione sistematica

Dettagli

Lezione n.19 Processori RISC e CISC

Lezione n.19 Processori RISC e CISC Lezione n.19 Processori RISC e CISC 1 Processori RISC e Superscalari Motivazioni che hanno portato alla realizzazione di queste architetture Sommario: Confronto tra le architetture CISC e RISC Prestazioni

Dettagli

UML: Class Diagram. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it

UML: Class Diagram. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it UML: Class Diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Class Diagram Forniscono una vista strutturale

Dettagli

12.5 UDP (User Datagram Protocol)

12.5 UDP (User Datagram Protocol) CAPITOLO 12. SUITE DI PROTOCOLLI TCP/IP 88 12.5 UDP (User Datagram Protocol) L UDP (User Datagram Protocol) é uno dei due protocolli del livello di trasporto. Come l IP, é un protocollo inaffidabile, che

Dettagli

DECRETA. ART. 1 Caratteristiche del Master

DECRETA. ART. 1 Caratteristiche del Master Il Rettore Decreto Rep. n 1339 Prot. n 13549 Data 29.04.2014 Titolo III Classe V UOR SOFPL VISTO lo Statuto del Politecnico di Milano; VISTO il D.M. 3.11.1999, n.509; VISTO Il D.M. 22.10.2004, n. 270;

Dettagli

STS. Profilo della società

STS. Profilo della società STS Profilo della società STS, Your ICT Partner Con un solido background accademico, regolari confronti con il mondo della ricerca ed esperienza sia nel settore pubblico che privato, STS è da oltre 20

Dettagli

2- Identificazione del processo. (o dei processi) da analizzare. Approcci: Esaustivo. In relazione al problema. Sulla base della rilevanza

2- 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

Dettagli

Corso di Programmazione ad Oggetti

Corso di Programmazione ad Oggetti Corso di Programmazione ad Oggetti Introduzione alla programmazione ad oggetti a.a. 2008/2009 Claudio De Stefano 1 La programmazione modulare Un programma può essere visto come un insieme di moduli che

Dettagli

ISTRUZIONI PER IL SERVIZIO SPCOOP - RICEZIONE

ISTRUZIONI PER IL SERVIZIO SPCOOP - RICEZIONE ISTRUZIONI PER IL SERVIZIO SPCOOP - RICEZIONE Pag. 1 di 14 INDICE 1. Glossario... 3 2. il servizio SPCoop - Ricezione... 5 3. Il web-service RicezioneFatture... 8 3.1 Operazione RiceviFatture... 9 3.1.1

Dettagli

Documentazione Servizio SMS WEB. Versione 1.0

Documentazione Servizio SMS WEB. Versione 1.0 Documentazione Servizio SMS WEB Versione 1.0 1 Contenuti 1 INTRODUZIONE...5 1.1 MULTILANGUAGE...5 2 MESSAGGI...7 2.1 MESSAGGI...7 2.1.1 INVIO SINGOLO SMS...7 2.1.2 INVIO MULTIPLO SMS...9 2.1.3 INVIO MMS

Dettagli

Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate.

Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate. Comandi filtro: sed Il nome del comando sed sta per Stream EDitor e la sua funzione è quella di permettere di editare il testo passato da un comando ad un altro in una pipeline. Ciò è molto utile perché

Dettagli

Ricapitoliamo. Ricapitoliamo

Ricapitoliamo. Ricapitoliamo Ricapitoliamo Finora ci siamo concentrati sui processi computazionali e sul ruolo che giocano le procedure nella progettazione dei programmi In particolare, abbiamo visto: Come usare dati primitivi (numeri)

Dettagli

Trattamento aria Regolatore di pressione proporzionale. Serie 1700

Trattamento aria Regolatore di pressione proporzionale. Serie 1700 Trattamento aria Serie 7 Serie 7 Trattamento aria Trattamento aria Serie 7 Serie 7 Trattamento aria +24VDC VDC OUTPUT MICROPROCESS. E P IN EXH OUT Trattamento aria Serie 7 Serie 7 Trattamento aria 7 Trattamento

Dettagli

Dalla Mappatura dei Processi al Business Process Management

Dalla Mappatura dei Processi al Business Process Management Dalla Mappatura dei Processi al Business Process Management Romano Stasi Responsabile Segreteria Tecnica ABI Lab Roma, 4 dicembre 2007 Agenda Il percorso metodologico Analizzare per conoscere: la mappatura

Dettagli

Documento di accompagnamento: mediane dei settori non bibliometrici

Documento di accompagnamento: mediane dei settori non bibliometrici Documento di accompagnamento: mediane dei settori non bibliometrici 1. Introduzione Vengono oggi pubblicate sul sito dell ANVUR e 3 tabelle relative alle procedure dell abilitazione scientifica nazionale

Dettagli

Esempi di algoritmi. Lezione III

Esempi di algoritmi. Lezione III Esempi di algoritmi Lezione III Scopo della lezione Implementare da zero algoritmi di media complessità. Verificare la correttezza di un algoritmo eseguendolo a mano. Imparare a valutare le prestazioni

Dettagli

www.bistrategy.it In un momento di crisi perché scegliere di investire sulla Business Intelligence?

www.bistrategy.it In un momento di crisi perché scegliere di investire sulla Business Intelligence? In un momento di crisi perché scegliere di investire sulla Business Intelligence? Cos è? Per definizione, la Business Intelligence è: la trasformazione dei dati in INFORMAZIONI messe a supporto delle decisioni

Dettagli