Casi di studio dai nostri progetti

I nostri progetti mostrano meglio di ogni altra cosa come lavoriamo. Qui trova una selezione di casi di studio dai settori software house, sensoristica, costruzione di macchine, CAD e BIM, tecnica di laboratorio e di misura e ricerca – ciascuno con situazione iniziale, approccio, soluzione e risultato. Mostrano come chiariamo i requisiti, rendiamo visibili i rischi fin dall'inizio e forniamo software che regge alla prova dell'uso quotidiano dei nostri clienti. I nomi dei nostri clienti li citiamo solo se sono pubblici.

Ingranaggi che si incastrano tra loro come simbolo di un software cresciuto nel tempo

Subentrati quando il team di sviluppo è venuto a mancare

Settore: software · Cliente: azienda di software

Situazione iniziale: In un'azienda di software era venuto a mancare l'intero team di sviluppo. I clienti dell'azienda continuavano ad aspettarsi assistenza, correzioni degli errori e nuove funzioni.

Sfida: Documentazione e commenti nel codice sorgente erano quasi inesistenti, e in azienda non c'era più il know-how sulla struttura e sulle relazioni interne del software.

Approccio:

  1. Subentrare a breve termine: Siamo subentrati e ci siamo fatti carico dell'assistenza continuativa del software.
  2. Analizzare e familiarizzare: Abbiamo esaminato codice e strutture dati, ricostruito le relazioni e documentato il know-how.
  3. Proseguire senza interruzioni: Parallelamente abbiamo assistito i clienti, corretto gli errori e continuato a sviluppare il software – senza interruzioni per gli utenti.

Risultato: Tutti i clienti hanno potuto continuare a essere assistiti, e il software ha continuato a crescere. Per il titolare ne è valsa la pena: alla successiva vendita della sua azienda a un produttore più grande, il software curato e ulteriormente sviluppato ha contribuito a un netto aumento di valore.

Servizi: analisi del software, presa in carico senza documentazione, supporto, manutenzione e sviluppo ulteriore

Schema di uno scanner laser che misura un pacco su un nastro trasportatore

Calibrazione di scanner laser a specchio poligonale: 3 passaggi invece di 5

Settore: sensoristica · Cliente: grande produttore internazionale di sensori

Situazione iniziale: Un fornitore esterno aveva interrotto il lavoro sul software di calibrazione per scanner laser con specchio poligonale rotante. Dovevamo subentrare noi.

Sfida: Il codice sorgente era difficilmente leggibile e in parte offuscato. La calibrazione consisteva in cinque passaggi che installatori di sistema, integratori e il supporto devono eseguire in tutto il mondo a ogni installazione.

Approccio:

  1. Analisi: Abbiamo esaminato passo dopo passo il codice esistente.
  2. Modello UML: Abbiamo rappresentato la struttura statica e i processi dinamici come architettura UML. È emerso subito che diversi passaggi di calibrazione si sovrapponevano.
  3. Nuova messa a punto matematica: Abbiamo coordinato meglio i passaggi dal punto di vista del calcolo ed eliminato completamente quelli superflui.

Risultato: La calibrazione richiede ormai solo 3 passaggi invece di 5. Poiché viene eseguita in tutto il mondo in moltissime installazioni, questo fa risparmiare diverse migliaia di ore di lavoro all'anno – presso il cliente, i suoi integratori e nel supporto.

Servizi: analisi del codice, UML (modelli statici e dinamici), matematica della calibrazione, sviluppo ulteriore

Progetto di un ambiente che passa dal disegno CAD alla vista finita

Sistema CAD proprietario: da 12,5 a 15 volte più veloce

Settore: CAD / progettazione · Cliente: azienda con un proprio sistema CAD e un proprio reparto software

Situazione iniziale: Il cliente aveva costruito da sé il proprio sistema CAD e lo aveva ampliato negli anni con moltissime funzioni. Con i progetti più grandi si attendevano ormai diversi minuti per una reazione – il sistema era praticamente bloccato.

