Please use this identifier to cite or link to this item: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/583
Title: Decomposição e reúso de componentes baseados em metadados para interfaces gráficas do usuário em aplicações corporativas web.
Other Titles: Decomposition and reuse of metadata-based components for graphical user interfaces in corporate Web applications.
???metadata.dc.creator???: MIRANDA, Rodrigo de Almeida Vilar de.
???metadata.dc.contributor.advisor1???: ALMEIDA, Hyggo Oliveira de.
???metadata.dc.contributor.advisor2???: PERKUSICH, Angelo.
Keywords: Componentes – Interface Gráfica;Metadados;Computação – Aplicações Corporativas;Metadata;Enterprise applications
Issue Date: 4-Sep-2017
Publisher: Universidade Federal de Campina Grande
???metadata.dc.description.resumo???: Metadados podem ser manipulados em aplicações corporativas a fim de reduzir o acoplamento entre a camada da interface gráfica do usuário e a camada do modelo do domínio. Dessa forma, os componentes da interface gráfica são substituídos por meta componentes, que podem ser facilmente reutilizados em domínios diferentes, aumentando a produtividade no desenvolvimento desse tipo de aplicação. Todavia, nas abordagens baseadas em metadados existentes, os meta componentes de interface são complexos, entrelaçam responsabilidades em um mesmo artefato e possuem baixa manutenibilidade. Neste trabalho propõe-se uma abordagem que organiza os meta componentes através de artefatos pequenos e com responsabilidades bem definidas, com a finalidade de aumentar o potencial de reúso e facilitar a sua customização. A abordagem proposta foi desenvolvida conceitualmente por meio de uma linguagem de padrões, contendo sete padrões de projeto e dois padrões arquiteturais que foram catalogados a partir de abordagens existentes, abstraindo as boas práticas e propondo correções para as deficiências. Concretamente a abordagem foi implementada em dois arcabouços de código aberto, Geneguis e Angular M, para o desenvolvimento de interface gráfica em aplicações corporativas. Angular M teve a produtividade comparada com Ruby on Rails em um experimento com 15 desenvolvedores de software que atuaram sobre 12 cenários de customização de interface gráfica. Após uma análise da significância estatística dos resultados, foi observado que: nos seis cenários propostos onde havia reúso de componentes, Angular M foi mais produtivo em todos; e nos seis cenários onde não havia reúso de componentes, Angular M foi mais produtivo em dois, Ruby on Rails foi mais produtivo em um e não houve diferença significante nos outros três cenários. O ganho médio de produtividade com Angular M, em relação a Ruby on Rails, foi 20% nos cenários gerais e 64% ao considerar apenas os cenários com reúso de componentes.
Abstract: Developers can use metadata in enterprise applications in order to reduce coupling between graphical user interface and domain model layers. Therefore, user interface components are replaced by meta components, which can be easily reused in different domains, enhancing productivity of application development. However, the current metadata-based approaches define complex components for graphical interface, mixing responsibilities in an artifact and reducing maintainability. In this work, we propose an approach to implement meta components s into small artifacts with encapsulated responsibilities, increasing its reuse and easing its customization. This approach has been developed as a pattern language with seven design patterns and two architectural patterns, which were defined based on existing approaches, abstracting good practices and proposing solutions for weaknesses. Two open source framworks, Geneguis and Angular M, were implemented using the pattern language concepts in order to support User interface development for enterprise applications. The productivity of Angular M was compared to Ruby on Rails in an experiment with 15 software developers that performed 12 user interface customization tasks. The statistical analysis of experiment results has shown that: for the six customization tasks where components were reused, Angular M was significantly more productive in all tasks; and for the six tasks without reused components, Angular M was significantly more productive in two tasks, Ruby on Rails was significantly more productive in one task and the other three tasks did not show significant difference. The average increase of productivity for Angular M, in comparison with Ruby on Rails, was 20% for all 12 scenarios and 64% for the six scenarios with component reuse.
Keywords: Componentes – Interface Gráfica
Metadados
Computação – Aplicações Corporativas
Metadata
Enterprise applications
???metadata.dc.subject.cnpq???: Ciências
Ciência da Computação
URI: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/583
Appears in Collections:Doutorado em Ciência da Computação.

Files in This Item:
File Description SizeFormat 
RODRIGO DE ALMEIDA VILAR DE MIRANDA – TESE (PPGCC) 2017.pdfRodrigo de Almeida Vilar de Miranda - Tese (PPGCC) 2017.4.77 MBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.