UNIVERSITÀ DEGLI STUDI DI BARI

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "UNIVERSITÀ DEGLI STUDI DI BARI"

Transcript

1 UNIVERSITÀ DEGLI STUDI DI BARI Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Specialistica Metodi Sperimentali per la Produzione del Software Valutazione empirica di OSS per i fattori Traffico, Sviluppo ed Attività di Manutenzione Gruppo di lavoro: Giannico Luca (515877) Leggieri Myriam (525145) Minervini Paqsuale (525269) Paradiso Michele (480296) A.A 2007/08

2 Indice Capitolo 1 Introduzione OSS SourceForge Il caso di Studio...10 Capitolo 2 Definizione del processo con FSP Process Modeling Language Formal Structured Planning Work Flow Diagram Primo livello di astrazione Campionamento OSS Mappa di Caratterizzazione Progettazione Indagine Empirica Analisi ed Interpretazione dei Dati Scenari procedurali Campionamento OSS Mappa di Caratterizzazione Progettazione Indagine Empirica Analisi ed Interpretazione dei Dati Descrizione dei Manufatti Verifica e Validazione Consistenza globale dei manufatti Consistenza globale dei WFD Consistenza strutturale dei WFD Consistenza dei manufatti negli SP Consistenza comportamentale (verifica dinamica) Trasformazione del Modello di progetto in Piano di Progetto...30 Capitolo 3 Campionamento OSS Ricerca OSS FLOSSmole: motivazioni DataBase Design Scelta OSS...35 Capitolo 4 Strumenti Automatici Raccolta automatica dei dati sugli OSS Software per l analisi dei dati: R Strumenti automatici per l analisi dei dati

3 Capitolo 5 Mappa di Caratterizzazione Descrizione Fattori di qualità Descrizione Metriche Traffico Sviluppo Summary&Details Attività di Manutenzione...64 Capitolo 6 Progettazione Indagine Empirica Definizione dell esperimento Formulazione delle Ipotesi di Ricerca Quesito di Ricerca Variabili dell esperimento Pianificazione GQM di Ricerca Goal Goal Goal Goal Goal GQM dei Risultati di Ricerca Goal Goal Goal Goal Goal Capitolo 7 Analisi ed Interpretazione dei dati

4 Capitolo 1 Introduzione 1.1 OSS Per Open Source Software (OSS), letteralmente Software a codice sorgente aperto, si intende un software che oltre ad essere liberamente utilizzabile da qualsiasi utente, è pubblicato con un tipo di licenza per la quale il codice sorgente è lasciato alla disponibilità di eventuali sviluppatori allo scopo di incentivarne la collaborazione verso il miglioramento del prodotto. Ma tale licenza non deve limitarsi a consentire il libero accesso al codice sorgente di un programma. La licenza di un software, per potersi considerare open-source, deve soddisfare i seguenti criteri: 1. Libera redistribuzione La licenza non può limitare alcuno dal vendere o donare il software che ne è oggetto, come componente di una distribuzione aggregata, contenente programmi di varia origine. La licenza non può richiedere diritti o altri pagamenti a fronte di tali vendite. Motivo: Imponendo la libera redistribuzione, si elimina la tentazione di rinunciare a importanti guadagni a lungo termine in cambio di un guadagno materiale a breve termine, ottenuto con il controllo delle vendite. Se non vi fosse questa imposizione, i collaboratori esterni sarebbero tentati di abbandonare il progetto, invece che di farlo crescere. 2. Codice sorgente Il programma deve includere il codice sorgente e ne deve essere permessa la distribuzione sia come codice sorgente che in forma compilata. Laddove alcune forme di un prodotto non siano distribuite con il relativo codice sorgente, deve essere chiaramente indicato il modo per ottenerlo, ad un costo non superiore ad 4

5 una ragionevole spesa di distribuzione, preferibilmente scaricandolo gratuitamente da Internet. Per codice sorgente si intende la forma in cui un programmatore preferirebbe modificare il programma. Codice sorgente deliberatamente reso illeggibile non risponde ai requisiti. Forme intermedie come l'output di un preprocessore o compilatore non rispondono ai requisiti. Motivo: Si richiede l'accesso al codice sorgente poiché non si può far evolvere un programma senza poterlo modificare. Il nostro obiettivo è rendere facile l'evoluzione del software, pertanto richiediamo che ne sia resa facile la modifica. 3. Prodotti derivati La licenza deve permettere modifiche e prodotti derivati, e deve permetterne la distribuzione sotto le stesse condizioni della licenza del software originale. Motivo: La sola possibilità di leggere il codice sorgente non è sufficiente a permettere la revisione indipendente del software da parte di terzi e una rapida selezione evolutiva. Per garantire una rapida evoluzione, deve essere possibile sperimentare modifiche al software e redistribuirle. 4. Integrità del codice sorgente originale La licenza può impedire la distribuzione del codice sorgente in forma modificata, a patto che venga consentita la distribuzione dell'originale accompagnato da "patch", ovvero file che permettono di applicare modifiche automatiche al codice sorgente in fase di compilazione. La licenza deve esplicitamente permettere la distribuzione del software prodotto con un codice sorgente modificato. La licenza può richiedere che i prodotti derivati portino un nome o una versione diversa dal software originale. Motivo: Incoraggiare il miglioramento è bene, ma gli utenti hanno diritto di sapere chi è responsabile del software che stanno usando. Gli autori e i tecnici hanno diritto reciproco di sapere cosa è loro chiesto di supportare e di proteggersi la reputazione. Perciò, una licenza open source deve garantire che il codice sorgente sia facilmente disponibile, ma può eventualmente richiedere che esso sia redistribuito solo in forma originale più file patch. In questo modo le modifiche "non ufficiali" possono essere rese disponibili pur rimanendo distinte dal codice sorgente originale. 5

6 5. Discriminazione contro persone o gruppi La licenza non deve discriminare alcuna persona o gruppo di persone. Motivo: Per ottenere il massimo beneficio dal processo, il massima numero di persone e gruppi deve avere eguale possibilità di contribuire allo sviluppo del software. Pertanto viene proibita l'esclusione arbitraria dal processo di persone o gruppi. Alcuni paesi, inclusi gli Stati Uniti, hanno restrizioni all'esportazione di certi tipi di software. Una licenza conforme all'osd può avvertire gli utenti di possibili restrizioni e ricordare loro che sono obbligati a rispettare la legge; in ogni caso non può incorporare tali restrizioni essa stessa. 6. Discriminazione per campo d'applicazione La licenza non deve impedire di far uso del programma in un ambito specifico. Ad esempio non si può impedire l'uso del programma in ambito commerciale o nell'ambito della ricerca genetica. Motivo: L'intenzione principale di questa clausola è di proibire trappole nelle licenze che impediscano al software open source di essere usato commercialmente. Vogliamo che le aziende si uniscano alla nostra comunità, non che se ne sentano escluse. 7. Distribuzione della licenza I diritti allegati a un programma devono essere applicabili a tutti coloro a cui il programma è redistribuito, senza che sia necessaria l'emissione di ulteriori licenze. Motivo: Questa clausola intende proibire la chiusura del software per mezzi indiretti, come un obbligo di sottoscrizione di accordi di non diffusione. 8. Specificità ad un prodotto I diritti allegati al programma non devono dipendere dall'essere il programma parte di una particolare distribuzione di software. Se il programma è estratto da quella distribuzione e usato o redistribuito secondo i termini della licenza del programma, tutti coloro che ricevano il programma dovranno avere gli stessi diritti che sono garantiti nel caso della distribuzione originale. Motivo: Questa clausola impedisce un'ulteriore classe di licenze-trappola. 6

7 9. Vincoli su altro software La licenza non deve porre restrizioni su altro software distribuito insieme al software licenziato. Per esempio, la licenza non deve richiedere che tutti gli altri programmi distribuiti sugli stessi supporti siano software open source. Motivo: I distributori di software open source hanno il diritto di fare le loro scelte riguardo al software che intendono distribuire. 10. Neutralità rispetto alle tecnologie La licenza non deve contenere clausole che dipendano o si basino su particolari tecnologie o tipi di interfacce. Motivo: Questa clausola è diretta in particolar modo a quelle licenze che richiedano un gesto esplicito di approvazione da parte dell'utente, al fine di stabilire un contratto. Clausole che richiedano un "click" su interfacce web o di altro tipo possono essere in conflitto con importanti metodi di distribuzione del software, come i siti FTP, le raccolte su CDROM e le copie distribuite sul Web. Tali clausole possono rendere difficoltoso il riutilizzo del software. Le licenze valide devono permettere la possibilità che: 1) il software venga distribuito mediante canali diversi dal Web, sui quali non si possa richiedere un "click" esplicito prima di iniziare il download, e che 2) il programma in oggetto, o sue porzioni, possano essere utilizzare in ambienti privi di interfaccia grafica, nei quali non si possa richiedere la presenza di specifiche finestre di dialogo. Questo nuovo modo di sviluppare, distribuire e licenziare il software, ha portato radicali cambiamenti all interno dei processi di produzione di grandi e piccole aziende e promette di diffondersi ampiamente entrando persino in netta concorrenza con i più conosciuti prodotti commerciali. L uso degli OSS si colloca in nello scenario più ampio della Component Based Software Engineering (CBSE) i cui obiettivi principali consistono nella riduzione della complessità dei processi software e dei conseguenti costi, creando applicazioni dall'integrazione di componenti preesistenti. Tra i vantaggi indotti dall adozione di questo approccio c è la possibilità di soddisfare le sempre più pressanti necessità indotte dalla globalizzazione dei mercati e dall'inasprimento della competitività, come la necessità di realizzare prodotti di qualità adeguata al target e la riduzione dei tempi del time-to-market. 7

8 La ricerca in oggetto si focalizza sul problema della scelta delle componenti da integrare in un CBS (Component Based System), che è critica sia in fase di sviluppo che in fase di manutenzione. Nel primo caso è critica perché possono verificarsi problemi riguardanti l individuazione delle capacità (per esempio servizi, funzionalità, e così via) che le componenti espongono. Nel secondo caso è critica perché la componente software ed il sistema ottenuto dalla loro integrazione potrebbero avere una diversa evoluzione. Le evoluzioni possono infatti essere asincrone quando ad esempio: - il sistema necessita di alcuni cambiamenti specifici ma le modifiche delle componenti che lo costituiscono non procedono con la schedulazione prevista o - le componenti evolvono persino quando la loro evoluzione non è richiesta dal sistema all interno del quale sono integrati. Partendo dalle considerazioni appena presentate è possibile comprendere quanto sia importante per un Project Manager conoscere il livello di manutenzione eseguito per una componente software (COTS, ad-hoc, legacy, Open Source) candidata ad essere integrata in un sistema. In particolare tale lavoro si focalizza sulle componenti Open Source per le quali un basso livello dell attività di manutenzione può indicare, infatti, che il progetto si sta progressivamente avviando verso la morte a causa delle difficoltà di evoluzione o a causa della perdita di interesse della comunità. In entrambi i casi il risultato è che gli utenti non possano beneficiare di aggiornamenti e nuove release. E opportuno dunque individuare i fattori che possono guidare la scelta delle componenti Open Source da parte del Project Manager al fine di evitare quelle la cui attività di manutenzione tende ad essere scarsa o addirittura nulla. Una componente OS già integrata in un sistema la cui attività di manutenzione tende ad essere scarsa o addirittura nulla comporta o la sua eliminazione con conseguente sostituzione oppure di acquisire conoscenze circa il come fa. In entrambi i casi le azioni riparatrici comportano costi in termini di tempo e risorse da impiegare. 1.2 SourceForge Il nostro caso di studio focalizza l attenzione su uno dei maggiori repository di progetti software open source (OSS) : SourceForge. SourceForge oltre a fornire uno spazio di pubblicazione per i propri progetti, fornisce strumenti di supporto alla gestione dei progetti e della collaborazione con altri sviluppatori, quali ad esempio un CVS o un SVN, un forum per il rapporto 8

