Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato...

23
Progetto e realizzazione di un software in Progetto e realizzazione di un software in ambiente Web per l’integrazione di ambiente Web per l’integrazione di applicazioni basato su WCF applicazioni basato su WCF Università degli degli studi di Trieste C.d.L.S. in Ingegneria Informatica C.d.L.S. in Ingegneria Informatica applicazioni basato su WCF applicazioni basato su WCF Laureando: Ledion SPAHO Relatore: chiar.mo prof. Maurizio Fermeglia

description

Ledion Spaho - slide prelaurea

Transcript of Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato...

Page 1: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

Progetto e realizzazione di un software in Progetto e realizzazione di un software in ambiente Web per l’integrazione di ambiente Web per l’integrazione di

applicazioni basato su WCFapplicazioni basato su WCF

Università deglidegli studi di Trieste

C.d.L.S. in Ingegneria InformaticaC.d.L.S. in Ingegneria Informatica

applicazioni basato su WCFapplicazioni basato su WCF

Laureando:

Ledion SPAHO

Relatore:

chiar.mo prof. Maurizio Fermeglia

Page 2: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

Struttura della presentazioneStruttura della presentazione

� Introduzione

� L’integrazione

� L’applicazione

� Ricapitolazione

� Demo

� Conclusioni

Page 3: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

� DI3 : software già in uso sviluppati ad-hoc

◦ N applicativi desktop

◦ N Database

ProblemaProblema

•Ingestibile (manutenzione)•Inefficiente (DB e funzioni ridondanti)•Poco user-friendly (diverse UI)•Scarsa scalabilità (app. 2 tier isolate)

◦ N Database •Scarsa scalabilità (app. 2 tier isolate)•Rischio di Legacy System (WinForm non sono più supportati)

� Nessuna possibilità di usarle da remoto (internet)

� -||- -||- -||- comunicazione tra loro (isolate)

Page 4: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

� Integrare/unificare il lavoro svolto dagli altri studenti

� Ricoprire gli obiettivi del dipartimento

ObiettiviObiettivi

� Separare logicamente le funzionalità in diverse aree di preoccupazione

� Comunicazione agevole con gli altri SW presenti e futuri

� Essere facilmente estendibile

Page 5: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

Motivi e SoluzioneMotivi e Soluzione

� Motivi :

◦ la possibilità di estendere e migliorare il sistema preesistente

◦ l’accessibilità dei servizi via Web

� Soluzione : Integrazione

◦ scambio di informazioni tra SI eterogenei ed autonomi

◦ sviluppare le attività aziendali e mantenere certe risorse e app. già presenti)

� Integrazione = Ristrutturazione che funzioni oggi e getta le basi per affrontare le sfide di domani.

Page 6: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

� Web Server IIS 7.0

� MS SQLServer 2008R2

-------------------------------------

Vincoli e Scelte progettualiVincoli e Scelte progettuali

-------------------------------------

� .NET Framework 4

� C# & Asp.NET

� EntityFramework

� WCF RIA Services

� DynamicDataControl

� AjaxControlToolkit

Page 7: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

� Servizi WCF che incapsulano la logica di business di un'applicazione

DomainServices, un pattern che permette scalabilitàDomainServices, un pattern che permette scalabilità

•Incapsulamento del Business Logic

•CRUD

•Validazione dei dati d’input

•UnitTest Code

•Sicurezza (Auth. Roles SSL)

•Paginazione / Raggruppamento / Filtro

•Queries Parallelizabili

•Riunisce Web & RIA

Page 8: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

I casi d’usoI casi d’uso

Page 9: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

Consultazione Sostanze ChimicheConsultazione Sostanze Chimiche

Page 10: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

Prelievo ReagentePrelievo Reagente

Autocomplete/Suggest

Filtro

Page 11: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

Restituzione ReagenteRestituzione Reagente

Page 12: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

Archivio OrdiniArchivio Ordini

OrdiniOrdiniDettaglio Ordine

Filtro

Page 13: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

Compilazione del doc. nuovo ordine Compilazione del doc. nuovo ordine

1. Estremi2. Utente – Fornitore3. CdC / Commessa; Fondo4. Lista di prodotti5. @ al fornitore e/o 5. @ al fornitore e/o

anteprima stampa • Una copia del doc. viene

salvata sul server, i dettagli dell’ordine nel DB

Page 14: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

Area AdminArea Admin

Page 15: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

Gestione ReagentiGestione Reagenti

Filtro

Autocomplete/Suggest

Sostanze

Reagenti

Page 16: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

ScaffoldingScaffolding

Page 17: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

� Integrazione e modifiche sul DB

� Riusabilità/riscrittura della logica applicativa

◦ Wrap & re-engineer, Rip & replace

Riassunto del lavoro svoltoRiassunto del lavoro svolto

� Progettazione e sviluppo di una interfaccia grafica Web ex novo

◦ WebForms, AJAX, DynamicData (Scaffolding)

----------------------------------------------------------------------------------------------

� DB: ~ 30 tables 5 SP 25 views

� ~ 10.000 linee di codice,

� diversi linguaggi: programming, query, markup, style e scripting

◦ Asp.NET, C#; SQL (DDL DML & T-SQL), LINQ; HTML, XML; CSS; JavaScript

Page 18: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

� N app. 2-Tier => 1 app. 3-Tier (possibilità di ulteriore estendibilità)

� ‘Spaghetti’ code => ‘Lasagne’(strati) & ‘Ravioli’(moduli) code

� Silos Information => Consumo & esposizione di servizi

I miglioramentiI miglioramenti

� Unificazione di authn, authz, roles; aggiunta la registrazione

◦ utente – ruolo in relazione 1:n

� Aumento dell’ User eXperience (grazie all’AJAX)

� (The last but not the least) Scaffolding

Page 19: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

L’evoluzione futura possibileL’evoluzione futura possibile

1. Integrazione P2P => complessità & costi di manutenzione

2. Sistema ERP => unica applicazione che copre tutti i requisiti

3. SOA => far coesistere i sistemi eterogeneni tra di loro

Page 20: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

DEMODEMO

Page 21: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

Gli obiettivi prefissati sono stati raggiunti :

� Il sistema è accessibile facilmente da chiunque e dovunque

� Reso/Prelievo non necessita la compilazione di moduli cartacei

ConclusioniConclusioni

� Situazione del magazzino in real-time consultabile via Web

� Gestione e consultazione dell’archivio degli ordini agevolmente

� Compilazione in modo più semplice e rapido del documento necessario alla richiesta delle merci o dei servizi

Page 22: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

� Sviluppi futuri

◦ Bug Fixing

◦ L’importazione dei dati reali del magazzino

◦ Aggiungere ‘Frasi F’ : Precauzioni di conservazione (non obbligatoria)

Sviluppi & MiglioramentiSviluppi & Miglioramenti

◦ Aggiungere/Integrare altre funzionalità nel sistema(quando necessario)

� Possibili miglioramenti

◦ L’uso dei protocolli crittografici durante l’autenticazione

◦ Uso della firma digitale ai documenti d’ordine inviati ai fornitori

Page 23: Progetto e realizzazione di un software in ambiente Web per l’integrazione di applicazioni basato su WCF slide

Grazie per l’attenzioneGrazie per l’attenzione