BEEing

23
Noi crediamo nella collaborazione BEEing. The Enterprise 2.0 Open Source Project http://www.smartfeeling.org/beeing

description

BEEing è il primo progetto italiano Open Source per la realizzazione di soluzioni Enterprise 2.0, social intranet e portali collaborativi. BEEing è scritto in Java, è facilmente personalizzabile, robusto ed offre un'interfaccia grafica molto accattivante ed intuitiva.

Transcript of BEEing

Page 1: BEEing

Noi crediamo nella collaborazione

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 2: BEEing

Benvenuti nell'Enterprise 2.0!

BEEing è uno strumento che permette di realizzare piattaforme per la gestione didocumenti, progetti e flussi di dati, facendo diminuire i costi e offrendo la possibilità diavere un sistema personalizzato sulle proprie esigenze aziendali, favorendo lacondivisione della conoscenza.

L'utilizzo di BEEing è molto semplice, non è necessario alcun corso di formazione persfruttare al meglio tutte le potenzialità del framework ideato per snellire i processi dilavoro, ridurre i costi di gestione e garantire la condivisione di informazioni,documenti e conoscenze nell'azienda.

BEEing è distribuito sotto licenza open source, offrendo la possibilità agli utenti finali dipotenziare e personalizzare ulteriormente il sistema, senza tralasciare le caratteristichepeculiari del proprio business.

Perché scegliere BEEingIl sistema permette di avere il pieno controllo dei processi produttivi in modo sempliceed economico, garantendo la possibilità di personalizzare le funzioni in base alle proprieesigenze.

Avere processi ben organizzati e facilmente gestibili permette alle aziende di ridurre lospreco di tempo e denaro, ottimizzando le risorse per raggiungere gli obiettiviprefissati nel miglior modo possibile.

I vantaggi di BEEing: leggero, economico epersonalizzabileIl sistema è stato ideato in modo da avere una serie di moduli standard capaci diassolvere alle più comuni esigenze aziendali, offrendo la possibilità di installare nuovefunzioni qualora se ne avesse l'esigenza.

A costi di sviluppo molto bassi si contrappongo standard di efficienza e qualità moltoalti, basati anche sulla semplicità di utilizzo del sistema, che non richiede onerosiinvestimenti in corsi di formazione del personale.

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 3: BEEing

Indice dei contenuti

Benvenuti nell'Enterprise 2.0!............................................................. 2Licenza ............................................................................................... 4Introduzione....................................................................................... 5Api, Alveari e Miele (una curiosità su BEEing) ..................................... 6I Moduli principali ............................................................................... 7BEEing parla "Multilingue" .................................................................. 8BEEing conosce i suoi utenti. ............................................................ 10

Gli attributi utente nelle regole di accesso .............................................10Il Wiki ............................................................................................... 12

I Template e le Pagine .......................................................................12I Widgets .........................................................................................12I documenti del wiki...........................................................................13La pagina del wiki..............................................................................15Modifica e revisione di una pagina e dei suoi allegati ..............................18

La Dashboard.................................................................................... 20Il Team ............................................................................................. 22

Gian Angelo Geminiani .......................................................................22Andrea Bertozzi.................................................................................22Alexandro Scarnicchia ........................................................................22Roberto Fratti ...................................................................................22Paolo Acciai ......................................................................................22

Links ................................................................................................. 23

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 4: BEEing

Licenza

BEEing è un software Open Source distribuito con licenza GPLv3.Il testo ufficiale completo della licenza può essere scaricato da qui:http://www.gnu.org/licenses/gpl.txt

La versione in italiano, non ufficiale, potete trovarla a questo indirizzo:http://softwarelibero.it/gnudoc/gpl.it.txt

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 5: BEEing

Introduzione

BEEing nasce nel 2004 come framework java per lo sviluppo di soluzioni Intranet/Extranetsociali.L'esigenza da soddisfare era quella di uno strumento per lo sviluppo agile in team di progettirobusti e sicuri, flessibili, facilmente integrabili a sistemi ERP esistenti ed al contempo conun'interfaccia utente intuitiva ed accattivante.

Dal 2006 la piattaforma si è notevolmente evoluta, integrando al suo interno diversiframework e librerie Open Source (EclipseLink, ZK, Jasper, JakartaCommons, JakartaVelocity, iText, Rome, ecc..) fino a diventare un Application Server robusto, molto potente eflessibile.

