
Da ECASTE, non sviluppiamo solo applicazioni partendo da un foglio bianco. Una parte importante della nostra attività consiste nel riprendere progetti esistenti: software sviluppati da un precedente fornitore, da un freelance che ha cambiato strada o da un team interno ormai sciolto, e dai quali l'azienda dipende ogni giorno. Dopo la piattaforma Reducbox qualche anno fa, e più recentemente upmates, abbiamo appena firmato un nuovo contratto di ripresa con DPA-Europe.
DPA-Europe, leader francese del ricondizionamento Apple
DPA-Europe, conosciuto dal grande pubblico con il marchio Reborn, è il leader francese del ricondizionamento di telefonia Apple. iPhone naturalmente, ma anche Mac, iPad e AirPods: ogni dispositivo che entra nei loro laboratori viene diagnosticato, riparato, testato, classificato e rimesso sul mercato. Un'attività industriale esigente, con volumi importanti e forti vincoli di tracciabilità.
Per gestire questa attività, DPA-Europe si affida a un software gestionale sviluppato su misura, costruito sul framework PHP Laravel. Gestione dei flussi di dispositivi, diagnosi, gradi, stock, vendite: è la colonna vertebrale dell'azienda. E come spesso accade con gli strumenti gestionali, non si tratta di un software che si può fermare, sostituire o riscrivere da un giorno all'altro.
DPA-Europe ha appena affidato a ECASTE la missione di mantenere e far evolvere questo software. Una vera sfida: la ripresa avviene senza documentazione tecnica.
Riprendere un progetto senza documentazione: un esercizio a parte
Riprendere il codice di un terzo è molto diverso dallo sviluppare il proprio progetto. Bisogna capire scelte architetturali che non si sono fatte, convenzioni a volte implicite, regole di business codificate « a mano » in punti inaspettati. Senza documentazione, ogni funzionalità va riscoperta, ogni dipendenza verificata, ogni configurazione server ritrovata.
È proprio qui che si gioca il valore di un fornitore esperto. Una ripresa condotta male significa rischiare di rompere una funzionalità critica credendo di correggerne un'altra, di perdere dati o di bloccare la produzione. Una ripresa condotta bene, al contrario, è la garanzia di mettere in sicurezza un asset software da cui dipende tutta l'azienda, e di restituirgli una traiettoria di evoluzione.
Il nostro metodo di ripresa, passo dopo passo
Nel corso delle riprese (Reducbox, upmates e oggi DPA-Europe), abbiamo formalizzato un approccio metodico e senza sorprese per il cliente:
- Recupero e messa in sicurezza dei sorgenti: il primo passo consiste nel trasferire l'intero codice sorgente, gli script e le configurazioni sul nostro GitLab sicuro. Il codice è versionato, salvato e accessibile solo alle persone autorizzate. Nulla dipende più da un unico server o da una postazione di lavoro.
- Reverse engineering: senza documentazione, ricostruiamo la mappa del software partendo dal codice stesso. Modelli di dati, route, controller, attività pianificate, integrazioni esterne, job asincroni: documentiamo man mano ciò che scopriamo, perché la conoscenza non resti mai più in una sola testa.
- Deploy sulla nostra infrastruttura di test: ridistribuiamo il progetto completo sulla nostra infrastruttura, con un database di test, per verificare di padroneggiare l'intera catena — dall'installazione delle dipendenze alla messa online. È il miglior test possibile della nostra comprensione del progetto.
- Passaggio della pre-produzione e della produzione: una volta padroneggiato il progetto, spostiamo i server di pre-produzione e poi di produzione sulla nostra infrastruttura GitLab, con deploy automatizzati e riproducibili. Ogni messa online diventa tracciabile, testabile e reversibile.
Solo al termine di queste tappe inizia davvero la fase di evoluzione: correzioni, nuove funzionalità, ottimizzazioni. Su una base finalmente documentata e con un processo di consegna affidabile.
Cosa ci hanno insegnato le riprese precedenti
La ripresa di Reducbox, piattaforma di buoni sconto, ci ha insegnato l'importanza di mettere prima in sicurezza, poi far evolvere. Quella di upmates ha confermato che un audit onesto del codice, presentato al cliente senza gergo tecnico, vale più di una riscrittura completa promessa troppo in fretta. In entrambi i casi, la chiave è stata la stessa: non rompere nulla di ciò che funziona, preparando al contempo il terreno per ciò che deve cambiare.
« Riprendere un progetto significa accettare di ereditare le scelte degli altri. Il nostro ruolo non è giudicare il codice esistente, ma capirlo, metterlo in sicurezza e dargli un futuro. Su un software gestionale come quello di DPA-Europe, la continuità del servizio viene prima di tutto. » — Emmanuel Castellani, fondatore di ECASTE
Perché affidare la ripresa del vostro software a ECASTE
Da oltre 16 anni, ECASTE sviluppa e mantiene applicazioni web e mobile per aziende di ogni dimensione, nelle Alpi Marittime e oltre. Padroneggiamo le tecnologie che si trovano più spesso nei software gestionali esistenti: PHP e Laravel, Vue.js, Node.js, oltre allo sviluppo nativo iOS e Android. E soprattutto, sappiamo che un software ha valore solo se continua a funzionare.
- Un'infrastruttura GitLab sicura e deploy automatizzati
- Una documentazione ricostruita durante la ripresa e consegnata al cliente
- Un interlocutore unico, disponibile, con sede a Nizza
- Un approccio progressivo: mettere in sicurezza, capire, poi far evolvere
Conclusione
La ripresa del software gestionale di DPA-Europe illustra ciò che è diventata una parte essenziale del nostro mestiere: dare un futuro a software esistenti, spesso critici, a volte orfani. Reverse engineering, messa in sicurezza dei sorgenti, ridistribuzione, passaggio dei server: ogni tappa è condotta con la stessa esigenza che se avessimo scritto noi stessi il codice.
Il vostro fornitore non è più disponibile? Il vostro software gestionale non è più mantenuto? Contattateci: studiamo il vostro progetto e vi proponiamo un piano di ripresa chiaro, senza gergo e senza sorprese.
