[en] A DYNAMIC INTEGRATION MODEL FOR SOFTWARE COMPONENT SYSTEMS

Bibliographic Details
Main Author: RENATO FONTOURA DE GUSMAO CERQUEIRA
Publication Date: 2002
Format: Doctoral thesis
Language: por
Source: Repositório Institucional da PUC-RIO (Projeto Maxwell)
Download full: https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=2792&idi=1
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=2792&idi=2
http://doi.org/10.17771/PUCRio.acad.2792
Summary: [pt] Diferentes sistemas de componentes de software, tais como CORBA, COM e JavaBeans, apresentam diferentes modelos de objetos e sistemas de tipos. Essas diferenças dificultam a integração de componentes oriundos de sistemas distintos e, conseqüentemente, são uma barreira para o reuso desses componentes. Neste trabalho, defendemos a tese de que uma linguagem interpretada com um determinado conjunto de mecanismos reflexivos, aliada à compatibilidade estrutural de tipos, oferece um mecanismo de composição adequado tanto para a conexão dinâmica de componentes, quanto para a interoperabilidade entre diferentes sistemas de componentes. Esse mecanismo de composição realiza em tempo de execução as tarefas de conexão, adaptação, implementação e verificação de tipos de componentes, e trata de uma maneira uniforme componentes de diferentes sistemas, permitindo que estes sejam conectados de uma forma transparente. O mecanismo de composição que propomos se baseia em um modelo que privilegia a flexibilidade em tempo de execução. Esse modelo de composição é composto por dois elementos principais. O primeiro elemento é um modelo de objetos que definimos com a finalidade de poder representar componentes dos diferentes sistemas tratados neste trabalho. Assim, esse modelo de objetos faz o papel de um modelo integrador, isto é, um modelo sob o qual objetos de diferentes sistemas podem ser representados e interagir de forma transparente. O segundo elemento de nosso modelo de composição é um padrão de projeto (design pattern) para a implementação de bindings entre linguagens interpretadas e sistemas de componentes. Esse padrão de projeto, chamado Dynamic Language Binding, não utiliza a técnica tradicional de stubs. Ao invés disso, ele utiliza mecanismos de reflexividade e tipagem dinâmica para implementar tanto proxies genéricos, que podem representar qualquer componente de um determinado sistema, quanto adaptadores genéricos, que permitem a implementação de componentes utilizando a própria linguagem de composição. Como instrumento de validação da nossa proposta, descrevemos uma implementação do modelo de composição denominada LuaOrb. LuaOrb utiliza a linguagem interpretada Lua como linguagem de composição dinâmica, e integra os sistemas CORBA, COM e Java.
id PUC_RIO-1_a224984fd8509c8c88c0db0ffa4fc88f
oai_identifier_str oai:MAXWELL.puc-rio.br:2792
network_acronym_str PUC_RIO-1
network_name_str Repositório Institucional da PUC-RIO (Projeto Maxwell)
repository_id_str 534
spelling [en] A DYNAMIC INTEGRATION MODEL FOR SOFTWARE COMPONENT SYSTEMS [pt] EXAMES VIRTUAIS UTILIZANDO UM ALGORITIMO DE RAY CASTING ACELERADO [pt] SISTEMAS DISTRIBUIDOS[pt] JAVA[pt] COM[pt] CORBA[pt] LINGUAGENS DE COMPOSICAO[pt] COMPONENTES DE SOFTWARE[en] DISTRIBUTED SYSTEMS[en] JAVA[en] COM[en] CORBA[en] COMPOSITION LANGUAGES[en] SOFTWARE COMPONENTS[pt] Diferentes sistemas de componentes de software, tais como CORBA, COM e JavaBeans, apresentam diferentes modelos de objetos e sistemas de tipos. Essas diferenças dificultam a integração de componentes oriundos de sistemas distintos e, conseqüentemente, são uma barreira para o reuso desses componentes. Neste trabalho, defendemos a tese de que uma linguagem interpretada com um determinado conjunto de mecanismos reflexivos, aliada à compatibilidade estrutural de tipos, oferece um mecanismo de composição adequado tanto para a conexão dinâmica de componentes, quanto para a interoperabilidade entre diferentes sistemas de componentes. Esse mecanismo de composição realiza em tempo de execução as tarefas de conexão, adaptação, implementação e verificação de tipos de componentes, e trata de uma maneira uniforme componentes de diferentes sistemas, permitindo que estes sejam conectados de uma forma transparente. O mecanismo de composição que propomos se baseia em um modelo que privilegia a flexibilidade em tempo de execução. Esse modelo de composição é composto por dois elementos principais. O primeiro elemento é um modelo de objetos que definimos com a finalidade de poder representar componentes dos diferentes sistemas tratados neste trabalho. Assim, esse modelo de objetos faz o papel de um modelo integrador, isto é, um modelo sob o qual objetos de diferentes sistemas podem ser representados e interagir de forma transparente. O segundo elemento de nosso modelo de composição é um padrão de projeto (design pattern) para a implementação de bindings entre linguagens interpretadas e sistemas de componentes. Esse padrão de projeto, chamado Dynamic Language Binding, não utiliza a técnica tradicional de stubs. Ao invés disso, ele utiliza mecanismos de reflexividade e tipagem dinâmica para implementar tanto proxies genéricos, que podem representar qualquer componente de um determinado sistema, quanto adaptadores genéricos, que permitem a implementação de componentes utilizando a própria linguagem de composição. Como instrumento de validação da nossa proposta, descrevemos uma implementação do modelo de composição denominada LuaOrb. LuaOrb utiliza a linguagem interpretada Lua como linguagem de composição dinâmica, e integra os sistemas CORBA, COM e Java.[en] Different component systems, such as CORBA, COM, and Java, have different object models and type systems. Such differences make the interoperability between components of distinct systems more difficult, and thus are an obstacle for component reuse. In this dissertation, we argue that an interpreted language with a specific set of reflexive mechanisms, together with a type system with structural compatibility, offers a composition mechanism suitable for dynamic component connection and for interoperability between different component systems. This composition mechanism performs at runtime the tasks of verifying types, connecting, adapting and implementing components, and handles components of different systems in a uniform way, allowing them to be connected transparently. The proposed composition mechanism is based on a model that favors flexibility at runtime. This composition model is composed of two major elements. The first one is an object model, defined in order to represent components of the different systems addressed in this dissertation. Thus, this object model performs the role of a unifying model, that is, a model in which objects from different systems can interact and be represented transparently. The second element of our composition model is a design pattern to implement bindings between interpreted languages and component systems. This design pattern, named Dynamic Language Binding, does not use the traditional stubs technique. Instead of this, it uses reflection and dynamic typing to implement generic proxies, which can represent any component of a specific system, and generic adapters, which allow component implementations using the composition language itself. In order to validate our proposal, we describe the LuaOrb system, which is an implementation of our composition model. LuaOrb uses the interpreted language Lua as its dynamic composition language, and integrates the systems CORBA, COM and Java.MAXWELLROBERTO IERUSALIMSCHYRENATO FONTOURA DE GUSMAO CERQUEIRA2002-07-30info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesishttps://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=2792&idi=1https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=2792&idi=2http://doi.org/10.17771/PUCRio.acad.2792porreponame:Repositório Institucional da PUC-RIO (Projeto Maxwell)instname:Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)instacron:PUC_RIOinfo:eu-repo/semantics/openAccess2022-08-25T00:00:00Zoai:MAXWELL.puc-rio.br:2792Repositório InstitucionalPRIhttps://www.maxwell.vrac.puc-rio.br/ibict.phpopendoar:5342022-08-25T00:00Repositório Institucional da PUC-RIO (Projeto Maxwell) - Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)false
dc.title.none.fl_str_mv [en] A DYNAMIC INTEGRATION MODEL FOR SOFTWARE COMPONENT SYSTEMS
[pt] EXAMES VIRTUAIS UTILIZANDO UM ALGORITIMO DE RAY CASTING ACELERADO
title [en] A DYNAMIC INTEGRATION MODEL FOR SOFTWARE COMPONENT SYSTEMS
spellingShingle [en] A DYNAMIC INTEGRATION MODEL FOR SOFTWARE COMPONENT SYSTEMS
RENATO FONTOURA DE GUSMAO CERQUEIRA
[pt] SISTEMAS DISTRIBUIDOS
[pt] JAVA
[pt] COM
[pt] CORBA
[pt] LINGUAGENS DE COMPOSICAO
[pt] COMPONENTES DE SOFTWARE
[en] DISTRIBUTED SYSTEMS
[en] JAVA
[en] COM
[en] CORBA
[en] COMPOSITION LANGUAGES
[en] SOFTWARE COMPONENTS
title_short [en] A DYNAMIC INTEGRATION MODEL FOR SOFTWARE COMPONENT SYSTEMS
title_full [en] A DYNAMIC INTEGRATION MODEL FOR SOFTWARE COMPONENT SYSTEMS
title_fullStr [en] A DYNAMIC INTEGRATION MODEL FOR SOFTWARE COMPONENT SYSTEMS
title_full_unstemmed [en] A DYNAMIC INTEGRATION MODEL FOR SOFTWARE COMPONENT SYSTEMS
title_sort [en] A DYNAMIC INTEGRATION MODEL FOR SOFTWARE COMPONENT SYSTEMS
author RENATO FONTOURA DE GUSMAO CERQUEIRA
author_facet RENATO FONTOURA DE GUSMAO CERQUEIRA
author_role author
dc.contributor.none.fl_str_mv ROBERTO IERUSALIMSCHY
dc.contributor.author.fl_str_mv RENATO FONTOURA DE GUSMAO CERQUEIRA
dc.subject.por.fl_str_mv [pt] SISTEMAS DISTRIBUIDOS
[pt] JAVA
[pt] COM
[pt] CORBA
[pt] LINGUAGENS DE COMPOSICAO
[pt] COMPONENTES DE SOFTWARE
[en] DISTRIBUTED SYSTEMS
[en] JAVA
[en] COM
[en] CORBA
[en] COMPOSITION LANGUAGES
[en] SOFTWARE COMPONENTS
topic [pt] SISTEMAS DISTRIBUIDOS
[pt] JAVA
[pt] COM
[pt] CORBA
[pt] LINGUAGENS DE COMPOSICAO
[pt] COMPONENTES DE SOFTWARE
[en] DISTRIBUTED SYSTEMS
[en] JAVA
[en] COM
[en] CORBA
[en] COMPOSITION LANGUAGES
[en] SOFTWARE COMPONENTS
description [pt] Diferentes sistemas de componentes de software, tais como CORBA, COM e JavaBeans, apresentam diferentes modelos de objetos e sistemas de tipos. Essas diferenças dificultam a integração de componentes oriundos de sistemas distintos e, conseqüentemente, são uma barreira para o reuso desses componentes. Neste trabalho, defendemos a tese de que uma linguagem interpretada com um determinado conjunto de mecanismos reflexivos, aliada à compatibilidade estrutural de tipos, oferece um mecanismo de composição adequado tanto para a conexão dinâmica de componentes, quanto para a interoperabilidade entre diferentes sistemas de componentes. Esse mecanismo de composição realiza em tempo de execução as tarefas de conexão, adaptação, implementação e verificação de tipos de componentes, e trata de uma maneira uniforme componentes de diferentes sistemas, permitindo que estes sejam conectados de uma forma transparente. O mecanismo de composição que propomos se baseia em um modelo que privilegia a flexibilidade em tempo de execução. Esse modelo de composição é composto por dois elementos principais. O primeiro elemento é um modelo de objetos que definimos com a finalidade de poder representar componentes dos diferentes sistemas tratados neste trabalho. Assim, esse modelo de objetos faz o papel de um modelo integrador, isto é, um modelo sob o qual objetos de diferentes sistemas podem ser representados e interagir de forma transparente. O segundo elemento de nosso modelo de composição é um padrão de projeto (design pattern) para a implementação de bindings entre linguagens interpretadas e sistemas de componentes. Esse padrão de projeto, chamado Dynamic Language Binding, não utiliza a técnica tradicional de stubs. Ao invés disso, ele utiliza mecanismos de reflexividade e tipagem dinâmica para implementar tanto proxies genéricos, que podem representar qualquer componente de um determinado sistema, quanto adaptadores genéricos, que permitem a implementação de componentes utilizando a própria linguagem de composição. Como instrumento de validação da nossa proposta, descrevemos uma implementação do modelo de composição denominada LuaOrb. LuaOrb utiliza a linguagem interpretada Lua como linguagem de composição dinâmica, e integra os sistemas CORBA, COM e Java.
publishDate 2002
dc.date.none.fl_str_mv 2002-07-30
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=2792&idi=1
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=2792&idi=2
http://doi.org/10.17771/PUCRio.acad.2792
url https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=2792&idi=1
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=2792&idi=2
http://doi.org/10.17771/PUCRio.acad.2792
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv MAXWELL
publisher.none.fl_str_mv MAXWELL
dc.source.none.fl_str_mv reponame:Repositório Institucional da PUC-RIO (Projeto Maxwell)
instname:Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)
instacron:PUC_RIO
instname_str Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)
instacron_str PUC_RIO
institution PUC_RIO
reponame_str Repositório Institucional da PUC-RIO (Projeto Maxwell)
collection Repositório Institucional da PUC-RIO (Projeto Maxwell)
repository.name.fl_str_mv Repositório Institucional da PUC-RIO (Projeto Maxwell) - Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)
repository.mail.fl_str_mv
_version_ 1840643313039835136