Login

Tweet recenti ...

By A Web Design Company

Project Management ICT

Gestire progetti ICT minimizzando i rischi e massimizzando la produttività e i risultati.

cdrom200x150Il trasferimento di dati da un sistema ad un altro è un'operazione molto delicata. Trasferire grossi volumi di dati archiviati secondo uno schema su un altro differente richiede sia una preparazione specifica che una grande capacità di verifica per evitare che il contenuto informativo dei dati trasferiti degeneri per errori di trasferimento.

Mentre è semplice colmare il divario tecnologico che può esistere tra la base dati d'origine e quella di destinazione, è più difficile superare la differenza introdotta da strutture informative non identiche. Ad acuire questo problema contribuisce il fatto che, spesso, i dati nel database di origine hanno già subito degenerazioni (in genere localizzate) a seguito dell'evoluzione del software che gestiva. Di conseguenza ci si trova a trasferire informazioni memorizzate secondo regole differenti nel tempo.

Logica dei Sistemi propone la propria esperienza e le proprie competenze nell'ambito della migrazione dati.

Se siete interessati all'argomento e desiderate ulteriori informazioni potete rivolgervi alla nostra Questo indirizzo email è protetto dagli spambots. E' necessario abilitare JavaScript per vederlo. .

Trasferire un software da una piattaforma (ad esempio da un sistema legacy) ad un'altra (ad esempio un ambiente web based) è un tipo di progetto che presenta un tasso di fallimento elevatissimo.

Riuscire a condurre in porto un trasferimento di piattaforma (in gergo porting) significa spesso dover riprodurre un sistema di cui ormai si è persa gran parte della conoscenza relativa al suo funzionamento. Significa spesso dover trasferire ingenti volumi di dati, con numerosi errori o anomalie e degradati dalle evoluzioni che il software ha avuto negli anni. Significa, sempre, dover passare, prima o poi, dal vecchio sistema al nuovo, spesso senza ampi spazi di manovra.

