UNIVERSITÀ DEGLI STUDI DI BARI

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

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

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

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

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

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

Corso di Informatica Modulo T3 B1 Programmazione web

Corso di Informatica Modulo T3 B1 Programmazione web Corso di Informatica Modulo T3 B1 Programmazione web 1 Prerequisiti Architettura client/server Elementi del linguaggio HTML web server SQL server Concetti generali sulle basi di dati 2 1 Introduzione Lo

Dettagli

Corso di Web programming Modulo T3 A2 - Web server

Corso di Web programming Modulo T3 A2 - Web server Corso di Web programming Modulo T3 A2 - Web server 1 Prerequisiti Pagine statiche e dinamiche Pagine HTML Server e client Cenni ai database e all SQL 2 1 Introduzione In questa Unità si illustra il concetto

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Un approccio innovativo basato su tecnologie Open Source. White Paper

Un approccio innovativo basato su tecnologie Open Source. White Paper Soluzioni software di CRM "Customer Relationship Management" Gestione delle relazioni con i clienti, delle trattative commerciali e delle iniziative di marketing, Gestione delle attività di supporto post-vendita

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

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

Università degli Studi di Salerno GPS: Gestione Progetti Software. Project Proposal Versione 1.1

Università degli Studi di Salerno GPS: Gestione Progetti Software. Project Proposal Versione 1.1 Università degli Studi di Salerno GPS: Gestione Progetti Software Project Proposal Versione 1.1 Data 27/03/2009 Project Manager: D Amato Angelo 0521000698 Partecipanti: Nome Andrea Cesaro Giuseppe Russo

Dettagli

Software e Sistemi Operativi Prof. Maurizio Naldi A.A. 2015/16

Software e Sistemi Operativi Prof. Maurizio Naldi A.A. 2015/16 Software e Sistemi Operativi Prof. Maurizio Naldi A.A. 2015/16 Cosa vedremo Il software applicativo Categorie di SW Il sistema operativo Gestione programmi in esecuzione (processi) Gestione memoria Gestione

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

FileMaker Server 11. Guida all'aggiornamento dei plug-in

FileMaker Server 11. Guida all'aggiornamento dei plug-in FileMaker Server 11 Guida all'aggiornamento dei plug-in 2010 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker è un marchio di

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

MANUALE www.logisticity.it. Copryright 2015 - All rights reserved Email: info@logisticity.it - P.IVA 04183950403

MANUALE www.logisticity.it. Copryright 2015 - All rights reserved Email: info@logisticity.it - P.IVA 04183950403 MANUALE www.logisticity.it Copryright 2015 - All rights reserved Email: info@logisticity.it - P.IVA 04183950403 INDICE Presentazione... pag. 02 Applicativo... pag. 03 Amministrazione...pag. 06 Licenza...pag.

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

SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows

SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows i SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows Per ulteriori informazioni sui prodotti software SPSS Inc., visitare il sito Web all indirizzo http://www.spss.it o contattare: SPSS

Dettagli

Introduzione al Calcolo Scientifico

Introduzione al Calcolo Scientifico Introduzione al Calcolo Scientifico Corso di Calcolo Numerico, a.a. 2010/2011 Francesca Mazzia Dipartimento di Matematica Università di Bari Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico

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

Oracle Solaris Studio 12.4: Guida per la sicurezza

Oracle Solaris Studio 12.4: Guida per la sicurezza Oracle Solaris Studio 12.4: Guida per la sicurezza N. di parte: E60509 Ottobre 2014 Copyright 2013, 2014, Oracle e/o relative consociate. Tutti i diritti riservati. Il software e la relativa documentazione

Dettagli

Thea PDM. Cos è Thea PDM? Il PDM (Product Data Management)

Thea PDM. Cos è Thea PDM? Il PDM (Product Data Management) Thea PDM Il PDM (Product Data Management) Nell'industria manifatturiera il PDM è un software per la raccolta ed organizzazione dei file nelle divere fasi di ideazione, progettazione, produzione ed obsolescenza

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

Ingegneria del Software - Il Ciclo Lungo

Ingegneria del Software - Il Ciclo Lungo Ingegneria del Software - Il Ciclo Lungo Alessandro Martinelli alessandro.martinelli@unipv.it 10 Marzo 2014 Il Ciclo Lungo Il Versioning e la Condivisione di Codice Organizzazione dei Pacchetti La Modellazione

Dettagli

CAPITOLO 1 I SISTEMI OPERATIVI

