Piattaforma per applicazioni social
Liferay Portal offre un'eccellente piattaforma per la costruzione di applicazioni web, siti e portali, ma può anche essere usato per una nuova categoria di applicazioni web, le cosiddette "applicazioni social". La definizione è semplice: un'applicazione social è una applicazione web con in più la gestione dell'identità, dati, funzionalità e servizi social. Nella figura a sinistra, i riquadri in azzurro rappresentano la definizione di un'applicazione web di tipo tradizionale, mentre i riquadri in blu mostrano gli aspetti social. Innanzitutto (al centro), un'applicazione web tradizionale consiste di un'interfaccia utente pensata per l'accesso alle funzionalità base. Secondo (a sinistra), le applicazioni web sono spesso influenzate da una politica formale dell'identità. Terzo (in basso), le applicazioni hanno accesso ai dati in essa memorizzai o specifici dell'utente. Infine (a destra) le applicazioni sono spesso pensate per interfacciarsi con servizi esterni e sono costruite poggiandosi su sistemi esterni che ne realizzano parte della logica applicativa.
Praticamente ogni applicazione web può essere costruita come applicazione social, aumentando la produttività degli utenti. Liferay ha diverse funzionalità chiave per l'implementazione del social.
Sfruttare l'identità social aggiungendola all'identità formale
Le aziende spesso implementano un sistema trasversale per semplificare la gestione degli accessi. Le applicazioni sono configurate per accedere all'identità dell'utente da un archivio centralizzato, mentre sistemi di gestione dell'identità vengono utilizzati per l'aggiornamento delle informazioni. Questo tipo di architettura semplifica la gestione di una base ampia e dinamica di utenti che accedono ad un'altrettanto ampio e dinamico insieme di applicazioni. Inoltre permette il controllo ed il monitoraggio dato che tutte le account sono gestite centralmente e tutti gli accessi possono essere monitorati centralmente.
Il diagramma di destra mostra come Bob Smith sia identificato sia nella sua accezione formale che socia. Bob possiede un'identità formale che certificala sua appartenenza al reparto di Engineering, al Team di Engineering e al gruppo del progetto X; inoltre, Bob ricopre anche il ruolo di Manager. Questa identità formale è definita dalle policy, implementata dagli amministratori e spesso viene regolamentata secondo la normativa SOX (Sarbanes-Oxley Act).
Applicazioni web tradizionali possono essere sviluppate per arricchire un'identità formale tramite diversi metodi (ad es. controllo accessi semplice, controllo accessi specifico ad un nodo, content delivery in base al ruolo, o addirittura accesso a workflow). Tuttavia, gli utenti possono venire identificati da altro che la loro identità formle, definita dall'alto. Possono essere identificati anche dalla loro identità social. "Identità Social" è la definizione data all'insieme delle amicizie, gruppi e community di appartenenza di un individuo. Le applicazioni social accrescono l'identità social di una persona in diversi modi (ad es. stream attività, sotto raggruppamenti, accesso a risorse, esclusione ad altre risorse, delega). Nel grafico a sinistra, Bob ha accesso ad un sito web collaborativo, che conosce che lui ha una rete di amici diversa da quella di Steve e di Joe. Le attività e le applicazioni saranno a disposizione di altri nella rete di Bob se sarà lui a darne i diritti di accesso, nel qual caso tutti saranno abilitati ad utilizzarne i contenuti e le applicazioni. Mentre la community è di per se una applicazione social, le applicazioni disponibili nella community possono a loro volte essere social in base all'ambito dei loro dati (vedi sotto).
Incremento dei dati Social espandendo l'ambito dei dati
Un'applicazione social è spesso progettata per avere un ambito dei propri dati che è più o meno ampio in base all'identità social dell'individuo. Nel diagramma, vediamo come l'applicazione sula sinistra sia un'applicazione web tradizionale, mentre quella di destra rappresenti un'applicazione social. L'applicazione tradizionale ha a disposizione i dati dell'applicazione stessa, ma Bob può vedere solo i dati associati a se stesso Per esempio un'applicazione calendario permetterebbe a Bob di creare degli eventi per se stesso; tuttavia, Steve non potrebbe vedere gli eventi di Bob e viceversa. Se Bob usasse un'applicazione social, egli vedrebbe i suoi dati così come quelli relativi a tutti gli appartenenti al progetto Y. Per esempio un calendario del team permetterebbe a tutti i membri di creare degli eventi e darebbe modo ad ognuno di vedere gli eventi creati dagli altri. L'espansione dell'ambito dei dati permette ad un gruppo autoconsistente di lavorare su un'applicazione sia come team che individualmente..
Incremento di funzionalità e servizi social esistenti nelle applicazioni social
Le applicazioni social possono essere realizzate utilizzando funzionalità o servizi social già esitenti nella piattaforma. Per esempio, un'applicazione social potrebbe comprendere una document library condivisa, un servizio di sottoscrizione a feed RSS od un wiki. Liferay mette a disposizione molte funzionalità ed applicazioni di natura collaborativa che possono essere combinate per rispondere ai requisiti di implementazione. Questi servizi sono raggruppati in categorie come mostrato sotto. Più che aggiungere semplicemente dei link, ognuna può diventare un servizio all'interno di un'applicazione social. La capacità di un portale di costruire un'applicazione a partire da un insieme di moduli, in cui le funzionalità sono raggruppate in una o più pagine web, aiuta a rendere l'applicazione personalizzabile, semplificando la crescita delle funzionalità nel tempo.
Liferay come container per OpenSocial
Le applicazioni social possono implementare ognuna le proprie logiche social o andare ad estendere un repository centrale di identità social. Liferay 6.0 implementa OpenSocial, che definisce sia un metodo per eseguire gadget e widget, sia un metodo comune per memorizzare e dare accesso all'identità social. Questo permette alle imprese di utilizzare Liferay come una fonte autorizzativa per le informazioni relative all'identità social. Una singola istallazione Liferya in un'impresa permette agli utenti di creare una pagina di profilo, sviluppare un network di amicizie, creare e gestire nuove community o aderire ad esistenti. Questo bacino di dati social può poi venire utilizzato da altre applicazioni installate nello stesso Liferay portal.
Liferay come un archivio centralizzato di identità social
In aggiunta, dato che Liferay estende lo standard OpenSocial, e dato che Liferay esternalizza la definizione di network di amicizie, una singola implementazione di Liferay può essere vista come un archivio centralizzato di identitià per il social networking come mostrato nell'immagine a sinistra. Applicazioni che supportano OpenSocial possono fare riferimento a questa istallazione Liferay e sfruttarlo come repository di identità social. Le aziende che implementano questo metodo saranno in grado di sviluppare un unico archivio per la gestione dell'identità, abilitando un unico punto per la definizione (ed il controllo) delle regole di collaborazione.