“Mia moglie conosce qualche ingegnere che è stato un precursore e nelle nuvole c’è da tanti anni, in questa sede però non parleremo di quelle nuvole”, questo è stato l’inizio dell’intervento dell’ing. Sauro Agostini di Interstudio nel suo intervento nel convegno “Scoprire l’ingegneria”, che si è svolto sabato 12 ottobre presso la sala maggiore dello storico palazzo del Comune di Pistoia.
L’intervento ha ripercorso una breve storia delle tappe dell’informatizzazione di masa in oltre 30 anni, individuando alcuni punti rappresentativi di cambiamenti e innovazioni che ci hanno portato fino ad oggi, nel “cloud” appunto.
Ha proseguito con una parte più tecnica, descrivendo le varie tecnologie cloud, l’evolversi delle applicazioni WEB e i vari vantaggi.
Particolarmente desolante è stato il confronto fra la situazione Italiana e mondiale nella velocità delle nostre connessioni nell’upload, che ci pone al centoquarantatreesimo posto tra il Gabon e la Nuova Caledonia.
Riportiamo di seguito il filmato, la presentazione e una trascrizione parziale dell’intervento:
L’ingegnere nelle nuvole. App, WEB App e Cloud
1981
Iniziamo il nostro viaggio dal 1981: Ronald Regan diventa presidente degli Stati Uniti, Françoise Mitterand diventa presidente della Francia, nasce Fernando Alonso, Alice vince il festival di Sanremo con Per Elisa, Giovanni Battaglin vince il Giro d’Italia e IBM lancia il PC 5150 con il PC-DOS, poi divenuto MS-DOS.
C’era una volta il DOS
L’MS-DOS è il sistema operativo che sarà istallato negli anni successivi in milioni di computer, prima IBM e poi nei cosi detti IBM-compatibili. Non è una rivoluzione, in verità MS-DOS riprende modi di operare di sistemi operativi precedenti, quali il CP/M, ma è sicuramente molto conosciuto ed è uno dei componenti della prima informatizzazione di massa.
Monitor a bassa risoluzione, un solo tipo di carattere, fondo nero con caratteri a fosfori verdi. Interfaccia utente ridotta al minimo tramite l’uso esclusivo della tastiera.
Una parte importante del sistema operativo è il File System, che permette di gestire il contenuto dei dischi con comandi specifici da tastiera.
Il contenuto è suddiviso in directory, subdirectory e file.
Non c’è una suddivisione netta tra documenti e programmi, cioè i file eseguibili.
Il modo principale per scambiare documenti tra computer diversi era il floppy disk da 5” ¼, della capacità eccezionale di 160 Kbyte.
MacOs e Windows
Nel 1984 viene lanciato il primo Macintosh con un sistema operativo grafico che introduceva la metafora della scrivania tra l’utente e il computer.
La metafora della scrivania era ripresa successivamente anche dalle varie versioni di Windows dalla versione 3 (1990) in poi.
Non stiamo qui a descrivere le caratteristiche di Mac Os e di Windows. L’aspetto che vorrei mettere in evidenza l’organizzazione del File System, che suddivide i componenti principalmente in 3 categorie:
- Documenti
- Applicazioni
- Cartelle
I documenti sono ben distinti dalle applicazioni, e il sistema operativo mantiene dei collegamenti fra i documenti e le applicazioni che li hanno creati.
Il rapporto tra documenti e applicazioni però non è obbligato, l’utente comunque può decidere di aprire un documento con una applicazione diversa rispetto a quella che lo ha creato.
World Wide Web
Nel 1993 il CERN di Ginevra rilascia Mosaic, il primo browser che permette di vedere documenti con immagini incluse, trasferire in rete suoni o video registrazioni e di puntarli da un documento, è diventato ben presto il browser Web per eccellenza per tutti i lavori su computer con capacità grafiche.
Mosaic, interpretando il linguaggio HTML, ha la capacità di visualizzare testi in diversi stili: (grassetto, corsivo …) e comporre il testo stesso in paragrafi, liste di vario tipo, evidenziare titoli etc …
E’ l’inizio di Internet per tutti come lo conosciamo oggi.
Tablet e SmartPhone
Parlando di SmartPhone dobbiamo tirare una riga che separa prima e dopo iPhone.
Prima esistevano sistemi operativi per SmartPhone come Symbian o Windows Mobile, che in modo più o meno approssimato riportavano sui telefonini sottoinsiemi di sistemi operativi per desktop, come Windows Mobile (2003), versione adattata di Windows o derivanti da palmari come Symbian, derivante da EPOC32 per palmari Psion.
Nel 2007 esce il primo iPhone, ma è nel 2008, con il lancio del negozio App Store, che cominciano ad essere sviluppate le cosiddette App da sviluppatori esterni. Il sistema operativo IOS deriva da Mac Os X, ma ha aspetti e caratteristiche molto diversi dal sistema operativo per computer tradizionali.
Nel 2008 esce anche il primo dispositivo basato sul sistema operativo Android, di Google, che riprende la filosofia di base di IOS.
Android e iPhone assieme mettono in crisi il mondo tradizionale degli SmartPhone e colossi quali Nokia e BlackBerry.
Il lancio di Apple iPad e dei successivi tablet Android dimostrano che i relativi sistemi operativi possono essere usati da App che non hanno niente da invidiare da applicazioni tradizionali per computer, con vantaggi evidenti in connettività, mobilità e autonomia rispetto ai computer portatili, compresi i piccoli netbook.
Non solo, le più recenti versioni di sistemi operativi per computer Windows 8 e MacOs Maverick, hanno inserito molti aspetti di IOS e Android.
Dove sono i documenti?
Dal confronto tra una schermata tipica di Windows o Mac Os ed una di IOS o Android, risulta evidente che manca qualche cosa: i documenti, non ci sono più, o almeno non si vedono, non sono accessibili direttamente dall’interfaccia del sistema operativo.
La connessione tra documenti e applicazioni si è fatta ancora più stretta e adesso i documenti sono accessibili e visibili normalmente solo dalle App che li anno creati.
Possono essere resi disponibili ad altre applicazioni e ad altri utilizzatori solo se le App e i proprietari lo permettono
Le applicazioni WEB
In informatica l’espressione Applicazione Web, ovvero Web-application, indica genericamente tutte le applicazioni distribuite web-based.
Più precisamente questa espressione è impiegata nell’ambito del software engineering e della programmazione Web, dove il termine webapp descrive un’applicazione accessibile/fruibile via web per mezzo di un network, come ad esempio una Intranet all’interno di un sistema informatico o attraverso la Rete Internet, ovvero in una architettura tipica di tipo client-server.
Questo modello applicativo è divenuto piuttosto popolare alla fine degli anni novanta, in considerazione della possibilità per un client generico di accedere a funzioni applicative residenti su un application server, utilizzando come terminali utente normali web browser (i client finalizzati unicamente a collegarsi come terminali di web-application vengono chiamati sovente thin client).
Infatti l’opportunità di aggiornare ed evolvere a costo ridotto il proprio applicativo, senza essere costretti a distribuire numerosi aggiornamenti ai propri clienti attraverso supporti fisici, ha reso la soluzione piuttosto popolare per molti produttori software.
Più di recente molti produttori di software, come Google, Microsoft e altri, hanno implementato interi pacchetti applicativi per office automation, tradizionalmente venduti in modo distribuito e pacchettizzato su supporti CD-ROM, e che ora si stanno velocemente trasformando a tutti gli effetti in webapps (es. Google Docs). Il filone delle Web Applications comprende molte delle applicazioni ad uso business e professionale.
Google Drive, Office Web Apps e Autocad WS sono solo alcuni esempi, con applicazioni classiche di Office Automation e CAD.
Anche Interstudio propone un ambiente con applicazioni WEB, Interstudio Tools, per il mondo dell’architettura e dell’ingegneria.
La condivisione
I documenti non sono più scambiati copiandoli su un dischetto, come nel lontano 1981, e nemmeno copiandoli su un memory-stick o spedendoli allegati ad una email, come continuiamo a fare adesso con computer e applicazioni tradizionali. I documenti sono condivisi.
La condivisione permette ad un documento di qualsiasi tipo, normalmente senza essere spostato, di essere utilizzato da altre applicazioni e/o da altri utenti.
La condivisione è alla base dei social network quali FaceBook e Twitter, dove condividiamo con altri idee, immagini, filmati, notizie ed altro.
La condivisione può essere tra App e WebApp dello stesso dispositivo e/o dello stesso utente. Esempio: l’App Immagini di IOS condivide le immagini del rullino con altre app di tipo grafico che compiono sulle immagini successive elaborazioni o con altre app di tipo forografico che memorizzano nel rullino le proprie fotografie.
Le stesse fotografie possono essere condivise con con altri dispositivi dello stesso utente tramite il servizio iCloud.
La condivisione può essere tra diversi utenti, che possono, ad esempio, formare gruppi di collaborazione o di interesse e scrivere contemporaneamente su un documento di testo di Google Docs.
Tornando all’esempio dell’app Immagini di iPhone, le foto possono essere condivise con altri utenti in streaming, su FaceBook, Twitter, Fliker e con i tradizionali messaggi e email.
Nelle nuvole
Le applicazioni WEB e in generale i servizi WEB in generale sono ospitati su un computer Web Server.
Con l’aumentare delle necessità in termini di CPU, archiviazione e banda, un singolo server non è più sufficiente. In questo caso quindi è necessario suddividere i carico su un certo numero di server.
Questo richiede di dedicare i server alle attività in base alle richieste di punta e suddividere in modo rigido e complicato le varie attività tra le varie macchine in modo rigido. Se ad esempio una attività ospitata su un server satura la banda, non può utilizzare in modo semplice la banda non utilizzata da un’altro server in quel momento poco utilizzato.
In informatica con il termine inglese cloud computing (in italiano nuvola informatica) si indica un insieme di tecnologie che permettono, tipicamente sotto forma di un servizio offerto da un provider al cliente, di memorizzare, archiviare e/o elaborare dati grazie all’utilizzo di risorse hardware/software distribuite e virtualizzate in Rete in un’architettura tipica client-server.
Da un punto di vista commerciale il termine Cloud è spesso utilizzato per indicare applicazioni WEB e servizi non residenti su un singolo computer o in una rete aziendale, ma in luogo sconosciuto all’utente finale, indipendentemente che sia un singolo server o un sistema cloud vero e proprio.
Si possono distinguere tre tipologie fondamentali di servizi cloud computing:
- SaaS (Software as a Service) – Consiste nell’utilizzo di programmi installati su un server remoto, cioè fuori dal computer fisico o dalla LAN locale, spesso attraverso un server web. Questo acronimo condivide in parte la filosofia di un termine oggi in disuso, ASP (Application service provider). Esempio Google Drive
- DaaS (Data as a Service) – Con questo servizio vengono messi a disposizione via web solamente i dati ai quali gli utenti possono accedere tramite qualsiasi applicazione come se fossero residenti su un disco locale. Esempi DropBox e Amazon S3)
- HaaS (Hardware as a Service) – Con questo servizio l’utente invia dati a un computer che vengono elaborati da computer messi a disposizione e restituiti all’utente iniziale.A questi tre principali servizi possono essere integrati altri:
- PaaS (Platform as a Service) – Invece che uno o più programmi singoli, viene eseguita in remoto una piattaforma software che può essere costituita da diversi servizi, programmi, librerie, etc. (ad esempio Google App Engine e Amazon Web Services)
- IaaS (Infrastructure as a Service) – Utilizzo di risorse hardware in remoto. Questo tipo di cloud è quasi un sinonimo di Grid Computing, ma con una caratteristica imprescindibile: le risorse vengono utilizzate su richiesta o domanda al momento in cui una piattaforma ne ha bisogno, non vengono assegnate a prescindere dal loro utilizzo effettivo (ad esempio «Google Compute Engine»).
.
Nel caso di funzionalità di memorizzazione in remoto la creazione di una copia di sicurezza (backup) è automatica e l’operatività si trasferisce tutta online mentre i dati sono memorizzati in server farm generalmente localizzate nei Paesi di origine del service provider.
Il cloud computing rende disponibili all’utilizzatore le risorse come se fossero implementate da sistemi (server o periferiche personali) “standard”.
L’implementazione effettiva delle risorse non è definita in modo dettagliato; anzi l’idea è proprio che l’implementazione sia un insieme eterogeneo e distribuito – the cloud, in inglese nuvola – di risorse le cui caratteristiche non siano note all’utilizzatore.
Il sistema del cloud computing prevede tre fattori distinti:
- Fornitore di servizi (cloud provider)– Offre servizi (server virtuali, storage, applicazioni complete) generalmente secondo un modello “pay-per-use”;
- Cliente amministratore – Sceglie e configura i servizi offerti dal fornitore, generalmente offrendo un valore aggiunto come ad esempio applicazioni software;
- Cliente finale – Utilizza i servizi opportunamente configurati dal cliente amministratore.
In determinati casi d’uso il cliente amministratore e il cliente finale possono coincidere. Ad esempio un cliente può utilizzare un servizio di storage per effettuare il backup dei propri dati, in questo caso il cliente finale provvede a configurare e utilizzare il servizio.
I principali processi su cui i diversi fornitori cominciano a proporre soluzioni in modalità cloud sono Customer relationship management (CRM), Human Capital Management (HCM), Enterprise resource planning (ERP).
- Customer relationship management (CRM Gestione delle relazioni con i clienti) è legato al concetto di fidelizzazione dei clienti.
- Human Capital Menagement (HCM) Sistemi informativi / applicativi che si occupano della gestione dei processi in ambito HR (anagrafica, formazione, sviluppo, selezione, compensation ecc).
- Enterprise resource planning (ERP) Pianificazione delle risorse di impresa. E’ un sistema di gestione, chiamato in informatica sistema informativo, che integra tutti i processi di business rilevanti di un’azienda (vendite, acquisti, gestione magazzino, contabilità etc.)
Importanza delle infrastrutture
WEB application e Cloud hanno bisogno, per essere utilizzati al meglio, di strutture efficianti, in particolare di una buona connettività in termini di velocità, diffusione e qualità.
Purtroppo la situazione italiana, da questo punto di vista, è a livelli di paesi del terzo mondo.
L’Italia è al 143 mo posto, tra Gabon e Nuova Caledonia
Alcuni esempi
DropBox: offre un servizio di file hosting e sincronizzazione automatica di file tramite web. E’ disponibile per Windows, Mac OS X, Linux, iOS, BlackBerry OS e Android. Ha la struttura tipica di un file system, con documenti e cartelle.
Google Drive: permette il file hosting, file sharing e editing collaborativo di documenti. Contiene applicazioni WEB per scrittura, foglio di calcolo, presentazione, posta ed altro. Permette a più operatori di lavorare contemporaneamente e in modo sincronizzato sullo stesso documento.
iCloud: sincronizzazione automatica di dati, contatti, immagini e brani musicali tra i vari dispositivi dell’utente in modo automatico e trasparente. Contiene anche versioni WEB delle applicazioni Apple Mail, Page, Numerics e Keynote, Calendar, Contatti. Permette di individuare doce si trovano i dispositivi con i servizi di geo-localizzazione.
Interstudio Tools
Come ulteriore esempio vediamo Interstudio Tools, un ambiente per applicazioni WEB professionali sviluppato e proposto da Interstudio.
Interstudio Tools contiene diverse applicazioni Web di carattere professionale, per progetto di cerchiature, elementi strutturali, per denunce di successione, computi metrici, determinazione di parametri sismici ec.
Ongi utente ha a disposizione uno spazio di archiviazione dei dati e per i propri documenti. Anche in questo caso i documenti sono normalmente accessibili solo all’utente e all’applicazione che li ha creati. L’utente può però gestire una lista di contatti e condividere i lavori con singoli o gruppi di altri utenti (collaboratori, clienti, enti di controllo).
I lavori inoltre possono essere esportati in vari formati standard, quali PDF, DOC, Excel, Open Office, DXF.
I vantaggi
Le applicazioni WEB come quelle di Interstudio Tools hanno, rispetto alle applicazioni tradizonali per PC, numerosi vantaggi, tra i quali:
- Possono essere utilizzati su qualsiasi dispositivo connesso a Internet con un browser standard
- Non dipendono dal sistema operativo. Mac Os, Windows, IOS, Android, Linux ed altri
- Possono essere utilizzati ovunque, in ufficio, a casa, in albergo, su un cantiere
- Non richiedono procedure di aggiornamento. Quando il software è aggiornato diventa immediatamente utilizzabile da tutti.
- Non richiedono nessuna istallazione, possono essere utilizzati direttamente, subito, senza tempi di download e spazio su disco.
- Il sistema provvede ad effettuare backup di sicurezza continuamente e ad aggiornare il sistema antivirus.
Maggiori informazioni su Interstudio Tools …
Maggiori informazioni sulla manifestazione “Scoprire l’Ingegneria” …