A reflective object-oriented architecture for developing fault-tolerant software
Autor(a) principal: | |
---|---|
Data de Publicação: | 1997 |
Outros Autores: | , |
Tipo de documento: | Artigo |
Idioma: | eng |
Título da fonte: | Repositório Institucional da UFRGS |
Texto Completo: | http://hdl.handle.net/10183/72563 |
Resumo: | This paper proposes a reflective object-oriented architecture for developing fault-tolerant software. Reflective object-oriented programming promotes a modular structuring of systems by means of a new dimension of modularization—the separation between base-level objects and meta-level objects. This property allows the creation of metaobjects responsible for managing tasks of application objects located at the base level. In the context of this work, computational reflection is applied to implement various strategies of fault tolerance at the meta-level in a transparent manner for the application programmer, that is, without interfering with the original structure of application objects that require fault tolerance facilities. The use of the proposed architecture has the following advantages: (i) separation of concerns, that is, separate the concerns related to the application domain from those related to the implementation of fault-tolerant mechanisms; (ii) it promotes code reuse of fault-tolerance mechanisms; (iii) it allows application programmers to use the most adequate fault-tolerance strategy for his implementation, and (iv) it provides a design that is more adaptable, flexible and easier to extend than traditional designs for developing fault-tolerant software. Our reflective architecture is composed of three levels, and is based on the abstraction of object groups. |
id |
UFRGS-2_8d801ed4e81e90f104e2f1995b401239 |
---|---|
oai_identifier_str |
oai:www.lume.ufrgs.br:10183/72563 |
network_acronym_str |
UFRGS-2 |
network_name_str |
Repositório Institucional da UFRGS |
repository_id_str |
|
spelling |
Buzato, Luiz EduardoRubira, Cecilia Mary FischerLisboa, Maria Lucia Blanck2013-06-19T01:43:32Z19970104-6500http://hdl.handle.net/10183/72563000154806This paper proposes a reflective object-oriented architecture for developing fault-tolerant software. Reflective object-oriented programming promotes a modular structuring of systems by means of a new dimension of modularization—the separation between base-level objects and meta-level objects. This property allows the creation of metaobjects responsible for managing tasks of application objects located at the base level. In the context of this work, computational reflection is applied to implement various strategies of fault tolerance at the meta-level in a transparent manner for the application programmer, that is, without interfering with the original structure of application objects that require fault tolerance facilities. The use of the proposed architecture has the following advantages: (i) separation of concerns, that is, separate the concerns related to the application domain from those related to the implementation of fault-tolerant mechanisms; (ii) it promotes code reuse of fault-tolerance mechanisms; (iii) it allows application programmers to use the most adequate fault-tolerance strategy for his implementation, and (iv) it provides a design that is more adaptable, flexible and easier to extend than traditional designs for developing fault-tolerant software. Our reflective architecture is composed of three levels, and is based on the abstraction of object groups.application/pdfengJournal of the Brazilian Computer Society. Rio de Janeiro. Vol. 4, n. 2 (nov. 1997), p. 39-48Tolerancia : Falhas : SoftwareProgramação orientada : ObjetosSoftware fault toleranceHardware fault toleranceObject-oriented programmingComputational reflectionMeta-level architectureA reflective object-oriented architecture for developing fault-tolerant softwareinfo:eu-repo/semantics/articleinfo:eu-repo/semantics/otherinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSORIGINAL000154806.pdf000154806.pdfTexto completo (inglês)application/pdf58446http://www.lume.ufrgs.br/bitstream/10183/72563/1/000154806.pdf7cb256dc66b3aab503ddeffecc7d0788MD51TEXT000154806.pdf.txt000154806.pdf.txtExtracted Texttext/plain36854http://www.lume.ufrgs.br/bitstream/10183/72563/2/000154806.pdf.txt750eddb97115a9a057dd086349170893MD52THUMBNAIL000154806.pdf.jpg000154806.pdf.jpgGenerated Thumbnailimage/jpeg1799http://www.lume.ufrgs.br/bitstream/10183/72563/3/000154806.pdf.jpg0d54bf429765405b9ed478defc201d7eMD5310183/725632018-10-08 08:15:57.566oai:www.lume.ufrgs.br:10183/72563Repositório de PublicaçõesPUBhttps://lume.ufrgs.br/oai/requestopendoar:2018-10-08T11:15:57Repositório Institucional da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false |
dc.title.pt_BR.fl_str_mv |
A reflective object-oriented architecture for developing fault-tolerant software |
title |
A reflective object-oriented architecture for developing fault-tolerant software |
spellingShingle |
A reflective object-oriented architecture for developing fault-tolerant software Buzato, Luiz Eduardo Tolerancia : Falhas : Software Programação orientada : Objetos Software fault tolerance Hardware fault tolerance Object-oriented programming Computational reflection Meta-level architecture |
title_short |
A reflective object-oriented architecture for developing fault-tolerant software |
title_full |
A reflective object-oriented architecture for developing fault-tolerant software |
title_fullStr |
A reflective object-oriented architecture for developing fault-tolerant software |
title_full_unstemmed |
A reflective object-oriented architecture for developing fault-tolerant software |
title_sort |
A reflective object-oriented architecture for developing fault-tolerant software |
author |
Buzato, Luiz Eduardo |
author_facet |
Buzato, Luiz Eduardo Rubira, Cecilia Mary Fischer Lisboa, Maria Lucia Blanck |
author_role |
author |
author2 |
Rubira, Cecilia Mary Fischer Lisboa, Maria Lucia Blanck |
author2_role |
author author |
dc.contributor.author.fl_str_mv |
Buzato, Luiz Eduardo Rubira, Cecilia Mary Fischer Lisboa, Maria Lucia Blanck |
dc.subject.por.fl_str_mv |
Tolerancia : Falhas : Software Programação orientada : Objetos |
topic |
Tolerancia : Falhas : Software Programação orientada : Objetos Software fault tolerance Hardware fault tolerance Object-oriented programming Computational reflection Meta-level architecture |
dc.subject.eng.fl_str_mv |
Software fault tolerance Hardware fault tolerance Object-oriented programming Computational reflection Meta-level architecture |
description |
This paper proposes a reflective object-oriented architecture for developing fault-tolerant software. Reflective object-oriented programming promotes a modular structuring of systems by means of a new dimension of modularization—the separation between base-level objects and meta-level objects. This property allows the creation of metaobjects responsible for managing tasks of application objects located at the base level. In the context of this work, computational reflection is applied to implement various strategies of fault tolerance at the meta-level in a transparent manner for the application programmer, that is, without interfering with the original structure of application objects that require fault tolerance facilities. The use of the proposed architecture has the following advantages: (i) separation of concerns, that is, separate the concerns related to the application domain from those related to the implementation of fault-tolerant mechanisms; (ii) it promotes code reuse of fault-tolerance mechanisms; (iii) it allows application programmers to use the most adequate fault-tolerance strategy for his implementation, and (iv) it provides a design that is more adaptable, flexible and easier to extend than traditional designs for developing fault-tolerant software. Our reflective architecture is composed of three levels, and is based on the abstraction of object groups. |
publishDate |
1997 |
dc.date.issued.fl_str_mv |
1997 |
dc.date.accessioned.fl_str_mv |
2013-06-19T01:43:32Z |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/article info:eu-repo/semantics/other |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
format |
article |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/10183/72563 |
dc.identifier.issn.pt_BR.fl_str_mv |
0104-6500 |
dc.identifier.nrb.pt_BR.fl_str_mv |
000154806 |
identifier_str_mv |
0104-6500 000154806 |
url |
http://hdl.handle.net/10183/72563 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.relation.ispartof.pt_BR.fl_str_mv |
Journal of the Brazilian Computer Society. Rio de Janeiro. Vol. 4, n. 2 (nov. 1997), p. 39-48 |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFRGS instname:Universidade Federal do Rio Grande do Sul (UFRGS) instacron:UFRGS |
instname_str |
Universidade Federal do Rio Grande do Sul (UFRGS) |
instacron_str |
UFRGS |
institution |
UFRGS |
reponame_str |
Repositório Institucional da UFRGS |
collection |
Repositório Institucional da UFRGS |
bitstream.url.fl_str_mv |
http://www.lume.ufrgs.br/bitstream/10183/72563/1/000154806.pdf http://www.lume.ufrgs.br/bitstream/10183/72563/2/000154806.pdf.txt http://www.lume.ufrgs.br/bitstream/10183/72563/3/000154806.pdf.jpg |
bitstream.checksum.fl_str_mv |
7cb256dc66b3aab503ddeffecc7d0788 750eddb97115a9a057dd086349170893 0d54bf429765405b9ed478defc201d7e |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS) |
repository.mail.fl_str_mv |
|
_version_ |
1815447497385967616 |