Uno dei problemi principali della messa in produzione e/o funzionamento delle procedure
software realizzate, o modificate per sopravvenute esigenze, e' quello del controllo
qualita' di tali procedure.
Prendendo ad esempio la realta' bancaria, le procedure di sportello andrebbero testate
prima di essere rilasciate alle agenzie al fine di prevenire quanto piu' possibile errori
nell'effettuazione delle transazioni.
L'attivita' di controllo qualita' del software va' fatta secondo schemi prestabiliti, e
a seconda dei casi cio' puo' richiedere tempi lunghi, anche diversi mesi uomo di
attivita'.
Come spesso accade, per problemi di tempo, i test non vengono eseguiti, o si preferisce
sacrificarne l'accuratezza; gli schemi di controllo non vengono predisposti o seppure
esistenti, non vengono seguiti; il test in tali casi risulta approssimativo e
pericolosamente inaffidabile.
Le conseguenze di tali comportamenti possono essere il mancato funzionamento delle
procedure non testate o testate malamente, e nei casi peggiori il blocco piu' o meno
prolungato dell'agenzia o dell'intero istituto.
E' pertanto necessario disporre di una struttura di controllo qualita' del software
estranea all'ambiente dei progettisti e degli sviluppatori che adotti ed esegua schemi di
controllo (check-list) che testino le diverse funzionalita' del software al fine di
verificare il loro corretto funzionamento; tali schemi una volta predisposti potranno
essere facilmente modificati a seconda del mutare delle funzionalita' delle singole
procedure in test.
Una volta dotati di una struttura di controllo qualita' del software che non esegua
test improvvisati ma che si attenga a schemi di controllo ben definiti, e' ancora
possibile migliorare l'attivita' di controllo, riducendone spesso drasticamente i tempi di
esecuzione da mesi uomo a poche ore uomo, automatizzando tale attivita'; facendola cioe'
eseguire automaticamente ad un sistema hardware-software appositamente istruito che si
sostituisce all'operatore umano.
Esistono sul mercato sistemi anche abbastanza semplici che senza interferire con le
procedure da testare, sono in grado di apprendere le sequenze di test da eseguire e che
successivamente eseguono sempre allo stesso modo segnalando le eventuali difformita' di
comportamento riscontrate.
Man mano che il sistema apprende, memorizzando in un apposito database, sempre piu'
sequenze di test da eseguire, il sistema di controllo qualita' cresce e si velocizza.
Le sequenze memorizzate potranno essere successivamente adattate in maniera semplice e
veloce a nuove eventuali esigenze, incorporando nuove funzionalita' da testare e
eliminando quelle obsolete.
Questi sistemi posseggono anche delle funzionalita' di auto-apprendimento utili
soprattutto di fronte ad una migrazione delle funzionalita' da testare in un nuovo
ambiente; in tal caso, normalmente, si rende necessario l'adattamento globale al nuovo
ambiente dell'intero sistema automatizzato di controllo qualita' del software.
Il controllo qualita' del software evidenzia i suoi vantaggi oltre che nel caso citato
delle procedure di sportello bancario, anche in altri contesti.
Ad esempio, una software house che introduce sul mercato un suo nuovo prodotto e che
debba aggiornarlo o modificarlo continuamente per adeguarlo alle mutate esigenze della
clientela, potra' automatizzare il controllo qualita' di un tale prodotto.
Lo stesso dicasi nel caso del software che presiede al controllo di processi
industriali, cosi' come in generale per qualsiasi tipo di software destinato ad una
distribuzione significativa interna o esterna all'organizzazione che lo ha prodotto.
Cosa offre la nostra azienda per il controllo qualita' del software
La Telebit Consulting propone a banche, software house, grandi organizzazioni, a
tutti coloro che, in genere, gestiscono sistemi informativi e che hanno la necessita' di
manutenere o innovare le loro procedure, la possibilita' di progettare e realizzare una
struttura di controllo qualita' del software automatizzata, mettendo a loro disposizione
strumenti e consulenti adeguati al raggiungimento di un tale obiettivo.
|