Refactoring mediante pattern mvc 
di un’applicazione web-based
 a supporto di una research community

  • 586 views
Uploaded on

Refactoring mediante pattern mvc 
di un’applicazione web-based
 a supporto di una research community. Lavoro di testi triennale in Ingegneria Informatica ed Automatica conseguita presso l'Università …

Refactoring mediante pattern mvc 
di un’applicazione web-based
 a supporto di una research community. Lavoro di testi triennale in Ingegneria Informatica ed Automatica conseguita presso l'Università degli Studi dell'Aquila.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
586
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
0
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Università degli studi dell’Aquila Facoltà di Ingegneria Laurea in Ingegneria Informatica e Automatica REFACTORING MEDIANTE PATTERN MVC DI UN’APPLICAZIONE WEB-BASED A SUPPORTO DI UNA RESEARCH COMMUNITY Relatore Laureando Prof. Serafino Cicerone Stefano Giansante Anno accademico 2008-2009sabato 18 giugno 2011 1
  • 2. Dipartimento universitario Organizzazione di uno o più settori di ricerca omogenei che ha il compito di coordinare l’attività di ricerca dei suoi membri  Differenti tipologie di utenti con differenti diritti e doveri  Differenti tipologie di risorse  Differenti settori all’interno dell’organizzazione  Condivisione dei documenti da parte dei membri  Collocazione geografica differente dei membrisabato 18 giugno 2011 2
  • 3. Groupware Software collaborativo, insieme di tecnologie pensate per supportare il lavoro cooperativo da parte di gruppi di persone. ‘Collocazione geografica differente dei membri’ (W)CMS Strumento software studiato per facilitare la gestione dei contenuti di portali web, svincolando lamministratore da conoscenze tecniche di programmazionesabato 18 giugno 2011 3
  • 4. Joomla! Content Management System personalizzabile attraverso estensioni disponibili (50.000 sviluppatori nella comunità)  Componenti  Moduli  Altre estensioni: Template, Plugin, Lingue Contesto ed esigenze specifiche? Utilizzo del Framework Joomla!sabato 18 giugno 2011 4
  • 5. Framework di sviluppo Struttura sulla quale basare la progettazione e lo sviluppo di un applicativo software  Librerie di codice utilizzabili  Soluzioni solide ed efficienti a problemi ricorrenti  Velocità e qualità del prodotto finale elevate Svantaggi  Possiede una propria architettura e logica che vanno studiatesabato 18 giugno 2011 5
  • 6. Situazione di partenza  Tool software a supporto delle attività del dipartimento di ricerca  Sviluppo basato sul Framework Joomla!  Sviluppato in due periodo differenti Co Com com Gestione Gestione Gestione Gestione Gestione Gestione Gestione Gestione Temi Progetti Contratti Pubblicazio Modulistica Convocazio Beni Report Joomla 1.0 Joomla 1.5.8sabato 18 giugno 2011 6
  • 7. Release a confronto Joomla 1.0 Joomla 1.5.8  Assenza di una struttura ben definita  Separazione tra logica e presentazione  Difficoltà nell’estensione  Introduzione del pattern MVCsabato 18 giugno 2011 7
  • 8. Problema Qualità del software  Leggibilità del codice  Manutenibilità  Evolvibilità  Riusabilità Incompatibilità delle estensioni 1.0 su 1.5.x  Plugin Legacy Mode aumenta l’occupazione di memoria  Joomla!1.6 : Legacy Mode solo per estensioni 1.5 native Necessità di intervenire su Community Research 1.0sabato 18 giugno 2011 8
  • 9. Soluzione REFACTORING processo di modifica della struttura interna di un’applicazione eseguito senza modificarne le funzionalità esistenti DESIGN REFACTORING IMPLEMENTATION REFACTORING • Finalizzato a migliorare il • Orientato verso la manutenzione design dell’applicazione • Insieme di tecniche standard per la • Mediante pattern modifica del codice (es. pattern arch. MVC)sabato 18 giugno 2011 9
  • 10. MVC nel Framework Joomla! 1.5.x  il model fornisce i metodi per accedere ai dati  il view visualizza i dati si occupa dellinterazione con utenti  il controller riceve i comandi dellutente e li attua modificando lo stato degli altri due componentisabato 18 giugno 2011 10
  • 11. Requisiti – Use Cases Membro c.r. Invio News Gestione Temi Ges. Home Ges. Progetti Page Ges. Contratti Ges. Pubblicazionisabato 18 giugno 2011 11
  • 12. Es. UC Inserimento Tema di Ricerca(1/2) componente: com_gestionericercasabato 18 giugno 2011 12
  • 13. Es. UC Inserimento Tema di Ricerca(2/2) componente: com_gestionericercasabato 18 giugno 2011 13
  • 14. Situazione dopo il Refactoring Co com com Gestione Gestione Gestione Gestione Gestione Gestione Gestione Gestione Temi Progetti Contratti Pubblicazio Modulistica Convocazio Beni Report Joomla 1.5.8sabato 18 giugno 2011 14
  • 15. Conclusioni Obiettivo: REFACTORING DELL’APPLICAZIONE ESISTENTE Risultati:  Componente basato su MVC completamente compatibile con la release 1.5 : com_gestionericerca  Funzionalità principali di Community Research 1.0 implementate  150 files prodotti  Ampia documentazione di progetto (Documento dei Requisiti, Use Case Diagram…)  Ulteriore estensione successivamente al testingsabato 18 giugno 2011 15
  • 16. D E M Osabato 18 giugno 2011 16
  • 17. Grazie per l’attenzione Stefano Giansantesabato 18 giugno 2011 17