Valutazione dei costi di migrazione tramite metriche di complessità del codice
La traduzione automatica del software è un processo gestito da elaboratori che si occupa della traduzione di codice sorgente da un linguaggio di programmazione d’origine a uno di destinazione, rispettando nel programma di destinazione le stesse funzionalità del programma d’origine. La problematica della migrazione, nel contesto moderno dove l’evoluzione delle tecnologie informatiche è in continuo aggiornamento, assume sempre maggior importanza. Le imprese, soprattutto in Italia, soffrono di un’arretratezza tecnologica che preclude la dinamicità dei processi aziendali e diventa quindi importante l’aggiornamento dei propri sistemi al fine di cercare di ottenere un vantaggio sulla concorrenza, mantenendo, allo stesso tempo, la spesa da sostenere nei limiti del budget disponibile. L’adozione di soluzioni di migrazione automatica può esser di grande aiuto alle imprese poiché, se utilizzate in maniera intelligente, sarà possibile avere un prodotto di buona qualità a costi notevolmente ridotti.
Si possono individuare tre tipi di migrazioni:
L’evoluzione dell’hardware da sistemi legacy a sistemi distribuiti
L’evoluzione dal paradigma di programmazione da linguaggi logico/procedurali all’object oriented
L’introduzione di framework di sviluppo applicativo
Il terzo punto rappresenta la migrazione più complessa perché dà origine a problematiche legate alla migrazione di funzioni native del linguaggio; Il framework incorpora funzionalità specifiche che saranno differenti tra il linguaggio d’origine e quello di destinazione; viene introdotta la problematica della migrabilità del codice, non come processo di passaggio da un codice scritto in un certo linguaggio ad un codice scritto in un linguaggio differente, quanto piuttosto, da un codice scritto per supportare un framework (che incorpora una serie di funzionalità native), ad un codice di destinazione che necessariamente deve essere eseguito su un framework target e che potrebbe non supportare nativamente le funzionalità d’origine. È in questo contesto che si colloca il tool di migrazione su cui ho lavorato durante il mio stage in Avanade. Questi è stato realizzato con il fine di poter portare in maniera semi-automatica applicazioni scritte in LotusNotes a piattaforme più recenti e funzionali quali C# e Silverlight (utilizzato per la parte front-end). Il sistema LotusNotes, inventato nel 1973 da Don Bitzer, professore universitario, ha l’intento di poter utilizzare una rete di computer per l’apprendimento automatizzato, mediante l’utilizzo di funzionalità collaborative simili alle moderne chat, e-mail e condivisione file. Successivamente è evoluto in un software commerciale dedicato alla gestione interna di grandi aziende. Di anno in anno sono state rilasciate nuove release con relativi aggiornamenti e nuove funzionalità fino ad arrivare alla versione odierna, tutt’oggi in commercio, che seppur perfettamente integrata con il web e tutte le altre tecnologie non esistenti negli anni 80’ si può considerare obsoleta, almeno dal mio punto di vista, in quanto nata da un’idea vecchia di quarant’anni. Si parla quindi di conversione semi-automatica per l’inevitabile differenza tra i framework dei due linguaggi; ci sarà quindi una parte del codice del programma sorgente da convertire in modo automatico ed un’altra dovrà essere gestita manualmente da un capace programmatore. Il compito assegnatomi nello stage, è stato quello di identificare quest’ultima parte, dandole un peso utile a capirne la complessità e quindi il relativo costo in termini di risorse umane per la sua traduzione. Per fare questo mi sono dovuto documentare sulle varie metriche di misura del codice, come ad esempio quella di Albrecht, COCOMO e infine McCabe, che è stata la metrica che ho implementato all’interno del tool per il suo compromesso trà affidabilità e semplicità; (viene costruito il grafo equivalente di un programma formato dai cammini indipendenti che si creano al suo interno, per poi trovare il valore rappresentante il numero ciclomatico V(G)= e – n + 2p dove e= # archi, n=# nodi mentre p rappresenta il numero di componenti connesse). Una volta identificato e pesato un token di codice non migrabile in automatico dovrò generare un issue contenente tutte le informazioni disponibili tra cui la causa della mancata conversione che può essere dovuta a:
Il tool non può riconoscere la funzione che sta analizzando poiché non è ancora stata implementata
La funzione non ha equivalente nella piattaforma di destinazione (per le caratteristiche della piattaforma di destinazione tale funzione non ha significato).
CONSULTA INTEGRALMENTE QUESTA TESI
La consultazione è esclusivamente in formato digitale .PDF
Acquista
CONSULTA INTEGRALMENTE QUESTA TESI
La consultazione è esclusivamente in formato digitale .PDF
Acquista
L'unico servizio antiplagio competitivo nel prezzo che garantisce l'aiuto della nostra redazione nel controllo dei risultati.
Analisi sicura e anonima al 100%!
Ottieni un Certificato Antiplagio dopo la valutazione.
Informazioni tesi
Autore: | Luca Locatelli |
Tipo: | Laurea I ciclo (triennale) |
Anno: | 2009-10 |
Università: | Università degli Studi di Milano |
Facoltà: | Scienze Matematiche, Fisiche e Naturali |
Corso: | Informatica |
Relatore: | Mattia Monga |
Lingua: | Italiano |
Num. pagine: | 56 |
FAQ
Come consultare una tesi
Il pagamento può essere effettuato tramite carta di credito/carta prepagata, PayPal, bonifico bancario.
Confermato il pagamento si potrà consultare i file esclusivamente in formato .PDF accedendo alla propria Home Personale. Si potrà quindi procedere a salvare o stampare il file.
Maggiori informazioni
Perché consultare una tesi?
- perché affronta un singolo argomento in modo sintetico e specifico come altri testi non fanno;
- perché è un lavoro originale che si basa su una ricerca bibliografica accurata;
- perché, a differenza di altri materiali che puoi reperire online, una tesi di laurea è stata verificata da un docente universitario e dalla commissione in sede d'esame. La nostra redazione inoltre controlla prima della pubblicazione la completezza dei materiali e, dal 2009, anche l'originalità della tesi attraverso il software antiplagio Compilatio.net.
Clausole di consultazione
- L'utilizzo della consultazione integrale della tesi da parte dell'Utente che ne acquista il diritto è da considerarsi esclusivamente privato.
- Nel caso in cui l’utente che consulta la tesi volesse citarne alcune parti, dovrà inserire correttamente la fonte, come si cita un qualsiasi altro testo di riferimento bibliografico.
- L'Utente è l'unico ed esclusivo responsabile del materiale di cui acquista il diritto alla consultazione. Si impegna a non divulgare a mezzo stampa, editoria in genere, televisione, radio, Internet e/o qualsiasi altro mezzo divulgativo esistente o che venisse inventato, il contenuto della tesi che consulta o stralci della medesima. Verrà perseguito legalmente nel caso di riproduzione totale e/o parziale su qualsiasi mezzo e/o su qualsiasi supporto, nel caso di divulgazione nonché nel caso di ricavo economico derivante dallo sfruttamento del diritto acquisito.
Vuoi tradurre questa tesi?
Per raggiungerlo, è fondamentale superare la barriera rappresentata dalla lingua. Ecco perché cerchiamo persone disponibili ad effettuare la traduzione delle tesi pubblicate nel nostro sito.
Per tradurre questa tesi clicca qui »
Scopri come funziona »
DUBBI? Contattaci
Contatta la redazione a
[email protected]
Parole chiave
Non hai trovato quello che cercavi?
Abbiamo più di 45.000 Tesi di Laurea: cerca nel nostro database
Oppure consulta la sezione dedicata ad appunti universitari selezionati e pubblicati dalla nostra redazione
Ottimizza la tua ricerca:
- individua con precisione le parole chiave specifiche della tua ricerca
- elimina i termini non significativi (aggettivi, articoli, avverbi...)
- se non hai risultati amplia la ricerca con termini via via più generici (ad esempio da "anziano oncologico" a "paziente oncologico")
- utilizza la ricerca avanzata
- utilizza gli operatori booleani (and, or, "")
Idee per la tesi?
Scopri le migliori tesi scelte da noi sugli argomenti recenti
Come si scrive una tesi di laurea?
A quale cattedra chiedere la tesi? Quale sarà il docente più disponibile? Quale l'argomento più interessante per me? ...e quale quello più interessante per il mondo del lavoro?
Scarica gratuitamente la nostra guida "Come si scrive una tesi di laurea" e iscriviti alla newsletter per ricevere consigli e materiale utile.
La tesi l'ho già scritta,
ora cosa ne faccio?
La tua tesi ti ha aiutato ad ottenere quel sudato titolo di studio, ma può darti molto di più: ti differenzia dai tuoi colleghi universitari, mostra i tuoi interessi ed è un lavoro di ricerca unico, che può essere utile anche ad altri.
Il nostro consiglio è di non sprecare tutto questo lavoro:
È ora di pubblicare la tesi