Il modello

PaaS, acronimo di Platform as a Service, è un servizio Cloud che fornisce una piattaforma e un ambiente di sviluppo e di distribuzione per lo sviluppo di applicazioni e softwarePaaS può essere considerato un modello ponte fra il lato applicativo (SaaS) e quello hardware/infrastrutturale (IaaS). L’offerta PaaS infatti, come l’offerta IaaS include Infrastruttura, Server, Archiviazione e Rete. Inoltre il Provider PaaS fornisce anche un ambiente di sviluppo e servizi aggiuntivi. Servizi, solo per fare qualche esempio, come Middleware, strumenti di sviluppo e di Business Intelligence e sistemi di gestione dei Database. I servizi PaaS risiedono sul Cloud, l’Utente accede ai servizi tramite il proprio Browser attraverso il collegamento Internet e inoltre può predisporre di un servizio di assistenza. I servizi vengono aggiornati continuamente dal Provider così come lo stesso si occupa di potenziare le funzioni e di implementarne di nuove.  

 

PaaS un servizio per gli sviluppatori

PaaS è stato pensato per gli sviluppatori, per consentire loro di beneficiare di un ambiente di sviluppo completo senza doversi far carico del lato gestionale dell’hardware.

PaaS è stato ideato infatti per supportare l’intero ciclo di vita di un’applicazione web. Bisogna considerare che lo sviluppo di un’applicazione non si limita esclusivamente alla semplice scrittura del codice e al test finale ma prevede lo svolgimento di diverse fasi, quali: scouting, progettazione sviluppo test e manutenzione. Ogni fase necessita per essere conseguita di software specifici e opportunamente configurati.

La preparazione di un ambiente di sviluppo comporta un costo in termini di tempo e una spesa economica proprio per questo PaaS si configura per le organizzazioni  come una scelta vantaggiosa.  

Nell’offerta PaaS possono essere incluse le seguenti funzioni:

  • Sistema operativo
  • Ambiente di programmazione (server)
  • Sistema di gestione database
  • Software server
  • Assistenza
  • Archiviazione
  • Rete
  • Strumenti per progettazione e sviluppo
  • Hosting

 

Utilizzi più comuni di PaaS

Gli Utenti solitamente utilizzano PaaS come:

  • Framework di sviluppo. PaaS assicura un framework grazie al quale gli sviluppatori possono sviluppare e customizzare le applicazioni basate sul cloud. Sono incluse nel servizio funzionalità cloud come scalabilità, disponibilità elevata e capacità multi-tenant che semplificano le attività di sviluppo.  
  • Analisi o business intelligence. Il servizio PaaS fornisce strumenti di analisi dei dati e strumenti che consentono di eseguire operazioni di data mining.  
  • Servizi aggiuntivi. Le soluzioni PaaS possono offrire servizi come flusso di lavoro, directory, sicurezza e pianificazione che agevolano e migliorano lo sviluppo delle applicazioni.

 

Accesso servizi PaaS

Si può accedere ai servizi PaaS solitamente attivando un abbonamento. L’Utente, come per altri servizi cloud paga solo ciò che consuma effettivamente. Si aggiunge a questo risparmio anche il vantaggio economico di approfittare delle economie di scala date dalla condivisione dell’infrastruttura fisica sottostante.

 

Vantaggi e svantaggi del modello PaaS

Il modello PaaS offre molti vantaggi. Sono da sottolineare quelli legati alle funzionalità aggiuntive, come middleware, strumenti di sviluppo e altri strumenti aziendali. Di seguito un breve elenco:

  • Eliminazione costi legati all’infrastruttura fisica. L’affitto di una infrastruttura virtuale rappresenta per l’organizzazione un risparmio notevole in quanto permette di ridurre le spese legate all’acquisto e alla gestione dell’hardware. L’Utente può noleggiare le risorse di cui necessita senza affrontare una spesa in capacità fisse che verrebbero inutilizzate e quindi sprecate.
  • Riduzione del time to market di un’applicazione. La riduzione dei tempi di scrittura del codice di un’applicazione dovuta a PaaS consente di di mettere in commercio l’applicazione in tempi più brevi. Inoltre il PaaS incrementa la collaborazione tra gli utenti del servizio, favorendo lo scambio di informazioni e di know how grazie ai suoi strumenti di sviluppo collaborativo. Il processo di sviluppo grazie al suo modello “collegiale” viene accelerato.       
  • Possibilità di usufruire di strumenti sofisticati a un prezzo contenuto. Il modello pay-as-you-go consente alle organizzazioni di utilizzare strumenti di analisi e business intelligence e software di sviluppo sofisticati senza sosterne le spese

Il PaaS presenta anche un importante svantaggio. Se da un lato il fatto di essere un’infrastruttura managed dà modo all’Utente di sgravarsi da compiti gestionali e di configurazionali dall’altro però ne riduce capacità di manovra perchè l’Utente risulta vincolato dalle scelte del Provider non avendo il controllo completo dell’infrastruttura come invece succede per le soluzioni Iaas.

 

Una soluzione alternativa: Elastic Beanstalk AWS

Come si è detto precedente le soluzioni PaaS presentano il grande svantaggio di ridurre la flessibilità dell’infrastruttura e di limitare il controllo di questa da parte dell’Utente.

Infatti, gli sviluppatori si trovano a dover accettare le decisioni predeterminate dal Provider, con opportunità ridotte o nulle di riprendersi il controllo sulle diverse parti dell’infrastruttura dell’applicazione.

Con AWS Elastic Beanstalk si dà la possibilità agli sviluppatori di mantenere il controllo completo sulle risorse AWS sottostanti alla propria applicazione e di scegliere se gestire alcuni o tutti gli elementi dell’infrastruttura usando con facilità le funzionalità di gestione di Elastic Beanstalk.