Sfida: L'obiettivo del cliente: raddoppiare la velocità. Già solo questo per lui valeva una somma a cinque cifre nella fascia alta.

Approccio:

  1. Analisi e documento di concetto: Abbiamo esaminato il software e raccolto i punti di intervento in un documento di concetto. Arrivati a quasi 50 punti abbiamo smesso di contare.
  2. Primi punti realizzati da noi: Abbiamo attuato direttamente le misure più efficaci.
  3. Il team del cliente reso autonomo: In diverse riunioni abbiamo guidato il reparto software del cliente nell'attuazione autonoma degli altri punti.
  4. Calcolo in background: I calcoli onerosi ora vengono eseguiti in background, così per l'utente non ci sono più tempi di attesa.

Risultato: Invece del raddoppio sperato, oggi il sistema è da 12,5 a 15 volte più veloce (misurato sugli stati intermedi). Il programma è di nuovo fluido da usare, e dove i calcoli avvengono in background l'utente non percepisce più alcun ritardo.

Servizi: analisi delle prestazioni, documento di concetto, realizzazione, affiancamento del team del cliente, calcolo in background

Dati aziendali sotto forma di grafici su un tablet

Emergenza ad agosto: programma di fatturazione salvato in un fine settimana

Settore: amministrazione e contabilità · Cliente: cliente di lunga data con un proprio programma di fatturazione

Situazione iniziale: Per questo cliente avevamo sviluppato, tra l'altro, la fatturazione elettronica e la rappresentazione grafica dei suoi dati aziendali. Poi è arrivato un aggiornamento di sicurezza di Windows – e da quel momento il programma di fatturazione non funzionava più.

Sfida: Senza programma, niente fatture. Il cliente era in seria difficoltà, ed era agosto: periodo di ferie, con il team già ridotto.

Approccio:

  1. Reazione immediata: Abbiamo richiamato subito e messo insieme un team.
  2. Lavoro per tutto il fine settimana: Nonostante il periodo di ferie, nel fine settimana abbiamo sviluppato e testato una soluzione.
  3. Installata il lunedì: L'attività è proseguita senza intoppi, il cliente ha potuto di nuovo emettere fatture.
  4. Analisi a posteriori e miglioramenti: Insieme abbiamo discusso l'accaduto e reso il sistema più robusto con ulteriori adattamenti.

Risultato: Nessuna giornata di lavoro persa, nessun incasso rimasto in sospeso. Da allora da questo cliente sentiamo soprattutto una cosa: niente. A quanto pare è completamente impegnato a scrivere fatture.

Servizi: supporto d'emergenza, analisi degli errori dopo un aggiornamento di Windows, intervento nel fine settimana, interventi correttivi

Riconoscimento dei volti con una telecamera

Termocamere: trovare i volti – su hardware limitato

Settore: tecnologia delle telecamere / sensoristica · Cliente: produttore di termocamere a infrarossi

Situazione iniziale: Il produttore voleva misurare con le sue termocamere la temperatura corporea delle persone. Per farlo, la telecamera deve prima riconoscere dove si trovano i volti nell'immagine – si tratta della posizione dei volti, non dell'identità delle persone.

Sfida: In capannoni e spazi aperti molte altre fonti di calore, ad esempio le lampade, disturbano il riconoscimento. Inoltre il software gira su un sistema embedded con una potenza di calcolo molto limitata – lì i metodi di IA ad alta intensità di calcolo non erano un'opzione.

Approccio:

  1. Metodi verificati: Abbiamo esaminato diversi algoritmi e reti neurali in termini di velocità e qualità del riconoscimento.
  2. Sviluppati metodi propri e snelli: Distinguono in modo affidabile i volti da lampade e altre fonti di calore e funzionano in tempo reale sull'hardware embedded.
  3. Consegna: Il cliente ha ricevuto la soluzione con un'ampia documentazione e il codice per lo sviluppo ulteriore.

