AreeProduttive
AreeProduttive
26/04/2012
XEngine
1
Sommario
Sommario ........................................................................ 1
Descrizione del sistema................................................... 2
Attori ............................................................................... 3
Profili applicativi ............................................................. 3
Ruoli arpa ........................................................................ 4
Macrofunzionalità ........................................................... 4
Funzionalità ..................................................................... 5
Componenti utilizzate, stack tecnologico ....................... 7
Modello dati complessivo ............................................... 9
6/2/2017
XEngine
2
Descrizione del sistema
Il sistema si compone di cinque distinti
moduli applicativi finalizzati
all’inserimento e alla gestione di proposte
localizzative sul territorio toscano:
A. AreeProdPUB: modulo per
l’inserimento di opportunità
localizzative con accesso libero
B. AreeProdCNS: modulo per l’inserimento di opportunità localizzative con accesso tramite CNS
C. AreeProdEngine: modulo applicativo per la gestione della creazione delle istanze di
modulistica che l’utente deve compilare per poter inoltrare una proposta localizzativa
D. AreeProdBO: modulo di back office per la verifica, da parte del personale addetto di Regione
Toscana (con accesso tramite smart card), delle proposte localizzative pervenute e che
potranno essere pubblicate o rifiutate
E. AreeProdFE: modulo di ricerca per la libera consultazione delle proposte localizzative
pubblicate.
6/2/2017
XEngine
3
Attori
L’accesso alle varie applicazioni è strettamente connesso alle funzionalità implementate dai moduli
stessi; di seguito il riepilogo per specifica applicazione:
Modulo d’inserimento senza CNS
Rivolto al generico utente, sia privato cittadino che ente pubblico, non necessita di alcuna credenziale;
l’applicazione si configura a libero accesso.
Modulo d’inserimento con CNS
Rivolto al generico utente, sia privato cittadino che ente pubblico, necessita per l’accesso l’utilizzo di
una smart-card con certificato digitale di riconoscimento; questo permette l’utilizzo di funzionalità
integrative rispetto alla versione senza CNS.
Il profilo applicativo di accesso è quello di Cittadino.
Modulo di generazione modulistica
Il modulo AreeProdEngine non necessita di profilatura applicativa poiché è un motore di persistenza
per la generazione e recupero dati, orientato ai servizi a sua volta fruito da sottosistemi software. Il
modulo d’inserimento proposte online fruisce questo modulo via API, ovvero utilizzando una
componente di tipo libreria.
Modulo di Back Office
L’applicazione è destinata esclusivamente ad uno specifico e ben determinato sottoinsieme dei
dipendenti regionali.
Il profilo applicativo di accesso è quello di Dipendente Giunta Regionale, limitato da una ulteriore lista
di Codici Fiscali ammissibili.
Modulo di ricerca
Rivolto al generico utente senza distinzione di sorta, non necessita di alcuna credenziale;
l’applicazione si configura a libero accesso.
Profili applicativi
Sulla base degli attori sopra descritti, si fornisce l’elenco dei profili gestiti all’interno delle varie
applicazioni:
o
Cittadino, inserisce la domanda di presentazione per una generica proposta localizzativa.
o
Dipendente Giunta Regionale, ha la gestione completa, quindi può visualizzare, valutare e
archiviare tutte le proposte inoltrate.
6/2/2017
XEngine
4
Ruoli arpa
Applicazione
Profilo Applicativo
Ruolo Arpa
AreeProdPUB
---
---
AreeProdCNS
Cittadino
Cittadino
AreeProdEngine
---
---
AreeProdBO
Dipendente Gunta Regionale
Dipendente Gunta Regionale
AreeProdFE
---
---
Macrofunzionalità
Modulo d’inserimento (con e senza CNS): Inserimento/Modifica di una proposta localizzativa
Engine: Creazione istanza modulistica
Back Office: Gestione proposta localizzativa (pubblicazione o ricusazione)
Modulo di Ricerca: Ricerca di una proposta localizzativa
6/2/2017
XEngine
5
Funzionalità
Modulo applicativo
Nome
Descrizione
Front End
Inserimento
Engine
Back Office
Front End
Ricerca
Inserimento proposta
Permette la compilazione on-line dei moduli per
l’inoltro di una proposta localizzativa; utilizzando
l’istanza senza CNS è necessario procedere
anche all’invio di una copia in formato cartaceo,
debitamente compilata e firmata, degli stessi
moduli.