CAPITOLO 1 I SISTEMI OPERATIVI CAPITOLO 1 I SISTEMI OPERATIVI Introduzione ai sistemi operativi pag. 3 La shell pag. 3 Tipi di sistemi operativi pag. 4 I servizi del sistema operativo pag. 4 La gestione dei file e il file system Il

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

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

Infrastrutture Software

Infrastrutture Software Infrastrutture Software I componenti fisici di un sistema informatico sono resi accessibili agli utenti attraverso un complesso di strumenti software finalizzati all utilizzo dell architettura. Si tratta

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

ANNARITA: Il database Object Relational dell Anagrafe Nazionale delle Ricerche

ANNARITA: Il database Object Relational dell Anagrafe Nazionale delle Ricerche ANNARITA: Il database Object Relational dell Anagrafe Nazionale delle Ricerche Alex Manzo CILEA, Roma Abstract Nell ottica di un potenziamento e arricchimento dei dati dell Anagrafe Nazionale delle Ricerche

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

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

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

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

Informatica Documentale

Informatica Documentale Informatica Documentale Ivan Scagnetto (scagnett@dimi.uniud.it) Stanza 3, Nodo Sud Dipartimento di Matematica e Informatica Via delle Scienze, n. 206 33100 Udine Tel. 0432 558451 Ricevimento: giovedì,

Dettagli

Esercitazione 8. Basi di dati e web

Esercitazione 8. Basi di dati e web Esercitazione 8 Basi di dati e web Rev. 1 Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E8-1 Basi di dati e web Una modalità tipica di accesso alle basi di dati è tramite interfacce web Esiste una

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

FORSETI BLOG. Readcast. Ottobre 2013 Speciale Linux Day. http://blog.forseti.it/

FORSETI BLOG. Readcast. Ottobre 2013 Speciale Linux Day. http://blog.forseti.it/ FORSETI BLOG Readcast Ottobre 2013 Speciale Linux Day http://blog.forseti.it/ Indice di Denis Turrina 3 Forseti Blog - Ottobre 2013 3 di Denis Turrina Denis Turrina Dottore in Sicurezza dei Sistemi e delle

Dettagli

Relazione finale di Didattica e laboratorio di Programmazione

Relazione finale di Didattica e laboratorio di Programmazione Relazione finale di Didattica e laboratorio di Programmazione Prof.ssa Vallì Carando Tirocinante Maria Grazia Maffucci Classe di concorso A042 aprile 2013 Progettazione Web Applicazioni client-server La

Dettagli

Questa scelta è stata suggerita dal fatto che la stragrande maggioranza dei navigatori usa effettivamente IE come browser predefinito.

