Nuova puntata della speciale rubrica multimediale #YabeRevolution in collaborazione con Aion Team.
Voci, video, articoli di approfondimento, storie, numeri… tutto sul software made in Italy del momento in una serie di reportage esclusivi. L’appuntamento di oggi è dedicato alle Software House per capire cosa sono, perché sono ricercatissime e perché è importante scegliere il partner giusto.
Qui la prima puntata della rubrica:
– Viaggio al centro del “caso” Yabe. «Così rilanciamo l’eccellenza dello sviluppo software made in Italy»
Quando si parla di operatori della filiera IT, spesso salta fuori il termine software house. È chiaro che parliamo di aziende che si occupano di software, ma i contorni della loro attività restano spesso poco chiari e indefiniti. Eppure, si tratta invece di una tipologia di attore che – nel panorama attuale di rapida Digital Transformation – sta giocando un ruolo chiave nel comparto. Cerchiamo dunque di capire meglio di che cosa stiamo esattamente parlando, azzardando una definizione.
Che cos’è una software house
Una software house è un’azienda che si specializza principalmente in prodotti software, sia per le aziende che per i consumatori, in base alle esigenze specifiche della propria base clienti. I software, una volta sviluppati, possono essere distribuiti in modalità Saas o attraverso le licenze classiche tipiche dell’on premise. Sempre più spesso, le software house offrono anche soluzioni IT complete e pronte all’uso per le aziende.
In Italia, i numeri di queste realtà sono significativi: secondo una recente ricerca degli Osservatori Digital Innovation della School of Management del Politecnico di Milano in collaborazione con AssoSoftware relativa al solo campo degli applicativi gestionali, esistevano 1.346 software house italiane, per un fatturato di 14,9 miliardi di euro. Sommando a questo il valore della relativa rete di vendita (0,9 miliardi), il volume d’affari complessivo era pari a 15,8 miliardi di euro.
Ovviamente, data la definizione molto ampia che abbiamo esposto in precedenza, le software house possono essere molto diverse tra di loro: alcune sono composte da un pugno di sviluppatori, altre hanno dimensioni simili a quelle di multinazionali o grandi aziende. Alcune sono specializzate nello sviluppo di software che viene destinato al mondo consumer, altre ancora sono specializzate nella fornitura di lavori su commissione a un ristretto numero di cliente aziendali. Non poche sono legate a doppio filo ad alcuni grandi vendor dell’IT, ma non mancano quelle che sono gelose della propria indipendenza e preferiscono coltivare alcune specifiche nicchie di mercato. In ogni caso, per operare correttamente su un mercato in perenne trasformazione le software house devono possedere adeguate competenze e know-how. Chiaramente, chi lavora nelle software house deve padroneggiare i diversi linguaggi di programmazione e avere competenze di framework, librerie, strumenti di progettazione e altro ancora.
Cosa fa una software house
Ma quali sono i compiti di una tipica software house? Ovviamente il compito principale è relativo allo sviluppo di software proprietari e alla loro installazione presso le aziende utenti. In questa fase tali software sono sempre più spesso equipaggiati con soluzioni di analytics e intelligenza artificiale, così da facilitare e supportare le attività degli utenti. Ovviamente, però, le software house devono essere in grado di mettere a disposizione anche dei servizi, il più importante dei quali è rappresentato dalla manutenzione e aggiornamento.
In effetti, i software – una volta rilasciati – devono essere costantemente aggiornati, in maniera tale da rimediare ai malfunzionamenti e per garantire la massima sicurezza contro gli attacchi del cybercrime. Le software house devono dunque garantire un aggiornamento costante dei propri prodotti. Quando il software è erogato in modalità cloud e Saas, questa operazione viene svolta in maniera automatizzata. Quando i software sono invece erogati in modalità on premise può essere invece necessario – anche se non in tutti i casi – un intervento fisico presso la sede del cliente.
Ovviamente, oltre all’assistenza ordinaria, per una software house è necessario mettere a disposizione dei servizi di assistenza straordinaria: i software sviluppati possono palesare improvvisamente gravi problemi di funzionamento, mettendo fuori uso l’applicativo del cliente finale. In questi casi eccezionali le software house devono essere attrezzate – direttamente o attraverso una rete di partner – per analizzare e rimediare immediatamente ai disservizi, ripristinando celermente il regolare funzionamento.
Sempre nell’ottica del servizio, le software house si fanno carico anche di molte attività tese alla cybersecurity: in particolare, attraverso regolari test a analisi, le software house controllano la sicurezza delle soluzioni sviluppate, arrivando molto spesso a suggerire le opportune installazioni di sicurezza per proteggere gli applicativi. Non di rado, infatti, le software house svolgono anche un lavoro di consulenza informatica a 360 gradi, che va oltre lo sviluppo e la manutenzione degli applicativi. In particolare facendosi carico del funzionamento delle infrastrutture IT di aziende di media e piccola dimensione, con le quali è stato instaurato un rapporto di particolare vicinanza e collaborazione. Il passaggio ulteriore può essere quello di operare da veri e propri service provider, fornendo e gestendo da remoto tutti o quasi i servizi IT necessari al funzionamento del business aziendale. Ovviamente, non sempre la collaborazione si spinge sino a questo stadio: una fetta importante del lavoro delle software house è relativo la personalizzazione di applicazioni già esistenti, come ad esempio soluzioni ERP o CRM sviluppate da vendor leader del settore. In questo caso le software house aiutano ad adattare in modo efficiente le applicazioni alle esigenze dei clienti e a formare i dipendenti alle nuove soluzioni adottate.
Non solo competenze di programmazione
Qualunque sia l’ambito di riferimento, le software house, oltre a lavorare nell’ambito dello sviluppo software, devono mettere a punto dei processi efficaci per crescere e sopravvivere in un mercato IT che si fa sempre più competitivo. In altre parole, è ormai chiaro che per la software house il successo di un progetto non può limitarsi alla programmazione e allo sviluppo di codice. Una software house deve definire con chiarezza i requisiti e gli obiettivi dei clienti, curare i diversi passaggi progettuali, identificare i problemi e monitorare con attenzione il flusso di lavoro. Non meno importante è la cura della comunicazione con il cliente stesso, che quando deve affrontare passaggi tecnologici di una certa rilevanza ha bisogno di essere adeguatamente supportato e rassicurato. Per questo, oltre a ottimi programmatori, le software house devono possedere in organico (o delegare esternamente) delle professionalità capaci di curare con attenzione anche questi aspetti del lavoro.
Ma perché un’azienda utente dovrebbe scegliere una software house invece di affidarsi, magari, a dei singoli programmatori esterni? Il vantaggio principale è rappresentato dalla semplificazione: una volta scelta una software house capace di realizzare il progetto necessario, non c’è più bisogno di impiegare tempo per selezionare i singoli programmatori e verificare le loro competenze, nonché impegnare ulteriori risorse per monitorare e coordinare i progetti. Le software house possono insomma garantire una pianificazione agevole e una chiara definizione del quadro e dei costi complessivi di progetto, semplificando la vita alle aziende che vogliono rinnovare il parco applicativo.
Il caso Aion Team
Un classico esempio di moderna software house è sicuramente Aion Team: si tratta di una giovane realtà che ha sedi nel Parco Scientifico e Tecnologico ComoNExT e Cesena. Un luogo, il primo, innovativo dove start-up dinamiche e aziende più esperte lavorano fianco a fianco in un ambiente collaborativo.
Aion Team è innanzitutto una software factory con competenze in Advanced Analytics, Machine Learning, Digital Process Automation, nonché sviluppo Mobile, Web, Cloud e Enterprise. Grazie alle competenze del suo team di professionisti (composto da developers, architects e consulenti funzionali esperti) Aion Team è in grado di garantire al cliente un’esperienza a 360° su ogni piattaforma tecnologica. Assicurando così un adeguato supporto alla progettazione, sviluppo e pubblicazione di software, applicazioni e prodotti di varia natura. Aion Team è anche in grado di fornire servizi di consulenza IT a più ampio raggio e a elevato valore aggiunto in tutti gli ambiti. Come dimostrano i casi di successo realizzati con clienti di diversi settori e dimensioni, dal Banking, al Finance, al Retail, alla sicurezza e al manifatturiero.