Dal 2008 il Team di Sviluppo ha dato inizio ad una seconda fase evolutiva del framework,cioè al passaggio di BEEing da framework ad applicazione utilizzabile chiavi in mano.Ai moduli base sono stati affiancati una serie di moduli applicativi pronti all'uso.Ogni modulo applicativo porta con se un'estensione della base dati principale, nuove classidi oggetti, nuovi widgets, nuovi componenti grafici e nuove pagine.

In futuro è possibile che alcuni moduli siano distribuiti come plug-in, e quindi non venganodirettamente integrati nel pacchetto base (es: il modulo di configurazione prodotto).La distribuzione separata di alcuni plug-in specifici consente al modulo “CORE” di mantenereun peso ridotto e un minor numero di parametri di sistema.Tutti i moduli ed i plug-in sono distribuiti completi di codice sorgente, compresiquelli di integrazione a sistemi proprietari (es: modulo per SAP/R3).I moduli di integrazione a sistemi proprietari possono richiedere, per un correttofunzionamento, la presenza di librerie di terze parti e delle relative licenze d’uso (nondistribuite coi moduli BEEing)

Il framework di sviluppo è stato progettato con un’architettura modulare e basata sulconcetto di plug-in.La stratificazione del codice e dei package secondo una logica a “layer funzionali” consenteuna miglior manutenzione anche nel lungo periodo e favorisce lo sviluppo in team grazie aduna chiara e semplice suddivisione dei compiti.

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 6: BEEing

Api, Alveari e Miele (una curiosità suBEEing)

BEEing è stato progettato con in mente una metafora legata al mondo delle api.BEEing non è solo un software collaborativo, ma è stato realizzato secondo una ben definitafilosofia di collaborazione, quella delle api.

Le api sopravvivono grazie al gruppo ed alla loro struttura sociale.La collaborazione tra le api è un concetto basilare, ecco perchè nel progettare unostrumento che stimolasse e supportasse la collaborazione ci siamo ispirati proprio alle api.

Anche le idee hanno una certa affinità con le api.Il ciclo di vita delle api è piu’ o meno questo: uovo, larva, pupa, adulto.Quando nella nostra mente (fisica o diffusa che sia) nasce un’intuizione, questa è come unuovo. E’ tutt’altro che definita, ed è molto lontana sia nella forma che nella sostanza daquello che diverrà una volta passata allo stadio “adulto”.In realtà non sappiamo neppure se quell’uovo diventerà mai una larva, e se la larva troveràl’energia per diventare pupa o se la pupa avrà nutrici che la porteranno allo stadio di adulto.Ecco, “energia” e “nutrici“, queste sono i concetti chiave che sovrintendono partedell’esistenza di un’ape.

Le api esistono perche esiste l’alveare.Ma l’alverare non è solo un luogo o un’entità fisica, l’alveare sono anche le altre api.Cosa diventa un uovo? Pensate, in 16 giorni può diventare regina, in 21 giorni diventaoperaia o nutrice ed in 26 diventa un fuco.L’alveare esiste perchè esistono le api, e le api esistono grazie alle loro interazioni neidiversi stadi del loro sviluppo.

In BEEing gli oggetti sono BEE, cioè api.Le api (classi di oggetti java) si specializzano per lo svolgimento di diversi compiti.Con la stessa logica abbiamo progettato componenti e widgets, come elementiinteroperabili e pronti a specializzarsi nell'adempimento di qualche compito.HIVE è l'ambiente in cui agiscono gli oggetti java (classi, api) ed HONEY è il risultato ditanto lavoro e collaborazione.

In definitiva possiamo dire che BEEing è frutto di una nuova "api-cultura".

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 7: BEEing

I Moduli principali

• CORE: Contiene le classi base del framework e l’integrazione con alcune librerieopen source (es: rome, Json, ZK, OpenJpa);

• WEBAPP: E’ il cuore dell’application server e raggruppa in se il modulo Json-Rpc, ilwiki, il blog, la gestione utenti, la gestione dei profili, il datastore ed i componentibase per la gestione delle dashboard e dei widgets, la gestione multilingua;