Risultato: La soluzione era pronta circa nove mesi prima dell'inizio della pandemia di coronavirus. Quando in tutto il mondo era richiesta la misurazione della febbre, il nostro cliente era pronto: le sue telecamere sono state impiegate in aeroporti, ospedali e molte altre strutture in tutto il mondo, e la domanda gli ha portato un netto aumento del fatturato.

Servizi: elaborazione delle immagini, sviluppo di algoritmi per sistemi embedded, analisi di metodi, documentazione e consegna

Macchina di produzione industriale con controllo software

Software di controllo per una macchina di produzione

Settore: costruzione di macchine · Cliente: costruttore di macchine leader a livello internazionale · Durata: circa un anno · Team: sei sviluppatori esperti

Situazione iniziale: Una macchina di produzione complessa trasporta i prodotti, tramite un'unità di trasporto, attraverso diversi moduli. Questi lavorano, marcano e controllano i prodotti con la massima precisione. Sono coinvolti laser, scanner, telecamere, stampanti di etichette e unità di programmazione dei chip – ciascun dispositivo con una propria interfaccia e un proprio comportamento temporale.

Sfida: A seconda del tipo di prodotto e della velocità di produzione, ogni modulo deve eseguire funzioni, controlli e sequenze diversi – in modo affidabile e in tempo reale, senza rallentare il ciclo della macchina.

Soluzione: Abbiamo sviluppato un software modulare in tempo reale che gira su uno speciale sistema operativo in tempo reale:

  • Ogni dispositivo dispone di un proprio modulo software che si adatta al tipo di prodotto e alla velocità.
  • La comunicazione avviene tramite PLC (Beckhoff TwinCAT), TCP/IP e OPC UA.
  • Un modulo di controllo centrale coordina tutti i processi e garantisce la perfetta interazione dei componenti.
  • Un database collegato gestisce la configurazione e i dati di produzione.
  • Un'interfaccia chiara sul terminale centrale mostra lo stato di ogni prodotto, eventuali errori e tutte le impostazioni.

Approccio: Ci siamo occupati dell'intero processo di sviluppo – dalla gestione dei requisiti e dall'architettura software, passando per la realizzazione e la messa in servizio, fino ai test e alla garanzia della qualità. Il lavoro si è svolto in modo agile con Scrum, il coordinamento tramite Jira e Confluence.

Risultato: Un processo di produzione stabile e monitorato senza interruzioni. L'operatore ha sempre una visione d'insieme, e l'architettura modulare con un modulo software dedicato per ogni dispositivo mantiene il sistema chiaro ed estendibile.

Tecnologia: C#, C++, WPF, PLC (Beckhoff TwinCAT), OPC UA, TCP/IP, database, Azure DevOps, Jira, Confluence, Scrum

Maggiori informazioni sul progetto

Applicativo AutoCAD per l'edilizia e l'ingegneria civile

Modernizzazione di un applicativo AutoCAD per l'ingegneria civile

Settore: CAD / ingegneria civile · Cliente: grande azienda di software (fornitore CAD)

Situazione iniziale: Un applicativo per AutoCAD e AutoCAD Civil cresciuto nell'arco di oltre dodici anni, con diverse centinaia di migliaia di righe di codice in C++, COM, MFC e ObjectARX. Ogni nuova versione di AutoCAD comportava elevati costi di migrazione.

Sfida: Un porting di queste dimensioni è un investimento. Il cliente aveva bisogno di una solida base decisionale prima di approvarlo.

Approccio:

  1. Studio di fattibilità: Abbiamo analizzato architettura e codice e pianificato il passaggio all'AutoCAD .NET API.
  2. Analisi di redditività: Ha mostrato come si sviluppa negli anni l'impegno con C++ e da quando il porting in un linguaggio moderno diventa conveniente.
  3. Porting: L'interfaccia utente con menu principale e contestuale, barra multifunzione, finestra delle proprietà, comandi e dialoghi, così come il nucleo CAD con entità, reattori e Xdata – in C# e nell'AutoCAD .NET API, eseguibile anche in BricsCAD.
  4. Formazione: In un corso di formazione di tre giorni abbiamo preparato il team di sviluppo del cliente all'AutoCAD .NET API con C#. In precedenza avevamo già formato il team in ObjectARX e C++.