Questa scelta è stata suggerita dal fatto che la stragrande maggioranza dei navigatori usa effettivamente IE come browser predefinito. Pagina 1 di 17 Installazione e configurazione di applicazioni Installare e configurare un browser Come già spiegato nelle precedenti parti introduttive di questo modulo un browser è una applicazione (lato

Dettagli

Manuale di installazione di SAP Crystal Reports, versione per Visual Studio 2010 SAP Crystal Reports for Visual Studio 2010 Support Package 01

Manuale di installazione di SAP Crystal Reports, versione per Visual Studio 2010 SAP Crystal Reports for Visual Studio 2010 Support Package 01 Manuale di installazione di SAP Crystal Reports, versione per Visual Studio 2010 SAP Crystal Reports for Visual Studio 2010 Support Package 01 Copyright 2011 SAP AG. Tutti i diritti riservati.sap, R/3,

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 1 Sistema software 1 Prerequisiti Utilizzo elementare di un computer Significato elementare di programma e dati Sistema operativo 2 1 Introduzione In questa Unità studiamo

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

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

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

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

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

Progetto: JNSIL LEAF. Presentazione: nuova procedura Java based e cross Platform per la gestione di LEAsing e Finanziamenti

Progetto: JNSIL LEAF. Presentazione: nuova procedura Java based e cross Platform per la gestione di LEAsing e Finanziamenti Progetto: JNSIL LEAF Presentazione: nuova procedura Java based e cross Platform per la gestione di LEAsing e Finanziamenti Negli ultimi anni si è diffuso il trend di trasformare applicazioni pensate per

Dettagli

L ARCHIVIAZIONE E LA GESTIONE DATI ATTRAVERSO L INTERAZIONE TRA MICROSOFT ACCESS ED EXCEL 1 INTRODUZIONE

L ARCHIVIAZIONE E LA GESTIONE DATI ATTRAVERSO L INTERAZIONE TRA MICROSOFT ACCESS ED EXCEL 1 INTRODUZIONE Roccatello Ing. Eduard L ARCHIVIAZIONE E LA GESTIONE DATI ATTRAVERSO L INTERAZIONE TRA MICROSOFT ACCESS ED EXCEL 1 INTRODUZIONE Agenda Presentazione docente Definizione calendario Questionario pre corso

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

Basi di dati. Basi di dati = database. Basi di dati

Basi di dati. Basi di dati = database. Basi di dati Basi di dati Da leggere: Cap. 6 Sawyer, Williams (testo A) Basi di dati = database Sono una delle applicazioni informatiche che hanno avuto il maggiore utilizzo in uffici, aziende, servizi -> oggi anche

Dettagli

REPORT FINALE SUL PROGETTO CLUSTER OPEN SOURCE

REPORT FINALE SUL PROGETTO CLUSTER OPEN SOURCE REPORT FINALE SUL PROGETTO CLUSTER OPEN SOURCE Premessa Il presente report illustra il progetto Cluster Open Source, progetto che mira a sviluppare dinamiche distrettuali all interno del sistema produttivo

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

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 Compilazione, link, esecuzione di programmi Conoscere

Dettagli

Riferimento rapido di Novell Vibe Mobile

Riferimento rapido di Novell Vibe Mobile Riferimento rapido di Novell Vibe Mobile Marzo 2015 Introduzione L'accesso mobile al sito di Novell Vibe può essere disattivato dall'amministratore di Vibe. Se non si riesce ad accedere all'interfaccia

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

Concetti base. Impianti Informatici. Web application

Concetti base. Impianti Informatici. Web application Concetti base Web application La diffusione del World Wide Web 2 Supporto ai ricercatori Organizzazione documentazione Condivisione informazioni Scambio di informazioni di qualsiasi natura Chat Forum Intranet

Dettagli

PARAMETRI 2014 P.I. 2013. Guida all uso ed all installazione

PARAMETRI 2014 P.I. 2013. Guida all uso ed all installazione PARAMETRI 2014 P.I. 2013 Guida all uso ed all installazione 1 INTRODUZIONE Il prodotto PARAMETRI 2014 consente di stimare i ricavi o i compensi dei contribuenti esercenti attività d impresa o arti e professioni

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

Corso basi di dati Introduzione alle ASP

Corso basi di dati Introduzione alle ASP Corso basi di dati Introduzione alle ASP Gianluca Di Tomassi Email: ditomass@dia.uniroma3.it Università di Roma Tre Web statico e Web interattivo In principio il Web era una semplice collezione di pagine

Dettagli

Applied Research & Technology Dept.

Applied Research & Technology Dept. 17/12/08 Elenco Tesi Disponibili Applied Research & Technology Dept. La Società MBDA La MBDA Italia è un azienda leader nella realizzazione di sistemi di difesa che con i suoi prodotti è in grado di soddisfare

Dettagli

Progetto software 2008/2009. Docente Marianna Nicolosi Asmundo

Progetto software 2008/2009. Docente Marianna Nicolosi Asmundo Progetto software 2008/2009 Docente Marianna Nicolosi Asmundo Obiettivi del corso Coinvolgervi nello sviluppo di un progetto software in cui mettere a frutto le conoscenze che avete acquisito durante i

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

Fare software nel 2008: l Open Source e il ruolo delle imprese

Fare software nel 2008: l Open Source e il ruolo delle imprese Dipartimento di Elettronica e Informazione Fare software nel 2008: l Open Source e il ruolo delle imprese Eugenio Capra eugenio.capra@polimi.it IBM Softwareland, Monza, 18 settembre 2008 Cos è l Open Source?

Dettagli

INSTALLAZIONE DI JOOMLA! Guida alla installazione di Joomla!

INSTALLAZIONE DI JOOMLA! Guida alla installazione di Joomla! Guida di Virtuemart INSTALLAZIONE DI JOOMLA! Guida alla installazione di Joomla! INDICE INDICE... 1 INTRODUZIONE... 2 DONWLOAD... 2 INSTALLAZIONE... 2 REQUISITI MINIMI... 3 PASSAGGIO 1... 4 PASSAGGIO 2...

Dettagli

Java e solidarietà: il progetto Jug4Tenda

Java e solidarietà: il progetto Jug4Tenda Java e solidarietà: il progetto Jug4Tenda www.jugancona.it Jug Marche Relatore: Andrea Del Bene Java e solidarietà: il progetto Jug4Tenda Agenda Storia del progetto Architettura Processo di sviluppo Riferimenti

Dettagli

Telematica II 5. Esercitazione/Laboratorio 1

Telematica II 5. Esercitazione/Laboratorio 1 IDE Ambiente di sviluppo IDE - Integrated Development Environment Telematica II 5. Esercitazione/Laboratorio 1 e un Ambiente di Sviluppo Integrato che consente di creare in modo semplice progetti composti

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

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

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

ADA. E learning e open source

ADA. E learning e open source 1 ADA. E learning e open source ADA 1.7.1 Come cresce un Ambiente Digitale per l'apprendimento open source Maurizio Graffio Mazzoneschi 2 Cos'è il software libero Libertà 0, o libertà fondamentale: la

Dettagli

FileMaker 8. Installazione dei driver client FileMaker 8 ODBC e JDBC

FileMaker 8. Installazione dei driver client FileMaker 8 ODBC e JDBC FileMaker 8 Installazione dei driver client FileMaker 8 ODBC e JDBC 2004-2005 Filemaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker

Dettagli

Database e reti. Piero Gallo Pasquale Sirsi

Database e reti. Piero Gallo Pasquale Sirsi Database e reti Piero Gallo Pasquale Sirsi Approcci per l interfacciamento Il nostro obiettivo è, ora, quello di individuare i possibili approcci per integrare una base di dati gestita da un in un ambiente

Dettagli

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a:

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a: Lab 4.1 Utilizzare FTP (File Tranfer Protocol) LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) In questa lezione imparerete a: Utilizzare altri servizi Internet, Collegarsi al servizio Telnet, Accedere