9 con gli utenti, etc. La mole di progetti ospitati è enorme: se ne contano circa , con un importante bacino d utenza che supera abbondantemente il milione. C è da dire, però, che molti di questi progetti sono in letargo oppure coinvolgono pochi utenti. La classificazione globale dei progetti avviene tramite un unica formula denominata Project Ranking (PR) e fornisce un termine di confronto diretto tra i progetti. Nonostante SourceForge dichiari che il PR non fornisce un indicatore se un progetto è migliore di un altro oppure se un progetto è meglio mantenuto oppure stabile di un altro, la realtà dimostra che chiunque scelga di utilizzare un OSS per qualsiasi applicazione viene fortemente influenzato da tale classifica. Il PR è generato basandosi sulle statistiche raccolte circa il Traffico, la Comunicazione e lo Sviluppo di ogni progetto. Il valore aggregato di questi fattori è poi usato per confrontare i diversi progetti osservati in uno stesso periodo di tempo al fine di determinare il ranking. La formula del Project Ranking è: Project Ranking = Traffico + Sviluppo + Comunicazione dove il Traffico è: ((log(prior 7 days download total + 1) / log(highest all-project download total + 1)) +(log(prior 7 days logo hits total + 1) / log(highest all-project logo hits + 1))+(log(prior 7 days site hits total + 1) / log(highest allproject site hits + 1))) / 3 lo Sviluppo: ((log(prior 7 days cvs commit total + 1) / log(highest all-project total + 1)) +( (100- age of latest file release (in days, max 100)) / 100 ) +( (100-days since last project administrator login (max 100)) / 100 ) ) / 3 e la Comunicazione: ((log(prior 7 days Tracker submission count + 1) / log(highest all-project total + 1))+(log(prior 7 days ML post count + 1) / log(highest all-project total + 1))+(log(prior 7 days Forum post count + 1) / log(highest allproject total + 1)) ) / 3. 9

10 1.3 Il caso di Studio In base alle esigenze descritte nei paragrafi precedenti, in particolare nei paragrafi 1.1 e 1.2, il nostro caso di studio ha come obiettivo quello di individuare se e quali correlazioni esistono tra i fattori definiti da SourceForge,nel nostro caso Traffico e Sviluppo, e il fattore introdotto ex-novo ossia Attività di Manutenzione. In particolare, il caso di studio nel suo complesso richiede di eseguire delle sperimentazioni che identificano dapprima se e quali correlazioni esistono tra i due fattori presenti nella formula del PR, Traffico e Sviluppo, e poi se e quali correlazioni esistono tra ognuno di questi ed Attività di Manutenzione. Una prima sperimentazione sarà eseguita sui dati considerando i dati degli OSS dei sette giorni precedenti la loro rilevazione, successivamente sarà eseguita un altra sperimentazione sui dati presenti per gli OSS dal momento della loro pubblicazione su SourceForge. Il fattore Traffico, definito in Source Forge, è usato per tracciare la popolarità di un progetto in termini di: Pagine accedute al sito Source Forge Pagine accedute allo spazio Web del progetto File scaricati Il fattore Sviluppo, definito in Source Forge, è usato per tracciare il lavoro che un team di progetto esegue durante la produzione del software in termini di: Età dell ultima release Giorno dall ultimo accesso dell amministratore Numero di commit eseguite sul CVS Il fattore Attività di Manutenzione è stato definito per tracciare le fasi di manutenzione di un progetto software in termini di: Bux Fix Rating Patch Rating Patch for Release Release for Day Feature Request Rating Nel capitolo 4 successivi segue una descrizione più dettagliata dei fattori e delle caratteristiche associate. 10

11 Capitolo 2 Definizione del processo con FSP 2.1 Process Modeling Language I Process Modeling Language (PML) sono linguaggi e formalismi che permettono la rappresentazione delle varie componenti di un processo. Questi linguaggi permettono la rappresentazione di tutte le parti di un processo in maniera chiara e non ambigua. I PML consentono di rappresentare un processo software e le sue numerose caratteristiche : Ruoli che le persone ricoprono nell esecuzione del processo (analista, progettista, programmatore, tester etc.) Attività da eseguire per raggiungere gli obiettivi del processo(analisi, progetto, test, codifica etc.) Competenze possedute da coloro che sono coinvolti nell esecuzione del processo (conoscenza specifica di linguaggi e, grado di esperienza del dominio applicativo, etc.) Caratteristiche dell ambiente e dell organizzazione esecutrice (politica aziendale, standards adottati, qualità target dei prodotti, etc.) Struttura e natura dei manufatti che devono essere creati e manutenuti (requisiti di analisi, documenti di progetto, codice, insieme dei casi di test, etc.) che devono essere utilizzati (CASE e compilatori). Esistono molteplici tipi di PML. In generale, tutti i PML esistenti si basano su qualche paradigma linguistico già esistente, opportunamente esteso per aumentarne la potenza espressiva, al fine di poter descrivere tutte le componenti e caratteristiche tipiche di un processo software. 11

12 2.2 Formal Structured Planning Il Formal Structured Planning è un linguaggio di modellazione dei processi basato sull Analisi Strutturata e concepito nel SerLab. Il FSP consente la descrizione di un processo attraverso la definizione dei seguenti elementi strutturati: manufatti: i prodotti o documenti, finiti e semi finiti, che costituiscono gli input delle attività o i loro output; i manufatti etichettati formano una gerarchia descrivibile attraverso gli operatori strutturati: concatenazione, alternativa e ripetizione; fasi: le attività macroscopiche del processo che sono poi descritte in un Work Flow di dettaglio attraverso attività elementari ed eventuali altre fasi; attività elementari: le attività atomiche del processo, in cui le fasi sono dettagliate; ad ogni attività elementare è associato uno scenario procedurale; scenari procedurali: descrizione univoca dell attività elementare attraverso una sequenza di attività base, e di condizioni interne di ingresso (ISC) e di uscita (IEC); attività base: insieme delle azioni di base che possono essere ottenute attraverso l utilizzo di metodi, tecniche e utili a raggiungere l obiettivo. Ad ogni elemento sono associati alcuni attributi, con relativa descrizione, necessari alla propria caratterizzazione. Alcuni attributi possono essere valutati in fase di definizione del modello di processo, altri quando questo è adattato alla produzione di uno specifico sistema software, altri ancora dinamicamente durante l esecuzione del processo. L insieme costituito dalle fasi, attività elementari e manufatti realizza il Work Flow Diagram, nel quale attività e fasi sono collegate fra loro attraverso degli archi che rappresentano i rispettivi manufatti in input e output. La decomposizione delle fasi a livelli di dettaglio successivi crea un albero di decomposizione dei Work Flow Diagram, chiamato Work Flow System. Il procedimento per la definizione e verifica di un modello di processo secondo tale formalismo, prevede i seguenti passi: 12

13 Definizione e descrizione dei manufatti e del loro albero di decomposizione, Definizione e descrizione del Work Flow diagram, Definizione degli scenari procedurali, Descrizione degli attributi specificanti le variabili di processo, Verifica del modello di processo descritto. 13

14 2.3 Work Flow Diagram Primo livello di astrazione 14

15 2.3.2 Campionamento OSS Mappa di Caratterizzazione 15

16 2.3.4 Progettazione Indagine Empirica 16

17 2.3.5 Analisi ed Interpretazione dei Dati 17

18 2.4 Scenari procedurali Campionamento OSS Scenario 1.1: Ricerca OSS Input (1.1) = Requisiti, ISC = Requisiti è disponibile Descrizione: PRODURRE (Lista di OSS) USANDO (Requisiti) Output (1.1) = Lista di OSS IEC = Lista di OSS non vuota Scenario 1.2: Scelta OSS Input (1.2) = Lista di OSS, Tecniche di scelta ISC = Lista di OSS è disponibile AND Tecniche di scelta è disponibile Descrizione: PRODURRE (Lista OSS Selezionati) USANDO (Lista di OSS ) AND (Tecniche di scelta) Output (1.2) = Campioni OSS IEC = Campioni OSS non vuoti Mappa di Caratterizzazione Scenario 2: Mappa di Caratterizzazione Input (2) = Caratteristiche di Qualità ISC = Caratteristiche di Qualità è disponibile Descrizione: 2 PRODURRE (Descrizione Metriche) USANDO (Caratteristiche di Qualità) Output (2) = Descrizione Metriche IEC = Descrizione Metriche non vuota 18

19 2.4.3 Progettazione Indagine Empirica Scenario 3.1: Definizione dell Esperimento Input (3.1) = Campioni OSS, Descrizione Metriche ISC = Lista OSS Selezionati è disponibile AND Descrizione Metriche è disponibile Descrizione: 3.1.1PRODURRE (Quesito di Ricerca + Ipotesi da Verificare + Variabili dell Esperimento) USANDO (Campioni OSS) AND (Descrizione Metriche) Output (3.2) = Quesito di Ricerca, Ipotesi da Verificare, Variabili dell Esperimento IEC = Quesito di Ricerca, Ipotesi da Verificare, Variabili dell Esperimento non vuoti Scenario 3.2: Pianificazione GQM di Ricerca Input (3.2) = Quesito di Ricerca, Ipotesi da Verificare, Variabili dell Esperimento ISC = Quesito di Ricerca è disponibile AND Ipotesi da Verificare è disponibile AND Variabili dell esperimento è disponibile Descrizione: 3.2.1PRODURRE (Progetto GQM di Ricerca) USANDO (Quesito di Ricerca) AND (Ipotesi da Verificare) AND (Variabili dell Esperimento) Output (3.2) = Progetto GQM di Ricerca IEC = Progetto GQM di Ricerca non vuoto Scenario 3.3: GQM dei Risultati di Ricerca Input (3.3) = Progetto GQM di Ricerca ISC = Progetto GQM di Ricerca è disponibile Descrizione: 3.3.1PRODURRE (Modelli di Calcolo) USANDO (Progetto GQM di Ricerca) Output (3.3) = Modelli di Calcolo IEC = Modelli di Calcolo non vuoti 19

20 2.4.4 Analisi ed Interpretazione dei Dati Scenario 4.1: Raccolta dei Dati Input (4.1) = Modelli di Calcolo ISC = Modelli di Calcolo è disponibile Descrizione: 4.1.1PRODURRE (Report dei Dati) USANDO (Modelli di Calcolo) Output (4.1) = Report dei Dati IEC = Report dei Dati non vuoto Scenario 4.2: Analisi dei Dati Input (4.2) = Report dei Dati ISC = Report dei Dati è disponibile Descrizione: 4.2.1PRODURRE (Report di Valutazione) USANDO (Report dei Dati) Output (4.2) = Report di Valutazione IEC = Report di Valutazione non vuoto 20

21 2.5 Descrizione dei Manufatti In input a 1.1 Requisiti Questo manufatto contiene tutte le informazioni relative ai requisiti forniti dal committente per svolgere il lavoro commissionato. In input a 1.2 Tecniche di scelta Questo manufatto contiene le tecniche che saranno adoperate per l individuazione di diversi campioni sperimentali. In input a 1.2 ed in output a 1.1 Lista di OSS Questo manufatto contiene tutte le informazioni relative ai OSS ricercati, nella fase precedente, per essere suddivisi in diversi campioni sperimentali. In input a 2. Caratteristiche di Qualità Questo manufatto contiene tutte le informazioni relative alle caratteristiche di qualità che saranno prese in considerazione durante lo svolgimento della indagine empirica. In input a 3.1 ed in output a 1.2 Campioni OSS Questo manufatto contiene tutte le informazioni relative agli OSS selezionati, suddivisi in diversi campioni nella fase precedente, per essere analizzati nell ambito dell indagine empirica. In input a 3.1 ed in output a 2 Descrizione Metriche Questo manufatto contiene tutte le informazioni relative alle metriche da utilizzare per analizzare le caratteristiche di qualità prese in considerazione. 21

22 In input a 3.2 ed in output a 3.1 Quesito di Ricerca Questo manufatto contiene tutte le informazioni relative al quesito di ricerca dell esperimento da effettuare. Ipotesi da verificare Questo manufatto contiene tutte le informazioni relative alle ipotesi: proposizioni da verificare sperimentalmente. Variabili dell Esperimento Questo manufatto contiene tutte le informazioni relative alle variabili indipendenti e dipendenti che saranno osservate dall esperimento. In input a 3.3 ed in output a 3.2 Progetto GQM di Ricerca Questo manufatto contiene tutte le informazioni relative all esecuzione del GQM di ricerca. In input a 4.1 ed in output a 3.3 Modelli di Calcolo Questo manufatto contiene tutte le informazioni relative ai dati ricavati per ciascun OSS candidato all esecuzione dell indagine empirica sulla base delle caratteristiche di qualità che sono state definite in fase di indagine. In input a 4.2 ed in output a 4.1 Report dei Dati Questo manufatto contiene i dati raccolti in base alle metriche che sono state definite in fase di indagine. In output a 4.2 Report di Valutazione Questo manufatto contiene tutte le informazioni relative all analisi dei dati fatta sui campioni di presi in considerazione. 22

