[pt] Este trabalho apresenta uma ferramenta baseada em modelos
para
derivação de produtos de LPSs, denominada GenArch. O
objetivo principal da
ferramenta é permitir que a comunidade de desenvolvimento
de software
tradicional, utilize conceitos e fundamentos de abordagens
de LPSs na produção
de seus sistemas ou partes de seus sistemas sem a
necessidade do
entendimento de modelos e conceitos complexos. A abordagem
implementada
pela ferramenta foi elaborada com base em fundamentos do
desenvolvimento
dirigido por modelos. Centrada na definição de três modelos
(características,
implementação e configuração), a ferramenta permite a
derivação automática de
produtos ou frameworks existentes. O trabalho também define
um conjunto
específico de anotações Java que possibilitam a geração
automática dos
modelos de derivação a partir dos elementos de
implementação da arquitetura
de uma LPS. A plataforma Eclipse e as tecnologia EMF e
openArchitectureWare
foram utilizadas como base para a implementação da
ferramenta. Uma extensão
da ferramenta que atende especificamente aos modelos de
componente Spring
e OSGi, também é proposta nessa dissertação. Tal extensão
permite a
instanciação automática da LPS e aplicações através de
diferentes tipos de
customizações, variando da configuração fina de
propriedades de componentes
até a seleção automática de quais componentes irão compor o
produto final.
Como parte de validação da abordagem, a ferramenta foi
utilizada na derivação
automática de três diferentes estudos de caso: (i) o
framework JUnit; (ii) uma
LPS de jogos J2ME; e (iii) uma aplicação web baseada em
serviços. Diversas
lições aprendidas e resultados do uso da ferramenta nestes
três diferentes
cenários são também apresentadas. / [en] This work presents a model-based tool for product
derivation, called
GenArch, which aims to enable the mainstream software
developer community to
use the concepts and foundations of the SPL approach,
without the need to
understand complex concepts or models. The tool approach is
build on top of
model-driven development techniques. It is centered on the
definition of three
models (feature, implementation and configuration models),
which enable the
automatic instantiation of software product lines (SPLs) or
frameworks. A set of
specific Java annotations are also defined to allow
generating automatically many
of the models, based on existing implementations elements
of SPL architectures.
The Eclipse platform, and EMF and openArchitectureWare
technologies are used
as the base for the implementation of the tool. The
dissertation also presents a
GenArch extension that addresses the new abstractions
provided by the Spring
and OSGi component models. Different kinds of
customizations are provided by
this extension varying from fine-grained configuration of
component properties to
the automatic selection of components that will compose the
final product. As
part of the approach validation, the tool was used in the
derivation of three case
studies: (i) JUnit framework; (ii) a J2ME games SPL; (iii)
a service oriented Web
application. Several lessons learned and discussions
resulting from the use of the
tool also are described.
Identifer | oai:union.ndltd.org:puc-rio.br/oai:MAXWELL.puc-rio.br:12424 |
Date | 29 October 2008 |
Creators | ELDER JOSE REIOLI CIRILO |
Contributors | CARLOS JOSE PEREIRA DE LUCENA, CARLOS JOSE PEREIRA DE LUCENA |
Publisher | MAXWELL |
Source Sets | PUC Rio |
Language | Portuguese |
Detected Language | Portuguese |
Type | TEXTO |
Page generated in 0.002 seconds