Una possibile soluzione commentata della prova suppletiva di informatica. Come nostro solito, sviluppiamo e commentiamo una soluzione che non costituisce una soluzione corretta in modo assoluto, ma solo una possibile interpretazione con elementi e spunti, si spera, utili agli alunni che devono fronteggiare il nuovo Esame di Stato.
PRIMA PARTE
Una compagnia di taxi, allo scopo di migliorare il servizio offerto al pubblico, vuole implementare un sistema automatizzato di gestione delle richieste dei clienti, con la relativa assegnazione ai mezzi disponibili.
La compagnia vuole in particolare che:
- le richieste di trasporto da parte dei clienti possano arrivare attraverso il maggior numero possibile di canali di comunicazione, in modo che il servizio sia raggiungibile con tutti i mezzi oggi disponibili sia fissi che mobili (telefono, Web, App, SMS, …);
- la centrale operativa possa visualizzare la posizione dei taxi in servizio in ogni momento;
- vengano registrate, all’interno di un apposito database, sia le richieste dei clienti che i servizi di trasporto effettuati dai mezzi della compagnia (per questi ultimi, i mezzi invieranno direttamente le informazioni necessarie).
Il candidato, formulate le opportune ipotesi aggiuntive, sviluppi i seguenti punti:
- analizzi la realtà di riferimento e proponga uno schema generale che descriva la soluzione adottata per rispondere alle richieste della compagnia, ne ponga in evidenza i vari componenti e le loro interconnessioni, motivando le scelte effettuate;
- descriva in modo dettagliato le possibili modalità di comunicazione attraverso le quali i clienti richiedono i servizi di trasporto, evidenziando le specificità di ciascuna e la relativa procedura di gestione della richiesta;
- definisca le tecnologie di comunicazione tra la centrale e i mezzi in servizio.
PROPOSTA DI SOLUZIONE
La traccia è molto vaga sulla reale natura progettuale specifica del sistema proposto. Elemento questo che permette di spaziare molto nelle soluzioni da proporre, senza incappare in errori macroscopici ma che, allo stesso tempo, può mettere in difficoltà lo studente con meno capacità espositiva individuale e che necessita di una guida con dei vincoli da cui partire. Per questo lo studente non deve preoccuparsi ma anzi far tesoro di tutte le conoscenze apprese con le esperienze svolte durante il corso dell’anno. Nel caso specifico dei miei alunni, molti elementi sono stati approfonditi in laboratorio con Cisco Packet Tracer (trovate molti esempi qui), ripresi e svisceratati ulteriormente nelle lezioni frontali. La parte difficoltosa potrebbe essere quella di una esposizione ordinata e particolareggiata.
Proviamo a fare delle considerazioni iniziali in base alle specifiche fornite dal testo dell’esercizio. La maggior parte delle attività vengono svolte su un software la cui logica principale è all’interno dell’azienda. Il software in questione deve essere utilizzabile da tre tipologie di utenti: sia dal personale interno alla centrale operativa che utilizza presumibilmente postazioni fisse assieme ad un centro di elaborazioni dati, sia gli autisti che si muovono per raggiungere i clienti che necessitano quindi di dispositivi portatili, sia dai clienti che possono usufruire di dispositivi personali portatili o fissi per le prenotazioni. A tal proposito si considerino le seguenti rappresentazioni grafiche.