23 2.6 Verifica e Validazione Consistenza globale dei manufatti Un manufatto si definisce globalmente consistente se un componente non è presente più volte nella definizione della struttura, cioè se la definizione del manufatto non presenta al suo interno strutture ricorrenti. Questa definizione di consistenza assicura che la stessa componente non sia presente in due livelli differenti dell albero di decomposizione di un manufatto. Poiché, nella rappresentazione del Processo di Benchmarking, i manufatti non sono decomponibili nella loro struttura sono globalmente consistenti Consistenza globale dei WFD Un Work Flow Diagram si definisce globalmente consistente se è assicurata l assenza di ricorrenze di una fase a differenti livelli. Osservando l elenco sottostante si nota che i Work Flow Diagrams definiti per rappresentare il Processo di Benchmarking sono globalmente consistenti, in quanto non vi sono fasi ricorrenti a differenti livelli di dettaglio dei Work Flow Diagrams. Fase 1 Campionamento OSS Ricerca OSS Scelta OSS Fase 2 Mappa di Caratterizzazione E un attività elementare Fase 3 Indagine Empirica 3.1 Definizione dell Esperimento 3.2 Pianificazione del GQM di Ricerca 3.3 GQM dei Risultati di Ricerca 23

24 Fase 4 Raccolta e Analisi dei Dati 4.1 Raccolta dei Dati 4.2 Analisi dei Dati Consistenza strutturale dei WFD Oltre alla consistenza globale un Work Flow Diagram deve essere validato anche per garantirne la consistenza strutturale. Esso si definisce strutturalmente consistente se è assicurato il bilanciamento dei manufatti tra le fasi ossia se utilizza tutti e solo i manufatti della fase che dettaglia e tutti e soli gli output che sono generati dalla stessa fase. Analizzando ciascun Work Flow da noi definito si nota che è assicurata la consistenza strutturale. Poiché la Fase 2 è una fase elementare non necessita del controllo di consistenza strutturale. Fase 1 Campionamento OSS La Fase 1 ha come manufatti di input: Requisiti Tecniche di Scelta e come manufatti di output: Lista OSS Selezionati Tali manufatti di input e output sono utilizzati e prodotti dalle sotto-fasi contenute nel WFD che lo dettaglia, infatti il manufatto di input Requisiti è utilizzato dall attività elementare 1.1 Ricerca OSS ; il manufatto di input Tecniche di Scelta è utilizzato dall attività elementare 1.2 Scelta OSS. Il manufatto di output Lista OSS Selezionati è prodotto dall attività elementare 1.2 Scelta OSS. 24

25 Fase 3 Indagine Empirica La Fase 3 ha come manufatti di input: Lista OSS Selezionati Descrizione Metriche e come manufatti di output: Modelli di Calcolo Tali manufatti di input e output sono utilizzati e prodotti dalle sotto-fasi contenute nel WFD che lo dettaglia, infatti il manufatto di input Lista OSS Selezionati ed il manufatto Descrizione Metriche sono utilizzati dall attività elementare 3.1 Definizione dell Esperimento. Il manufatto di output Modelli di Calcolo è prodotto dall attività elementare 3.3 GQM dei Risultati di Ricerca. Fase 4 Raccolta e Analisi dei Dati La Fase 4 ha come manufatti di input: Modelli di Calcolo e come manufatti di output: Report di Valutazione Tali manufatti di input e output sono utilizzati e prodotti dalle sottofasi contenute nel WFD che lo dettaglia, infatti il manufatto di input Modelli di Calcolo è utilizzato dall attività elementare 4.1 Raccolta dei Dati. 25

26 Il manufatto di output Report di Valutazione è prodotto dall attività elementare 4.2 Analisi dei Dati Consistenza dei manufatti negli SP Successivamente alla definizione degli scenari procedurali (SP) è necessario eseguire delle verifiche relative sia a quest ultimi ma anche alla relazione tra questi ed i manufatti e Work Flow definiti precedentemente. Gli SP sono consistenti rispetto ai manufatti in quanto ogni manufatto è prodotto/utilizzato come input da almeno una attività base e esiste un manufatto in input e uno in output per ogni attività base. Oltre a verificare la consistenza di ciascun SP rispetto ai manufatti occorre controllare la consistenza isomorfica che, a partire da una attività elementare ed il relativo scenario procedurale che la dettaglia, garantisce che ci sia un isomorfismo tra la struttura dei manufatti di input e la struttura dello scenario e un isomorfismo tra la struttura dei manufatti di output e la struttura dello scenario. Dall analisi delle singole attività elementari del Work Flow Diagrams e gli scenari procedurali che le dettagliano si può dire che la struttura di ogni manufatto, sia quelli in input che quelli in output, è isomorfa alla struttura dello scenario corrispondente e pertanto è assicurata anche la consistenza isomorfica. Fase 1 Campionamento OSS SP Ricerca OSS Il manufatto Requisiti è utilizzato dall attività base 1.1 Il manufatto Lista di OSS è prodotto dall attività base 1.1 SP Scelta OSS Il manufatto Lista di OSS è utilizzato dall attività base 1.2 Il manufatto Tecniche di Scelta è utilizzato dall attività base

27 Il manufatto Lista OSS Selezionati è prodotto dall attività base 1.2 Fase 2 Mappa di Caratterizzazione SP 2 - Mappa di Caratterizzazione Il manufatto Caratteristiche di Qualità è utilizzato dall attività base 2 Il manufatto Descrizione Metriche è prodotto dall attività base 2 Fase 3 Indagine Empirica SP Definizione dell Esperimento Il manufatto Lista OSS Selezionati è utilizzato dall attività base 3.1 Il manufatto Descrizione Metriche è utilizzato dall attività base 3.1 Il manufatto Quesito di Ricerca è prodotto dall attività base 3.1 Il manufatto Ipotesi da Verificare è prodotto dall attività base 3.1 Il manufatto Variabili dell Esperimento è prodotto dall attività base 3.1 SP Pianificazione del GQM di Ricerca Il manufatto Quesito di Ricerca è utilizzato dall attività base 3.2 Il manufatto Ipotesi da Verificare è utilizzato dall attività base 3.2 Il manufatto Variabili dell Esperimento è utilizzato dall attività base 3.2 Il manufatto Progetto GQM di Ricerca è prodotto dall attività base

28 SP GQM dei Risultati di Ricerca Il manufatto Progetto GQM di Ricerca è utilizzato dall attività base 3.3 Il manufatto Modelli di Calcolo è prodotto dall attività base 3.3 Fase 4 Raccolta e Analisi dei Dati SP Raccolta dei Dati SP 4.2 Analisi dei Dati Il manufatto Modelli di Calcolo è utilizzato dall attività Base 4.1 Il manufatto Report dei Dati è prodotto dall attività base 4.1 Il manufatto Report dei Dati è utilizzato dall attività base 4.2 Il manufatto Report di Valutazione è prodotto dall attività base

29 2.6.5 Consistenza comportamentale (verifica dinamica) Le verifiche dinamiche rendono possibile la scoperta di inconsistenze comportamentali dinamiche non rilevate dai controlli statici: ad esempio può emergere l impossibilità di eseguire un attività in quanto uno dei suoi input dipende dall esecuzione della stessa. Per eseguire tale verifica sono stati esaminati gli scenari procedurali relativi a ciascuna attività elementare, da noi definita, analizzando in dettaglio i manufatti disponibili all avvio del processo al fine di verificare che ciascuna attività potesse essere attivata. Ogni attività può essere attivata in quanto dispone di tutti e solo gli input necessari la cui produzione non dipende dalla attività stessa. Per questo motivo si può asserire che non ci sono inconsistenze dinamiche nel WFD. 29

30 2.7 Trasformazione del Modello di progetto in Piano di Progetto 30

31 31

32 Capitolo 3 Campionamento OSS 3.1 Ricerca OSS Il caso di studio prevede il prelevamento degli OSS e dei valori delle metriche da SourceForge. Al momento del rilevamento dei dati però, si è presentato il problema della non accessibilità della sezione SourceForge.net Web Statistics dovuto ad una migrazione dei database di SourceForge. A tale inconveniente si fa riferimento nel forum ufficiale preannunciando la persistenza del problema fino a Settembre prossimo. Per rimediare all assenza dei dati che avrebbero dovuto essere prelevati dalla sezione Statistics, abbiamo utilizzato il datamart di FLOSSmole, descritto di seguito FLOSSmole: motivazioni FLOSSmole (formalmente OSSmole) è un progetto collaborativo consistente in un Repository di Repository (RoR) realizzato per raccogliere, condividere e memorizzare dati confrontabili e analisi di sviluppo di Free/Libre/Open Source Software (FLOSS) per ricerche accademiche. Il progetto si sviluppa sui collezionamenti in corso e le analisi di vari gruppi di ricerca, evitando così la duplicazione a favore della compatibilità sia tra sorgenti di dati FLOSS che tra gruppi di ricerca e analisi. La creazione di dati collaborativi e repository di analisi per le ricerche su FLOSS è importante, in quanto le ricerche dovrebbero essere quanto più riproducibili, estendibili e confrontabili possibile. Ricerche di questo tipo favoriscono l'impiego di meta-analisi quali l'esplorazione della diversità tra le ricerche esistenti, confrontando i risultati al fine di estendere la propria conoscenza. Attualmente invece, la maggior parte dei progetti di ricerca su FLOSS non procede in tale direzione. 32

33 FLOSSmole è stato in origine creato per fornire risorse e supporto alle future generazioni di ricerche accademiche, oltre che costituire una valida risorsa per utenti non accademici alla ricerca di dati relativi allo sviluppo nell'industria del software open source DataBase Design Il modello dati di FLOSSmole è progettato per supportare il collezionamento di dati, la memorizzazione e l'analisi da forge multipli, free e open source, quali nello specifico, Sourceforge, GNU Savannah, Bugzilla e Freshmeat. FLOSSmole è in grado sia di rilevare i dati tramite spider che di rilevarli direttamente da un dump di database. Il tipo di dati che è attualmente collezionato dai diversi forge open source include: sorgente HTML completo della pagina del progetto, il nome del progetto, linguaggi di programmazione, linguaggio naturale, piattaforme, tipo di licenza open source, sistemi operativi, pubblico target, argomento principale del progetto. Le informazioni orientate allo sviluppatore includono: numero di sviluppatori, informazioni sugli sviluppatori (nome, nome utente, e-mai) e sul loro ruolo nel progetto. Inoltre vengono collezionati anche dati di tracking generici quali il numero totale di tracker aperti e chiusi. I dati raccolti specificatamente per SourceForge sono elencati nella tabella seguente. TIPI DI INFORMAZIONI RACCOLTE PER SOURCEFORGE GENERICHE DEVELOPER- ORIENTED ISSUE-TRACKING STATISTICHE Sorgente HTML Numero di Sviluppatori Totale tracker aperti Project Rank Nome Progetto Nome Sviluppatori Totale tracker chiusi Somma tra le pagine di SourceForge visitate e i click sul logo del progetto 33

34 Linguaggi di Programmazione Nome Utente degli Sviluppatori Pagine visitate sul sito web del progetto Piattaforme degli Sviluppatori Totale downloads Tipo di Licenza Open Source Ruolo degli Sviluppatori Forum Post Sistemi Operativi Pubblico Target Argomento Principale Ambiente Database Nome Utente dei Donatori Stato di Sviluppo Tipo di Interfaccia Utente Come è possibile notare dalla tabella, non tutti i dati richiesti dal caso di studio sono presenti in FLOSSmole. Tra i vantaggi principali nel suo utilizzo però, vi è la disponibilità di tutti i dati della sezione SourceForge.net Web Statistics a noi non accessibile per i motivi sopra spiegati; e, soprattutto, contiene i nomi di tutti i progetti pubblicati su SourceForge. 34