Risultato: Già durante il porting il codice è diventato notevolmente più breve e semplice. Il team di sviluppo del cliente è pronto per l'ulteriore sviluppo in C# e nell'AutoCAD .NET API, e l'applicativo funziona anche in BricsCAD.

Tecnologia: AutoCAD, AutoCAD Civil, BricsCAD, ObjectARX, AutoCAD .NET API, C#, C++, MFC, COM, UML

Maggiori informazioni sul progetto

Add-in Revit per la progettazione di laboratori

Add-in Revit per l'esportazione dei dati di progetto dei laboratori

Settore: tecnica di laboratorio / BIM · Cliente: fornitore leader mondiale di tecnica di laboratorio

Situazione iniziale: I laboratori vengono progettati come progetti Revit. Vendite e progettazione ne ricavano in modo mirato determinati dati – ad esempio famiglie e categorie di apparecchiature di laboratorio speciali –, spesso da molti progetti contemporaneamente.

Sfida: I dati dovevano essere disponibili in formati e strutture diversi, a seconda del sistema o del cliente che li elabora successivamente.

Soluzione: Un add-in Revit su misura analizza la composizione e la struttura dei laboratori ed esporta in modo mirato i tipi desiderati:

  • Formati flessibili: Output in XML, JSON, PDF e altri formati.
  • Struttura dei dati personalizzabile: La struttura dei file XML e JSON può essere adattata ai requisiti del cliente.
  • Automazione: Elabora sia singoli file RVT aperti sia intere directory con sottocartelle – per singoli progetti e grandi archivi di dati.
  • Vendite: Insieme a un simulatore, i requisiti dei clienti per la progettazione del laboratorio possono essere definiti, rappresentati e presentati.

Risultato: Il coordinamento tra vendite, progettazione e clienti è diventato molto più semplice, l'intero processo di vendita e progettazione più efficiente.

Tecnologia: Revit API, C#, WPF

Maggiori informazioni sul progetto

Software per strumenti di misura dopo la modernizzazione

Modernizzazione di un software per strumenti di misura: da Delphi a C#

Settore: tecnica di misura · Cliente: produttore di strumenti di misura · Team: dieci persone

Situazione iniziale: Un software Delphi sviluppato internamente e in uso da decenni doveva essere modernizzato e portato da Delphi a una tecnologia moderna.

Sfida: Prima dello sviluppo occorreva stabilire quali fossero le tecnologie giuste e come il team del cliente potesse accompagnare il cambiamento.

Approccio:

  1. Consulenza e pianificazione: Abbiamo messo a confronto obiettivi e possibilità delle nuove tecnologie.
  2. Prototipi: Hanno mostrato l'aspetto delle possibili soluzioni, affinché il cliente potesse decidere insieme a noi.
  3. Formazione in sede: L'intero team del cliente è stato introdotto alle nuove tecnologie.
  4. Porting agile: Il software viene portato in C# e WPF da un team di progetto di dieci persone.

Risultato: Il nuovo software è già in uso internamente presso il cliente e convince sia i tecnici di misura sia le vendite. Al termine dei lavori sarà disponibile per tutti i clienti finali.

Tecnologia: C#, WPF, Delphi, MariaDB, Entity Framework, Scrum, Jira, Git

Maggiori informazioni sul progetto

Dispositivo di lettura per PCR digitale in laboratorio

Software per un dispositivo di lettura per PCR digitale

