SpeedyBoys - Parti

PopUp Icon

Il "Parti" è un programma gestionale sviluppato da più persone, nessuna delle quali era un programmatore di professione, che negli anni hanno scritto procedure e pezzi di programma senza un filo conduttore unico e senza seguire un’analisi funzionale. Il risultato è stato un insieme di procedure scollegate fra loro ed unite da un menu principale comune. La SpeedyBoys è un’agenzia di recapiti e spedizioni che opera a livello nazionale con una centrale operativa a Roma e gestisce le spedizioni tramite furgoni e moto. Borland VisualDB compilerIl programma gestisce le attività aziendali a 360 gradi (personale, spedizioni, abbonamenti, e contabilità) su una LAN privata basata su server Windows 2000© e con client Windows 98©, integrando Microsoft Office XP©, Borland DB2© ed appunto il Parti sviluppato internamente con Borland VisualDb© ed interfacciato con Microsoft Access©. Probabilmente questa è stata una delle esperienze di sviluppo più faticose degli ultimi anni (2018). La richiesta iniziale era di sostituire un server Windows 2000© ed un paio di client Windows 98©, ma in breve si è trasformata in una serie interminabile di modifiche e nuovi sviluppi al gestionale, il tutto dovuto all’impossibilità di rinnovare completamente l’infrastruttura hardware esistente. La grande difficoltà è derivata dal fatto che, essendo stato sviluppato internamente da persone che facevano altro di professione, non esisteva una documentazione del programma o del codice sorgente, senza commenti, in moduli distinti e soprattutto con un linguaggio superato da oltre vent’anni. Inoltre, per semplificare il tutto, mi sono trovato costretto a lavorare su macchine virtuali, perché sia il server che i client, ancora in esercizio, sono costituiti da hardware obsoleto per cui è quasi impossibile trovare i pezzi di ricambio. SpeedyBoys - Parti La prima esigenza è stata quella di realizzare una copia virtuale dell'ambiente operativo in cui andava eseguito il codice, compresi i driver per i lettori di barcode e le stampanti ad aghi; va da se che simulare periferiche fisiche in un ambiente virtuale obsoleto è stato un vero bagno di sangue. Successivamente installare in una macchina virtuale Windows 98SE© l'ambiente di sviluppo Borland VisualDb© per replicare virtualmente l'infrastruttura con annesso server Windows 2000© e tutte le unità mappate al suo interno, dal tutti i moduli costituenti il gestionale facevano espresso riferimento a directory e dischi condivisi non solo dal server, ma anche da alcuni dei client Win98©. A completare il quadro anche la difficoltà di trovare online un minimo di documentazione per un linguaggio di sviluppo superato da anni per realizzare software da eseguire in ambiente MS-DOS©. Alla fine la soluzione che ho trovato è stata quella di ricorrere a macchine virtuali VMWare©, versione vecchia anch'essa, Borland VisualDB Compiler© e lavorare sul codice senza la possibilità di eseguire un debug canonico di quello che avevo scritto. Tutto il lavoro è stato sviluppato in orario extra-ufficio fra le 19:00 e le 23:00, prima analizzando i moduli che costituiscono i vari programmi del gestionale, diviso in quattro elementi principali, ed inseguito riscrivendo il tutto con una logica più uniforme. Sarebbe stato molto più semplice e rapido riscrivere tutto il gestionale in modo uniforme sfruttando tecnologie più attuali appoggiate ad un server con database SQL ed un modello MVC in cui inserire nuove funzionalità quali la tracciabilità dei corrieri su Google Maps©, la comunicazione con gli stessi tramite App tipo Whatsapp© o Telegram©, soprattutto rinnovando la piattaforma con hardware di nuova generazione.