• Non ci sono risultati.

Nel periodo di svolgimento del progetto di tesi, Jaspersoft presenta sul mercato una soluzione open source, denominata Community Edition, e una versione a pagamen-to, ovvero Commercial Edition (comprensiva di funzionalit`a aggiutive). La scelta di

2.2 La struttura della suite 17 Sisal per la ristrutturazione del proprio sistema di reportistica ha indicato in Ja-spersoft Community Edition il candidato ideale, in quanto esso soddisfa pienamente le esigenze di progetto. Per acquisire conoscenza con il software, in questa sezione si analizza la composizione della suite.

2.2.1 Tecnologia utilizzata

Il codice sorgente di Jaspersoft `e definito mediante il linguaggio Java, mentre i report generati sono memorizzati con un formato proprietaro di XML, identificato dall’estensione .jrxml e definito in un file DTD (Document Type Definition, uno strumento utilizzato dagli sviluppatori per definire le componenti ammesse nella costruzione di un documento XML).

Prima di essere eseguito, ogni report deve essere precedentemente compilato; ci`o rende necessaria l’installazione sulla macchina di Java SDK (Software Development Kit, Figura 2.3), ovvero la piattaforma per lo sviluppo e l’esecuzione di software, dal momento che i report compilati sono Java byte-code.

Figura 2.3. Il marchio identificativo di Java

E possibile, attraverso Java, JavaScript e Groovy, scrivere delle espressioni che` funzionino come formule nella compilazione dei report, ad esempio come filtro sui dati, come esecuzione dei calcoli o come elaborazioni di testo.

Infine, per la realizzazzione dei grafici all’interno dei report, Jaspersoft utilizza il motore JFreeChart.

2.2.2 Architettura

La Community Edition di Jaspersoft offre il download gratuito dei propri software;

`e possibile usufruire di uno o pi`u tool, a scelta dell’utente. La decisione dell’azienda produttrice `e, infatti, per questa edizione, di mantenere separati i componenti della propria famiglia di software.

Jaspersoft si compone di 5 moduli. Il primo di questi, Jaspersoft Studio, `e un editor Eclipse-based che, tramite interfaccia grafica (Figura 2.4), consente la generazione e il design dei report.

E possibile, inoltre, costruire query di report e definire espressioni complesse; in` aggiunta, `e possibile utilizzare diverse componenti di layout, come grafici, mappe e

18 2 Perch`e Jaspersoft

Figura 2.4. L’interfaccia grafica di Jaspersoft Studio

tabelle. I documenti costruiti mediante Jaspersoft Studio possono essere esportati in molteplici formati, quali HTML, PDF, CSV, JSON, XML, Word e RTF. Il tool `e, inoltre, in grado di accedere a diverse tipologie di sorgenti di dati, inclusi big data, CSV, Hibernate, JavaBeans, JDBC, JSON, NoSQL.

Al suo interno sono presenti, gi`a preconfigurate, connessioni a numerose solu-zioni di DBMS; tale insieme pu`o essere espanso molto agevolmente, in quanto `e possibile inserire nuove tipologie di connessione (ad esempio, `e possibile configurare la connessione a un database gestito da DBMS Oracle tramite la semplice importa-zione dell’opportuno connettore, facilmente reperibile dal sito di Oracle). Il modulo offre, in aggiunta, la possibilit`a di installare un database, gestito tramite DBMS PostgreSQL. Infine, Jaspersoft Studio `e distribuito sia come plug-in di Eclipse che come applicazione stand-alone, ed `e in grado di effettuare analisi delle performance tramite il tool Java Profiler.

Il secondo software svolge il ruolo di server per la fruizione dei report ed `e deno-minato JasperReports Server. In questo modulo, i report costruiti mediante Jasper-soft Studio possono essere caricati per poter essere, ogniqualvolta viene richiesto, eseguiti o esportati. `E prevista la possibilit`a di programmare l’esecuzione di un re-port, anche indicando una cadenza regolare. L’accesso al server per la consultazione

`

e possibile sia da piattaforma web, tramite i pi`u comuni browser, che da mobile, mediante un’applicazione sviluppata da Jaspersoft e denominata JasperMobile. Il server prevede, per gli utenti, una richiesta di username e password per effettuare il login (Figura 2.5); per l’amministratore vengono messe a disposizione una serie di funzioni per la gestione del server, come l’attribuzione di ruoli ai vari utenti, per

2.2 La struttura della suite 19 circoscrivere, se necessario, l’accesso ai report o al server stesso.

Figura 2.5. La pagina di login del server, raggiungibile tramite browser web

I due moduli descritti finora saranno utilizzati per la realizzazione del progetto.

In aggiunta ad essi, Jaspersoft Community Edition prevede la presenza di ulteriori componenti, descritte di seguito:

• JasperReports Library; il motore di reporting open source di Jaspersoft, scrit-to completamente in linguaggio Java, in grado di acquisire dati da numerose sorgenti e stampare ed esportare i documenti creati in numerosi formati.

• Jaspersoft ETL; il modulo di data integration, basato sul motore sviluppato da Talend, in grado di effettuare, con ottime prestazioni, le operazioni di estrazione, trasformazione e caricamento di dati acquisiti da un sistema transazionale e do costruire Data Warehouse e Data Mart.

• iReport Designer; il modulo per il design di report; rimane disponibile per gli utenti, ma non viene pi`u supportato dal team di sviluppo, poich`e le sue funzionalit`a sono oggi integrate in Jaspersoft Studio.

2.2.3 Punti di forza

Jaspersoft occupa una posizione di rilievo nello scenario open source dei software di reportistica, grazie a numerose qualit`a, riconosciute dai suoi molti clienti. Sono proprio le caratteristiche del software, conformi alle esigenze di progetto, che hanno indirizzato Sisal verso la scelta di Jaspersoft.

In primis, menzioniamo la rapidit`a ed efficienza nella creazione di reportistica statica, garantita dall’approccio pixel positioning di Jaspersoft Studio, dove l’utiliz-zatore pu`o liberamente posizionare gli elementi del report all’interno del documento e formattare gli stessi individualmente, avendo un maggiore controllo sull’aspetto del prodotto finale.

20 2 Perch`e Jaspersoft

Inoltre, le meccaniche per la fruibilit`a dei report che Jaspersoft mette a dispo-sizione, grazie a JasperReports Server, risultano essere estremamente accattivan-ti per Sisal, soprattutto grazie alla possibilit`a di consultazione dei report tramite applicazione mobile.

L’integrazione con LDAP permette l’utilizzo di un database di autenticazione esterno per l’accesso al server Jaspersoft, eliminando la necessit`a della duplicazione o della creazione di account esclusivi a JasperReports Server.

Nella scelta del software per la realizzazione del nuovo sistema di reportistica, risulta importante valutare l’esperienza pregressa del programma, dell’azienda di sviluppo e la costanza di aggiornamento del codice. A tal proposito, Jaspersoft `e presente sul mercato da molti anni, aggiornando periodicamente i propri prodotti, come dimostrato dai moduli scelti per il progetto, entrambi aggiornati al 2016.

Ulteriore punto a favore di Jaspersoft `e la capacit`a di effettuare reportisti-ca tabellare e di esportare i documenti, rendendo gli stessi facilmente leggibili e distribuibili.

Infine, `e da notare l’ottima reputazione che Jaspersoft vanta sul web, di cui ge-stisce, inoltre, la community (Figura 2.6), parte importante del progetto sin dai suoi albori e spesso in grado di proporre soluzioni che sfruttino al meglio le funzionalit`a del software.

Figura 2.6. La home page della community di Jaspersoft

Documenti correlati