35 Quest'ultima caratteristica è fondamentale se si considera che, per la raccolta dei dati mancanti, è stato utilizzato un Web Crawler (vedere capitolo 2) che non poteva però scansionare l'intera mole di progetti su SourceForge, per ovvi motivi di costi in tempo e spazio. Di conseguenza il Web Crawler ha prelevato solo i dati necessari relativi agli OSS precedentemente selezionati dall'intera collezione disponibile su FLOSSmole, secondo i criteri esposti nel prossimo paragrafo. L'utilizzo di FLOSSmole ha comportato però anche una limitazione: i dati raccolti nel datamart risalgono solo ad Aprile 2008; non sono disponibili quindi informazioni sin dalla data di pubblicazione. 3.2 Scelta OSS Nella scelta dei campioni da analizzare sono stati considerati i seguenti obiettivi: Indagare progetti significativi rispetto ai fattori di qualità da analizzare Indagare la validità del valore 'Project Rank' calcolato da SourceForge e assegnato ad ogni progetto Effettuare indagini statistiche su progetti qualunque Il campione 1 è composto da progetti random, motivato dall'obiettivo 3; il campione 2 è composto da progetti significativi rispetto allo Sviluppo prelevati dal campione random, motivato dall'obiettivo 1; così come il campione 3, che contiene, invece, i progetti più significativi rispetto al Traffico. Infine il campione 4 è composto dai primi progetti con più alto valore di Project Rank, raccolto per il raggiungimento dell'obiettivo 2. I progetti sono stati considerati più significativi rispetto al Traffico nel caso in cui siano caratterizzati da un alto numero di download; mentre sono stati considerati più significativi rispetto allo Sviluppo nel caso in cui siano caratterizzati da un alto valore 'Development' così calcolato: Development = [ ( log(last_7_days_svn_or_cvs_commits + 1) / log(highest_7_day_commits + 1) ) + ( 100-days_since_last_file_release / 100) + ( 100- days_since_last_admin_login / 100) ] / 3 I dati raccolti in ognuno dei campioni, verranno suddivisi in ulteriori sottocampioni: LAST/DAYS contenente i valori risalenti ai 7 giorni precedenti la data di rilevazione; ALLTIME. Il sotto-campione ALLTIME avrebbe dovuto contenere i 35

36 valori risalenti alla data di pubblicazione di ogni progetto su SourceForge ma, come spiegato, conterrà solo i dati risalenti ad Aprile Poiché i dati relativi allo Sviluppo non erano presenti su FLOSSmole, il campione 2 è stato selezionato in una modialità diversa dagli altri campioni. Gli altri campioni sono stati selezioni da FLOSSmole sfruttando la presenza in esso, dell'intera collezione di progetti pubblicati su SourceForge, oltre che dei valori per ognuno di essi, di Project Rank e di Download. Data l'assenza dei dati di Sviluppo invece, non è stato possibile calcolare il valore di Development per i progetti in esso contenuti. Di conseguenza tale valore è stato calcolato per i progetti prelevati casualmente, considerandone la mole ( progetti) a garanzia di validità del campionamento. 36

37 Capitolo 4 Strumenti Automatici Per poter effettuare le indagini statistiche su dei campioni significativi, abbiamo scelto di avvalerci di uno strumento automatico (un web crawler) realizzato per l'occasione, in grado di raccogliere in maniera sistematica le informazioni riguardanti i progetti che si è deciso di analizzare; questo strumento ci permette di: 1. ottenere una quantità di informazioni maggiore rispetto a quella che avremmo ottenuto con una raccolta manuale dei dati; 2. ridurre il rischio di analizzare informazioni inesatte a causa di errori umani nella raccolta dei dati; 3. ridurre il tempo di raccolta dei dati, e quindi disponendo, al termine dell'operazione, di informazioni ottenute a brevissima distanza di tempo l'una dall'altra (quindi in condizioni temporali simili); 4. disporre di informazioni strutturate, il che permette di interpretare univocamente i dati raccolti e di poter applicare strumenti automatici anche per l'analisi delle informazioni raccolte (come ad esempio: test statistici, task di Data Mining relazionale o Apprendimento Automatico, etc.); fattori che concorrono tutti a rendere più significativo, dal punto di vista statistico, il campione dei dati che si intende analizzare. 4.1 Raccolta automatica dei dati sugli OSS La raccolta dei dati relativi agli OSS è effettuata tramite un software che analizza i contenuti del sito web di SourceForge in maniera metodica ed automatizzata, in maniera da raccogliere le informazioni riguardanti i progetti che si intende analizzare; per ogni progetto, occorre analizzare un numero limitato di pagine web ad esso associate, per raccogliere le informazioni contenute in esse. 37

38 Per ogni progetto che si intende analizzare, il Crawler esegue il seguente algoritmo: 1: Crawler (NomeProgetto) { 2: Progetto progetto = new Progetto(NomeProgetto); 3: HttpGet(progetto, + NomeProgetto + / ); 4: HttpGet(progetto, + group_id= + progetto.group_id + &ugn= + NomeProgetto); 5: HttpGet(progetto, + group_id= + progetto.group_id + &ugn= + NomeProgetto + &day= + progetto.day); 6: HttpGet(progetto, + progetto.group_id); 7: foreach(int atid in progetto.atidlist) { 8: Int offset = 0; 9: do { 10: exit = HttpGet(progetto, + func=browse&group_id= + progetto.group_id + &atid= + atid + &set=custom&_assigned_to=0&_status=100 + &_category=100&_group=100&order=artifact_id + &sort=desc&offset= + offset); 11: offset += 50; 12: } while (exit!= PAGENOTFOUND); 13: } 14: } La classe Progetto contiene, sotto forma di attributi, tutte le informazioni che è possibile raccogliere su un dato progetto (nome, numero di release, rank, download effettuati negli ultimi 7 giorni etc.) mentre il metodo HttpGet(Progetto, URL) ha lo scopo di memorizzare, negli attributi presenti nell'istanza della classe Progetto contenuta nel primo parametro, le informazioni disponibili all'indirizzo URL, che rappresenta l'indirizzo di una pagina del sito SourceForge contenente dati sul relativo progetto. Le informazioni raccoltepossono essere anche utilizzate da successive chiamate del metodo HttpGet per comporre l'url di altre pagine del sito SourceForge in cui sono presenti ulteriori dati: ciò avviene anche all'interno dell'algoritmo usato dal nostro Crawler per identificare il valore di alcune variabili utili alla corretta navigazione del sito SourceForge (come ad es. group_id o atid, di cui viene tenuto traccia all'interno degli attributi dell'oggetto project). 38

39 In totale, il nostro strumento automatico ha raccolto informazioni su progetti, analizzando in media il contenuto di 8,8875 pagine per ogni progetto, in un lasso di tempo di circa 20 ore. 39

40 4.2 Software per l analisi dei dati: R R è un ambiente di sviluppo specifico per l'analisi statistica dei dati che utilizza un linguaggio di programmazione derivato e in larga parte compatibile con S. È un software libero, in quanto viene distribuito con la licenza GNU GPL, ed è disponibile per diversi sistemi operativi (ad esempio Unix, GNU/Linux, Microsoft Windows). Il suo linguaggio, orientato agli oggetti, deriva direttamente dal pacchetto S distribuito con una licenza non open source e sviluppato da John Chambers e altri presso i Bell Laboratories. Nel nostro caso di studio, i dati raccolti dal Crawler vengono memorizzati in una base di dati (nello specifico MySQL) ed importati in R, con cui sono stati calcolati i test di Kolmogorov-Smirnov (per verificare che una distribuzione sia Normale o meno), i coefficienti di correlazione di Pearson e gli indici di correlazione per ranghi di Spearman. 4.3 Strumenti automatici per l analisi dei dati In fase di analisi dei dati è stata realizzata un'applicazione implementata in Java con le seguenti funzionalità: Rileva i dati raccolti, in parte con lo Spider e in parte con FLOSSmole, dal database, divisi per campioni Salva tali dati sotto forma di file.ser Utilizza tali dati per creare il file dataset.r contenente le interrogazioni per R e lo script runstat che lo invia ad R, reindirizzandone l'output nel file outputr Dopo l'esecuzione di tale script, carica i dati salvati nei file.ser e li utilizza durante la manipolazione del file di outputr. La manipolazione consiste nell'inserimento dei risultati dei test e dei grafici nel file LaTex tabelle.tex Per avviare l'esecuzione dell'applicazione su un particolare campione: copiare la cartella salvati dalla cartella relativa al campione prescelto AnalisiDati/nomeCampione in AnalisiDati eseguire la classe StatCalculator avviare l'esecuzione dello script runstat che verrà creato 40

41 eseguire la classe OutputHandler. Verrà creato il file LaTex tabelle.tex R è un ambiente integrato di programmazione, in cui sono contenute molte tecniche statistiche, sia classiche che moderne per la manipolazione dei dati, il calcolo e la visualizzazione grafica. Il termine ambiente è inteso come sistema coerente e pienamente schematizzato, piuttosto che come un'espansione incrementale di strumenti molto specifici e inflessibili di cui costituiscono un esempio la maggior parte degli altri software di analisi dei dati esistenti. R costituisce in realtà un progetto della R Foundation, organizzazione no-profit fondata dai membri dell'r Core Team di sviluppo, allo scopo di: fornire supporto al progetto R e ad altre innovazioni nel calcolo statistico. R è diventato uno strumento maturo e valido e il team di sviluppo mira ad assicurare il suo sviluppo ininterrottamente, come lo sviluppo continuativo di innovazioni future nel campo dei software per la ricerca statistica e computazionale fornire un punto di riferimento per utenti singoli, istituzioni o aziende che siano interessate a supportare o interagire con la comunità di sviluppo di R Amministrareil copyright di R e la documentazione Inoltre R è parte non ufficiale della Free Software Foundation del progetto GNU, caratterizzata da obiettivi simili a quelli di altre fondazioni di software open source quali Apache o GNOME Foundation; tra cui il supporto allo sviluppo continuativo di R, l'esplorazione di nuove metodologie, l'insegnamento e l'addestramento del calcolo statistico e l'organizzazione di incontri e conferenze orientate sul calcolo statistico. Tale strumento dunque, è stato scelto per la sua validità, diffusione, per la licenza open source che lo caratterizza e per la garanzia di continuo sviluppo futuro. Un ulteriore motivo è stato costituito dalla disponibilità di un'ampia collezione di pacchetti per R. Nel nostro progetto è stato utilizzato il pacchetto labstatr per il calcolo della media geometrica e del coefficiente di variazione. Tale pacchetto è comunque contenuto all'interno del progetto e quindi l'esecuzione dell'applicazione non richiede l'importazione di alcuna cartella o pacchetto esterno. 41

42 Nel salvataggio dei grafici è stato impostato postscript come device di stampa, e le immagini di tutti i campioni sono state salvate nella cartella images all'interno del progetto. 42

43 Capitolo 5 Mappa di Caratterizzazione 5.1 Descrizione Fattori di qualità N Caratteristica Fonte Descrizione Metriche 1 Traffico SourceForge Il fattore Traffico è definito in SourceForge per tracciare la popolarità di un progetto in termini di: pagine accedute al sito web di SourceForge, al sito web del progetto OSS e file scaricati da SourceForge. M 1.1, M 1.2, M

44 2 Sviluppo SourceForge Il fattore Sviluppo è definito in SourceForge per tracciare il lavoro che un team di progetto esegue durante la produzione del software in termini di: giorni dall' ultima release, giorni dall'ultimo accesso dell amministratore e numero di commit eseguite su CVS o SVN. 3 Summary&Details SourceForge Il fattore Summary&Details è stato definito per raccogliere informazioni di carattere generale, affinché si abbia una più completa descrizione di ogni progetto OSS in termini di: linguaggi di programmazione, sistemi operativi, tipo di utenza, licenza, interfaccia utente,. M2.1, M2.2, M2.3 M3.1, M3.2, M3.3, M3.4, M