Modifica proposta
Permette il completamento di una proposta
interrotta e salvata, o la modifica ed il reinoltro
di una proposta già inviata.

Lista proposte
Permette la visualizzazione dell’elenco delle
proposte presentate tramite l’istanza con CNS
oppure il richiama di una singola proposta
inviata dall’istanza pubblica (senza CNS) tramite
il suo identificativo univoco. Da qui è anche
possibile procedere alla modifica di una
proposta.

Creazione modulistica
Costruisce il terno dati in formato dati xml che
permette d’istanziare il modulo on-line per
l’inserimento di una proposta localizzativa

Gestione proposta – presa in carico
Permette di prendere in carico una proposta: è il
primo passo per poi procedere alla sua
valutazione. E’ possibile prendere in carico una
pratica nuova o una pratica già assegnata ad un
altro utente.

6/2/2017
XEngine
6
Gestione proposta – visualizzazione
dettaglio
Permette di visualizzare la documentazione
allegata alla domanda, ed eventualmente
salvarne una copia. Con questa funzionalità
l’utente può accedere a tutti i documenti
compilati e/o allegati dal presentatore.

Gestione domanda – salvataggio
Permette di salvare i dati relativi alla valutazione
prima di procedere con l’effettiva
accettazione/ricusazione della proposta. I campi
interessati sono il numero di protocollo e i due
campi testuali facoltativi note e motivazioni.

Gestione pratica – valutazione proposta
Permette di accettare o ricusare una proposta;
per poter usufruire di questa funzionalità deve
essere stato inserito almeno il numero di
protocollo nel campo apposito. La valutazione
espressa non può più essere modificata. Una
volta valutata, la proposta viene chiusa ed entra
a far parte dello “storico pratiche”.

Gestione pratiche – recupero proposte
archiviate
Permette la visualizzazione dell’elenco delle
proposte archiviate, che vengono presentate in
ordine cronologico secondo la data di
presentazione. L’elenco è strutturato a tabella,
per ogni pratica vengono mostrate queste
informazioni: la valutazione espressa (accettata,
ricusata), da chi è stata valutata, la data di
presentazione della proposta, il nominativo della
persona che ha presentato la proposta e la data
in cui è stata archiviata la pratica. L’utente può
cliccare su ciascuna riga della tabella in modo da
visualizzare ulteriori informazioni relativi alla
valutazione (protocollo assegnato, note e
motivazioni inserite, la ricevuta firmata, i
documenti relativi alla proposta).

Ricerca proposta
Permette la ricerca di una proposta fra tutte
quelle che sono state inoltrate e accettate; sono
disponibili diversi criteri di ricerca (comune,
proprietà, estensione, dell’area, destinazione
d’uso, ecc.) con i quali restringere e delimitare
l’insieme dei risultati in base alle specifiche
esigenze.

