Resumen:
|
[ES] Entre los grandes desafíos actuales de las aplicaciones Web podemos citar la portabilidad, adaptabilidad y evolución. Estos desafíos se dan tanto en el ambiente en que operan así como en su desarrollo, ya que a menudo ...[+]
[ES] Entre los grandes desafíos actuales de las aplicaciones Web podemos citar la portabilidad, adaptabilidad y evolución. Estos desafíos se dan tanto en el ambiente en que operan así como en su desarrollo, ya que a menudo requieren de diferentes lenguajes, frameworks, herramientas, entornos, plataformas, etc. El Desarrollo Dirigido por Modelos (MDD) y en particular, la Arquitectura Dirigida por Modelos (MDA) contemplan estos desafíos proponiendo distintos niveles de abstracción para las diferentes fases de modelado, partiendo de modelos más orientados al problema, que no deberían contemplar aspectos de implementación (CIM, PIM), hasta llegar a los modelos más orientados a la solución planteada (PSM, ISM). Sin embargo, encarar adecuadamente este tema puede depender del grado de independencia que adquieren los modelos.
Este trabajo de Tesis presenta un método que considera el problema de la evolución y portabilidad hacia diferentes entornos o arquitecturas en el diseño y desarrollo de aplicaciones Web. La propuesta se denomina MoWebA (del inglés, Model Oriented Web Approach). Durante el desarrollo de la tesis, hemos identificado una serie de aspectos que podrían tener un impacto positivo sobre los problemas de portabilidad y adaptabilidad que son: i) incorporación de un modelo específico de la arquitectura ASM (del inglés, Architecture Specific Model), que permita la portabilidad de los PIMs con respecto a la arquitectura (por ejemplo, RIA, SOA, Mobile); ii) clara separación de la capa de presentación con respecto a las capas navegacionales y de comportamiento; iii) definición de la estructura navegacional de acuerdo a un mecanismo orientado al comportamiento, que prevenga la modificación del diseño navegacional causada por cambios en la implementación; iv) uso de estándares para facilitar la independencia de las herramientas.
Se ha llevado a cabo una revisión del estado de la literatura teniendo en cuenta los fundamentos de la Ingeniería Dirigida por Modelos MDE (Model Driven Engineering), las propuestas metodológicas para el desarrollo de Aplicaciones Web, las tendencias actuales, analizando en forma especial de qué manera las propuestas Web las contemplan, y las evidencias empíricas tanto en la academia como en la Industria.
Presentamos así la propuesta MoWebA a partir de una serie de consideraciones sobre las aplicaciones Web que han sido identificadas durante el proceso de revisión del estado del arte. Posteriormente, detallamos cada una de las etapas del proceso de modelado, incluyendo los diagramas y notaciones propuestos, sus definiciones a través de sus metamodelos y ejemplos de uso. Seguidamente, presentamos el proceso de transformación adoptado por MoWebA, con los mecanismos de transformación Modelo-A-Modelo y Modelo-A-Código.
Hemos dedicado un importante esfuerzo en la validación de la propuesta. Se realizó una primera validación, adoptando los modelos de MoWebA y en algunos casos generando aplicaciones para diferentes dominios. Con estas primeras experiencias de validación hemos podido identificar fortalezas y debilidades de la propuesta PIM de MoWebA, además de determinar en qué grado la misma cubre las necesidades de diferentes dominios. Como segunda experiencia, hemos realizado una validación preliminar con un grupo de estudiantes de último año de la carrera de Ingeniería Informática de la Universidad Católica "Nuestra Señora de la Asunción" (Paraguay), que consistió en la definición de ASM para tres arquitecturas diferentes. Finalmente, como tercera experiencia de validación, hemos llevado a cabo un Caso de Estudio que consistió en la definición de tres extensiones para MoWebA. Dicha validación fue desarrollada como parte de un proyecto de investigación liderado por la Universidad Católica "Nuestra Señora de la Asunción". La experiencia ha permitido analizar el grado de adaptabilidad de MoWebA y automatización en las transformacinoes PIM-ASM, así como el grado de independiencia del PIM.
[-]
[CA] Entre els grans desafiaments actuals de les aplicacions Web podem citar la portabilitat, adaptabilitat i evolució. El Desenvolupament Dirigit per Models (MDD) contemple aquests desafiaments proposant diferents nivells ...[+]
[CA] Entre els grans desafiaments actuals de les aplicacions Web podem citar la portabilitat, adaptabilitat i evolució. El Desenvolupament Dirigit per Models (MDD) contemple aquests desafiaments proposant diferents nivells d'abstracció per a les diferents fases de modelatge. No obstant això, encarar adequadament aquest tema pot dependre del grau d'independència que adquireixen els models.
Aquest treball de Tesi presenta un mètode que considera el problema de l'evolució i la portabilitat, en diferents entorns o arquitectures, per al disseny i desenvolupament d'aplicacions Web. La proposta s'anomena MoWebA (Model Oriented Web Approach). Durant el desenvolupament de la tesi hem identificat una sèrie d'aspectes que podrien tenir un impacte positiu sobre els problemes de portabilitat i adaptabilitat. Aquestos són: i) la incorporació d'un model específic d'arquitectura ASM (Architecture Specific Model), que permet la portabilitat dels models PIM respecte a l'arquitectura (per exemple, RIA, SOA, Mobile); ii) la clara separació de la capa de presentació respecte a les capes navegacionals i de comportament; iii) la definició de l'estructura navegacional d'acord amb un mecanisme orientat al comportament, que restringisca la modificació del disseny navegacional causada per canvis en la implementació; i per últim, iv) l'ús d'estàndards per tal de facilitar la independència de les eines.
S'ha realitzat una revisió de l'estat de la literatura considerant els fonaments de l'Enginyeria Dirigida per Models MDE (Model Driven Engineering), les propostes metodològiques per al desenvolupament d'Aplicacions Web, les tendències actuals (analitzant de forma especial la manera en que les propostes Web les consideren), i les evidències empíriques tant en l'acadèmia com en la Indústria.
Presentem així la proposta MoWebA a partir d'una sèrie de consideracions sobre les aplicacions Web que són identificades durant el procés de revisió de l'estat de l'art. Posteriorment, detallem cadascuna de les etapes del procés de modelatge, incloent els diagrames i les notacions proposades, les seues definicions (a través dels seus metamodels), i alguns exemples d'ús. Seguidament, presentem el procés de transformació adoptat per MoWebA, emprant mecanismes de transformació Model-a-Model i Model-a-Codi.
Hem dedicat un esforç considerable en la validació de la proposta. Es realitzà una primera validació adoptant els models de MoWebA, i en alguns casos es generaren aplicacions per a diferents dominis. Aquestes experiències van ser realitzades per modeladors amb poca experiència, així com també per modeladors i desenvolupadors experimentats. Les experiències van ser desenvolupades en ambients tant acadèmics com industrials. Amb aquestes primeres experiències de validació s'identificaren fortaleses i febleses de la proposta PIM de MoWebA. També permeteren determinar fins quin grau la proposta respon a les necessitats dels diferents dominis.
Com a segona experiència es realitzà una validació preliminar amb un grup d'estudiants d'últim curs de la carrera d'Enginyeria Informàtica de la Universitat Catòlica "Nuestra Señora de la Asunción" (Paraguai), que va consistir en la definició del model d'arquitectura ASM per a tres arquitectures diferents. Amb aquesta segona experiència de validació s'aconseguí valorar com de factible és d'adaptar la proposta a altres arquitectures.
Finalment, com a tercera experiència de validació, es dugué a terme un Cas d'Estudi que va consistir en la definició de tres extensions per a MoWebA. L'experiència permeté analitzar el grau d'adaptabilitat i d'automatització en les transformacions PIM-ASM que s'obté amb MoWebA, així com el grau de independència del PIM amb respecte als altres models. Durant aquesta validació, s'han realitzat a més experiències de satisfacció d'usuaris amb un grup de modeladors i desenvolupadors.
[-]
[EN] Some of the major challenges facing Web applications today are those of portability, adaptability and evolution, not only in the environment in which they run, but also in the way in which they must be developed, often ...[+]
[EN] Some of the major challenges facing Web applications today are those of portability, adaptability and evolution, not only in the environment in which they run, but also in the way in which they must be developed, often requiring different languages, frameworks, tools, environments, platforms, etc. MDD and MDA take into account these issues. However, to achieve portability, adaptability and evolution depends to some extent on the degree of independence that the models adopt.
This Thesis presents a method that take into account the problem of evolution and portability towards different environments. The approach is called MoWebA (Model Oriented Web Approach). Some key aspects of MoWebA that could have a positive impact in the portability and adaptability are:i) incorporation of an Architecture Specific Model (ASM) as a new modeling layer, in order to keep the portability of the Platform Independent Model (PIM) regarding the different architectures (e.g., RIA, SOA, Mobile); ii) clear separation of the presentation layer with regard to the navigation and behavior layers; iii) definition of the navigational structure according to a function-oriented approach, which prevents the modification of the navigation design caused by implementation changes; iv) and use of standards in order to facilitate the independence from the tools.
We justify MoWebA by highlighting a series of concerns for Web applications development. We present an overview of the method including the dimensions and the diagrams that we propose. Subsequently, we present each step in the modeling process, including the diagrams and notation, its definition (metamodels) and examples of use. Afterwards, we present the transformation process adopted by MoWebA, which includes model-to-model and model-to-code transformations.
We have devoted special attention to the validation of the approach. As a first validation, MoWebA has been used for modelling and generating different types of applications by both novice and experienced modellers and developers. These experiences were done in academic and industrial contexts. The experiences have allowed to identify strengths and weaknesses of the PIM proposal, and to verify that the proposed notation covers the needs of different domains. Next, we present a preliminary validation of the ASM proposal, considering an experience of different ASM definitions made by a group of computer science students at the Catholic University "Nuestra Señora de la Asunción" (Paraguay). This preliminary validation has allowed us to determine how feasible is to adapt the proposal to other architectures. The analysis of the validation sought to answer the following questions: Can the same PIM model be used for different architectures?; Is it possible to specify clear limits between platform independent models (PIM) and architectural specific models (ASM)?; How does an architectural specific model facilitate the transformation rules definition?. Finally, we present a Case Study to validate the extensions of MoWebA to three different architectures. The experience was structured taking into account the framework of Runeson et al. This experience have allowed to carry out three complete extensions. In such extensions we could analysed the grade of adaptability of MoWebA and of automation PIM-ASM, as well as the grade of independence of the PIM metamodel. We have also conducted some user's satisfaction experiences with modelers and developers.
[-]
|