45 4 Attività di Manutenzione SourceForge e Team di Sviluppo Il fattore Attività di Manutenzione è stato definito per tracciare il grado di manuntenibilità di un M4.1, M4.2, M4,3, M4.4, M4.5, M4.6, M4.7,M4.8 progetto OSS in termini di: stato di sviluppo, numero di sviluppatori, bug fix rating, patch rating, patch for release, release for days, feature request rating, support request rating. 45

46 5.2 Descrizione Metriche Traffico M (ASF) Accessi su SourceForge Definizione Tipo La metrica ASF indica il numero di pagine del progetto visitate sul sito di Sourceforge.net. Metrica : oggettiva Scala : assoluta Formula - Modalità di calcolo Per ricavare tale metrica è sufficiente accedere nella sezione SourceForge.net Web Traffic Statistics del relativo progetto. M (PW) Pagine visitate su sito Web progetto Definizione Tipo La metrica PW indica il numero di pagine visitate sul sito Web del progetto. Metrica : oggettiva Scala : assoluta Formula - Modalità di calcolo Per ricavare tale metrica è sufficiente accedere nella sezione SourceForge.net Web Traffic Statistics del relativo progetto. 46

47 M (FS) File Scaricati Definizione Tipo La metrica FS indica il numero di file scaricati da SourceForge.net, quando distribuiti attraverso il proprio File Release System. Metrica : oggettiva Scala : assoluta Formula - Modalità di calcolo Per ricavare tale metrica è sufficiente accedere nella sezione SourceForge.net Web Traffic Statistics del relativo progetto Sviluppo M (GUR) Giorni dall'ultima Release Definizione Tipo Formula La metrica GUR indica il numero di giorno trascorsi dalla pubblicazione dell ultima release mediante il File Release System. Metrica : oggettiva Scala : assoluta GUR = data odierna data ultima release dove: data odierna = data in cui si analizza l'oss da parte degli attori dell indagine empirica data ultima release = data di pubblicazione dell ultima release Modalità di calcolo Per ricavare tale metrica è sufficiente accedere alla voce Latest News presente nella sezione Summary del relativo progetto. 47

48 M (GUAA) Giorni dall Ultimo Accesso dell Amministratore Definizione Tipo Formula La metrica GUAA indica i giorni trascorsi dall ultimo accesso dell amministratore. Metrica : oggettiva Scala : assoluta GUAA = data odierna - data ultimo accesso amministratore dove: data odierna = data in cui si analizza il OSS da parte degli attori dell indagine empirica data ultimo accesso amministratore = data dell accesso amministratore Modalità di calcolo Per ricavare tale metrica è sufficiente accedere alla voce Latest News presente nella sezione Summary del relativo progetto. M (COMM) COMMit eseguite su CVS o SVN Definizione Tipo La metrica COMM indica il numero di commit eseguite su CVS o su SVN. Metrica : oggettiva Scala : assoluta Formula - Modalità di calcolo Per ricavare tale metrica è sufficiente accedere nella sezione CVS Activity Statistics del relativo progetto. 48

49 5.2.3 Summary&Details M (PT) Pubblico Target Definizione Tipo La metrica PT indica il tipo di utilizzatori a cui si rivolge l'oss Metrica : oggettiva Scala : nominale Advanced End Users Aerospace Customer Service Developers Education End Users/Desktop Financial and Insurance Industry Government Healthcare Industry Information Technology Legal Industry Manufacturing Non-Profit Organization Quality Engineers Religion 49

50 Science/Research System Administrators Telecommunications Industry Other Audience Formula - Modalità di calcolo Per ricavare tale metrica è sufficiente accedere alla voce Project Details presente nella sezione Project Summary del relativo progetto. M (SO) Sistema Operativo Definizione Tipo La metrica SO indica i sistemi operativi su cui è installabile l'oss. Metrica : oggettiva Scala : nominale, definita come segue: 32-bit MS Windows (95/98) 32-bit MS Windows (NT/2000/XP) 64-bit MS Windows All 32-bit MS Windows (95/98/NT/2000/XP) All BSD Platforms (FreeBSD/NetBSD/OpenBSD/Apple Mac OS X) All POSIX (Linux/BSD/UNIX-like OSes) AmigaOS 50

51 Apple Mac OS Classic BeOS Blackberry OS BSD/OS Console-based Platforms Cygwin (MS Windows) description DOSEMU ecos EMX (OS/2 and MS-DOS) Fink (Mac OS X) FreeBSD GNU Hurd Handheld/Embedded Operating Systems HP-UX IBM AIX IBM OS/2 Linux Microsoft Windows 3.x Microsoft Windows Server 2003 Microsoft Xbox MinGW/MSYS (MS Windows) Modern (Vendor-Supported) Desktop Operating Systems 51

52 MorphOS MS-DOS NetBSD OpenBSD OpenVMS OS Independent (Written in an interpreted language) OS Portable (Source code to work with many OS platforms) OS X Other Other Operating Systems PalmOS Project is an Operating System Distribution Project is an Operating System Kernel Project is OS Distribution-Specific QNX SCO Sega Dreamcast SGI IRIX Solaris Sony Playstation 2 SymbianOS uclinux Virtualization 52

53 Vista VMware VxWorks Win2K Win95 Win98 Win98 OSR2 WinCE WINE WinME WinNT WinXP Xen Formula - Modalità di calcolo Per ricavare tale metrica è sufficiente accedere alla voce Project Details presente nella sezione Project Summary del relativo progetto. 53

54 M (LP) Linguaggio di Programmazione Definizione Tipo La metrica LP indica il linguaggio di programmazione utilizzato per lo sviluppo dell'oss. Metrica : oggettiva Scala : nominale, definita come segue: ActionScript Ada APL AppleScript ASP AspectJ ASP.NET Assembly AWK BASIC C C# C++ COBOL Cold Fusion Common Lisp D Delphi/Kylix description 54

55 Dylan Eiffel Emacs-Lisp Erlang Euler Euphoria Forth Fortran Groovy Haskell IDL Java JavaScript JSP LabVIEW Lisp Logo LPC Lua MATLAB Modula MUMPS Oberon Objective C Object Pascal 55

56 OCaml (Objective Caml) Pascal Perl PHP Pike PL/SQL PROGRESS Prolog Python REALbasic REBOL Rexx Ruby Scheme Simulink Smalltalk S/R Standard ML Tcl Unix Shell VBScript VHDL/Verilog Visual Basic Visual Basic.NET Visual FoxPro XBasic 56

57 XSL (XSLT/XPath/XSL-FO) Yacc Zope Formula - Modalità di calcolo Per ricavare tale metrica è sufficiente accedere alla voce Project Details presente nella sezione Project Summary del relativo progetto. M (IU) Interfaccia Utente Definizione Tipo La metrica IU indica il tipo di interfaccia grafica dell'oss. Metrica : oggettiva Scala : nominale, definita come segue: AAlib Allegro Carbon (Mac OS X) ClanLib Cocoa (MacOS X) Command-line Console/Terminal Crystal Space Curses/Ncurses description DirectX Eclipse 57

58 FLTK Framebuffer GGI Glide GLUT Gnome Graphical Grouping and Descriptive Categories (UI) GTK+ Handheld/Mobile/PDA Java AWT Java Swing Java SWT KDE Motif/LessTif.NET/Mono Newt Non-interactive (Daemon) OpenGL Other toolkit Plib Plugins Project is a 3D engine Project is a graphics toolkit Project is a remote control application Project is a templating system 58

59 Project is a user interface (UI) system Project is a window manager Qt Quartz SDL SVGAlib TabletPC Tk Web-based Win32 (MS Windows) wxwidgets X Window System (X11) Formula - Modalità di calcolo Per ricavare tale metrica è sufficiente accedere alla voce Project Details presente nella sezione Project Summary del relativo progetto. 59

60 M (L) Licenza Definizione Tipo La metrica L indica la tipologia di licenza sotto la quale è stato pubblicato l'oss. Metrica : oggettiva Scala : nominale, definita come segue: Academic Free License (AFL) Adaptive Public License Affero GNU Public License Apache License V2.0 Apache Software License Apple Public Source License Artistic License Attribution Assurance License BSD License Common Development and Distribution License Common Public Attribution License 1.0 (CPAL) Common Public License Computer Associates Trusted Open Source License CUA Office Public License Version 1.0 description Eclipse Public License 60

61 Educational Community License Eiffel Forum License Eiffel Forum License V2.0 Entessa Public License EU DataGrid Software License Fair License Frameworx Open License GNU General Public License (GPL) GNU Library or Lesser General Public License (LGPL) Historical Permission Notice and Disclaimer IBM Public License Intel Open Source License Jabber Open Source License Lucent Public License (Plan9) Lucent Public License Version 1.02 Microsoft Public License Microsoft Reciprocal License MIT License MITRE Collaborative Virtual Workspace License (CVW) Motosoto License Mozilla Public License 1.0 (MPL) Mozilla Public License 1.1 (MPL 1.1) NASA Open Source Agreement 61

62 Nethack General Public License Nokia Open Source License OCLC Research Public License 2.0 Open Group Test Suite License Open Software License OSI-Approved Open Source Other/Proprietary License PHP License Public Domain Python License (CNRI Python License) Python Software Foundation License Qt Public License (QPL) RealNetworks Public Source License V1.0 Reciprocal Public License Ricoh Source Code Public License Sleepycat License Sun Industry Standards Source License (SISSL) Sun Public License Sybase Open Watcom Public License University of Illinois/NCSA Open Source License Vovida Software License 1.0 W3C License wxwindows Library Licence 62

63 X.Net License zlib/libpng License Zope Public License Formula - Modalità di calcolo Per ricavare tale metrica è sufficiente accedere alla voce Project Details presente nella sezione Project Summary del relativo progetto. 63

64 5.2.4 Attività di Manutenzione M (BFR) Bug Fix Rating Definizione Tipo La metrica BFR indica la percentuale di bug risolti dagli sviluppatori rispetto al numero totale di bug Metrica : oggettiva Scala : ratio Formula BFR = (Closed Bug + Deleted Bug) / Total Bug dove: Total Bug = (Open Bug + Pending Bug + Closed Bug + Deleted Bug) Open Bug = bug sottomessi ma non ancora risolti Pending Bug = bug per i quali un tecnico richiede delle informazioni aggiuntive al sottomettitore Closed Bug = bug risolti Deleted Bug = bug non considerati tali dal team di progetto Modalità di calcolo I dati di Bug Fixing di ogni OSS sono calcolabili a partire da quelli forniti nella sezione Tracker Bugs. E possibile calcolare tali valori per le diverse misure usando i filtri forniti dall interfaccia di SourceForge. 64

65 M (PR) Patch Rating Definizione Tipo La metrica PR indica la percentuale di patch prodotte dagli sviluppatori rispetto al numero totale di patch richieste delle quali si è tenuto traccia. Metrica : oggettiva Scala : ratio Formula PR = (Closed Patch + Deleted Patch) / Total Patch dove: Total Patch = (Open Patch + Pendine Patch + Closed Patch + Deleted Patch) Open Patch = richieste di patch non ancora soddisfatte Pending Patch = patch per le quali un tecnico richiede delle informazioni aggiuntive al sottomettitore Closed Patch = bupatch prodotte Deleted Patch = segnalazioni di patch che il team di progetto ha deciso di non soddisfare Modalità di calcolo I dati di Patch Rating di ogni tool sono calcolabili a partire da quelli forniti nella sezione Tracker Patches. E possibile calcolare tali valori per le diverse misure usando i filtri forniti dall interfaccia di SourceForge. 65

66 M (PFR) Patch for Release Definizione Tipo La metrica PFR indica il numero medio di patch rilasciate per release rispetto ad uno specifico OSS. Metrica : oggettiva Scala : ratio Formula PFR = Closed Path / Total Number of Release dove: Closed Patch = numero totale di patch pubblicate per l'oss considerato Total Number of Release = numero totale di release pubblicate per l'oss considerato Modalità di calcolo I dati di Patch for Release di ogni OSS sono calcolabili a partire da quelli forniti nella sezione Tracker Patches. E possibile calcolare tali valori per le diverse misure usando i filtri forniti dall interfaccia di SourceForge. 66