L’infrastruttura hardware
Abbiamo quattro zone/aree evidenziate: quella più a sinistra che schematizza i taxi, quella centrale gli utenti/clienti e quella a destra l’azienda di taxi. Cominciamo col descrivere le varie aree e le esigenze prima dal punto di vista hardware.
I tassisti, per la natura della propria professione, hanno necessità di spostamenti di svariati km dalla centrale, presumibilmente anche svariate decine di km. Devono poter ricevere e controllare le richieste di corse in modo semplice ma portabile. Storicamente le comunicazioni tra taxi e centrale, erano lasciati a sistemi di radio su frequenze assegnate. Il sistema funzionerebbe ancora, ma sarebbe scarsamente integrabile in un sistema informativo con una possibilità e varietà di strumenti, dati e procedure decisamente più automatizzabili, ricchi di applicazioni e possibilità varie. L’idea è quindi quella di dotare i tassisti di un sistema tablet integrato nel veicolo che conducono, dotato di sistema GPS per il tracciamento della posizione del veicolo e di una connessione internet. I tablet in questione potrebbero essere di fascia media di profilo prettamente commerciale visto che non ci sono richieste particolari di robustezza e resistenza ad urti o acqua. Caratteristiche tipo possono essere:
- Schermi luminosi, con buoni angoli di visione e diagonale di 10 pollici
- Hardware: CPU con tecnologia ARM, come i Cortex o simili di altre case come Nvidia, Intel e RAM di almeno 3 GigaByte. Valutare la predisposizione all’uso di un pennino touch per operazioni di firma o appunti veloci.
- Autonomia: batterie abbastanza capienti da assicurare autonomie per i lunghi viaggi o sistemi di risparmio energetico particolarmente efficienti
- Connettività: la connettività Wi-Fi ormai è su tutti i dispositivi con standard 802.11n e ac non strettamente vincolante in questo caso. In questo caso la vera connettività deve essere realizzata attraverso una sim dati con opportuo abbonamento presso una comagni telefonica, possibilmente sfruttando le nuove entusiasmanti caratteristiche delle reti 5G.
- Fotocamera: nessuna specifica particolare
- Software applicativi: i software possono essere delle tipologie più disparate ma devono mantenere un buon bilanciamento fra semplicità, fluidità e numero di funzioni
- Memoria interna: consigliata 16GByte o 32GB
- Sistema Operativo: Android 10
- App: il servizio è erogato come web-app quindi non occorre nulla di particolare se non un browser mobile. Valutare l’installazione di app tipo block notes per prendere appunti, calendari per appuntamenti, pdf reader.
I tablet potrebbero essere integrati con il sistema dell’autoradio per assorbire l’alimentazione necessaria o attraverso una soluzione più spartana con un caricatore per l’accendisigari del veicolo o le porte usb del veicolo, se presenti. In questo momento storico in cui scriviamo, inoltre, si dovrebbe valutare anche l’acquisto di un marchio di tablet piuttosto che un altro. E’ notizia di questi giorni come gli USA abbiano fatto guerra alla azienda cinese Huawei su presunte questioni mai verificate di spionaggio industriale che hanno però costretto il colosso del Sol Levante ridimensionare i suoi accordi commerciali con Google e i suoi servizi di store e app.
Una nota a margine ma su cui sarebbe interessante posare l’attenzione. I taxi si allontanano dalla centrale anche di decine di km. Se i mezzi fossero stati vincolati ad un raggio di 20/30 km, al posto delle sim costose da usare sottoscrivendo abbonamenti telefonici, sarebbe stato possibile utilizzare tecnologie wireless a bassa frequenza per lo scambio dati come LoRa, che avrebbe garantito una piccola banda per scambiare pochi dati ma con una copertura estesa senza costi aggiuntivi ai dispositivi hardware.
Sui dispositivi hardware degli utenti non possiamo fare considerazioni particolari: sarà il software a dover integrare tutti i sistemi hardware scelti dagli utenti, dai pc fissi e laptop, ai dispositivi mobili come tablet e smartphone. Si presume che gli utenti abbiano una connessione internet con banda casalinga adeguata ADSL/Fibra o 4/5G. Tutti i dispositivi dei tassisti e degli utenti, sfrutteranno la rete pubblica su cui ovviamente non facciamo considerazioni tecnologiche. Non sarebbe possibile in questo caso sfruttare una rete dedicata per questo servizio.
Per la zona amministrativa della azienda di taxi, si prevedono l’uso di normalissimi pc, stampanti di rete e sistemi NAS di rete per la condivisione e backup di documenti. Non sono necessarie particolari accortezze se non quelle di utilizzare piccoli ups per ogni pc o almeno prese di corrente filtrate. I pc di fascia medio/alta potrebbero avere caratteristiche tipo:
- Hardware: CPU Intel di ottava o nona generazione come I5-9500, con 8GByte di RAM DDR4,
- Memoria: Hard Disk SSD da 250GB per il sistema operativo e il software principale accompagnato da un HD tradizionale meccanico/magnetico per i dati da 1 TeraByte
- Sistema operativo: Visto l’utilizzo limitato al semplice uso di browser web per accedere all’applicativo, possiamo risparmiare sulla licenza Windows e installare un s.o. Linux, magari di larga diffusione e semplicità di utilizzo come Ubuntu. Questo ci consentirà anche una maggiore sicurezza e protezione da malware convenzionali, o di dover aggiornare e mantenere periodicamente antivirus vari e loro definizioni.
- Software: probabilmente basta un browser di quelli convenzionali come Firefox o Chrome, accompagnato da software applicativo da ufficio come Libre Office, suite di programmi di videoscrittura come Word o fogli di calcolo come Excel, ma open source e che sta trovando molto spazio nelle amministrazioni pubbliche (anche nel nostro comune di Teramo!)
- Monitor: 22 pollici
L’unica accortezza che possiamo adottare in una rete aziendale, è quella di usare un router di confine con un firewall magari annesso con capacità sia di packet filtering che di content filtering, magari configurabile con una comoda e semplice interfaccia grafica. L’azienda di taxi la riteniamo sufficientemente piccola per non adottare una soluzione in-house dei servizi che deve erogare, ma di affidarsi in modo più economico ad un fornitore terzo per quello che riguarda i servizi di hosting, database e mail. Soluzioni come queste possono essere molto vantaggiose per risparmiare in termine di personale che gestisce rete e zona dmz, acquisto o leasing di server ed altre attrezzature hardware, licenze software per server, sistemi di backup e tutto quello che concerne la continuità del servizio e la disaster recovery, dimensionamento delle connessioni internet, abbonamenti telefonici ecc. Lasciamo al lettore la stesura dell’elenco dei vantaggi e svantaggi nell’adottare soluzioni completamente inhouse e in outsourcing. Esistono numerose soluzioni commerciali per ogni esigenza che mettono a disposizione sia Hosting web da 15, 30 euro annui sia soluzioni basate Server Virtuali Condivisi o Privati con svariate caratteristiche e prezzi. Due esempi su tutti:
Aruba.it 2,79 € IVA/mese molto economico per chi ha poche pretese visto che è “hw virtuale”
- Processore : 1 cpu virtuale con VmWare (non specificata)
- Memoria : 1 GB ram (non specificata)
- Storage : 20 Gb (non specificato)
- Banda passante pubblica utenti: 2 TB al mese
OVH.it a 75,99 € + IVA/mese già decisamente più performante ma costoso visto che è “hw dedicato”
- Processore : Intel Xeon-D 1521 – 4c/ 8t – 2.4GHz/ 2.7GHz
- Memoria : 16GB DDR4 ECC 2133MHz
- Storage : 4x4TB HDD SATA Soft RAID + 1x500GB SSD NVMe Soft RAID
- Banda passante pubblica utenti: traffico illimitato
- Banda passante privata per gli aggiornamenti: 100Mbps
Nel caso più semplice comunque che sia VPS o un semplice hosting, dovremo essere certi che i server abbiano:
- Software: in questo caso dovremo chiedere o installare server Apache con almeno PHP7.2 sul server web e MySQL 8 o 5.7 con InnoDB sul server Dati. Alternativa ad Apache è Nginx che si sta diffondendo molto rapidamente e ha svariate funzionalità interessanti anche per il Python e in alcune applicazioni risulta anche più performante di Apache stesso.
- Sistema Operativo Linux, come Mint, CentOS, Red Hat o Debian, specifiche distribuzioni per server di produzione.
Inoltre dovremo essere certi che, se il servizio è erogato in Italia, l’azienda erogatrice abbia tutte le carte in regola per il rispetto del GDPR.
Il software usato dai clienti
(da completare)
Nell’era della comunicazione smart, la soluzione per prenotare un taxi del nostro servizio può avvenire in molti modi, ma certamente, accanto ai sistemi telefonici tradizionali, di particolare interesse per il nostro elaborato possono essere sito web, magari con tecnologia responsive, per poter essere usufruito sia da pc desktop che mobile, e una app specifica per smartphone.
Elementi da approfondire:
– Tecnologia web html/css/js, uso di framework di ultima generazione
– Responsive, problematiche media query e display, accessibilità, usabilità
– Complessità sviluppo backend/frontend
– Sicurezza (protocolli https, autenticazione forte/doppia, sql injection)
Il software usato tra azienda e taxi
(da completare)
Elementi da approfondire:
– Tecnologia web html/css/js
– custom per dispositivo in dotazione
– Complessità sviluppo backend
– Uso di VPN ed eleemnti di sicurezza
SECONDA PARTE
1. In relazione al tema proposto nella prima parte, si consideri il caso in cui la compagnia voglia consentire ai clienti di registrarsi al proprio sito per usufruire di campagne promozionali e di servizi aggiuntivi. Il candidato esponga le tecnologie hardware e i servizi software necessari a garantire un adeguato standard di sicurezza a protezione dei dati acquisiti.
Garantire standard di sicurezza a protezione dei dati è un argomento trasversale tra sicurezza dei dati e conservazione degli stessi. Cerchiamo di analizzare entrambi gli aspetti in modo organico. Per quanto riguardo lo storage fisico, i dati vanno protetti con opportune soluzioni di backup. Alcune strategie potrebbero essere quelle di usare sui server la tecnologia RAID 1, detta di mirror, che permette il salvataggio in corsa di una copia delle informazioni che il server sta elaborando e gestendo, soprattutto se il server in questione ospita un DBMS. Gli hard disk possono essere eventualmente essere dotati di tecnologia hot swap che consente di estrarli al caldo per riporli in luogo sicuro e periodicamente quindi sostituirli raggiunti i limiti di capienza e ricollegarli/ripristinarli in caso di disaster recovery. Valutare in alternativa una soluzione più economica che consenta backup periodici magari con un servizio cloud di storage, almeno per i dati di produzione non bloccanti. Per i backup, evitare dischi immagine o similari troppo poco versatili dato il mutare rapido dei dati. Sistemi di storage ibridi tra cloud e raid ma sempre “in house” potrebbero essere dei sistemi NAS collegati alla rete aziendale dove salvare copie dei dati anche sfruttando le potenzialità dei DBMS o di software commerciali su misura. Per l’aspetto di sicurezza riferito all’accesso abusivo ai dati, misure di protezione standard sono la criptazione dei dati, messa a disposizione dai principali DBMS commerciali con algoritmi a chiave simmetrica come AES. La crittografia garantisce una ragionevole sicurezza a scapito però delle performance. Non sono risolutive ma dissuasive anche funzionalità di compressione dei dati con librerie standard come ZLIB. La funzione più nota è senza dubbio quella dell’hashing di determinati dati tra cui le password che è così possibile non immagazzinare in chiaro con relativi inconvenienti nel caso di furto o data breach. Funzioni di hash viste solitamente nei percorsi di studio sono SHA2 o le obsolete/meno sicure SHA1 e MD5.
2. In relazione al tema proposto nella prima parte, il candidato progetti lo schema concettuale e logico della porzione della base di dati che, in relazione ai servizi di trasporto offerti ai clienti, consente la registrazione del luogo di partenza e di arrivo e del taxi che ha effettuato il servizio. Progetti poi le pagine del sito della compagnia che consentono l’immissione di una richiesta di trasporto e ne codifichi in un linguaggio a sua scelta una parte significativa.
3. Negli ultimi anni lo sviluppo tecnologico ha portato ad una maggiore apertura delle infrastrutture informatiche, ormai ampiamente interconnesse. La sicurezza dei dati è diventata di conseguenza un aspetto fondamentale nell’ambito del trattamento delle informazioni. Il candidato descriva i possibili tipi di minacce alla sicurezza di un sistema informatico.
L’argomento è ampiamente trattato nei manuali scolastici. Il candidato può approfondire in modo molto semplice tutta la trattazione dei malware con le diverse tipologie software (virus, spyware, addware, worm, backdoor, trojan, cryptolocker/ransonware, forkbomb ecc) ed hardware (keylogger), gli attacchi informatici più noti (social engineering, man in the middle, ddos, arp poisoning, defacement di pagine web, sql injection, password cracking, uso di vulnerabilità in software non aggiornati ecc)
4. Le informazioni che viaggiano attraverso la rete Internet riguardano, sempre di più, aspetti rilevanti e delicati della vita degli individui e delle aziende. Tale mole di dati necessita di sistemi che garantiscano l’identità dei soggetti, l’integrità dei dati e la loro confidenzialità. Il candidato descriva le caratteristiche dell’infrastruttura di sicurezza basata sulle chiavi pubbliche (PKI) evidenziando il ruolo delle Autorità di Certificazione.
La domanda pone l’attenzione su un problema storico e molto dibattuto che frappone il concetto di autenticazione vs identificazione in rete. Nella vita pratica siamo piuttosto abituati al concetto di identificazione: alla posta, in banca, negli uffici, nei controlli delle forze dell’ordine la nostra persone è sempre identificata da documenti quali la carta di identità, codice fiscale, patente. Nel web, l’identificazione in rete è più complessa e siamo abituati semplicemente ad accedere ai servizi mediante una semplice autenticazione con username e password di fantasia. che però non possono in alcun modo identificare in modo certo un utente fisico particolare. Ecco perché occorre, un po’ sulla falsa riga di un ente che, come il comune o la motorizzazione emettono carta di identità e patente, emetta un documento universalmente riconosciuto. Questa funzione è svolta da una Autorità di Certificazione. alla base della tecnologia c’è una coppia asimmetrica chiave privata e chiave pubblica prodotte da un soggetto Alice che vuole comunicare con un utente Bob. Alice sarebbe solita crittografare il messaggio con la sua chiave privata, mentre Bob potrebbe decriptare il messaggio conoscendo la chiave pubblica di Alice, che magari ha pubblicato su un sito web o in firma sulla mail. Qui si pone l’Autorità che su richiesta di Alice, ne verifica una tantum l’identità e avvalora l’autenticità della chiave pubblica di Alice conservandola indirettamente su un server attraverso un certificato di autenticità. Bob, in qualsiasi momento, potrebbe reperire la chiave pubblica di Alice, chiederle il certificato e contro-verificarlo con quello fornito dall’Autorità. Alla base di questi sistemi c’è il funzionamento di un protocollo ormai indispensabile per navigare sicuri su server sconosciuto purché usino appunto un sistema simile con SSL/TLS.
Ultima modifica 25 Febbraio 2022