• Non ci sono risultati.

Applicazione: SIPER – Servizi In linea per il PERsonale

N/A
N/A
Protected

Academic year: 2022

Condividi "Applicazione: SIPER – Servizi In linea per il PERsonale"

Copied!
8
0
0

Testo completo

(1)

Riusabilità del software - Catalogo delle applicazioni – Gestione Personale

Applicazione: SIPER – Servizi In linea per il PERsonale

Amministrazione: Consiglio Nazionale delle Ricerche (CNR)

Responsabile dei sistemi informativi Nome e cognome: ing. Maurizio Lancia Indirizzo: Piazzale Aldo Moro 7 00185 Roma Tel: 06-49931

e-mail: [email protected]

Referente/i di progetto

Nome e cognome: ing. Vladimiro Tinaburri Indirizzo: Piazzale Aldo Moro 7 00185 Roma Tel: 06-49931

e-mail: [email protected]

Referente/i amministrativo

Dott.ssa Novella Coppa (Ufficio Stato Giuridico e Trattamento Economico del Personale), Dott.

Alessandro Preti (Ufficio Ragioneria della Struttura Amministrativa Centrale)

Descrizione

SIPER è un portale di contatto tra dipendenti ed Amministrazione Centrale del CNR. Lo scopo è quello di avere un’interfaccia unica di accesso a tutti i servizi che l’Amministrazione Centrale mette a disposizione dei dipendenti.

(2)

Contesto

Il CNR è un Ente distribuito sul territorio italiano con sedi anche all’estero. Ciò rende le interazioni tra dipendenti delle sedi periferiche ed Amministrazione Centrale complicate e talvolta onerose dal punto di vista economico. In passato, ad esempio, i cedolini degli stipendi ed i CUD erano prodotti in formato cartaceo e dovevano essere inviati tramite corriere espresso. Dall’altro lato, quando un dipendente doveva comunicare dati all’Amministrazione Centrale (es.: composizione del nucleo familiare ai fini delle detrazioni) doveva inviare una raccomandata o spedire un fax.

La disponibilità di tecnologie a standard aperto e delle necessarie competenze interne sullo sviluppo di applicazioni con interfaccia web hanno consentito la realizzazione di un’applicazione che ha semplificato e velocizzato le interazioni.

L’eliminazione del cartaceo, oltre a rendere il sistema conforme alle norme vigenti, ha permesso di conseguire notevoli risparmi.

La realizzazione delle funzionalità di SIPER relative alla generazione e pubblicazione di cedolini e CUD costituisce, tra l’altro, un esempio di riuso di esperienze maturate in altre pubbliche

amministrazioni. Il gruppo di progetto dell’Ufficio Sistemi Informativi è partito, infatti, dall’analisi dell’applicazione “Soldi” sviluppata dall’Università della Calabria in linguaggio PHP, e da questa ha tratto numerosi spunti.

Data primo rilascio 01/novembre/2007

Data ultima modifica 23/ottobre/2008

Parametri dimensionali

Per lo sviluppo dell’applicazione SIPER sono stati utilizzati i seguenti linguaggi:

EJB per la logica di business;

JSP, HTML, CSS, Javascript ed XML per la parte di interfaccia web.

Per l’accesso alla base dati sono stati utilizzati gli strumenti messi a disposizione da EJB3. Ciò ha permesso di limitare l’utilizzo di SQL ai soli script di creazione delle strutture di data base.

Di seguito è riportato un riepilogo dei volumi, espressi in termini di function point.

Volumi

Linguaggio Volume applicativo (FP)

css 58

(3)

htm 0

html 47

java 342

js 33

jsp 280

sql 1977

xml 42

Totale 2779

Realizzatore

L’applicazione è stata realizzata tramite personale interno dell’Ufficio Sistemi Informativi.

Tipologia applicazione software Sviluppo custom in toto

Documentazione disponibile

Diagrammi UML: Use case diagram, data model, deployment diagram.

Help on line.

Area applicativa Gestione Personale

Procedure amministrative e/o servizi supportati Generazione e pubblicazione di cedolini e CUD.

Comunicazione dati dai dipendenti verso l’Amministrazione Centrale Comunicazioni dall’Amministrazione Centrale verso i dipendenti

Dominio applicativo

(4)

Gestione del personale

Funzione applicativa

Servizi

o Cedolini stipendio

o CUD

Comunicazioni al CNR

o Anagrafiche

o Detrazioni

o Coordinate bancarie

Amministrazione:

o Gestione utenti

o Gestione generazione cedolini

o Visualizza la descrizione dettagliata delle funzioni applicative.

Architettura software

L’applicazione è basata sull’architettura a multi-livello ( vd. Figura 1), tipica dei sistemi enterprise.

Al livello client è utilizzato un semplice web browser che renderizza pagine html generate dinamicamente nel sottostante livello web, basato su pagine JSP e servlet gestite da un web