67 M (RFD) Release for Day Definizione Tipo La metrica RFD indica il numero medio di release per un OSS dal momento della sua registrazione al momento della rilevazione dei dati. Metrica : oggettiva Scala : ratio Formula PFD = Open Patch + Pendine Patch + Closed Patch + Deleted Patch / PA dove: Open Patch = richieste di patch non ancora soddisfatte Pending Patch = patch per le quali un tecnico richiede delle informazioni aggiuntive al sottomettitore Closed Patch = bupatch prodotte Deleted Patch = segnalazioni di patch che il team di progetto ha deciso di non soddisfare Modalità di calcolo I dati di Patch for Release di ogni tool sono calcolabili a partire da quelli forniti nella sezione Tracker Patches. E possibile calcolare tali valori per le diverse misure usando i filtri forniti dall interfaccia di SourceForge. 67

68 M (FRR) Feature Request Rating Definizione Tipo La metrica FRR indica la percentuale di richieste di feature soddisfatte rispetto al numero totale di richieste di feature delle quali si è tenuta traccia. Metrica : oggettiva Scala : ratio Formula FRR = (Closed Feature Request + Deleted Feature Request) / Total Feature Request dove: Total Feature Request = (Open Feature Request + Pendine Feature Request + Closed Feature Request + Deleted Feature Request) Open Feature Request = richieste di feature non ancora soddisfatte Pending Feature Request = richieste di feature per le quali un tecnico richiede delle informazioni aggiuntive al sottomettitore Closed Feature Request = richieste di feature soddisfatte Deleted Feature Request = richieste di feature che il team di progetto ha deciso di non soddisfare Modalità di calcolo I dati di Patch for Release di ogni tool sono calcolabili a partire da quelli forniti nella sezione Tracker Patches. E possibile calcolare tali valori per le diverse misure usando i filtri forniti dall interfaccia di SourceForge. 68

69 M (DS) Development Status Definizione Tipo La metrica DS indica lo stato di sviluppo del OSS. Metrica : oggettiva Scala : ordinale, definita come segue: Q.1 Planning Q.2 Pre-Alpha Q.3 Alpha Q.4 Beta Q.5 Production/Stable Q.6 Mature Q.7 Inactive Formula - Modalità di calcolo Per ricavare tale metrica è sufficiente accedere alla sezione Summary del relativo progetto. 69

70 M (NS) Numero Sviluppatori Definizione Tipo La metrica NS indica il numero di sviluppatori del OSS. Metrica : oggettiva Scala : assoluta Formula - Modalità di calcolo Per ricavare tale metrica è sufficiente accedere alla sezione Summary del relativo progetto. 70

71 Capitolo 6 Progettazione Indagine Empirica 6.1 Definizione dell esperimento Di seguito è mostrato il diagramma relativo al processo di esecuzione dell indagine empirica dettagliato nelle varie fasi. L esigenza è quella di individuare se e quali correlazioni esistono tra le caratteristiche definite da SourceForge, ossia Traffico e Sviluppo, e la caratteristica introdotta ex-novo ossia Attività di Manutenzione. A tale scopo è stato necessario individuare un campione di OSS utili per la formulazione delle metriche. Per la selezione dei progetti OSS sono stati seguiti i seguenti criteri di scelta. 71

Software. Definizione, tipologie, progettazione

Software. Definizione, tipologie, progettazione Software Definizione, tipologie, progettazione Definizione di software Dopo l hardware analizziamo l altra componente fondamentale di un sistema di elaborazione. La macchina come insieme di componenti

Dettagli

TECNICO SUPERIORE PER LO SVILUPPO DEL SOFTWARE

TECNICO SUPERIORE PER LO SVILUPPO DEL SOFTWARE ISTRUZIONE E FORMAZIONE TECNICA SUPERIORE SETTORE I.C.T. Information and Communication Technology TECNICO SUPERIORE PER LO SVILUPPO DEL SOFTWARE STANDARD MINIMI DELLE COMPETENZE TECNICO PROFESSIONALI DESCRIZIONE

Dettagli

Corso sul pacchetto R

Corso sul pacchetto R Corso sul pacchetto R Introduzione ad R http://www.r-project.org ! R è un ambiente di sviluppo specifico per elaborare dati, eseguire calcoli ed effettuare rappresentazioni grafiche, che utilizza un linguaggio

Dettagli

Introduzione. Il software e l ingegneria del software. Marina Mongiello Ingegneria del software 1

Introduzione. Il software e l ingegneria del software. Marina Mongiello Ingegneria del software 1 Introduzione Il software e l ingegneria del software Marina Mongiello Ingegneria del software 1 Sommario Il software L ingegneria del software Fasi del ciclo di vita del software Pianificazione di sistema

Dettagli

Lezione 8. Motori di Ricerca

Lezione 8. Motori di Ricerca Lezione 8 Motori di Ricerca Basi di dati Un campo prevalente dell applicazione informatica è quello costituito dall archiviazione e dalla gestione dei dati (basi di dati). Sistema Informativo. Un sistema

Dettagli

Componenti Web: client-side e server-side

Componenti Web: client-side e server-side Componenti Web: client-side e server-side side Attività di applicazioni web Applicazioni web: un insieme di componenti che interagiscono attraverso una rete (geografica) Sono applicazioni distribuite logicamente

Dettagli

Pubblicata nel Bollettino ufficiale della Regione Umbria n. 37 del 2 agosto 2006. promulga la seguente legge: Capo I Principi generali

Pubblicata nel Bollettino ufficiale della Regione Umbria n. 37 del 2 agosto 2006. promulga la seguente legge: Capo I Principi generali Legge Regionale 25 luglio 2006, n. 11 Norme in materia di pluralismo informatico sulla adozione e la diffusione del software a sorgente aperto e sulla IL CONSIGLIO REGIONALE Ha approvato LA PRESIDENTE

Dettagli

Siti interattivi e dinamici. in poche pagine

Siti interattivi e dinamici. in poche pagine Siti interattivi e dinamici in poche pagine 1 Siti Web interattivi Pagine Web codificate esclusivamente per mezzo dell HTML non permettono alcun tipo di interazione con l utente, se non quella rappresentata

Dettagli

File Leggimi di Acrobat 4.0: visualizzazione, stampa e creazione di file PDF con font dell estremo oriente

File Leggimi di Acrobat 4.0: visualizzazione, stampa e creazione di file PDF con font dell estremo oriente File Leggimi di Acrobat 4.0: visualizzazione, stampa e creazione di file PDF con font dell estremo oriente Questo file Leggimi contiene informazioni che completano il Manuale dell utente di Acrobat 4.0

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Introduzione ai Database! Tipologie di DB (gerarchici, reticolari, relazionali, oodb) Introduzione ai database Cos è un Database Cos e un Data Base Management System (DBMS)

Dettagli

Manuale Operativo. Istituto Nazionale Previdenza Sociale DIREZIONE CENTRALE SISTEMI INFORMATIVI E TELECOMUNICAZIONI

Manuale Operativo. Istituto Nazionale Previdenza Sociale DIREZIONE CENTRALE SISTEMI INFORMATIVI E TELECOMUNICAZIONI Manuale Operativo Istruzioni per l utilizzo del Software di controllo uniemens aggregato per l invio mensile unificato delle denunce retributive individuali (EMENS) e delle denunce contributive aziendali

Dettagli

Rational Unified Process Introduzione

Rational Unified Process Introduzione Rational Unified Process Introduzione G.Raiss - A.Apolloni - 4 maggio 2001 1 Cosa è E un processo di sviluppo definito da Booch, Rumbaugh, Jacobson (autori dell Unified Modeling Language). Il RUP è un

Dettagli

Introduzione al Software Libero

Introduzione al Software Libero Introduzione al Software Libero Linux Day 6 23 novembre 2002 Il software Programma (codice) scritto in un particolare linguaggio di programmazione esistono molti linguaggi di programmazione (Di solito)

Dettagli

MagiCum S.r.l. Progetto Inno-School

MagiCum S.r.l. Progetto Inno-School MagiCum S.r.l. Progetto Inno-School Area Web Autore: Davide Revisione: 1.2 Data: 23/5/2013 Titolo: Innopedia File: Documentazione_tecnica Sito: http://inno-school.netsons.org/ Indice: 1. Presentazione

Dettagli

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi Indice generale OOA Analisi Orientata agli Oggetti Introduzione Analisi Metodi d' analisi Analisi funzionale Analisi del flusso dei dati Analisi delle informazioni Analisi Orientata agli Oggetti (OOA)

Dettagli

Rapporto Tecnico su installazione del dimostratore

Rapporto Tecnico su installazione del dimostratore Rapporto Tecnico su installazione del dimostratore Indice 1 Introduzione 2 2 Installazione 3 2.1 Requisiti.............................. 3 2.2 Installazione........................... 3 3 Inserimento e/o

Dettagli

Corso Eclipse. Prerequisiti. 1 Introduzione

