Alessandro Stella

I miei lavori

Di seguito presento un elenco, non proprio esaustivo, dei progetti sui quali ho lavorato o sto lavorando.

Potete trovare il mio curriculum vitae sempre aggiornato su linkedin (in inglese), oppure potete scaricarne una copia in formato pdf in italiano.

2010 – Progetto Web Fiduciaria

Descrizione
Il progetto ha uno scopo importante: consentire ad una banca di gestire i rapporti con le proprie fiduciarie e averne uno storico.

Tecnologie
L’applicativo è una web application scritta in java e che gira esclusivamente in intranet. Utilizza jsp, ajax e javascript per l’interfaccia utente; struts2 per l’implementazione dell’MVC; un sistema proprietario per la creazione automatica delle classi di mapping con le tabelle del DB; usa DBMS Oracle 10g.

Descrizione
Il progetto ha come scopo quello di consentire agli Enti competenti la gestione delle spese previste e finanziate in diversi ambiti. Tali spese devono essere portate a termine nell’arco di 3 anni, da cui il nome del progetto “programmi triennali”.

Tecnologie
L’applicativo è una web application scritta in java che utilizza i webservices per l’intercomunicazione con altri applicativi. La parte di interazione con l’utente è scritta in Adobe Flash (file swf) e viene prodotta tramite flex 3.
La parte java si basa sul framework spring. I webservices utilizzati sono scritti usando spring-ws (contract first). I dati interrogati dai webservices sono memorizzati in alcuni DB Oracle9i. L’interazione con il DB è gestita tramite hibernate. Il tutto viene prodotto da uno script maven che si poggia a sua volta su uno script ant.

Descrizione
Questo progetto ha come scopo quello di offrire un acceso informativo centralizzato di tutti gli eventi regionali presenti nei vari musei e/o biblioteche.

Tecnologie
Le tecnologie che supportano il sistema, sono le seguenti:
Oracle 10g, jboss application server, jboss seam, hibernate3, struts, ajax, jsf, jsp, html, css.

Descrizione
Lo scopo del progetto è quello di consentire ai cittadini di prenotare, cancellare o rinnovare la prenotazione di un ilbro in una qualunque biblioteca di una Regione aderente al progetto.

Tecnologie
Oltre a DAO, struts, html e css, in questo progetto è stato affrontato e risolto il problema della firma digitale per gestire la CRS (Carta Regionale dei Servizi).

Descrizione
Il progetto ha come obiettivo la registrazione e la gestione dell’iscrizione all’albo regionale di tutte le cooperative sociali della Regione Lombardia.

Tecnologie
Davvero tante… Iniziamo dalla base: il DB.
Il DBMS è serio, trattasi di Oracle 10g. Purtroppo per diversi motivi chi mi ha preceduto su questo progetto non ha potuto creare un DB come teoria comanda (ad esempio mancano le FK!)
Un tale DB, deve poi collegarsi all’applicazione… abra-cadabra :D
Un rompicapo!
Si può dire che tutto sia iniziato bene, usando hibernate e hql, ma poi, per chissà quale ragione, si è passati a query dirette in sql, alla inspiegabile creazione di bean mappati fuori dalla logica hibernate e… all’inserimento di jboss seam nell’archiettura! Un simile atteggiamento con un DB senza constraints ha reso davvero difficile gestire il progetto!
Anche la parte di bisiness è stata fatta senza nessuna logica, nessun pattern… niente. Non c’è una classe astratta, non c’è un’interfaccia, non c’è ereditarietà, non c’è più semplicemente un’architettura di alcun tipo, neanche un diagramma delle classi…
Proseguendo verso l’alto, verso l’utente, troviamo struts! Mmah, almeno qualcosa che ha una logica… E’ l’unica parte del sistema ad avere una logica.
Proseguendo si incontra di tutto:
- jsf
- ajax (solo per explorer, perché non hanno pensato a firefox e a tutti gli altri)
- jsp standard, ma senza Standard Tag Library
- html inqualificabile
- css da far venire la pelle d’oca

Eccezzionale!
Mai avuto per le mani un sistema così eterogeneo… Non è un caso che il responsabile del progetto provava già da un po’ a rifarlo! E’ stata comunque un’esperienza formativa perché impari a far funzionare un oggetto che invece vorresti distruggere! I miei più sinceri auto-complimenti!
Ah, dimenticavo, non essendoci ejb, si è ben pensato di utilizzare jboss :D
Per il deploy c’è il mitico ANT a creare tutto il necessario in 10 secondi.

Descrizione
L’obiettivo del progetto è quello di creare dinamicamente modelli xhtml che siano fotocopie digitali dei rispettivi modelli cartacei e di consentirne, all’utente abilitato, la compilazione e la successiva firma digitale tramite CRS (Carta Regionale dei Servizi) distribuita ai cittadini della regione Lombardia.

Analisi
Lunga e difficoltosa. I requisiti dell’applicazione sono stati raccolti con le classiche difficoltà a cui si va incontro quando il cliente ha poche idee e ben confuse. Tuttavia la tenacia e la quantità abnorme di domande poste al cliente, associate a una sistematica simulazione di casi d’uso, ha prodotto un risultato che si può definire eccellente! La fase di analisi è stata modellata tramite AWARE (vedi più avanti).