container. Al livello della logica di business sono utilizzati EJB session, per l’implementazione dei processi, e Java Data Object per l’accesso ai dati, il tutto gestito tramite Application Server JEE compliant. Il livello Enterprise Information Systems è basato su data base relazionale. Il sistema può utilizzare indifferentemente qualunque RDBMS server supportato dalla tecnologia JDO.

L’architettura del sistema è basata su design pattern consolidati. L’interazione con l’utente, ad esempio, è basata sul pattern “Model View Controller”, implementato mediante il framework Stripes.

L’infrastruttura di produzione del CNR utilizza i seguenti ambienti software:

• Application server JEE: JBoss

• RDBMS: PostgreSQL

• Web container: Tomcat.

Qualunque combinazione “Application Server/Web container” JEE compliant può essere utilizzata, così come qualunque RDBMS può gestire i dati dell’applicazione.

Architettura hardware

Il sistema può essere installato anche su una sola macchina ma, in caso di carichi operazionali elevati, si consiglia di avere uno o più server in configurazione a bilanciamento di carico che funzionino da front-end web, sui quali sia installato un’application server JEE compliant, e due o più macchine in configurazione “standard hardware failover” con funzione di data base server. I dati possono essere conservati su disk array condiviso dai DB server.

(5)

Architettura TLC

I server necessitano di connettività Internet. Nella configurazione di produzione utilizzata dall’Amministrazione Centrale del CNR, l’accesso alla sottorete cui sono collegati i server è protetto da un Firewall, che effettua il bilanciamento di carico sugli application server in base al loro livello di utilizzo.

Tutte le macchine sono collegate ad una LAN Gigabit Ethernet.

I db server sono connessi al dispositivo di storage tramite collegamento ridondato in fibra ottica.

La sede centrale del CNR, dove è gestito l’hosting dell’applicazione, dispone attualmente di un collegamento a 100 MB con GARR-G.

Sistemi operativi

Qualunque sistema operativo per il quale sia disponibile il JEE SDK può essere utilizzato.

Nell’ambiente di hosting del CNR su tutti i server è installato RedHat Enterprise Linux Advanced Server versione 4.0.

Middleware

Qualunque application server JEE compliant. Nell’ambiente di hosting del CNR sono utilizzati JBoss Application Server + Tomcat web container

Linguaggi

Java per la logica di business (EJB 3.0) e l’accesso ai dati; JSP, HTML, Javascript ed XML per la parte di interfaccia web; SQL per la definizione delle strutture dati.

Librerie esterne

L’applicazione utilizza alcune librerie open source, tra cui quelle del frame work Stripes.

Protocolli di comunicazione TCP/IP

DBMS

(6)

Nell’ambiente di produzione del CNR attualmente è utilizzato PostgreSQL ma l’applicazione non è vincolata ad una particolare marca di RDBMS.

Case

Poseidon UML, Eclipse.

Standard utilizzati

Sviluppo component-based aderente alla specifica JEE (JSP, EJB, servlet, etc.).

Tipologia del ciclo di sviluppo

Processo di sviluppo agile di tipo prototipale/iterativo

Portabilità

Il sistema può essere eseguito su qualunque combinazione “Application Server JEE/Web Container JEE/RDBMS”. Conseguentemente non ci sono vincoli sul sistema operativo, se non la disponibilità di almeno una combinazione del tipo succitato.

Affidabilità

Sistema robusto con basso numero di segnalazioni per problemi tecnici.

Manutenibilità

La modularità dell’architettura e l’impiego diffuso di design pattern consente a risorse dotate di adeguate competenze di mantenere il sw con un basso livello di difficoltà.

Funzionalità

Piena rispondenza ai requisiti utente in tutte le condizioni di esercizio.

Usabilità

(7)

Il livello di usabilità è buono per le caratteristiche tecniche; l’interfaccia presenta una struttura classica con intestazione e menu laterale fissi, ed area centrale di visualizzazione contenuti (vd Figura 3). Il link alla funzionalità di help, presente in tutte le schermate, permette di accedere ad un aiuto contestualizzato alla pagina che si sta visualizzando.

Livello di documentazione

Diagrammi UML: Use case diagram, data model, deployment diagram. Help on line.

Livello di modularizzazione Alto livello di modularizzazione.

Iniziative di riuso in corso /

Iniziative di riuso realizzate /

Punti di forza

Piena proprietà dei diritti sul codice da parte del CNR,

adozione di standard aperti,

architettura applicativa modulare,

portabilità,

utilizzo di design patterns,

disponibilità di competenze all’interno del CNR.

Elementi di criticità /

Vincoli

La personalizzazione dell’applicazione richiede competenze sulle tecnologie adottate per lo sviluppo.

(8)

Modalità di riuso consigliate

L’applicazione si presta ad un riuso tipo cessione semplice.

Riferimenti

Documenti correlati