Perry
Electric
Per Perry Electric abbiamo realizzato un’app mobile per la gestione domotica della casa per clienti e tecnici specializzati.
Servizi:
Sviluppo App; UX/UI Design;
Tecnologie:
Flutter, MSSQL, C# .NET 7.
2022 – In corso
Descrizione progetto
Perry Electric è un’azienda italiana con sede in provincia di Como e filiali in diversi paesi europei. Da oltre 50 anni, è attiva nel settore elettrico ed elettronico, progettando e producendo dispositivi e sistemi per il controllo dell’energia, temperatura, tempo e sicurezza, in conformità alle normative europee. Nel gennaio 2022, Perry Electric ha scelto Purplesoft per sviluppare ex-novo la loro applicazione mobile C.DOM una soluzione che consente la gestione di impianti di automazione per la casa, come termostati e termoregolatori. L’app era stata sviluppata dal proprio team interno purtroppo non esperto nello sviluppo di app, infatti presentava molte lacune, da qui infatti la decisione di rivolgersi ad un team esterno.
UX/UI Design
Il nostro processo di design è iniziato con l’intervista agli stakeholder per comprendere nello specifico le richieste e gli intenti del cliente; siamo poi passati all’analisi euristica per individuare le problematiche dell’applicazione esistente; in generale, abbiamo riscontrato carenze in termini di organizzazione, intuitività, fluidità e coerenza. Abbiamo notato la presenza di informazioni e funzionalità raramente utili e difficoltà nell’esecuzione delle azioni principali, oltre ad azioni e parole non sempre associate allo stesso significato, rendendo la user experience molto confusa e poco piacevole.
Dopo aver individuato queste problematiche siamo passati all’analisi dei competitor per confrontare le loro scelte di design e individuare sia i punti di forza che quelli di debolezza, siamo poi passati alla creazione dei wireframe, per rappresentare lo scheletro della nuova applicazione.
Successivamente, abbiamo sviluppato il design system, step che consiste nel definire le linee guida per gestire il design su larga scala, con lo scopo di rendere visivamente coerenti tutte le schermate dell’applicazione e nel creare la libreria dei componenti visuali (bottoni, icone, etc.). In questa fase abbiamo anche ripensato la palette cromatica per rendere più attraente la nuova applicazione, senza però distaccarci dal branding già esistente.
Infine, siamo passati all’usabilty test, step fondamentale per individuare eventuali problematiche del nuovo flusso; con i dati raccolti abbiamo migliorato la nuova UX, fatto gli ultimi ritocchi alla UI e finalmente realizzato il layout definitivo dell’interfaccia utente della nuova applicazione, pronto per essere consegnato e implementato dai nostri frontend developer.
Sviluppo App Mobile
La soluzione che abbiamo sviluppato è composta dai seguenti elementi:
Database relazionale MSSQL: Abbiamo progettato questo database per memorizzare e gestire tutte le informazioni relative ai dispositivi IoT e alle loro interazioni con l’applicazione. Il database MSSQL, grazie alla sua struttura ottimizzata e alle sue funzionalità avanzate, garantisce un accesso rapido e sicuro ai dati, consentendo una gestione efficiente delle informazioni e un’esperienza utente fluida nell’applicazione.
Server socket TCP SSL: Questi server hanno un ruolo cruciale nella comunicazione con i dispositivi IoT, permettendo l’invio di comandi e la raccolta di dati. Utilizzando C# .NET 7 e i nostri Purple.Sdk, siamo riusciti a implementare una gestione multithread delle connessioni, aumentando notevolmente la capacità di gestione delle connessioni concorrenti, fino a supportare oltre 10.000 connessioni per ogni istanza del server. Questo approccio migliora l’efficienza e la scalabilità della soluzione, consentendo di gestire un elevato numero di dispositivi IoT in modo rapido ed efficace.
Web API REST: Sviluppate per migliorare l’interazione tra i vari client e i dispositivi, tenendo conto delle limitazioni di trasmissione dei dispositivi IoT Perry in termini di lunghezza delle risposte TCP (massimo 600 byte). Realizzate in C# con il framework .NET 7, queste API consentono di combinare più richieste e ottimizzare la comunicazione grazie all’utilizzo di cache e strategie di ottimizzazione. Le Web API si interfacciano con il server socket TCP, che si occupa di inoltrare il traffico al dispositivo appropriato, garantendo un funzionamento efficiente e fluido del sistema.
App mobile: Per lo sviluppo dell’applicazione mobile, abbiamo utilizzato il framework Flutter e il linguaggio di programmazione Dart. Questa scelta ci ha permesso di creare un’app performante e reattiva, compatibile sia con dispositivi Android che iOS, garantendo un’ottima esperienza utente e un’interfaccia grafica coerente con il design system definito nella fase di UX/UI design.
Test bench
Per garantire test accurati, abbiamo creato un banco di prova con tutti i dispositivi di automazione controllati dall’applicazione. In questo modo, abbiamo potuto verificare il corretto funzionamento e l’integrazione dei dispositivi nel sistema di automazione offerto dalla nuova applicazione C.DOM.
Risultati
Per garantire test accurati, abbiamo creato un banco di prova con tutti i dispositivi di automazione controllati dall’applicazione. In questo modo, abbiamo potuto verificare il corretto funzionamento e l’integrazione dei dispositivi nel sistema di automazione offerto dalla nuova applicazione C.DOM.