• ADMIN: E’ un plug-in di sistema e contiene tutte le maschere e le logiche diamministrazione (variazione dei parametri di configurazione, definizione dellecostanti di sitema, gestione delle lingue, gestione delle localizzazioni);

• KNOL: Contiene l’interfaccia grafica del modulo wiki, del modulo gestioneconoscenza e del modulo di gestione del datastore (per l’archiviazione dei fileallegati);

• BLOG: Contiene l’interfaccia grafica del modulo blog;• RSS: Contiene le logiche di conversione dei contenuti in formato RSS;• TRACKBACK: Modulo di gestione dei trackback;• FLASHGATEWAY: Plug-in di integrazione con librerie Flash Remoting (Adobe Flash)

per l’integrazione con Flash;• SAP/R3 CONNECTOR: Plug-in per l’integrazione con SAP/R3 (richiede librerie

proprietarie SAP che non vengono distribuite con BEEing)

E' possibile che in futuro i nomi dei moduli subiscano delle variazioni.Il modulo FLASHGATEWAY è stato deprecato per lasciare il posto a JSON-RPC.Il modulo SAP/R3 CONNECTOR è opzionale e può essere installato solo in caso di necessità.

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 8: BEEing

BEEing parla "Multilingue"

Una delle caratteristiche principali di BEEing è il supporto nativo per la gestione dellelingue.Le applicazioni realizzate in BEEing godono di un supporto multilingua nativo.

Ogni pagina ed ogni modulo possono essere localizzati in qualunque lingua. Anche idocumenti e le pagine del wiki (o i post del blog) possono essere distribuiti in linguedifferenti.

Per esempio, possiamo avere una pagina wiki tradotta in piu' lingue contemporaneamente,senza dover per forza generare un nuovo documento o una nuova pagina.