Dettagli

CIG 6223997CCB COD. ALICE G00292

CIG 6223997CCB COD. ALICE G00292 APPENDICE 2 Descrizione dei profili professionali richiesti Sommario APPENDICE 2 Descrizione dei profili professionali richiesti... 1 1. PROFILI PROFESSIONALI RICHIESTI... 2 1.1 Capo progetto... 2 1.2

Dettagli

Affidamento di servizi di manutenzione e assistenza sul prodotto mitris manifestazione d interesse

Affidamento di servizi di manutenzione e assistenza sul prodotto mitris manifestazione d interesse Affidamento di servizi di manutenzione e assistenza sul prodotto mitris La Società INSIEL - Informatica per il Sistema degli Enti Locali S.p.A. - avvia un'indagine di mercato per ricevere manifestazioni

Dettagli

Metodologie e strumenti per il collaudo di applicazioni Web

Metodologie e strumenti per il collaudo di applicazioni Web Università degli studi Tor Vergata Facoltà di Ingegneria Metodologie e strumenti per il collaudo di applicazioni Web Candidato: Luca De Francesco Relatore Chiar.mo Prof. Salvatore Tucci Correlatore Ing.

Dettagli

Kirey Re.Search 2.0. Piattaforma di ricerca Open Source

Kirey Re.Search 2.0. Piattaforma di ricerca Open Source Kirey Re.Search 2.0 Piattaforma di ricerca Open Source Le esigenze Quando si parla di motori di ricerca si tende a pensare istintivamente solo a quelli utilizzati per effettuare ricerche in Internet, come

Dettagli

Corso di Alfabetizzazione Informatica

Corso di Alfabetizzazione Informatica Corso di Alfabetizzazione Informatica Lezione 6 a.a. 2010/2011 Francesco Fontanella La Complessità del Hardware Il modello di Von Neumann è uno schema di principio. Attualmente in commercio esistono: diversi

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

SOMMARIO. www.trustonline.org. 1. Introduzione 3. 2. Caratteristiche generali della piattaforma 3. 2.1. Amministrazione degli utenti 5

SOMMARIO. www.trustonline.org. 1. Introduzione 3. 2. Caratteristiche generali della piattaforma 3. 2.1. Amministrazione degli utenti 5 www.trustonline.org SOMMARIO 1. Introduzione 3 2. Caratteristiche generali della piattaforma 3 2.1. Amministrazione degli utenti 5 2.2. Caricamento dei corsi 5 2.3. Publishing 6 2.4. Navigazione del corso

Dettagli

White Paper 1. INTRODUZIONE...2 2. TECNOLOGIE SOFTWARE IMPIEGATE...2 3. APPROCCIO PROGETTUALE...10 3. RISULTATI...10

White Paper 1. INTRODUZIONE...2 2. TECNOLOGIE SOFTWARE IMPIEGATE...2 3. APPROCCIO PROGETTUALE...10 3. RISULTATI...10 Soluzioni software di EDM "Electronic Document Management" Gestione dell archiviazione, indicizzazione, consultazione e modifica dei documenti elettronici. Un approccio innovativo basato su tecnologie

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