Settore: tecnica di laboratorio e tecnologia medica · Contesto: progetto collaborativo BMBF (Ministero federale tedesco dell'Istruzione e della Ricerca) FREEDOM (FKZ 13N15287), cinque partner, durata tre anni a partire da febbraio 2021

Situazione iniziale: Un dispositivo innovativo deve analizzare campioni alla ricerca di determinate sequenze di DNA in modo più rapido, più semplice e con maggiore complessità – ad esempio campioni di sangue alla ricerca di DNA tumorale o alimenti come il mais alla ricerca di componenti geneticamente modificati.

Sfida: Controllo del dispositivo, acquisizione di immagini e valutazione scientifica dovevano confluire in un'unica applicazione – in coordinamento tra una fondazione di ricerca, un'università e tre aziende industriali.

Il nostro contributo: Nel sottoprogetto «Ideazione e implementazione dell'architettura software» Cadida è stata responsabile di:

  • architettura software, modelli di dati e interfacce
  • interfaccia utente e controllo di telecamera e LED
  • acquisizione di immagini, analisi delle immagini, analisi dei dati e presentazione dei risultati
  • user story con test automatizzati che garantiscono i requisiti nel dettaglio

Risultato: Un software che unisce in un'unica applicazione controllo del dispositivo, elaborazione delle immagini e valutazione – sviluppato in collaborazione e garantito in modo tracciabile da test automatizzati.

Tecnologia: C#, WPF, Entity Framework, OpenCV, Scrum, Jira, Git

Maggiori informazioni sul progetto

HIRAC: sedia a rotelle con braccio robotico ed eye tracking

HIRAC: sistema di assistenza basato sull'IA per sedie a rotelle

Settore: ricerca / robotica · Contesto: finanziato nell'ambito del programma ZIM (Programma centrale per l'innovazione delle PMI), insieme alla Hochschule Offenburg

Situazione iniziale: Le persone con paralisi totale e i pazienti con sindrome locked-in non riescono a compiere da soli nemmeno azioni semplici come afferrare un bicchiere d'acqua. I dispositivi a comando vocale sono di scarso aiuto a causa della limitata capacità di parlare.

Sfida: Il sistema deve collaborare con sedie a rotelle, bracci robotici, pinze e occhiali per eye tracking disponibili in commercio di diversi produttori e poterli controllare.

Soluzione: HIRAC (Hardware Independent Robotic Assistance Controller) è un middleware indipendente dall'hardware per attività di presa robotica:

  • Un'IA integra controllo tramite eye tracking, elaborazione delle immagini, feedback dei sensori e manipolazione degli oggetti.
  • Il sistema complessivo unisce IA, controllo della sedia a rotelle tramite eye tracking, braccio di presa sulla sedia a rotelle e output vocale.

Cadida è responsabile della direzione del progetto e dello sviluppo software, insieme alla Hochschule Offenburg.

Obiettivo: Le persone interessate devono poter svolgere autonomamente le attività quotidiane, alleggerendo il carico del personale di assistenza.

Tecnologia: Python, ROS2, deep learning, reinforcement learning, Linux, interfaccia web

Maggiori informazioni sul progetto

Cosa hanno in comune i nostri progetti

  • Chiarezza prima della prima riga di codice: Studi di fattibilità, prototipi e analisi di redditività rendono visibili i rischi fin dall'inizio.
  • Agili e trasparenti: Sviluppiamo a piccoli passi con Scrum – Lei vede regolarmente lo stato di avanzamento e contribuisce a orientare il progetto.
  • Qualità fin dall'inizio: Test automatizzati e garanzia della qualità accompagnano ogni progetto.
  • Il know-how resta a Lei: Su richiesta formiamo il Suo team, affinché possa sviluppare ulteriormente il software in autonomia.

Il Suo progetto

Si trova di fronte a un compito simile? Trova altri esempi tra i nostri progetti e le nostre referenze. Come si svolge una collaborazione con noi lo può leggere alla voce Collaborazione. Non esiti a contattarci – La consigliamo senza impegno: Contattaci.

CONTACT

Seleziona la tua lingua

Primo colloquiofissare oraPrimo colloquiofissare ora