Case History: Applicazione Desktop Windows/macOS per configurazione di sistemi di protezione industriale basati su tecnologia radar

[Voti: 7    Media Voto: 4.4/5]

Case History: Applicazione Desktop Windows/macOS per configurazione di sistemi di protezione industriale basati su tecnologia radar

Per startup innovativa operante nel settore della sicurezza, personale e industriale, basata su tecnologia radar, abbiamo sviluppato un’applicazione desktop per sistemi operativi Windows e macOs per permettere all’installatore di configurare un set di sensori posti a guardia di un macchinario industriale.

Questi sensori rilevando entro certe distanze la presenza di persone e possono decidere, in base ai parametri di configurazione impostati, di interrompere l’attività delle macchine per salvaguardare l’incolumità dei lavoratori.

Immagini

Funzionalità sviluppate

Il software che abbiamo sviluppato su progetto grafico fornito dal committente, permette di dimensionare questi sistemi di protezione sulla base di parametri come l’area da proteggere, la lunghezza della distanza di allarme, la lunghezza della distanza di preallarme.

Il software permette di ottenere una configurazione lineare dei sensori oppure di disporli liberamente per riuscire a coprire delle aree di qualsiasi forma.

Si tratta di fatto di un piccolo CAD verticale (specifico per questa attività) in grado, da un lato, di fornire all’installatore un feedback visivo e dall’altro di interfacciarsi con l’hardware dei sensori per impostare i parametri di configurazione selezionati.

L’applicazione sviluppata è stata inoltre confezionata con il relativo installer per Windows e macOS.

Tecnologie

Da un punto di vista tecnico, dovendo essere multipiattaforma, abbiamo deciso di realizzare questa applicazione con Electron. In questo modo abbiamo scritto il codice dell’applicazione una sola volta con conseguente risparmio di tempo e denaro.

Per quanto riguarda invece la parte di comunicazione con l’hardware ci siamo appoggiati ad una CLI (command line interface) sviluppata internamente dal committente, la quale si fa carico di tradurre i comandi provenienti dalla GUI nei protocolli di comunicazione con l’hardware.

Approccio vincente

Questo approccio di lavoro si è dimostrato molto efficiente per i seguenti motivi:

  1. Tutto il know-how innovativo del cliente è rimasto protetto: noi di fatto abbiamo sviluppato un’interfaccia che invia dei JSON a una CLI, ma non sappiamo nulla circa l’hardware e le tecnologie impiegate per realizzare il prodotto del cliente. Di conseguenza non c’è stato bisogno di firmare NDA o accordi vincolanti.
  2. Abbiamo potuto sviluppare la nostra parte in parallelo a quella sviluppata internamente al committente senza dover essere fisicamente presenti presso il committente e senza dover testare quanto sviluppato sull’hardware reale: una volta definito il protocollo di comunicazione tra la GUI e la CLI ci siamo creati una versione stub della CLI per simulare la comunicazione con la GUI. I test effettivi li ha fatti il committente sull’hardware sostituendo al nostro stub la CLI reale. Di fatto l’hardware non l’abbiamo nemmeno visto.
  3. Il committente, oltre a fornirci le specifiche, ci ha fornito anche i mockup (prototipi) dell’interfaccia utente realizzati con Adobe XD e in questo modo ha ottenuto esattamente l’aspetto estetico desiderato. Questo è molto importante poiché di fatto anche l’interfaccia grafica del software di configurazione del sistema è un elemento di marketing. Se è moderna e accattivante contribuisce al successo commerciale del prodotto.

In definitiva, il tipo di approccio scelto e gli strumenti utilizzati, hanno reso lo sviluppo di questo progetto un processo liscio e senza intoppi: abbiamo raggiunto la deadline concordata senza correre e con un prodotto rifinito e di sicuro impatto.

L’esperienza è stata talmente positiva che abbiamo deciso, per i progetti di questo tipo (sviluppo di una interfaccia untente multipiattaforma che si deve interfacciare con dell’hardware proprietario) di utilizzare unicamente questo approccio che è basato sulla definizione preventiva dell’interfaccia utente attraverso mockup e della definizione preventiva del protocollo di comunicazione tra GUI e la CLI responsabile di interfacciarsi con l’hardware e sviluppata internamente dal committente.

Quanto costa?

Il costo per lo sviluppo di una applicazione desktop multipiattaforma comprensiva di installer con caratteristiche simili a quelle descritte si attesta intorno ai 15’000 €.

Sei alla ricerca di una software house a cui commissionare lo sviluppo di un’applicazione desktop multipiattaforma? Chiedici un preventivo

Garda Informatica

Garda Informatica

Garda Informatica sviluppa software su misura nella forma di Web Application, App Ibride per iOS/Android/Windows Phone, Crawler Web, Gestionali Web o semplici Connettori per l'integrazione tra software di terze parti.
Garda Informatica