Submitted by Lucienne Costa (lucienneferreira@ufcg.edu.br) on 2018-05-04T20:33:58Z
No. of bitstreams: 1
RODRIGO DE ALMEIDA VILAR DE MIRANDA – TESE (PPGCC) 2017.pdf: 5018332 bytes, checksum: 3305ba84ae725675348e6e3b9a1684e9 (MD5) / Made available in DSpace on 2018-05-04T20:33:58Z (GMT). No. of bitstreams: 1
RODRIGO DE ALMEIDA VILAR DE MIRANDA – TESE (PPGCC) 2017.pdf: 5018332 bytes, checksum: 3305ba84ae725675348e6e3b9a1684e9 (MD5)
Previous issue date: 2017-09-04 / 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. / 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.
Identifer | oai:union.ndltd.org:IBICT/oai:localhost:riufcg/583 |
Date | 04 May 2018 |
Creators | MIRANDA, Rodrigo de Almeida Vilar de. |
Contributors | ALMEIDA, Hyggo Oliveira de., PERKUSICH, Angelo. |
Publisher | Universidade Federal de Campina Grande, PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO, UFCG, Brasil, Centro de Engenharia Elétrica e Informática - CEEI |
Source Sets | IBICT Brazilian ETDs |
Language | Portuguese |
Detected Language | English |
Type | info:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/doctoralThesis |
Source | reponame:Biblioteca de Teses e Dissertações da UFCG, instname:Universidade Federal de Campina Grande, instacron:UFCG |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0021 seconds