BEEing tiene traccia del profilo dell'utente collegato e delle sue preferenze. Quando unutente sfoglia una pagina o un documento, BEEing cerca la localizzazione piu' adatta traquelle implementate. In questo modo ogni utente sfoglierà le pagine applicative nellapropria lingua nativa o, in alternativa, nella lingua di sistema (definita dall'Amministratore).

Le lingue distribuite col modulo base sono:• Italiano• Inglese• Francese• Tedesco• Spagnolo• Polacco• Russo

Gli implementatori (o gli Amministratori di Sistema) possono facilmente aggiungere nuovelingue semplicemente dichiarandole nella console di amministrazione.

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 9: BEEing

Una volta dichiarate le lingue da supportare è possibile procedere con l'inserimento delletraduzioni necessarie (le lingue di sistema distribuite nel modulo base sono complete ditutte le traduzioni necessarie).

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 10: BEEing

BEEing conosce i suoi utenti.

Oltre al supporto multilingue, BEEing contiene un profilo di autenticazione utente moltodettagliato e personalizzabile.

Oltre ai campi standard dell'account utente possiamo definire dei ruoli da assegnare ainostri utenti, dei campi personalizzati da riutilizzare nelle applicazioni personalizzate (es:campo "codice cliente" del sistema ERP), delle proprietà custom ed una serie di impostazioniavanzate per una migliore profilazione dell'utente stesso (regole di accesso al wiki, al blog,ai gruppi, ecc..).

Gli attributi utente nelle regole di accesso

Tutti gli attributi (campi, ruoli, proprietà) del nostro utente possono essere utilizzati percontrollare l'accesso dell'utente all'interno dell'applicazione.

Le funzionalità di sistema prevedono tre tipologie di controllo degli accessi:• Accesso alla visualizzazione del documento• Accesso alla modifica del documento• Accesso alla condivisione del documento

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 11: BEEing

Nell'immagine qui sopra viene riportato l'esempio di una pagina del wiki con regola diaccesso personalizzata (consenti l'accesso ai soli utenti che hanno il ruolo"amministratore"). Nello stesso modo possiamo creare regole di accesso, scrittura econdivisione dei documenti con un livello di dettaglio molto elevato.

Dato che le regole di accesso possono fare riferimento a qualunque attributo dell'utente, èpossibile creare regole di accesso in grado di filtrare anche il solo singolo utente (es:"consenti a tutti, ma non a Mario Rossi").Oppure potremmo inibire l'accesso a chi non ha come lingua base l'italiano, o a chi non è uncollaboratore del documento, ecc..

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 12: BEEing

Il Wiki

BEEing è stato pensato come un wiki "widget enabled".Ogni pagina applicativa (oltre alle pagine del wiki) è una pagina del wiki principale ecome tale ne eredita tutte le caratteristiche (versioning, allegati, annotazioni, rating,subscriptions, ecc..).

Tuttavia, per ovvi motivi funzionali, non tutte le pagine abilitano di default le funzionalità delwiki. Le pagine di sistema, per esempio, o i form per l'inserimento dei dati non presentanola gestione della versione, il supporto agli allegati o i commenti degli utenti.

I Template e le Pagine

Template e Pagine sono strettamente correlati.Quando sfogliamo una qualunque delle pagine di BEEing, stiamo visualizzando una versionelocalizzata (in lingua) di un template.

Ogni template può generare un numero indefinito di pagine che differiscono tra loro incontenuti, lingua e funzionalità.Tutte le pagine del wiki, per esempio, fanno capo ad un unico Template (TemplateWikiPage)per layout, funzionalità, numero di widgets abilitati, ecc...

L'importanza della relazione tra Template e Pagine sta nel fatto che variando uno qualunquedegli attributi del Template, tutte le Pagine correlate subiranno la stessa modifica (se nondiversamente specificato nelle impostazioni del template o della pagina).

Questa caratteristica di ereditarietà tra Pagine e Template rende estremamente sempliceeffettuare implementazioni e modifiche alle nostre applicazioni e distribuirle all'interno dellapiattaforma.Per esempio, potremmo variare la pagina Home di tutti i nostri utenti aggiungendo unwidget con le news aziendali o con un feed RSS, semplicemente variando il layout del suotemplate.

Va da sè che i costi di gestione ed implementazione delle applicazioni realizzate con BEEingsono molto bassi.

I Widgets

I Widgets sono moduli UI (User Interface) riutilizzabili. Un widget contiene sempreun'interfaccia grafica e delle logiche applicative.Inoltre i widgets possono essere inseriti anche all'interno dei documenti del wiki,esattamente come fossero del testo o delle immagini.

La possibilità di inserire widgets dinamicamente all'interno di una pagina wiki fornisce adogni utente la capacità di trasformare in un'applicazione un documento del wiki stesso.

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 13: BEEing

Per fare un esempio concreto, potremmo inserire all'interno di un documento wiki il widgetper la gestione del calendario di una riunione, oppure il widget con un breve questionario oquello col il feed RSS delle attività del nostro gruppo commerciale su Facebook, oppurequello con i grafici del fatturato trimestrale collegato live al sistema ERP.

I widgets arricchiscono notevolmente i nostri documenti e li rendono interattivi e molto piu'produttivi.

Esempio di widget per la condivisione di un documento.

I documenti del wiki

Il wiki organizza le informazioni in documenti.I documenti possono essere relazionati tra loro mediante un rapporto di dipendenza direttao mediante tag.

Nella figura sovrastante è visiblie la normale rappresentazione ad albero.Possiamo inoltre osservare che BEEing consente di relazionare tra loro anche documenti enon solo cartelle con documenti o altre cartelle (Es: "Read Me" è padre di "F.A.Q", il quale asua volta contiene "Upload File").

Ogni documento o cartella può essere aggiunto ai "Preferiti".

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 14: BEEing

oppure taggato

"L'Albero di Navigazione delle Risorse", i "Tag Personali" ed i "Preferiti" sono gli strumentiprincipali che si affiancano al motore di ricerca interno per l'individuazione dei documenti.

Oltre a questi strumenti esistono numerosi widget che mostrano all'utente i documenti da luicreati, quelli a cui è collaboratore o quelli a cui si è iscritto.

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 15: BEEing

La pagina del wiki

Un documento del wiki è una Pagina speciale, con un proprio Template.Il Template standard distribuito con BEEing prevede:

• Titolo del documento• Breve descrizione del documento• Corpo del documento

◦ Editor wysiwyg (testo, tabelle, link, formattazione, ecc..)◦ Aggiunta di immagini◦ Aggiunta di widgets

• Commenti• Widget per la modifica dei livelli di accesso• Widget di gestione e revisione allegati• Widget Tag (sistema, personali, sociali)• Widget Preferiti• Widget Collaboratori• Widget Iscrizione

Di seguito potete trovare la pagina del wiki divisa nelle varie sezioni che la compongono.

Titolo, Descrizione, Corpo e Commenti.

Regole di accesso al documento

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 16: BEEing

Gestione e revisione allegati

Documenti correlati

Tag

Preferiti

Condivisione

Collaboratori

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 17: BEEing

Iscrizioni al documento

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 18: BEEing

Modifica e revisione di una pagina e dei suoi allegati

Ogni Pagina e ogni Documento sono opzionalmente modificabili e revisionabili.L'opzione di modifica è legata a due parametri:

• Impostazioni del Template (esistono template per pagine read-only)• Diritti di accesso dell'utente

Se la pagina è modificabile apparirà in alto a destra questo bottone:

Cliccando sul bottone di modifica è possibile accedere alla modalità EDIT della pagina. Inquesta modalità alcuni widget cambiano di aspetto, mostrando una serie di opzioni primainvisibili.

Nella figura sovrastante si nota l'editor di testo, il box sottostante di selezione della lingua e,sulla destra, il widget di spostamento/eliminazione della pagina, il widget di modifica delleregole di accesso alla pagina stessa.

Anche in questa nuova modalità, non tutte le opzioni sono visibili a chiunque.Il profilo dell'utente informa il sistema di quali opzioni possano essere abilitate e quali no.

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 19: BEEing

Per esempio, solo gli Amministratori ed i Proprietari di un documento possono rimuoverlo ospostarlo, così come revisionarle o eliminarne gli allegati.

La revisione degli allegati è un'attività molto semplice.

Cliccando sul bottone "Revisione Allegati", il sistema consente all'untente di cambiare lostato di un allegato passandolo dallo stato "Scaricabile" allo stato "In Revisione".

A questo punto il file non sarà piu' scaricabile e gli utenti verranno avvisati del cambiamentodi stato mediante un apposito box informativo.

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 20: BEEing

La Dashboard

La versione base di BEEing dispone di una serie di Pagine utente tra cui il Profilo e laDashboard.La Dashboard è una sezione personalizzabile dall'utente stesso predisposta per ospitarewidgets.

Anche per la Dashboard valgono i concetti di sicurezza espressi per le Pagine in generale.Se l'utente è autorizzato ha la possibilità di aggiungere o rimuovere widgets dallaDashboard, così come aggiungere o rimuovere sezioni (Dashboard Tabs).Diversamente la Dashboard non presenta interazioni particolari ed i widgets visibili sarannoesclusivamente quelli impostati dall'amministratore di sistema.

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 21: BEEing

Qui sopra un esempio di Dashboard personalizzabile dall'utente.

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 22: BEEing

Il Team

Gian Angelo Geminiani

Ruolo: Responsabile di ProgettoE’ il fondatore del progetto ed il progettista del framework. Ha operato per diversi anni

come Project Manager ed Achitetto Software su diversi progetti commerciali nel settore dellaconfigurazione di prodotto (tecnica e commeciale), C.R.M., intranet, extranet, social media, automazioneindustriale e computer vision.Link: Sito personale, Blog Smartfeeling, Profilo su Kenai

Andrea Bertozzi

Ruolo: SviluppatoreDedica parte del suo tempo libero allo sviluppo di BEEing.Link: Su Facebook

Alexandro Scarnicchia

Ruolo: SviluppatoreAma la bici e BEEing.Link:

Roberto Fratti

Ruolo: SviluppatoreSi diverte a sviluppare BEEing e studia per specializzarsi in Ingegneria e Informatica.Link: Su LinkedIn

Paolo Acciai

Ruolo: SviluppatoreImpegnato nello sviluppo del progetto BEEing e soluzioni informatiche a 360°.Link: Su Facebook, Su LinkedIn, Sito Personale

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing

Page 23: BEEing

Links

Download da SourceForge: https://sourceforge.net/projects/beeing/

Blog: http://www.smartfeeling.org/beeing

Sorgenti su Kenai: http://kenai.com/projects/beeing

Il Team: http://www.smartfeeling.org/beeing/about/

BEEing. The Enterprise 2.0 Open Source Project

http://www.smartfeeling.org/beeing