1 |
[pt] UMA ARQUITETURA PARA O DESENVOLVIMENTO DE INTERFACES GRÁFICAS BASEADAS EM GRAFOSJULI LING CHING HUANG 02 September 2002 (has links)
[pt] O desenvolvimento de interfaces gráficas baseadas na
manipulação direta de objetos da aplicação representados em
um canvas é uma tarefa complexa que encontra pouco
suporte de desenvolvimento nas tecnologias de programação
atuais. Grafos dirigidos na forma de diagramas esquemáticos
são usados em programas de supervisão, controle e
simulações de gerenciamento de energia elétrica, em
automações industriais e diversos outros sistemas
semelhantes em que o processo é representado por uma série
de componentes interconectados. São inúmeras as aplicações
baseadas nestes tipos de objetos, a ponto de merecerem
ferramentas especiais para o seu desenvolvimento. Este
trabalho propõe uma arquitetura para o desenvolvimento de
interfaces gráficas baseadas em grafos que permita ao
usuário a criação e instanciação de equipamentos com
atributos e comportamentos dependentes da aplicação, com um
alto grau de abstração. Como ferramenta para o
desenvolvimento de aplicações sob a arquitetura proposta,
foi implementada uma biblioteca de objetos gráficos com
suporte à informação de grafo subentendido nos diagramas. O
objetivo principal da arquitetura é permitir que o
programador se concentre no desenvolvimento da aplicação,
abstraindo-se das questões relacionadas com a interface.
Esta arquitetura foi validada através de protótipos de
aplicações industriais reais.
|
2 |
[en] DESIGN OF A CASSETE TAPE UNIT CONTROLLER / [pt] PROJETO DE UM CONTROLADOR DE UMA UNIDADE DE FITA CASSETEMAURO RODRIGUES DOS SANTOS 11 July 2007 (has links)
[pt] Este trabalho descreve o projeto de um controlador para
unidade de fita cassete destinada a servir de memória
secundária a um computador. Seu desenvolvimento surgiu da
necessidade de implantação de uma memória de grande
capacidade de armazenamento e de baixo custo em um
microcomputador desenvolvido no Departamento de Engenharia
elétrica da PUC/RJ, o qual foi denominado MICRO-02. A
lógica do controlador foi realizada com circuito
integrados SSI e MSI, e a unidade cassete utilizou o
transportador modelo 250 MFE. São descritas as principais
características do MICRO 02 visando apresentar os recursos
na comunicação com periféricos e as condições de
interface. São ainda apresentadas as técnicas usualmente
utilizadas na gravação em fita cassete, bem como alguns
aspectos de Hardware e Software relativos a arquivos em
fita cassete. / [en] This work describes the design of a cassete tape unit
controller to be used as a secondary memory in a computer
system. The development of this controller arose from the
necessity of connect a high storage capacity and low cost
memory in a microcomputer system developed in the
Departament of Electrical Engineering PUC/RJ, which has
been named MICRO-O2 . The logic circuitry used has been
SSI and MSI integrated circutis, and the cassete unit used
of MFE/Model 250 Tape Transport. The main characteristics
of MICRO-02 are described aiming to present its power of
communication with the peripheral devices and also its
interface conditions, Further, the techniques related to
cassete tape recording are presented along with some
hardware and software aspects concerning cassette tape
storages.
|
3 |
[en] A DESIGN A MICROCOMPUTER DESTINED FOR THE CONTROL OF PROCESSES / [pt] PROJETO DE UM MICROCOMPUTADOR DESTINADO A CONTROLE DE PROCESSOSRENATO CERQUEIRA LIMA BREA 29 January 2008 (has links)
[pt] O trabalho consiste no projeto de um microsistema
programável - um microcomputador - destinado a controle de
processos industriais e que possui como núcleo uma unidade
central de processamento em LSI. A capacidade dessa
unidade é expandida através do uso de um controle externo
microprogramado que atua apenas nas operações de
entrada/saída e no tratamento de interrupções. O resultado
obtido do microcomputador ao processo através de
interfaces de pouca complexidade. / [en] A design is given for a programmable microsystem - a
microcomputer - destined for the control of industrial
processes. The nucleus is an LSI central processor. This
unit is expanded through the use of a microprogrammed
external control which works only with input-output
operations and interrupt handling. The resulting system
has an 1/0 structure that interfces easily with the
process.
|
4 |
[en] TECHNOLOGICAL EXPERIMENTATION ON FACIAL EXPRESSIONS IN STOP MOTION ANIMATION / [pt] EXPERIMENTAÇÃO TECNOLÓGICA PARA ANIMAÇÃO DE EXPRESSÕES FACIAIS EM STOP MOTIONANTONIA MUNIZ MARTINS 17 January 2019 (has links)
[pt] Esta dissertação investiga a partir de uma abordagem multidisciplinar o processo de animação de expressões faciais em longas-metragens de stop motion, contextualizando sua produção no Brasil e no exterior. Por meio de uma pesquisa exploratória e experimental, investiga tecnologias de interfaces físicas aplicadas na animação de expressões faciais de bonecos. A pesquisa se estrutura em três momentos. Primeiro, uma discussão sobre a técnica de animação stop motion é proposta a partir de um paralelismo histórico entre o desenvolvimento tecnológico e a sua relação com a técnica. No segundo momento, informações sobre produções de longas-metragens que utilizam a técnica de stop motion com bonecos são levantadas, relacionando as soluções encontradas para fazer a animação de expressões faciais nas produções nacionais e internacionais com a interpretação das personagens e a unidade dos bonecos. O levantamento parte de revisão bibliográfica e do contato com quatro produtoras nacionais em fase de produção de longas-metragens com a técnica stop motion. No terceiro momento, discutimos o ato de animar um boneco e propomos uma série de experimentações, buscando novas formas de solucionar a animação de suas expressões faciais, com auxílio da tecnologia. As experimentações foram embasadas por processos de prática reflexiva, conhecer-na-ação e reflexão-na-ação. A pesquisa contribui para a ampliação da discussão sobre a técnica stop motion no Brasil, a sua otimização e produção, e assim motivar a produção de novos longas-metragens em stop motion no mercado brasileiro. / [en] This dissertation investigates in a multidisciplinary way the process of facial expressions animation in stop motion feature films. It contextualizes and observes the production of stop motion feature films in Brazil and abroad. Through exploratory and experimental research, we investigate physical interface technologies applied to puppet s facial expressions animation. The research is structured in three parts. First, stop motion technique is discussed through a historical parallel between technological development in relation to the technique. Next, information is gathered on feature film productions, from Brazil and abroad, using stop motion technique with puppets. Different techniques found in facial expression animation are observed in relation to the character s interpretation and the unity of the puppet. The survey starts with a bibliographic review and interviews with four national studios in the production stage of stop motion feature films in the last part, we discuss the act of animating a puppet and propose a series of experiments in search of new ways to animate the facial expressions of puppets with the aid of technology. The experiments were based on processes of reflexive practice, knowing-in-action and reflection-in-action. This research contributes to the expansion of the discussion about the stop motion technique in Brazil, its optimization and production, thus motivating the production of new stop motion feature films in the Brazilian market.
|
5 |
[en] INTEGRATION OF LINGUISTIC AND GRAPHIC INFORMATION IN MULTIMODAL COMPREHENSION OF STATISTICAL GRAPHS: A PSYCHOLINGUISTIC ASSESSMENT / [pt] INTEGRAÇÃO DE INFORMAÇÃO LINGUÍSTICA E GRÁFICA NA COMPREENSÃO MULTIMODAL DE GRÁFICOS ESTATÍSTICOS: UMA AVALIAÇÃO PSICOLINGUÍSTICALUANE DA COSTA PINTO LINS FRAGOSO 21 December 2015 (has links)
[pt] Esta tese possui como objetivo investigar o mapeamento entre o conteúdo de sentenças e aquele apresentado em gráficos no processo de compreensão multimodal. Assume-se uma abordagem experimental, baseada nos aportes teórico-metodológicos da Psicologia Cognitiva e da Psicolinguística, aliada a discussões pertinentes à área de Educação Matemática e aos estudos sobre multimodalidade e letramento. Consideram-se duas propostas acerca da integração entre informação linguística e visual: uma vinculada à hipótese de modularidade representacional de Jackendoff (1996), em que se defende a ideia de módulos de interface, de natureza híbrida, e uma proposta alternativa, assumida no presente trabalho, segundo a qual tanto o processamento linguístico como o visual gerariam representações de natureza abstrata/proposicional, que seriam integradas em uma interface conceitual. Buscou-se verificar (i) se fatores top-down como conhecimento prévio do assunto afetam essa integração e (ii) em que medida informação linguística instaura expectativas acerca da informação expressa no gráfico. Foram conduzidos dois experimentos de comparação sentença-figura com gráficos de coluna e de linha, utilizando o programa psyscope, e um envolvendo gráficos de linha com a técnica de rastreamento ocular. Não foram encontradas evidências de efeitos top-down no experimento com gráfico de colunas. Foram obtidos, contudo, efeitos significativos para tempo de resposta associados a outros fatores, quais sejam correção do gráfico, expressão lexical usada para comparar itens do gráfico (maior vs menor, p. ex.) e número de itens referidos na sentença a serem localizados no gráfico. Nos dois experimentos com gráficos de linha, as variáveis independentes foram (i) congruência (linha congruente/incongruente em relação ao verbo – exemplo: linha inclinada para cima ou para baixo vs. verbo subir) e (ii) correção do gráfico em expressar o conteúdo da frase, manipulada com alterações na linha e na ordenação (ascendente/descendente) de informação temporal no eixo x. No experimento com psyscope, os resultados indicaram não haver dificuldade de julgar a compatibilidade frase/gráfico quando congruência e correção não divergiam. Para tempo de resposta, houve efeito principal de congruência e correção, com menores tempos associados, respectivamente, às condições em que a linha era congruente com o verbo e o gráfico correto. Também houve efeito de interação entre as variáveis. No experimento com rastreador ocular, foram analisados índice de acertos, número e tempo total de duração das fixações e trajetória do olhar nas áreas de interesse demarcadas. Em relação a índice de acerto, assim como no experimento com psycope, maior dificuldade de processamento estava associada à condição incongruente correta, em que há quebra de expectativa em relação à posição da linha (vs. verbo) e ao modo usual de organização dos gráficos no eixo x. Quanto aos movimentos oculares, na área do gráfico, observou-se maior número e tempo total de duração das fixações nas condições corretas; na área da frase, tais condições apresentaram resultados opostos. Quanto à trajetória do olhar, os dados sugerem ser a informação linguística acessada em primeiro lugar, orientando a leitura do gráfico. Considerando os resultados em conjunto, pode-se afirmar que o custo de integração é determinado pela compatibilidade (ou não) entre as proposições geradas pelos módulos linguístico e visual. / [en] This thesis aims at investigating the mapping between the sentential content and the content presented in graphs in a multimodal comprehension process. We assume an experimental approach, based on Cognitive Pyschology and Psycholinguistics methodological and theoretical contributions as well as literacy and multimodality studies. Two proposals concerning the integration between linguistic and visual information are considered: one linked to Jackendoff s (1996) representational modularity hypothesis, in which, the idea of interface modules, of hybrid nature, is defended; and an alternative one according to which linguistic and visual processing could generate propositional/abstract representations which could be integrated into a conceptual interface. We tried to check (i) if top-down aspects such as prior knowledge can affect this integration and (ii) in what extent linguistic information may bring expectations about the information expressed in the graph. Sentence-picture comparison experiments were conducted with line and columns graphs using the pyscope software, and another one concerning line graphs with eye tracking technique. Top-down effects were not found in columns graphs experiment. However, significant effects related to response time associated with other aspects such as graph accuracy, lexical expression used in order to compare graph elements (larger x smaller, for example) and the number of elements in the sentence that must be found in the graph. In both experiments with line graphs, the independent variables were (i) congruency (congruent/incongruent line in relation to the verb - line up or down vs verb increase) and (ii) accuracy of the graph in order to express the content of the sentence, manipulated with changes in the line and time information order (ascendant/descendent) in x axis. In psyscope experiment, there was no difficulty in judging the sentence-picture compatibility when
congruency and correction were not different. Concerning the response time, there was effect of congruency and correction, with shorter times associated, respectively, to the conditions in which line was congruent to the verb and correct graph. There was also effect of interaction. In eye tracking experiment, accuracy rates, number of fixations, total fixation duration and the scanpath in areas of interest were analysed. In relation to accuracy rates, similar to psyscope experiment, more difficulty in processing was associated to incongruent/incorrect condition, in which there is a break in the expectation related to the line position (vs.verb) and the common organization of the elements displayed in x axis. Concerning eye movements, in the graph area, number of fixations and total fixation duration were higher in correct conditions; in the sentence area, these results were opposite. Analyzing the scanpath, data suggest that linguistic information is accessed first, guiding the graph reading. To conclude, it s possible to state that the cost of integration is determined by compatibility (or not) between the propositions from both linguistic and visual modules.
|
6 |
[en] KINETICS OF CYCLOPENTANE HYDRATE FORMATION: AN INTERFACIAL RHEOLOGY STUDY / [pt] CINÉTICA DA FORMAÇÃO DE HIDRATO DE CICLOPENTANO: UM ESTUDO DA REOLOGIA INTERFACIALBRUNA COSTA LEOPERCIO 23 February 2017 (has links)
[pt] Os processos de formação e de dissociação de hidratos são de grande interesse
nas áreas ambiental e energética. Especificamente para a indústria de
petróleo e gás, o hidrato aparece como um empecilho à garantia de escoamento,
alavancando ainda mais a necessidade urgente de ampliar o conhecimento sobre
seus fenômenos. Neste trabalho, uma nova abordagem para observar e compreender
a cinética e as propriedades mecânicas de hidratos por meio da reologia
interfacial é apresentada. O conhecido anel du Nouy é empregado com
uma nova célula de latão projetada para permitir o necessário gerenciamento
da temperatura de teste. Ciclopentano é utilizado como formador de hidrato.
Com a nova geometria interfacial, diferentes temperaturas e protocolos de contato
água/ciclopentano são explorados. A importância de primeiro provocar o
contato do CP com cristais de gelo a fim de iniciar a formação de hidrato é
de particular interesse. Assim, time sweeps são realizados em duas etapas: uma
para a formação de gelo e outra para os formação de hidrato. Foi determinado
que os hidratos de ciclopentano são detectados em temperaturas Tf menor ou igual a 6 graus Celsius. Uma
interessante discussão a respeito do estado de metaestabilidade dos hidratos é,
então, apresentada. Depois que os hidratos preenchem completamente a interface
água/ciclopentano, strain sweeps são realizados para examinar a fragilidade dos
filmes de hidrato, medindo os módulos interfaciais elástico e viscoso (G e G).
As propriedades mecânicas desses filmes demonstraram uma forte dependência
da temperatura (Tf ): o tempo de indução (tc), medido a partir do primeiro contato
do ciclopentano com gelo, bem como o módulo elástico (G) e a deformação de
escoamento (γy) aumentam conforme Tf é aumentada. / [en] Hydrate formation and dissociation processes are of major interest in environmental
and energy fields. Specifically for the oil and gas industry, hydrate
appears as an issue regarding flow assurance, pushing even more the urgent need
for expanding the knowledge on hydrate phenomena. In the current work, a
new approach to observe and understand the kinetics and mechanical properties
of hydrates by interfacial rheology is presented. The standard du Nouy ring
is employed with a novel brass cell designed to permit the necessary temperature
management. Cyclopentane is used as hydrate former. With the new interfacial
geometry, different temperature and water/cyclopentane contact protocols are explored.
The importance of first contacting CP against ice crystals in order to initiate
hydrate formation is of particular interest. Thus, time sweeps are performed
in two stages: one for ice formation and another for hydrate formation. It was
determined that cyclopentane hydrates only arise at temperatures Tf less than or equal to 6 celsius degree. A
worthwhile discussion regarding the hydrate metastability state is then presented.
After hydrates completely populate the water/cyclopentane interface, strain
sweeps of the interfacial elastic and viscous moduli (G and G) are conducted to
examine the fragility of the hydrate films. The mechanical properties of hydrate
films demonstrated high dependence on temperature (Tf): the induction time (tc),
measured from the moment when cyclopentane first contacts ice, as well as the
elastic modulus (G) and the yield strain (γy) increase as Tf is increased.
|
7 |
[en] ONTOLOGY-DRIVEN RIA INTERFACES GENERATION / [pt] GERAÇÃO DE INTERFACES RIA DIRIGIDA POR ONTOLOGIASANDREIA MIRANDA DE LUNA 28 May 2010 (has links)
[pt] Vivemos hoje na era da Web 2.0, onde os navegadores executam interfaces
gráficas cada vez mais ricas, permitindo que virtualmente todo tipo de aplicação possa
explorar a ubiqüidade dos navegadores Web sem comprometer a experiência do
usuário. Os modelos utilizados no desenvolvimento de software, além de mecanismos
de abstração e documentação, sob o paradigma do Desenvolvimento Dirigido por
Modelos, também são poderosas linguagens de especificação, que, aliadas a técnicas
de transformação, podem automatizar a tarefa repetitiva de gerar código de infraestrutura.
A proposta deste trabalho consiste em definir uma linguagem de descrição,
em alto nível, do funcionamento das interfaces RIA (Rich Internet Application), um
processador para esta descrição, capaz de gerar o código executável da interface, e a
respectiva máquina de runtime para executar as interfaces geradas. Por dar suporte
ao desenvolvimento Web baseado no método SHDM (Semantic Hypermedia Design
Method), o ambiente de prototipação HyperDE foi escolhido como a plataforma-alvo
para a geração de interfaces executáveis. O ambiente de modelagem e execução das
interfaces RIA também introduz um protocolo assíncrono baseado em fila de
mensagens como forma de implementar a comunicação entre as camadas de Modelo
e Visão. Se a tecnologia Ajax permite a comunicação assíncrona entre cliente e
servidor, de tal forma que diferentes componentes da interface possam ser atualizados
de forma independente, as interações entre Visão e Modelo, quando mediadas por um
sistema de fila de mensagens, tornam possível a atualização de interfaces com os
resultados parciais do processamento de uma requisição. / [en] In this Web 2.0 era, the browsers perform ever-richer graphical interfaces. Today,
virtually every type of application can benefit from the ubiquity of Web browsers without
compromising the user experience. Under the Model-Driven Development paradigm,
models represent more than abstraction and documentation tools; they can also
perform as powerful specification languages. When transformation rules are applied to
these models, this can automate the repetitive task of generating infrastructure code.
This work proposes an abstract RIA interface description language and a whole
software environment that can make it possible to the application designer to
automatically generate an executable interface from an abstract description. Being the
Semantic Hypermedia Design Method (SHDM) development environment, the
HyperDE framework became the target platform for the RIA interface code generation.
Our solution also introduces a message queue-based protocol as a way to implement
asynchronous communication between Model and View. It will make it possible to
update the interface with the partial results of a request processing and, therefore,
improve the user experience, enhancing what Ajax technology has accomplished so
far.
|
8 |
[en] INFRASTRUCTURE FOR WEB-BASED INTERACTIVE THEOREM PROVERS / [pt] INFRAESTRUTURA PARA PROVADORES INTERATIVOS DE TEOREMAS NA WEBJEFFERSON DE BARROS SANTOS 27 September 2010 (has links)
[pt] Prova automática de teoremas consiste na prova de teoremas matemáticos
por intermédio de programas de computador. Dependendo da linguagem
lógica em uso, o processo de provar uma determinada fórmula pode não
ser computável. Além disso, dependendo do cálculo dedutivo empregado,
a busca por uma prova envolve lidar com a possibilidade de aplicação
de longas sequências de axiomas e regras de inferência. Tudo isso reforça
a necessidade da intervenção humana no processo de prova em sistemas
denominados provadores interativos de teoremas ou assistentes de prova.
Em um cenário típico, um usuário interage com a máquina de prova através
de uma interface gráfica, normalmente implementada como um aplicativo
desktop. Recentemente, porém, muitos aplicativos deste tipo passaram a ser
oferecidos para seus usuários através da web. Esta forma de disponibilizar
software evita que o usuário final se preocupe com questões de instalação
e configuração e possibilita o acesso ao sistema de qualquer computador,
com qualquer sistema operacional, bastando ter disponível uma conexão
com a Internet. Nesta dissertação, estudamos possibilidades de uso da web
como plataforma para a construção de ambientes interativos para prova
de teoremas. Nossa proposta é estudar os diferentes modelos de interação
entre usuário e ambientes de prova automatizados e verificar como estes
modelos podem ser adaptados para a web. Como resultado, apresentamos
uma ferramenta gráfica para visualização e manipulação direta de provas
formais na web como uma interface alternativa entre usuários e provadores. / [en] Automatic theorem proving consists of proving mathematical theorems by
means of computer programs. Depending on the logic used, the process of
proving a formula is not computable. Moreover, depending of the deductive
system applied to, the search for a proof can involve the application
of long sequences of axioms and inference rules, reinforcing the need of
human intervention in the proof process. Such systems are known as
interactive theorem provers or proof assistants. In a typical scenario, the
user interacts with the prover through a graphical interface, usually a
desktop application. Recently, however, applications like those started to be
delivered to users through the web. This way of software deployment avoids
that final users have to deal with complex activities like prover installation
and configuration and allows this user to access the system from different
machines with a simple Internet connection. In this research we study the
use of web as a platform for interactive theorem proving environments
construction. Our purpose is to study some interaction models between
user and automated proof environments and verify how these models can
be adapted to work as a web application. As a result we show a graphical
tool for visualization and direct manipulation of formal proofs on web to
work as an alternative interface between user and proving machines.
|
9 |
[en] THE INTERACTION BETWEEN LINGUISTIC AND VISUAL INFORMATION IN LANGUAGE COMPREHENSION / [pt] A INTERAÇÃO ENTRE INFORMAÇÕES LINGUÍSTICA E VISUAL NA COMPREENSÃO DA LINGUAGEMVINÍCIUS GUIMARÃES RODRIGUES 16 May 2017 (has links)
[pt] Esta dissertação tem por objetivo analisar como ocorre a interação entre informações de ordens linguística e visual em experimentos de compreensão de linguagem. Sentenças do português nas vozes ativa e passiva e com verbos de perspectiva (perseguir/fugir) foram analisadas a partir da técnica de comparação sentença-imagem, com manipulação de posição ocupada na imagem pelo personagem correspondente ao sujeito da sentença (esquerda vs. direita) e também do papel temático (agente/fonte vs. paciente/alvo) de um dos personagens sobre o qual recaía um recurso de manipulação de atenção visual. Do ponto de vista teórico, proble-matizou-se a interação entre conteúdos proposicionais oriundos do processamento visual e linguístico com base em uma articulação entre a faculdade da linguagem no sentido amplo (Hauser, Chomsky & Fitch, 2002) e a teoria da modularidade da mente (Fodor, 1983). Os resultados de dois experimentos realizados com falantes de português sugerem que, no mapeamento sentença-imagem, a posição do personagem correspondente ao sujeito não parece ser um fator relevante, a não ser em estruturas mais complexas, como no caso de sentenças envolvendo verbos de perspectiva em que o papel temático do sujeito não é prototípico. Em relação a papel temático, o fato de o foco atencional numa imagem estar sobre um elemento que corresponde a um sujeito com papel prototípico de agente parece facilitar o proces-samento. Quanto aos tipos de estrutura, como já verificado na literatura psicolin-guística, estruturas ativas parecem ser menos complexas do que passivas e facilitam o mapeamento visual. Quanto à expressão de perspectiva, verbos de perspectiva que empreendem um sujeito paciente/alvo parecem demandar maior custo de pro-cessamento, possivelmente em função de questões de acesso e representação lexical associadas a esses verbos. / [en] This dissertation aims to analyze how the interface between linguistic and visual information occurs based on language comprehension experiments. Active and passive voice sentences, as well as perspective predicates were analyzed using a sentence-image verification technique. The position of the characters representing the subject were manipulated (left-right orientation), and so were their theme roles (agent/source vs. patient/target) by means of attention manipulation. The proposi-tional theory, a relation between the faculty of language in the broad sense (Hauser, Chomsky and Fitch, 2002) and the modularity of mind theory (Fodor, 1983) were presented so as to explain how the interface between linguistic and visual information occurs. Our experiments were carried out with Portuguese speakers, and results indicate that during sentence-image mapping, left-right orientation does not seem to be a relevant factor, except for more complex structures, such as perspec-tive predicates where the subject s theme role is not prototypical. As for theme roles, the attention manipulation on the subject character seems to facilitate lan-guage processing. As for sentence types, active voice sentences seem to be pro-cessed more easily than passive ones. Perspective predicates whose subjects take a passive/target role seem to demand higher processing costs, possibly because of lexical access and representation.
|
10 |
[pt] INVESTIGANDO O RELACIONAMENTO ENTRE DEPENDÊNCIA DE CARACTERÍSTICAS E PROPAGAÇÃO DE MUDANÇAS / [en] ON THE RELATIONSHIP BETWEEN FEATURE DEPENDENCIES AND CHANGE PROPAGATIONBRUNO BARBIERI DE PONTES CAFEO 21 July 2016 (has links)
[pt] Características são abstrações-chave para o desenvolvimento e
manutenção de linhas de produto de software. Um desafio encarado na
manutenção de linhas de produto de software é o entendimento das
dependências que existem entre características. No código-fonte, uma
dependência entre características ocorre sempre que um elemento de programa
dentro dos limites de implementação de uma característica depende de
elementos externos a esta característica. Exemplos são atributos ou métodos
definidos na implementação de uma característica, mas utilizados no código
responsável pela implementação de outra característica. A medida que
desenvolvedores modificam o código-fonte associado com uma característica,
eles devem garantir que outras características são consistentemente atualizadas
com as novas mudanças – as chamadas propagações de mudanças. No
entanto, a apropriada propagação de mudanças não é uma tarefa trivial,
pois características geralmente não são modularizadas no código-fonte.
Dessa forma, dado uma mudança em uma determinada característica, é
desafiador revelar quais (partes de) outras características também devem
ser alteradas. Propagação de mudanças se torna, portanto, um aspecto
central e não-trivial da manutenção de linhas de produto de software.
Desenvolvedores podem negligenciar partes importantes de código que
deveriam ser revisadas ou alteradas, portanto não propagando mudanças
de forma completa. Por outro lado, desenvolvedores também podem analisar
de forma desnecessária partes de código que não são relevantes para a
tarefa de manutenção de características, portanto aumentando o esforço de
manutenção ou até propagando mudanças de forma indevida. A criação de
um bom modelo mental da estrutura das dependências de características se
torna essencial para ganhar compreensão sobre o complexo relacionamento de
características com o objetivo de propagar mudanças de forma apropriada.
Infelizmente, não existe entendimento no estado-da-arte sobre propriedades
estruturais de dependências de características que afetam a propagação
de mudanças. Este entendimento ainda não é possível, pois: (i) não existe
meios de caracterização e quantificação para propriedades estruturais de
dependências de características, e (ii) não existem investigações empíricas
sobre a influência dessas propriedades na propagação de mudanças. Nesse
contexto, esta tese apresenta três contribuições para superar os problemas
acima mencionados. Primeiro, foi desenvolvido um estudo para entender a
propagação de mudanças na presença de dependência de características em
várias linhas de produto industriais. Segundo, é proposto um arcabouço
de medidas com o propósito de quantificar propriedades estruturais de
dependências de características. Nesse contexto, também foi desenvolvido
um estudo revelando que métricas convencionais tipicamente aplicadas em
trabalhos de linha de produto, tais como a métrica de acoplamento, não
são indicadores efetivos da propagação de mudanças em linhas de produto
de software. As métricas propostas nesta tese superaram consistentemente
as métricas convencionais estudadas. Terceiro, esta tese propõe um método
para auxiliar a propagação de mudanças encarando informações sobre a
organização de dependência de características encarando-as como um problema
de agrupamento. Foi avaliado se a organização de informações proposta nesta
tese tem potencial para auxiliar desenvolvedores a propagar mudanças em
linhas de produto de software. / [en] Features are the key abstraction to develop and maintain software
product lines. A challenge faced in the maintenance of product lines is the
understanding of the dependencies that exist between features. In the source
code, a feature dependency occurs whenever program elements within the
boundaries of a feature s implementation depend on elements external to that
feature. Examples are either attributes or methods defined in the realisation
of a feature, but used in the code realising other features. As developers
modify the source code associated with a feature, they must ensure that other
features are consistently updated with the new changes – the so-called change
propagation. However, appropriate change propagation is far from being trivial
as features are often not modularised in the source code. In this way, given a
change in a certain feature, it is challenging to reveal which (part of) other
features should also change. Change propagation becomes, therefore, a central
and non-trivial aspect of software product-line maintenance. Developers may
overlook important parts of the code that should be revised or changed, thus
not fully propagating changes. Conversely, they may also unnecessarily analyse
parts that are not relevant to the feature-maintenance task at hand, thereby
increasing the maintenance effort or even mis-propagating changes. The
creation of a good mental model based on the structure of feature dependencies
becomes essential for gaining insight into the intricate relationship between
features in order to properly propagate changes. Unfortunately, there is no
understanding in the state of the art about structural properties of feature
dependencies that affect change propagation. This understanding is not yet
possible as: (i) there is no conceptual characterisation and quantification means
for structural properties of feature dependency, and (ii) there is no empirical
investigation on the influence of these properties on change propagation.
In this context, this thesis presents three contributions to overcome the
aforementioned problems. First, we develop a study to understand change
propagation in presence of feature dependencies in several industry-strength
product lines. Second, we propose a measurement framework intended to
quantify structural properties of feature dependencies. We also develop a
study revealing that conventional metrics typically used in previous research,
such as coupling metrics, are not effective indicators of change propagation
in software product lines. Our proposed metrics consistently outperformed
conventional metrics. Third, we also propose a method to support change
propagation by facing the organisation of feature dependency information as
a clustering problem. We evaluate if our proposed organisation has potential
to help developers to propagate changes in software product lines.
|
Page generated in 0.0329 seconds