Un progetto di porting, per avere successo, deve prevedere la presenza di esperti in ingegnerizzazione inversa (reverse engineering), un serio investimento nella redazione di documentazione formale e completa, una capacità di gestire progetti ad elevato rischio, una grande competenza nella migrazione dei dati. Ma, soprattutto, deve essere basato sulla verifica continua di tutte le conclusioni a cui si giunge e su un approccio prototipale fortemente anticipato che permetta di verificare (perché è proprio la verifica il tallone d'Achille di questi progetti) quanto il nuovo software stia replicando (migliorando) il preesistente, ossia quanto si stia convergendo sull'obiettivo.

Logica dei Sistemi possiede tutte le competenze per guidare o realizzare progetti di porting e propone i propri servizi di consulenza a chiunque fosse interessato. Al termine di un porting eseguito da Logica dei Sistemi si avrà non solo il software funzionante, ma anche la documentazione completa del vecchio e del nuovo sistema, assieme all'evidenza dell'intensa attività di verifica che è stata effettuata.

Logica dei Sistemi non pretende di realizzare un porting in maniera semplice e rapida, ma di farlo in maniera professionale e riducendo drammaticamente il rischio di un insuccesso. Di norma il software che Logica dei Sistemi porta realizzare dopo un porting non è solo stato scritto per replicare migliorare le funzionalità preesistenti ma è stato anche progettato per essere modificabile e testabile, in modo da permettere al nuovo sistema di poter crescere notevolmente per soddisfare nuove esigenze dell'utenza.

Logica dei Sistemi ritiene che il porting sia uno dei suoi cavalli di battaglia e invita chiunque sia interessato ad approfondire l'argomento a contattare la sua Questo indirizzo email è protetto dagli spambots. E' necessario abilitare JavaScript per vederlo. .

La gestione di un progetto software, e più in generale di un progetto ICT, pur rientrando nella categoria più generale del project management, presenta numerose peculiarità che la rendono unica.

Un primo aspetto importante è la scelta del corretto ciclo di vita (o ciclo di sviluppo) del software. Esistono numerosi approcci, tra loro profondamente differenti, che spaziano da modelli estremamente rigidi e formali (ad esempio il ciclo di vita a cascata) a modelli quasi anarchici (praticamente tutti i cicli di sviluppo agili), passando per un intervallo di sfumature molto numerose (ad esempio RUP, a spirale,...).

Un secondo aspetto è la difficoltà intrinseca nel verificare i risultati di una qualunque fase del ciclo di sviluppo. Collaudare un solaio è semplice: basta posizionarvi dei pesi adeguati ed effettuare delle semplici misure. Collaudare un software e, praticamente, un progetto parallelo a quello di sviluppo.

La scelta del ciclo di sviluppo sbagliato, l'adozione di forme organizzative di progetto inadeguate e l'utilizzo insufficiente improprio di strumenti software per lo sviluppo rapido di applicazioni, uniti spesso a una mancata gestione del rischio, portano frequentemente a gravi ritardi o al fallimento di progetti software anche di grandi dimensioni.

Logica dei Sistemi dispone di competenze adeguate a fronteggiare praticamente qualsiasi progetto di sviluppo software e, in particolare, dispone dell'esperienza necessaria per recuperare progetti finiti fuori controllo.

Se siete interessati all'adozione di una modalità di gestione di progetti software di tipo industriale e tagliata su misura per le vostre necessità oppure avete bisogno di recuperare un progetto finito fuori controllo o se volete maggiori informazioni, potete contattare la nostra Questo indirizzo email è protetto dagli spambots. E' necessario abilitare JavaScript per vederlo. .

normografi200x150L'ingegneria ci ha abituati, da decenni, a considerare qualsiasi sistema elettronico, meccanico, chimico e via dicendo sulla base di numerose misure secondo diverse grandezze fisiche. Grazie a queste misure siamo in grado di confrontare tra loro sistemi analoghi e di comprendere se le modifiche apportate a tali sistemi abbiano realmente contribuito a migliorarli oppure li stanno peggiorando.

Questa è l'ingegneria, tutta l'ingegneria tranne, apparentemente, quella del software. In campo informatico siamo abituati a misure ma queste sono solo relative alla dimensione di memoria (byte, kilobyte, megabyte, gigabyte,...) o alla velocità (megahertz, gigahertz,...).

In realtà il software, come qualunque altro manufatto umano, può essere misurato secondo delle metriche precise. Tali misurazioni consentono di valutare il grado di efficacia degli interventi migliorativi o correttivi e di prevenire numerosi problemi, mantenendo inalterate determinate caratteristiche (qualità) desiderate.

Grazie alle metriche del software siamo in grado di comprendere se un determinato programma è semplice o impossibile da testare, se una porzione di codice è facilmente modificabile o è così complessa da rischiare un effetto domino.

In tutte le situazioni in cui abbiamo un software che presenti numerose instabilità o che sia soggetto a frequenti modifiche è opportuno effettuare misure del software per valutare, globalmente e localmente, l'effetto degli interventi effettuati. Grazie ad esse si è in grado di stabilire se le modifiche hanno danneggiato o meno il software. Le misure possono anche dirci se è opportuno modificare una porzione di codice direttamente o se è meglio, prima, riscriverla (refactoring) in modo che sia modificabile, per evitare pesanti regressioni del codice e l'introduzione di numerosi errori a fronte di uno risolto.

Se le metriche del software venissero utilizzate più spesso si eviterebbero numerosi fallimenti e si otterrebbe un software di qualità enormemente superiore.

Molti enti, soprattutto a livello internazionale (ad esempio le agenzie spaziali ma non solo) hanno iniziato a stabilire dei vincoli su alcune misure del software in modo da garantire che programmi di una certa criticità siano realizzati a regola d'arte.

Logica dei Sistemi è in grado di supportarvi nella definizione di metriche e nel loro calcolo, oltre che aiutarvi nel rispettare i vincoli che potreste trovare relativamente a misure software.

Se siete interessati all'argomento delle metriche del software potete contattare la nostra Questo indirizzo email è protetto dagli spambots. E' necessario abilitare JavaScript per vederlo. .

Molto spesso è necessario ricostruire il funzionamento interno di un software di cui si è perso il controllo, per ragioni spesso storiche ma a volte legate ad altri motivi. Tale attività viene detta di ingegnerizzazione inversa o reverse engineering.

L'ingegnerizzazione inversa si basa sull'analisi del codice del software, del suo comportamento dall'esterno e della conoscenza distribuita tra i suoi utilizzatori e sviluppatori.

Un processo di ingegnerizzazione inversa non è semplice da gestire e richiede notevoli competenze ma è fondamentale, anzi in molti casi necessario, per poter modificare o far evolvere il proprio software.

Logica dei Sistemi è in grado di effettuare il reverse engineering di numerosi tipi di sistemi software. Data la notevole complessità dell'argomento e la sua forte variabilità vi invitiamo, se siete interessati alla questione, a contattare la nostra Questo indirizzo email è protetto dagli spambots. E' necessario abilitare JavaScript per vederlo. .