Normalmente in Italia i produttori di software sono particolarmente specializzati nell’integrazione di prodotti COTS (Commercial Off-The-Shelf), ovvero prodotti commerciali (generalmente middleware e framework, ma non solo) disponibili sul mercato che vengono utilizzati all’interno dei propri progetti. È chiaro che così il nostro paese si orienta verso la solita specializzazione nella trasformazione delle “materie prime”, se si vogliono intendere come tali i prodotti COTS (insomma, vogliamo qui intenderli come commodity). In tal modo, anche il mondo del software in Italia rimane povero di materie prime, giacché in tal modo la cultura dello sviluppo di prodotti propri viene sempre più trascurata dalle nostre aziende. Tralasciando le motivazioni e l’opportunità di una scelta (in fondo strategica) di questo tipo da parte del nostro paese, possiamo fare qualche considerazione sulle conseguenze che all’interno di un’organizzazione aziendale può comportare un eccessivo ricorso ai COTS dal punto di vista della sicurezza delle informazioni. In questo senso anzitutto va considerato che l’integratore (di solito) non è mai in possesso di tutta la documentazione del prodotto che integra, accettando così inconsapevolmente un livello di garanzia di protezione da attacchi da parte di malintenzionati sufficientemente preparati tecnicamente che potrebbe essere anche particolarmente basso. Soprattutto non è proprio detto che l’integratore sia conscio di quanto sarebbe deludente l’Evaluation Assurance Level che potrebbe essere assegnato al proprio prodotto se solo gli saltasse in mente di certificarlo secondo i Common Criteria. Quindi se da una parte l’utilizzo di COTS può tradursi in un risparmio di denaro, ci sono comunque varie altre considerazioni da fare. Ad esempio, di solito è necessario un periodo di addestramento del team di sviluppo per fagli acquisire gli skill necessari all’utilizzo del tal framework o middleware. In realtà aziendali di medie dimensioni, l’utilizzo di COTS può comportare anche delle modifiche ai sistemi aziendali, il ché comporta costi imprevisti. Il rischio nell’utilizzo di COTS è un’attività contemplata nel Risk Assessment. In questo processo il rischio può essere valutato secondo due attività principalmente:
- Individuazione del prodotto COTS
- Definizione dei processi e dei criteri per valutare delle tecnologie di integrazione service-based
Nelle aziende di medie dimensioni, in cui il management è possibile sia stato sensibilizzato alla disciplina del Risk Management, questa attività di Risk Assessment diventa parte integrante delle metodologie in uso alla propria organizzazione, che dà risultati utili ai fini della valutazione dei costi che comporta la scelta di riutilizzare del codice, integrare quello di un fornitore di fiducia oppure decidere di svilupparlo ex-novo.
Un’idea valida che possa tagliare la testa al toro per aziende di piccole dimensioni, potrebbe essere quella di investire le proprie (solitamente scarse) risorse per la standardizzazione dei propri prodotti software, cercando di renderli dei framework applicativi personalizzabili e cavalcare così almeno in parte l’onda dell’economia di scala conseguente. Forse questa può essere l’unica scelta sensata prima di accorgersi che l’alternativa è ritrovarsi completamente privi di competitività, in un settore tecnologico in cui ormai il software stesso è visto (erroneamente e colpevolmente) come una commodity (ovvero fruibile ovunque senza differenza qualitative), come se investire nel realizzare un progetto possa equivalere all’acquisto di qualche tonnellata di ferro o i sale.