La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Database reverse engineering e porting di applicazioni Access su Oracle: il caso Bosch Rexroth Oil Control S.p.A. Facoltà di Ingegneria – Sede di Modena.

Presentazioni simili


Presentazione sul tema: "Database reverse engineering e porting di applicazioni Access su Oracle: il caso Bosch Rexroth Oil Control S.p.A. Facoltà di Ingegneria – Sede di Modena."— Transcript della presentazione:

1 Database reverse engineering e porting di applicazioni Access su Oracle: il caso Bosch Rexroth Oil Control S.p.A. Facoltà di Ingegneria – Sede di Modena Corso di Laurea Specialistica in Ingegneria Informatica Università degli Studi di Modena e Reggio Emilia Relatore Prof.ssa Sonia Bergamaschi Anno Accademico 2007 – 2008 Tesi di Laurea di Giampiero Miccoli

2 Bosch Rexroth Oil Control | Strictly confidential | DCOC/MKT | 17/03/2009 | © Bosch Rexroth Oil Control | All rigths reserved, including industrial property rights. We reserve all rights of disposal such as copying and passing on to third parties. Lazienda e gli Obiettivi dello stage Il sistema gestionale ERP e i programmi Access Laccesso al database Database Reverse Engineering I programmi realizzati Sviluppi futuri Conclusioni 2/15 INDICE

3 Bosch Rexroth Oil Control | Strictly confidential | DCOC/MKT | 17/03/2009 | © Bosch Rexroth Oil Control | All rigths reserved, including industrial property rights. We reserve all rights of disposal such as copying and passing on to third parties. LAZIENDA Bosch Rexroth Oil Control S.p.A. è lazienda leader mondiale nella progettazione, prototipazione e fabbricazione di valvole oleodinamiche, a cartuccia e con collettore, per il mercato del macchinario mobile e dellimpiantistica industriale I principali stabilimenti produttivi del gruppo sono a Nonantola (sede principale amministrativa), Modena, Pavullo, Vezzano e Reggio Emilia Lo stage è stato svolto presso il reparto ISY (Information System) di Nonantola 3/15

4 Bosch Rexroth Oil Control | Strictly confidential | DCOC/MKT | 17/03/2009 | © Bosch Rexroth Oil Control | All rigths reserved, including industrial property rights. We reserve all rights of disposal such as copying and passing on to third parties. OBIETTIVI DELLO STAGE Analisi e modifiche di query e programmi richiesti da vari reparti aziendali, principalmente dallUfficio commerciale e dalla Logistica I programmi sono stati sviluppati nel corso degli anni in Microsoft Access ed accedono al database del sistema gestionale ERP Apache Quindi è stato richiesto di: Adeguarli alle recenti integrazioni delle divisioni Bosch Rexroth Oil Control Realizzare soluzioni che permettano di rendere più sicuri gli accessi ai dati Consolidarli in ambiente database server 4/15

5 Bosch Rexroth Oil Control | Strictly confidential | DCOC/MKT | 17/03/2009 | © Bosch Rexroth Oil Control | All rigths reserved, including industrial property rights. We reserve all rights of disposal such as copying and passing on to third parties. LACCESSO AL DATABASE 55/15 Il sistema gestionale ERP Apache si basa su RDBMS Oracle 10g I programmi Access: accedono direttamente ai dati su Oracle sono delle macro composte da una serie di query a catena che nellinsieme svolgono determinate funzioni per il raggiungimento di uno scopo

6 Bosch Rexroth Oil Control | Strictly confidential | DCOC/MKT | 17/03/2009 | © Bosch Rexroth Oil Control | All rigths reserved, including industrial property rights. We reserve all rights of disposal such as copying and passing on to third parties. 6/15 I PROGRAMMI ACCESS

7 Bosch Rexroth Oil Control | Strictly confidential | DCOC/MKT | 17/03/2009 | © Bosch Rexroth Oil Control | All rigths reserved, including industrial property rights. We reserve all rights of disposal such as copying and passing on to third parties. LA MOTIVAZIONE Ma se funzionano, perché cambiarli? Ci sono diversi motivi per effettuare ciò Sono estremamente lenti in fase di esecuzione (una grande mole di dati viene caricata ma mai utilizzata) I criteri di protezione e accesso ai dati Cercare di centralizzare i programmi rispetto alle diverse versioni distribuite nei vari uffici/reparti Allora si deve scegliere una nuova forma per permettere di risolvere i problemi, ma che sia del tutto trasparente allutente finale. Quindi la necessità di dover riscrivere completamente i programmi. Ma come fare se non si una nessuna idea di come sono stati realizzati i programmi e di come è strutturato il DB? Qui vengono in aiuto le tecniche e tool di Database Reverse Engineering 7/15

8 Bosch Rexroth Oil Control | Strictly confidential | DCOC/MKT | 17/03/2009 | © Bosch Rexroth Oil Control | All rigths reserved, including industrial property rights. We reserve all rights of disposal such as copying and passing on to third parties. DATABASE REVERSE ENGINEERING Con appositi tool si è potuto ricavare lo schema logico relazionale del DB di Apache, ma non lo schema E/R in quanto le tabelle del DB del sistema gestionale ERP non presentano le foreign key Quindi prima di tutto si è dovuto effettuare lo schema E/R per poter capire come sono correlati tra loro i dati 8/15