Corso Eclipse. Prerequisiti. 1 Introduzione Corso Eclipse 1 Introduzione 1 Prerequisiti Uso elementare del pc Esecuzione ricerche su Internet Esecuzione download Conoscenza elementare della programmazione 2 1 Cos è Eclipse Eclipse è un IDE (Integrated

Dettagli

DonkeyCode. Manuale amministratore di sistema. Versione 1.0.0

DonkeyCode. Manuale amministratore di sistema. Versione 1.0.0 DonkeyCode RescueMe: globale per la gestione di catastrofi naturali Manuale amministratore di Versione 1.0.0 Ingegneria Del Software AA 2010-2011 DonkeyCode - RescueMe Informazioni documento Titolo documento:

Dettagli

Norme in materia di adozione del software libero e open source, dei formati di dati aperti e dei diritti digitali del cittadino. Art.

Norme in materia di adozione del software libero e open source, dei formati di dati aperti e dei diritti digitali del cittadino. Art. Disegno di legge Norme in materia di adozione del software libero e open source, dei formati di dati aperti e dei diritti digitali del cittadino Art.1 Finalità 1. La Provincia autonoma di Trento, in qualità

Dettagli

Ciclo di Vita Evolutivo

Ciclo di Vita Evolutivo Ciclo di Vita Evolutivo Prof.ssa Enrica Gentile a.a. 2011-2012 Modello del ciclo di vita Stabiliti gli obiettivi ed i requisiti Si procede: All analisi del sistema nella sua interezza Alla progettazione

Dettagli

Verifica e Validazione del Simulatore

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

Dettagli

Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP

Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP Accademia Futuro info@accademiafuturo.it Programma Generale del Corso Analista Programmatore Web PHP Tematiche Trattate

Dettagli

Linguaggi di programmazione

Linguaggi di programmazione Linguaggi di programmazione Programmazione L attività con cui si predispone l elaboratore ad eseguire un particolare insieme di azioni su particolari dati, allo scopo di risolvere un problema Dati Input

Dettagli

Maxpho Commerce 11. Gestione CSV. Data: 20 Settembre 2011 Versione : 1.1 Autore: Maxpho Srl

Maxpho Commerce 11. Gestione CSV. Data: 20 Settembre 2011 Versione : 1.1 Autore: Maxpho Srl Maxpho Commerce 11 Gestione CSV Data: 20 Settembre 2011 Versione : 1.1 Autore: Maxpho Srl Indice generale 1 - Introduzione... 3 1.1 - Il file CSV...3 1.2 - Modulo CSV su Maxpho... 3 1.3 - Modulo CSV Pro

Dettagli

CONCETTI DI BASE PER LA QUALITA

CONCETTI DI BASE PER LA QUALITA CONCETTI DI BASE PER LA QUALITA Misura: è una funzione m: A -> B che associa ad ogni attributo A di un osservabile nel mondo reale o empirico (dominio) un oggetto formale B nel mondo matematico (range);

Dettagli

Consorzio SIR Umbria - Centro di Competenza sull'open Source

Consorzio SIR Umbria - Centro di Competenza sull'open Source Regolamento per l organizzazione e il funzionamento del Centro di Competenza sull Open Source. Art. 1 - Oggetto 1. Il presente regolamento disciplina l organizzazione e il funzionamento del Centro di competenza

Dettagli

Progettare un sito web

Progettare un sito web Progettare un sito web Fasi della progettazione La progettazione di un sito web dovrebbe passare attraverso 4 fasi differenti: 1. Raccolta e realizzazione dei contenuti e delle informazioni da pubblicare

Dettagli

Il software. Il software. Dott. Cazzaniga Paolo. Dip. di Scienze Umane e Sociali paolo.cazzaniga@unibg.it

Il software. Il software. Dott. Cazzaniga Paolo. Dip. di Scienze Umane e Sociali paolo.cazzaniga@unibg.it Il software Dip. di Scienze Umane e Sociali paolo.cazzaniga@unibg.it Outline 1 Il software Outline Il software 1 Il software Algoritmo Sequenza di istruzioni la cui esecuzione consente di risolvere uno

Dettagli

Lo strumento: dalla filosofia di Moodle, ai suoi aspetti tecnico/pratici Bologna, 27 marzo 2014

Lo strumento: dalla filosofia di Moodle, ai suoi aspetti tecnico/pratici Bologna, 27 marzo 2014 Lo strumento: dalla filosofia di Moodle, ai suoi aspetti tecnico/pratici Bologna, 27 marzo 2014 Le piattaforme Il concetto di ambiente di apprendimento riconduce storicamente a termini quali formazione

Dettagli

MAGO CRESCO - SPI.2. Relazione finale sul Progetto MAGO. Consorzio Campano di Ricerca per l Informatica e l Automazione Industriale S.c.a.r.l.

MAGO CRESCO - SPI.2. Relazione finale sul Progetto MAGO. Consorzio Campano di Ricerca per l Informatica e l Automazione Industriale S.c.a.r.l. CRESCO - SPI.2 MAGO Relazione finale sul Progetto MAGO Relativo al contratto tra ENEA e CRIAI avente per oggetto: Analisi e Realizzazione di tool innovativi a supporto delle funzionalità GRID stipulato

Dettagli

Linguaggi e Paradigmi di Programmazione

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

Dettagli

Universita di Pisa. Sistema di back end di un porto

Universita di Pisa. Sistema di back end di un porto Universita di Pisa Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica per la Gestione d Azienda Progetto di Tecnologie Informatiche per la Gestione Aziendale Sistema di back end di un porto

Dettagli

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso di PHP. Prerequisiti. 1 - Introduzione Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Conoscere il concetto di espressione 2 1 Introduzione

Dettagli

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE PREMESSA La presente guida è da considerarsi come aiuto per l utente per l installazione e configurazione di Atollo Backup. La guida non vuole approfondire

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

GFI LANguard 9. Guida introduttiva. A cura di GFI Software Ltd.

GFI LANguard 9. Guida introduttiva. A cura di GFI Software Ltd. GFI LANguard 9 Guida introduttiva A cura di GFI Software Ltd. http://www.gfi.com E-mail: info@gfi.com Le informazioni contenute nel presente documento sono soggette a modifiche senza preavviso. Salvo se

Dettagli

Allegato 2: Prospetto informativo generale

Allegato 2: Prospetto informativo generale Gara a procedura ristretta accelerata per l affidamento, mediante l utilizzo dell Accordo Quadro di cui all art. 59 del D.Lgs. n. 163/2006, di Servizi di Supporto in ambito ICT a InnovaPuglia S.p.A. Allegato

Dettagli

Modellazione di sistema

Modellazione di sistema Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Modellazione di sistema E. TINELLI Contenuti Approcci di analisi Linguaggi di specifica Modelli di

Dettagli

Object Oriented Programming

Object Oriented Programming OOP Object Oriented Programming Programmazione orientata agli oggetti La programmazione orientata agli oggetti (Object Oriented Programming) è un paradigma di programmazione Permette di raggruppare in

Dettagli

EXPLOit Content Management Data Base per documenti SGML/XML

EXPLOit Content Management Data Base per documenti SGML/XML EXPLOit Content Management Data Base per documenti SGML/XML Introduzione L applicazione EXPLOit gestisce i contenuti dei documenti strutturati in SGML o XML, utilizzando il prodotto Adobe FrameMaker per

Dettagli

TECNICO SUPERIORE PER LE TELECOMUNICAZIONI

TECNICO SUPERIORE PER LE TELECOMUNICAZIONI ISTRUZIONE E FORMAZIONE TECNICA SUPERIORE SETTORE I.C.T. Information and Communication Technology TECNICO SUPERIORE PER LE TELECOMUNICAZIONI STANDARD MINIMI DELLE COMPETENZE TECNICO PROFESSIONALI DESCRIZIONE

Dettagli

IBM SPSS Modeler Social Network Analysis 16 Guida all'installazione e alla configurazione

IBM SPSS Modeler Social Network Analysis 16 Guida all'installazione e alla configurazione IBM SPSS Modeler Social Network Analysis 16 Guida all'installazione e alla configurazione Indice Capitolo 1. Introduzione a IBM SPSS Modeler Social Network Analysis.... 1 Panoramica di IBM SPSS Modeler

Dettagli

Visual basic base Lezione 01. L'ambiente di sviluppo

Visual basic base Lezione 01. L'ambiente di sviluppo L'ambiente di sviluppo L'ambiente di sviluppo Visual basic è un linguaggio di programmazione Microsoft. In questo corso prenderemo in considerazione, l'ultima versione. net di questo linguaggio. Microsoft

Dettagli

Impostare il browser per navigare in sicurezza Opzioni di protezione

Impostare il browser per navigare in sicurezza Opzioni di protezione Impostare il browser per navigare in sicurezza Opzioni di protezione Data la crescente necessità di sicurezza e tutela dei propri dati durante la navigazione in rete, anche gli stessi browser si sono aggiornati,

Dettagli

OGGETTO DELLA FORNITURA...4

OGGETTO DELLA FORNITURA...4 Gara d appalto per la fornitura di licenze software e servizi per la realizzazione del progetto di Identity and Access Management in Cassa Depositi e Prestiti S.p.A. CAPITOLATO TECNICO Indice 1 GENERALITÀ...3

Dettagli

Appunti del corso di Informatica 1 (IN110 Fondamenti) 4 Linguaggi di programmazione

Appunti del corso di Informatica 1 (IN110 Fondamenti) 4 Linguaggi di programmazione Università Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 4 Linguaggi di programmazione Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Windchill PDMLink 9.0/9.1 Guida al curriculum

Windchill PDMLink 9.0/9.1 Guida al curriculum Windchill PDMLink 9.0/9.1 Guida al curriculum NOTA: per una rappresentazione grafica del curriculum in base al ruolo professionale, visitare la pagina: http://www.ptc.com/services/edserv/learning/paths/ptc/pdm_90.htm

Dettagli

Guida di Installazione GCC

Guida di Installazione GCC Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Guida di Installazione GCC D. Bloisi, S. Peluso, S. Salza L ambiente di lavoro L ambiente di lavoro al

Dettagli

Le licenze d uso. Le principali tipologie di licenze

Le licenze d uso. Le principali tipologie di licenze Le licenze d uso La legge 633/41 attribuisce in via esclusiva all autore dell opera software tutti i diritti derivanti dall opera stessa, e vieta e punisce ogni abuso che leda questi diritti esclusivi.

Dettagli

BiblioTech - Personal Digital Library

BiblioTech - Personal Digital Library Albana Gaba Alessandro Pegoraro Mirco Bocedi Fabio Giuseppe Strozzi Gruppo 8 Obiettivo Creare un software efficiente per la catalogazione di documenti digitali in categorie personalizzabili dall utente.

Dettagli

Gestione WEB Viaggi e Turismo

Gestione WEB Viaggi e Turismo Pag. 1 di 11 Gestione WEB Viaggi e Turismo Pag. 2 di 11 SOMMARIO 1. INTRODUZIONE...3 2. CARATTERISTICHE E VANTAGGI DI IN.TOUR...4 3. FUNZIONALITA E STRUTTURA SOFTWARE E HARDWARE...6 4. STRUTTURA E CONTENUTI

Dettagli

TECNICO SUPERIORE PER LE APPLICAZIONI INFORMATICHE

TECNICO SUPERIORE PER LE APPLICAZIONI INFORMATICHE ISTRUZIONE E FORMAZIONE TECNICA SUPERIORE SETTORE I.C.T. Information and Communication Technology TECNICO SUPERIORE PER LE APPLICAZIONI INFORMATICHE STANDARD MINIMI DELLE COMPETENZE TECNICO PROFESSIONALI

Dettagli

Ambienti per lo sviluppo collaborativo del software (CDE)

Ambienti per lo sviluppo collaborativo del software (CDE) Ambienti per lo sviluppo collaborativo del software (CDE) Funzionalità tipiche dei CDE Esempi di CDE Collab CDE Sviluppo collaborativo del software Gestione del codice, delle revisioni e dei rami di sviluppo

Dettagli

Università degli Studi "Roma Tre" Dipartimento di Informatica ed automazione. Facoltà di Ingegneria

Università degli Studi Roma Tre Dipartimento di Informatica ed automazione. Facoltà di Ingegneria Università degli Studi "Roma Tre" Dipartimento di Informatica ed automazione Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Tesi di Laurea AUTENTICAZIONE PER APPLICAZIONI WEB Relatore

Dettagli

MANUALE DELLA QUALITÀ Pag. 1 di 10

MANUALE DELLA QUALITÀ Pag. 1 di 10 MANUALE DELLA QUALITÀ Pag. 1 di 10 INDICE IL SISTEMA DI GESTIONE DELLA QUALITÀ Requisiti generali Responsabilità Struttura del sistema documentale e requisiti relativi alla documentazione Struttura dei

Dettagli

Il web server Apache Lezione n. 3. Introduzione

Il web server Apache Lezione n. 3. Introduzione Procurarsi ed installare il web server Apache Introduzione In questa lezione cominciamo a fare un po di pratica facendo una serie di operazioni preliminari, necessarie per iniziare a lavorare. In particolar

Dettagli

Norme per l organizzazione - ISO serie 9000

Norme per l organizzazione - ISO serie 9000 Norme per l organizzazione - ISO serie 9000 Le norme cosiddette organizzative definiscono le caratteristiche ed i requisiti che sono stati definiti come necessari e qualificanti per le organizzazioni al

Dettagli

NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0

NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0 Prodotto Inaz Download Manager Release 1.3.0 Tipo release COMPLETA RIEPILOGO ARGOMENTI 1. Introduzione... 2 2. Architettura... 3 3. Configurazione... 4 3.1 Parametri di connessione a Internet... 4 3.2

Dettagli

Skype4i. Copyright 1999 2015 JetLab S.r.l. Tutti i diritti riservati

Skype4i. Copyright 1999 2015 JetLab S.r.l. Tutti i diritti riservati Copyright 1999 2015 JetLab S.r.l. Tutti i diritti riservati Skype4i Copyright 2010 2015 JetLab S.r.l. Tutti i diritti riservati Skype4i è un marchio di JetLab S.r.l. Microsoft, Windows, Windows NT, Windows

Dettagli

Quaderni di formazione Nuova Informatica

Quaderni di formazione Nuova Informatica Quaderni di formazione Nuova Informatica Airone versione 6 - Funzioni di Utilità e di Impostazione Copyright 1995,2001 Nuova Informatica S.r.l. - Corso del Popolo 411 - Rovigo Introduzione Airone Versione

Dettagli

.EVERYWHERE LOGIN. entra nel futuro. partnership signed

.EVERYWHERE LOGIN. entra nel futuro. partnership signed .EVERYWHERE LOGIN entra nel futuro. partnership signed Sinergia per l innovazione. Studio Ferroli e Acknow Per essere competitivi e vincenti in un mercato sempre più dinamico e globalizzato, che richiede

Dettagli

PBI Passepartout Business Intelligence

PBI Passepartout Business Intelligence PBI Passepartout Business Intelligence TARGET DEL MODULO Il prodotto, disponibile come modulo aggiuntivo per il software gestionale Passepartout Mexal, è rivolto alle Medie imprese che vogliono ottenere,

Dettagli

nstallazione di METODO

nstallazione di METODO nstallazione di METODO In questo documento sono riportate, nell ordine, tutte le operazioni da seguire per una corretta installazione di Metodo. Per procedere con l installazione è necessario avere a disposizione

Dettagli

Introduzione ai Sistemi Operativi

Introduzione ai Sistemi Operativi Introduzione ai Sistemi Operativi Sistema Operativo Software! Applicazioni! Sistema Operativo! È il livello di SW con cui! interagisce l utente! e comprende! programmi quali :! Compilatori! Editori di

Dettagli

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. INFORMATICA Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. APPLICAZIONI WEB L architettura di riferimento è quella ampiamente diffusa ed

Dettagli

Analisi dei Requisiti

Analisi dei Requisiti Analisi dei Requisiti Pagina 1 di 16 Analisi dei Requisiti Indice 1 - INTRODUZIONE... 4 1.1 - OBIETTIVO DEL DOCUMENTO...4 1.2 - STRUTTURA DEL DOCUMENTO...4 1.3 - RIFERIMENTI...4 1.4 - STORIA DEL DOCUMENTO...4

Dettagli

Tale attività non è descritta in questa dispensa

Tale attività non è descritta in questa dispensa Fondamenti di informatica Oggetti e Java ottobre 2014 1 Nota preliminare L installazione e l uso di Eclipse richiede di aver preliminarmente installato Java SE SDK Tale attività non è descritta in questa

Dettagli

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

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

Dettagli

PROCEDURA PR.07/03. Progettazione e sviluppo software STATO DI REVISIONE. Verificato da

PROCEDURA PR.07/03. Progettazione e sviluppo software STATO DI REVISIONE. Verificato da PROCEDURA PR.07/03 Progettazione e sviluppo software STATO DI REVISIONE NUMERO REVISIONE DATA Emesso da DT Fabio 0 15/07/03 Matteucci 1 22/12/03 Fabio Matteucci 2 Verificato da Rappresentante della Direzione

Dettagli

Gassino t.se, 16 dicembre 2014

Gassino t.se, 16 dicembre 2014 2014_12_mozione_open_sourceopensource - pagina 1 di 6 Gassino t.se, 16 dicembre 2014 Oggetto: Mozione Open Source a: Sindaco della Città di Gassino Torinese Sig. Paolo Cugini Assessore di competenza Il

Dettagli

idw INTELLIGENT DATA WAREHOUSE

idw INTELLIGENT DATA WAREHOUSE idw INTELLIGENT DATA WAREHOUSE NOTE CARATTERISTICHE Il modulo idw Amministrazione Finanza e Controllo si occupa di effettuare analisi sugli andamenti dell azienda. In questo caso sono reperite informazioni

Dettagli

Data Base. Prof. Filippo TROTTA

Data Base. Prof. Filippo TROTTA Data Base Definizione di DataBase Un Database può essere definito come un insieme di informazioni strettamente correlate, memorizzate su un supporto di memoria di massa, costituenti un tutt uno, che possono

Dettagli

PostgreSQL, un database libero per la Pubblica Amministrazione Italiana

PostgreSQL, un database libero per la Pubblica Amministrazione Italiana PostgreSQL, un database libero per la Pubblica Amministrazione Italiana Gabriele Bartolini Comune di Prato Sistema Informativo Servizi di E-government e Open-Source Presidente ITPUG Italian PostgreSQL

Dettagli

Lezione 1. Introduzione e Modellazione Concettuale

Lezione 1. Introduzione e Modellazione Concettuale Lezione 1 Introduzione e Modellazione Concettuale 1 Tipi di Database ed Applicazioni Database Numerici e Testuali Database Multimediali Geographic Information Systems (GIS) Data Warehouses Real-time and

Dettagli

Informatica e Bioinformatica: Sistemi Operativi

Informatica e Bioinformatica: Sistemi Operativi Informatica e Bioinformatica: Sistemi Operativi 11 marzo 2013 Macchina Hardware/Software Sistema Operativo Macchina Hardware La macchina hardware corrisponde alle componenti fisiche del calcolatore (quelle

Dettagli

TEMPO X PRODURRE ARTICOLO QUANTITÀ LAVORAZIONE MACCHINA 1 PEZZO Taglio Seghetto 30 minuti. Tornitura Tornio 20 minuti

TEMPO X PRODURRE ARTICOLO QUANTITÀ LAVORAZIONE MACCHINA 1 PEZZO Taglio Seghetto 30 minuti. Tornitura Tornio 20 minuti PIANIFICAZIONE DELLA PRODUZIONE CON ACCESS E PROJECT 2007 In questo articolo esamineremo come una applicazione Access ed una applicazione Project 2007 possono interagire per creare un piano di produzione

Dettagli

HORIZON SQL CONFIGURAZIONE DI RETE

HORIZON SQL CONFIGURAZIONE DI RETE 1-1/9 HORIZON SQL CONFIGURAZIONE DI RETE 1 CARATTERISTICHE DI UN DATABASE SQL...1-2 Considerazioni generali... 1-2 Concetto di Server... 1-2 Concetto di Client... 1-2 Concetto di database SQL... 1-2 Vantaggi...

Dettagli

Mausoleo COMUNE DI NUORO PROGETTO PER LA REALIZZAZIONE DEL CIMITERO MULTIMEDIALE. Arch.Marco Cerina Ing.Enrico Dini

Mausoleo COMUNE DI NUORO PROGETTO PER LA REALIZZAZIONE DEL CIMITERO MULTIMEDIALE. Arch.Marco Cerina Ing.Enrico Dini COMUNE DI NUORO D O C U M E N T O D I S P E C I F I C A P E R I L P R O D O T T O Mausoleo PROGETTO PER LA REALIZZAZIONE DEL CIMITERO MULTIMEDIALE Arch.Marco Cerina Ing.Enrico Dini Descrizione introduttiva

Dettagli

SOLUZIONE Web.Orders online

SOLUZIONE Web.Orders online SOLUZIONE Web.Orders online Gennaio 2005 1 INDICE SOLUZIONE Web.Orders online Introduzione Pag. 3 Obiettivi generali Pag. 4 Modulo di gestione sistema Pag. 5 Modulo di navigazione prodotti Pag. 7 Modulo

Dettagli

Organizzazione delle informazioni: Database

Organizzazione delle informazioni: Database Organizzazione delle informazioni: Database Laboratorio Informatico di base A.A. 2013/2014 Dipartimento di Scienze Aziendali e Giuridiche Università della Calabria Dott. Pierluigi Muoio (pierluigi.muoio@unical.it)

Dettagli

La selezione e la formazione on-line come supporto alla gestione del capitale intellettuale

La selezione e la formazione on-line come supporto alla gestione del capitale intellettuale La selezione e la formazione on-line come supporto alla gestione del capitale intellettuale di Alberto Boletti INTRODUZIONE Lo studio dell organizzazione aziendale ha sempre suscitato in me una forte curiosità,

Dettagli

Statistica 4038 (ver. 1.2)

Statistica 4038 (ver. 1.2) Statistica 4038 (ver. 1.2) Software didattico per l insegnamento della Statistica SERGIO VENTURINI, MAURIZIO POLI i Il presente software è utilizzato come supporto alla didattica nel corso di Statistica

Dettagli

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati Corso di Access Modulo L2A (Access) 1.1 Concetti di base 1 Prerequisiti Utilizzo elementare del computer Concetti fondamentali di basi di dati 2 1 Introduzione Un ambiente DBMS è un applicazione che consente

Dettagli

UML e (R)UP (an overview)

UML e (R)UP (an overview) Lo sviluppo di sistemi OO UML e (R)UP (an overview) http://www.rational.com http://www.omg.org 1 Riassumento UML E un insieme di notazioni diagrammatiche che, utilizzate congiuntamente, consentono di descrivere/modellare

Dettagli

Piattaforma ilearn di Hiteco. Presentazione Piattaforma ilearn

Piattaforma ilearn di Hiteco. Presentazione Piattaforma ilearn Presentazione Piattaforma ilearn 1 Sommario 1. Introduzione alla Piattaforma Hiteco ilearn...3 1.1. Che cos è...3 1.2. A chi è rivolta...4 1.3. Vantaggi nell utilizzo...4 2. Caratteristiche della Piattaforma

Dettagli

SDD System design document

SDD System design document UNIVERSITA DEGLI STUDI DI PALERMO FACOLTA DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA INFORMATICA TESINA DI INGEGNERIA DEL SOFTWARE Progetto DocS (Documents Sharing) http://www.magsoft.it/progettodocs

Dettagli

Piattaforma FaD Formazione a distanza. Manuale di consultazione rapida per l utilizzo della piattaforma di. formazione a distanza di EFA srl

Piattaforma FaD Formazione a distanza. Manuale di consultazione rapida per l utilizzo della piattaforma di. formazione a distanza di EFA srl Piattaforma FaD Formazione a distanza Manuale di consultazione rapida per l utilizzo della piattaforma di formazione a distanza di EFA srl 1 Indice generale 1. Scopo del documento 2. Definizioni e abbreviazioni

Dettagli

La Cultura del Diritto d'autore

La Cultura del Diritto d'autore La Cultura del Diritto d'autore Realizzazione portale web per la comunità accademica (docenti e studenti) focalizzato al rispetto del diritto d autore SOGGETTO CAPOFILA: Università degli Studi di Padova

Dettagli

Server web e protocollo HTTP

Server web e protocollo HTTP Server web e protocollo HTTP Dott. Emiliano Bruni (info@ebruni.it) Argomenti del corso Cenni generali sul web IIS e Apache Il server web Micsosoft Internet Information Server 5.0 Il server web Apache 2.0

Dettagli

Modula. Perchè ogni impresa è diversa

Modula. Perchè ogni impresa è diversa Modula Perchè ogni impresa è diversa Troveremo la risposta giusta alle vostre esigenze Indipendentemente dalla natura e dalle dimensioni della vostra attività, sicuramente c è una cosa su cui sarete d

Dettagli

Uno standard per il processo KDD

Uno standard per il processo KDD Uno standard per il processo KDD Il modello CRISP-DM (Cross Industry Standard Process for Data Mining) è un prodotto neutrale definito da un consorzio di numerose società per la standardizzazione del processo

Dettagli

4.5 CONTROLLO DEI DOCUMENTI E DEI DATI

4.5 CONTROLLO DEI DOCUMENTI E DEI DATI Unione Industriale 35 di 94 4.5 CONTROLLO DEI DOCUMENTI E DEI DATI 4.5.1 Generalità La documentazione, per una filatura conto terzi che opera nell ambito di un Sistema qualità, rappresenta l evidenza oggettiva

Dettagli

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari Gubiani & Montanari Il DBMS Oracle 1 Il DBMS Oracle Express Edition Donatella Gubiani e Angelo Montanari Il DBMS Oracle Il DBMS Oracle Oracle 10g Express Edition Il DBMS Oracle (nelle sue versioni più

Dettagli

Visual Studio 2008: rapido, flessibile, efficiente

Visual Studio 2008: rapido, flessibile, efficiente OGGETTO: Visual Studio 2008 Gentile Cliente, Microsoft è lieta di annunciare la disponibilita di Visual Studio 2008. Microsoft Visual Studio è una famiglia di prodotti progettati per consentire agli sviluppatori

Dettagli

Gestione dei Progetti (2005-2006)

Gestione dei Progetti (2005-2006) Gestione dei Progetti (2005-2006) Alessandro Agnetis DII Università di Siena (Alcune delle illustrazioni contenute nella presentazione sono tratte da PMBOK, a guide to the Project Management Body of Knowledge,

Dettagli

Procedure per l aggiornamento automatico di liste di distribuzione IAT-B41999001. Laura Abba, Marina Buzzi, Francesco Gennai

Procedure per l aggiornamento automatico di liste di distribuzione IAT-B41999001. Laura Abba, Marina Buzzi, Francesco Gennai C Consiglio Nazionale delle Ricerche Procedure per l aggiornamento automatico di liste di distribuzione IAT-B41999001 Laura Abba, Marina Buzzi, Francesco Gennai e-mail: Laura.Abba@iat.cnr.it Marina.Buzzi@iat.cnr.it

Dettagli

Protezione e sicurezza dei vostri dati personali

Protezione e sicurezza dei vostri dati personali Protezione e sicurezza dei vostri dati personali Vi preghiamo di leggere attentamente le seguenti informazioni, per comprendere il modo in cui Travelex gestisce i vostri dati personali. Creando un profilo,

Dettagli

Manuale dell'utente di Crystal Reports. Installazione di Crystal Reports XI

Manuale dell'utente di Crystal Reports. Installazione di Crystal Reports XI Manuale dell'utente di Crystal Reports Installazione di Crystal Reports XI Installazione di Crystal Reports XI Installazione di Crystal Reports XI L Installazione guidata di Crystal Reports funziona in

Dettagli

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

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

Dettagli