6/2/2017
XEngine
7
Componenti utilizzate, stack tecnologico
ARPA/SpAgent l’integrazione con l’infrastruttura Arpa avviene utilizzando la libreria SpAgent.
L’infrastruttura ARPA per riconoscere il ruolo di Cittadino e di Dipendente Regione Toscana si basa
sulla fonte dati standard FDOS che fa da certificatore di attributi per il suddetto ruolo ARPA.
Profiler è un artefatto di tipo libreria che si occupa di definire la logica di profilazione all’interno
dell’applicazione sulla base delle informazioni ottenute dal sistema di autenticazione a autorizzazione
regionale (ARPA). Ad un utente, una volta autenticatosi sul sistema Arpa, vengono quindi attribuiti
uno o più ruoli istituzionali. L’associazione fra ruoli e profili applicativi, ovvero la determinazione delle
funzionalità applicative a disposizione dell’utente loggato, è affidata al Profiler.
Phenix è il framework cui è affidata la realizzazione del pattern architetturale MVC per la separazione
del modello dati, da quello di creazione della view dell’applicazione. Attraverso Phenix viene definito
un insieme di cammini che vengono identificati dal un passo Iniziale un metodo di business e un passo
finale. Phenix utilizza un file in formato xml per contenere le informazioni relativa alla configurazione,
esecuzione dell’applicativo. In questo file vengono definiti la sequenza di Paths (cammini) costituiti a
loro volta da un passo iniziale (initialStep), una funzionalitaOperazione e da un passo finale
(“FinalStep”). Le funzionalitaOperazione rispecchiano le funzionalità elencate al paragrafo precedente.
Hibernate è una piattaforma middleware open source per lo sviluppo di applicazioni Java che
fornisce un servizio di Object-relational mapping (ORM), ovvero che gestisce la rappresentazione e il
mantenimento
su
database
relazionale
di
un
sistema
di
oggetti
Java.
Lo scopo principale di Hibernate è quello di fornire un mapping delle classi Java in tabelle di un
database relazionale; sulla base di questo mapping Hibernate gestisce il salvataggio degli oggetti di tali
classi su database. Si occupa inoltre del reperimento degli oggetti da database, producendo ed
eseguendo automaticamente le query SQL necessarie al recupero delle informazioni e la successiva
reistanziazione
dell'oggetto
precedentemente
"ibernato"
(mappato
su
database).
L'obiettivo di Hibernate è quello di esonerare lo sviluppatore dall'intero lavoro relativo alla persistenza
dei dati. Hibernate si adatta al processo di sviluppo del programmatore, sia se si parte da zero sia se
da un database già esistente. Hibernate genera le chiamate SQL e toglie lo sviluppatore dal lavoro di
recupero manuale dei dati e dalla loro conversione, mantenendo l'applicazione portabile in tutti i
database
SQL.
Hibernate è tipicamente usato in applicazioni Java EE facenti uso di servlet o EJB session beans.
Enterprise Java Bean (EJB) sono i componenti che implementano, lato server, la logica di
business all'interno dell'architettura Java EE. Le specifiche EJB intendono fornire una metodologia
standard per implementare la logica di funzionamento delle applicazioni di tipo enterprise,
applicazioni cioè che forniscono servizi. Per realizzare applicazioni di questo tipo è necessario
affrontare una serie di problematiche tecniche che possono rivelarsi molto complesse e laboriose da
risolvere. Gli Enterprise JavaBean intendono fornire una soluzione a questi problemi in modo da
semplificare lo sviluppo di questo tipo di applicazioni.
6/2/2017
XEngine
8
ICEFACES è un framework per lo sviluppo e la distribuzione di applicazioni Ajax-J2EE e client RIA (Rich
Internet Application). Le applicazioni sono sviluppate in puro Java secondo il modello thin-client, e non
è necessario utilizzare plugins di browser proprietari o sviluppare applet ad-hoc. Icefaces utilizza JSF
(Java Server Faces) come standard per la scrittura delle pagine web.Uno dei suoi punti di forza è
l’utilizzo della tecnologia Ajax Push, che permette l’aggiornamento automatico del browser allo
scatenarsi di eventi sul server. Si possono avere così attività di interazione fra più browser-client
permettendo l’aggiornamento in tempo reale delle informazioni.
A.S. J2EE - si faccia riferimento a quanto riportato negli standard regionali per le specifiche relative ai
container J2EE.
DB2- si faccia riferimento a quanto riportato negli standard regionali per le specifiche relative al DBMS
IBM DB2.
Si riporta, infine, lo stack tecnologico di riferimento su ciascun modulo applicativo: le celle della
matrice spuntate indicano l’utilizzo dello specifico elemento tecnologico da parte dello specifico
sottosistema.
6/2/2017
XEngine
9
Modello dati complessivo
Modulo di Inserimento
.
Modulo di Back Office
6/2/2017
XEngine
10
6/2/2017