9 Bosch Rexroth Oil Control | Strictly confidential | DCOC/MKT | 17/03/2009 | © Bosch Rexroth Oil Control | All rigths reserved, including industrial property rights. We reserve all rights of disposal such as copying and passing on to third parties. DATABASE REVERSE ENGINEERING Dopo aver ricavato lo schema E/R delle tabelle interessate per ogni programma, sono state effettuate le seguenti azioni: Analisi di tutte le query che compongono ogni programma Rivedere la logica di accesso ai dati, eliminando le parti superflue Riscrittura delle nuove query SQL ottimizzate per il RDBMS Oracle Test dei risultati ottenuti e confronto con quelli attesi 9/15

10 Bosch Rexroth Oil Control | Strictly confidential | DCOC/MKT | 17/03/2009 | © Bosch Rexroth Oil Control | All rigths reserved, including industrial property rights. We reserve all rights of disposal such as copying and passing on to third parties. DATABASE REVERSE ENGINEERING 1010/15

11 Bosch Rexroth Oil Control | Strictly confidential | DCOC/MKT | 17/03/2009 | © Bosch Rexroth Oil Control | All rigths reserved, including industrial property rights. We reserve all rights of disposal such as copying and passing on to third parties. ESEGUIRE LE QUERY SQL Per poter facilitare lesecuzione delle query SQL da parte degli utenti si è realizzato un programma con tecnologia.NET sviluppato in C# che permette di poter eseguire le query SQL Sono state realizzare due versioni: la versione amministrativa la versione utente 11/15

12 Bosch Rexroth Oil Control | Strictly confidential | DCOC/MKT | 17/03/2009 | © Bosch Rexroth Oil Control | All rigths reserved, including industrial property rights. We reserve all rights of disposal such as copying and passing on to third parties. ESEGUIRE LE QUERY SQL Attraverso il programma realizzato in C# gli utenti possono eseguire le query semplicemente cliccando alcuni bottoni e impostando, se necessario, le date del periodo di riferimento Inoltre è stato realizzato un menù interattivo che ne permette una facile gestione dei dati (copia, filtra, salva, ecc.) Le query SQL insieme al programma in C# realizzato sostituiscono in pieno le applicazioni Access e sono pienamente personalizzabili Vantaggi dellapplicazione: Maggior sicurezza sulla composizione delle query Eseguire le query direttamente da cartella di rete Possibilità di riutilizzo del codice per progetti simili 12/15

13 Bosch Rexroth Oil Control | Strictly confidential | DCOC/MKT | 17/03/2009 | © Bosch Rexroth Oil Control | All rigths reserved, including industrial property rights. We reserve all rights of disposal such as copying and passing on to third parties. SVILUPPI FUTURI SULLE QUERY Ma alcuni comandi presenti nella sintassi di Oracle sono differenti su altri DB (dialetto PL/SQL). Quindi se in un futuro si vuole cambiare DB, bisogna modificare le query? Oppure si vogliono utilizzare fonti diverse, ad es. file XML? Possibili soluzioni: si utilizzano dei tool che ne permettano il porting dei dati si creano dei stati intermedi (data middleware interface) si cambia tecnica di scrittura delle query e di accesso ai dati Un maggior legame tra linguaggio object-oriented e SQL Quindi si è voluto dare un possibile sviluppo del lavoro realizzato utilizzando LINQ (Language-Integrated Query) 13/15

14 Bosch Rexroth Oil Control | Strictly confidential | DCOC/MKT | 17/03/2009 | © Bosch Rexroth Oil Control | All rigths reserved, including industrial property rights. We reserve all rights of disposal such as copying and passing on to third parties. SVILUPPI FUTURI SULLE QUERY: LINQ ( Language-Integrated Query ) LINQ è una delle novità introdotte con il framework.NET 3.5 di Microsoft Offre una sintassi indipendente dalla natura dei dati (DB, XML, Objects, ecc.) gestendo dinamicamente tabelle, viste e stored-procedure LINQ to Entities (ADO.NET Entity Framework): interfaccia di interrogazione al DB attraverso lo schema E/R LINQ to SQL: interfaccia di interrogazione al DB attraverso sintassi LINQ che viene tradotta in dialetto SQL Ma lunico DB che utilizza LINQ to SQL è SQL Server. Quindi si è cercato di far interagire con il DB Oracle e i programmi C# realizzando larchitettura LINQ to Oracle (dotConnect for Oracle Data Provider, Entity Developer for dotConnect, OraDeveloper Tools realizzati dalla Devart) 14/15

15 Bosch Rexroth Oil Control | Strictly confidential | DCOC/MKT | 17/03/2009 | © Bosch Rexroth Oil Control | All rigths reserved, including industrial property rights. We reserve all rights of disposal such as copying and passing on to third parties. CONCLUSIONI Attraverso la completa riscrittura delle query SQL, solo dopo aver effettuato lanalisi, e la realizzazione del programma in C# si è cercato di risolvere appieno gli obiettivi prefissati ad inizio stage Quindi si è realizzato un progetto: Funzionante e subito utilizzabile Con le protezioni di accesso richieste Estendibile per altri scopi (interazione file XML, esecuzione automatica sul DB server come programma batch, user identification con LDAP, ecc.) Inoltre sono state date le principali direttive da seguire per poter continuare il lavoro attraverso LINQ, in particolare è stata implementata la soluzione LINQ to Oracle 15/15

16 Bosch Rexroth Oil Control | Strictly confidential | DCOC/MKT | 17/03/2009 | © Bosch Rexroth Oil Control | All rigths reserved, including industrial property rights. We reserve all rights of disposal such as copying and passing on to third parties. Grazie per lattenzione!


Scaricare ppt "Database reverse engineering e porting di applicazioni Access su Oracle: il caso Bosch Rexroth Oil Control S.p.A. Facoltà di Ingegneria – Sede di Modena."

Presentazioni simili


Annunci Google