Progettazione
Dal mio punto di vista la parte senz’altro più entusiasmante! UML 2 giorno e notte, casi d’uso e settimane di diagrammi. Essendo coincidenti il gruppo di progettazione e quello di sviluppo, si è ritenuto opportuno fermarsi ad un livello di dettaglio medio, senza entrare in eccessivi dettagli.

Sviluppo
Data la non eccessiva complessità del progetto e dopo lunga e accesa discussione, si è ritenuto opportuno non legarsi ad alcun framework (struts, spring, seam, ecc.). Il sistema è stato, quindi, totalmente progettato e realizzato dal gruppo di progettisti e programmatori da me diretto. Ovviamente un compito del genere presuppone la conoscenza e il corretto utilizzo di alcuni tra i più diffusi pattern. In particolare sono stati ampiamente utilizzati: : mvc, fatcory, command, business delegate, dao e singleton. Il software è stato realizzato in j2ee con base di dati in Oracle 10g.
La realizzazione dei modelli è stata affidata a XML (basati su regole XSD) e XSL che hanno consentito una semplice trasformazione in PDF o in altri formati che sono stati necessari.

2007 – Digitale terrestre

Analisi
La fase di analisi in questo progetto non è stata realizzata in quanto il progetto è basato su un capitolato di una gara d’appalto per cui le specifiche, già formalizzate, sono state semplicemente importate.

Progettazione
Dal capitolato tecnico, molto restrittivo, è stato subito molto chiaro quanto doveva essere relizzato. Le possibilità di progettazione erano quindi molto ristrette. L’applicazione avrebbe dovuto girare su STB (Set Top Box) in grado di supportare esclusivamente JAVA 1.1 e una strutturazione OO altrettanto limitata. E’ stato quindi utlizzato UML standard senza le estesioni tipiche di una web application.

Sviluppo
DTTRun sviluppato da Telecom Italia. IDE Eclipse

Descrizione
Il progetto, finanziato dalla Regione Puglia – misura 6.2 Società dell’informazione, iniziativa a sostegno del sistema delle imprese e delle professioni – ha come obiettivo principale quello di creare una virtual community network degli ingengeri della Regione Puglia. Non a caso il nome del progetto è EVCN (Engineer Virtual Community Network). Un obiettivo molto ambizioso e importante.
Parte della fase di analisi era già stata esplorata dal capitolato del bando, ma al fine di esaudire tutte le richieste degli ingegneri di Puglia, è stata comunque approfondita.
Di seguito il dettaglio delle fasi progettuali.

Analisi
Data la dimensione del progetto software da realizzare è stata utilizzata una tecnica di formalizzazione dei requisiti all’avanguardia: AWARE (Analisys of Web Application REquirements). Lo studio e l’utilizzo di tale tecnica è avvenuta sotto la diretta supervisione di ricercatori Universitari.
Non è certamente questa le sede in cui poter descrivere nel dettaglio AWARE. Tuttavia è opportuno dire che AWARE è una metodologia che prevede un insieme di toolset per analizzare e modellare i requisiti secondo una prospettiva goal-oriented. I concetti, rappresentati da altrettanti stereotipi, alla base della metodologia sono: stakeholder, goal, requisito e scenario.
A cavallo tra la fase di analisi e quella di progettazione e comunque in parallelo alla fase di progettazione in UML2, è stato realizzato il disegno IDM (Interactive Dialogue Model). Anche in questo caso non è possibile dare notizie sufficienti su tale metodologia. Ritengo però utile osservere che si tratta di una metodologia attenta ai device sui quali il isistema dovrà girare.

Progettazione
UML 2

Sviluppo
Il progetto è stato sviluppato in j2ee. E’ stato scelto jboss come Application Server ed è stato utilizzato il pattern MVC implementato tramite struts. E’ stato utlizzato liferay come enterprise portal e PostgreSql come DBMS.

Son stato direttamente interessato dalla fase di analisi, progettazione e, per quanto riguarda la fase di sviluppo, solo per la parte delle jsp tramite javascript, xhtml e css2 e la configurazione del portale liferay-based.

Descrizione
Il Progetto IPERSCUOLA è una proposta innovativa che parte da un censimento e successiva selezione dei materiali multimediali prodotti dalle scuole della Provincia di Lecce, rendendoli reperibili, accessibili e fruibili in modo semplice e immediato tramite un supporto CD-Rom.
Il Progetto si propone di promuovere su tutto il territorio provinciale una forte crescita della cultura della multimedialità e della telematica, stimolando nelle scuole salentine l’adozione delle tecnologie didattiche al fine di progettare e utilizzare sistemi multimediali interattivi e stimolare attività di lavoro collaborativa a distanza.

E’ stato realzzato totalmente in Macromedia Flash. Il CD è autopartente. E possibile effettuare il download dell’interfaccia grafica. Per la visualizzazione è necessario aver installato il flash player e…aver acceso le casse!

Comments are closed.

nascondi colonna destranascondi colonna destra