Aggiornamento del Web Service SOAP per Poste Italiane: firma digitale con dispositivi Wacom

20/12/2021
2 minutes
una mano con una penna che scrive su un tablet

Poste Italiane, leader nei servizi postali e finanziari in Italia, ha richiesto un intervento tecnico per migliorare un Web Service SOAP essenziale per la firma digitale di documenti PDF tramite dispositivi Wacom presenti nei loro uffici postali.

Tabella dei contenuti

Obiettivi del cliente

Il cliente necessitava di un aggiornamento del Web Service SOAP per incrementare l'efficienza e la sicurezza del processo di firma digitale. Purtroppo, non avendo ricevuto il codice sorgente della versione in quel momento online, siamo dovuti partire da una versione precedente del software. Una sfida significativa considerando che il codice sorgente in nostro possesso mancava di funzionalità già presenti nella versione online sui server.

Soluzione proposta

Analisi delle esigenze e pianificazione

Il team di Major Bit Consulting, azienda in cui ero in quel momento, era composto da tre sviluppatori (compreso me) e un Project Manager. Abbiamo quindi proposto un piano dettagliato che includeva:

  • Deoffuscazione del codice compilato per ricostruire il codice sorgente.
  • Analisi e mappatura delle classi e delle funzionalità esistenti.
  • Identificazione e risoluzione dei bug principali.
  • Adattamento del codice deoffuscato per allinearlo al codice che avevamo a disposizione.
  • Implementazione delle nuove funzionalità richieste dal cliente.

Fasi del progetto

Deoffuscazione del codice
  • Utilizzo di strumenti specializzati per decompilare il codice esistente, fortunatamente se ne trovano diversi su GitHub.
  • Analisi approfondita del codice decompilato per comprendere la logica esistente e garantire l'integrità del sistema. E qui nessun tool può aiutarti se non il tuo cervello.
Mappatura delle classi e funzionalità
  • Documentazione dettagliata delle classi e delle loro interazioni.
  • Identificazione delle aree critiche e pianificazione degli aggiornamenti necessari.
Sviluppo e testing
  • Implementazione delle nuove funzionalità richieste.
  • Esecuzione di test rigorosi per garantire la compatibilità e la stabilità del Web Service.
Revisione e consegna
  • Revisione finale con il cliente per assicurare che tutte le esigenze fossero soddisfatte.
  • Consegna del progetto e del codice sorgente, garantendo trasparenza e tracciabilità. Facilitando sopratutto il lavoro per i futuri developer che dovranno lavorarci.

Tecnologie utilizzate

  • C#: Linguaggio di programmazione principale per lo sviluppo del Web Service.
  • SOAP: Protocollo utilizzato per la comunicazione con il Web Service.
  • Visual Studio: Ambiente di sviluppo integrato (IDE) utilizzato per la decompilazione e lo sviluppo del codice C#.
  • de4dot: Strumento di deoffuscazione del codice.

Risultati e benefici

Il progetto ha migliorato l'efficienza del Web Service, rendendo la gestione della firma digitale più sicura e affidabile. Esser riusciti a ristabilire una versione del codice sorgente solida e intuitiva ha soddisfatto le aspettative del cliente, considerando le condizioni che abbiamo dovuto affrontare. Nonostante le sfide iniziali, il progetto è stato completato nei tempi previsti, altra nostra nota di merito di cui andiamo molto fieri.

Conclusione

La manutenzione e l'aggiornamento del Web Service SOAP per Poste Italiane hanno sottolineato quanto l'importanza di un refactoring su alcuni software, sopratutto i più datati, sia a volte obbligatorio per continuare a mantenere il software attivo. Il successo del progetto ha rafforzato la collaborazione tra Major Bit Consulting e Poste Italiane, aprendo la strada a ulteriori opportunità di miglioramento e innovazione per i loro servizi digitali.