Um sistema de apoio ao teste de aplicações smalltalk

Detalhes bibliográficos
Autor(a) principal: Pinto, Ivete Martins
Data de Publicação: 1998
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Biblioteca Digital de Teses e Dissertações da UFRGS
Texto Completo: http://hdl.handle.net/10183/26306
Resumo: A atividade de teste é de extrema importância em qualquer ambiente de programação para gerar produtos de qualidade e de alta confiabilidade. Entretanto, alem das dificuldades inerentes a esta tarefa, soma-se a falta de metodologias e ferramentas que a apóiem. Isto faz com que o teste se tome uma das atividades do ciclo de vida do software com maior custo e tempo associados. O paradigma de orientação a objetos surgiu na busca constante dos desenvolvedores de software por maior qualidade e novas soluções para os problemas de baixa produtividade. Todavia, as características poderosas deste paradigma geraram um conjunto adicional de problemas nas atividades de teste e manutenção, onde a alta concentração de custo e tempo envolvidos sempre foram uma constatação real. Em uma aplicação orientada a objetos, cada objeto é uma entidade que possui um comportamento bem definido, com um papel bem claro no domínio. Os valores dos atributos de um objeto definem o estado do objeto, e são acessados através de um conjunto de mensagens bem definidas, através das quais o objeto é capaz de executar alterações nestes valores de atributos. Os valores de atributos reagem passagem destas mensagens (ativação de métodos) alterando ou não o seu estado. Neste trabalho é apresentado um protótipo de ferramenta de apoio ao teste de programas orientados a objetos, chamado ATeste, fundamentado no conceito de teste baseado em estado, com uma abordagem reflexiva, para auxiliar o teste de aplicações Smalltalk. O teste baseado em estado verifica as interações entre os objetos pela monitoração das mudanças que ocorrem em valores dos atributos. Este tipo de teste verifica como um objeto reage a ativação de um método, respeitando o encapsulamento. A abordagem reflexiva possibilita que mecanismos de analise possam ser associados a aplicação através da utilização de conceitos de reflexão computacional. A reflexão computacional proporciona a analise dinâmica da aplicação, sem interferir nos aspectos comportamentais e estruturais dos objetos do domínio, permitindo a monitoração de objetos específicos do domínio, os quais podem ser dinamicamente selecionados pelo usuário. Como suporte para o desenvolvimento de ATeste foi utilizado o framework Luthier MOPs. Este framework apresenta, como principal contribuição, a utilização de técnicas de reflexão computacional baseadas no conceito de gerenciadores de metaobjetos para a implementação de meta-arquiteturas visando a captura de informações e analise de aplicações. Baseado nesta arquitetura reflexiva, ATeste trabalha com um meta-nível, que monitora os objetos selecionados pelo usuário na aplicação do nível-base. Desta forma, uma das principais características do sistema desenvolvido é a analise da aplicação sob teste de forma dinâmica sem necessidade de instrumentação de seu c6digo fonte. Isto é possível através da utilização de reflexão computacional, que permite implementar diferentes mecanismos de analise que podem ser dinamicamente associados com a aplicação em execução. O projeto de ATeste compreende um conjunto de classes pr6prias que definem a interface com o usuário e as funcionalidades desejadas, bem como classes do framework Luthier MOPs, e especializações destas.
id URGS_7f15597068425062017a3ce78716e0b5
oai_identifier_str oai:www.lume.ufrgs.br:10183/26306
network_acronym_str URGS
network_name_str Biblioteca Digital de Teses e Dissertações da UFRGS
repository_id_str 1853
spelling Pinto, Ivete MartinsPrice, Ana Maria de Alencar2010-10-12T04:18:46Z1998http://hdl.handle.net/10183/26306000216983A atividade de teste é de extrema importância em qualquer ambiente de programação para gerar produtos de qualidade e de alta confiabilidade. Entretanto, alem das dificuldades inerentes a esta tarefa, soma-se a falta de metodologias e ferramentas que a apóiem. Isto faz com que o teste se tome uma das atividades do ciclo de vida do software com maior custo e tempo associados. O paradigma de orientação a objetos surgiu na busca constante dos desenvolvedores de software por maior qualidade e novas soluções para os problemas de baixa produtividade. Todavia, as características poderosas deste paradigma geraram um conjunto adicional de problemas nas atividades de teste e manutenção, onde a alta concentração de custo e tempo envolvidos sempre foram uma constatação real. Em uma aplicação orientada a objetos, cada objeto é uma entidade que possui um comportamento bem definido, com um papel bem claro no domínio. Os valores dos atributos de um objeto definem o estado do objeto, e são acessados através de um conjunto de mensagens bem definidas, através das quais o objeto é capaz de executar alterações nestes valores de atributos. Os valores de atributos reagem passagem destas mensagens (ativação de métodos) alterando ou não o seu estado. Neste trabalho é apresentado um protótipo de ferramenta de apoio ao teste de programas orientados a objetos, chamado ATeste, fundamentado no conceito de teste baseado em estado, com uma abordagem reflexiva, para auxiliar o teste de aplicações Smalltalk. O teste baseado em estado verifica as interações entre os objetos pela monitoração das mudanças que ocorrem em valores dos atributos. Este tipo de teste verifica como um objeto reage a ativação de um método, respeitando o encapsulamento. A abordagem reflexiva possibilita que mecanismos de analise possam ser associados a aplicação através da utilização de conceitos de reflexão computacional. A reflexão computacional proporciona a analise dinâmica da aplicação, sem interferir nos aspectos comportamentais e estruturais dos objetos do domínio, permitindo a monitoração de objetos específicos do domínio, os quais podem ser dinamicamente selecionados pelo usuário. Como suporte para o desenvolvimento de ATeste foi utilizado o framework Luthier MOPs. Este framework apresenta, como principal contribuição, a utilização de técnicas de reflexão computacional baseadas no conceito de gerenciadores de metaobjetos para a implementação de meta-arquiteturas visando a captura de informações e analise de aplicações. Baseado nesta arquitetura reflexiva, ATeste trabalha com um meta-nível, que monitora os objetos selecionados pelo usuário na aplicação do nível-base. Desta forma, uma das principais características do sistema desenvolvido é a analise da aplicação sob teste de forma dinâmica sem necessidade de instrumentação de seu c6digo fonte. Isto é possível através da utilização de reflexão computacional, que permite implementar diferentes mecanismos de analise que podem ser dinamicamente associados com a aplicação em execução. O projeto de ATeste compreende um conjunto de classes pr6prias que definem a interface com o usuário e as funcionalidades desejadas, bem como classes do framework Luthier MOPs, e especializações destas.The activity of testing is very important for generating high quality and reliable products in any programming environment. Besides the difficulties inherent to this task, there is the lack of methodologies and tools to support the testing process. These facts make testing one of the software life cycle activities of greatest associated cost and time. The object oriented paradigm had appeared as a result of the constant searching by software developers for both greater quality and new solutions to the problems of low productivity. However, the powerful characteristics of this paradigm have generated an additional set of problems in the test and maintenance activities, where high costs and time expenditure have been always of great concern. In an object oriented application, each object is an entity that has a welldefined behavior, with a well clear role in the domain. The attribute values of an object define the object state. Object's attributes may only be accessed through a set of proper messages, which can make changes to object's states. This work presents a prototype of a tool, named ATeste, which aims to support object oriented testing of Smalltalk applications by implementing the concept of state-based testing through a reflexive approach. In state-based testing objects interactions are verified through monitoring changes that occur to the values of object attributes. This type of test verifies how an object reacts by a method activation, taking into account object encapsulation. The reflexive approach allows the association of analysis mechanisms to the software system through the application of computational reflection concepts. Computational reflection provides dynamic analysis of the software, without interfering in both behavior and structural aspects of the object's domain. It allows monitoring of specific objects in the domain, which can be dynamically selected by the user. The framework Luthier MOPs has been extended to support the development of ATeste. This framework provides, as its main contribution, facilities of computational reflection techniques based on meta-objects management concepts for the implementation of meta-architectures, aiming the capture of information and analysis of object-oriented applications. Considering this reflexive architecture, ATeste works with a meta-level, which manages the objects selected by the user in the application basic-level. In this way, one of the main characteristics of the developed system is the analysis of the application under test in a dynamic way, without necessity of instrumenting its source code. This is possible due to computational reflection that allows the implementation of particular analysis mechanisms that can be dynamically associated with the application in execution. The project of ATeste includes a set of particular classes that define the interface with the user, another set for implementing the elected testing strategy, and some classeS specialized from the framework Luthier MOPs.application/pdfporEngenharia : SoftwareTestes : SoftwareOrientacao : ObjetosSmalltalkUm sistema de apoio ao teste de aplicações smalltalkSupport's system of the smalltalk applications test info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisUniversidade Federal do Rio Grande do SulInstituto de InformáticaCurso de Pós-Graduação em Ciência da ComputaçãoPorto Alegre, BR-RS1998mestradoinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSTEXT000216983.pdf.txt000216983.pdf.txtExtracted Texttext/plain190560http://www.lume.ufrgs.br/bitstream/10183/26306/2/000216983.pdf.txte2dc0f19296c711f2ce8d0fb51a7c9d0MD52ORIGINAL000216983.pdf000216983.pdfTexto completoapplication/pdf14429527http://www.lume.ufrgs.br/bitstream/10183/26306/1/000216983.pdf50dfcaa6c87a0c9b605c6e41970c086dMD51THUMBNAIL000216983.pdf.jpg000216983.pdf.jpgGenerated Thumbnailimage/jpeg1139http://www.lume.ufrgs.br/bitstream/10183/26306/3/000216983.pdf.jpge02d9c22dec15c2180f1e4f5c1fdbde2MD5310183/263062018-10-17 08:43:29.768oai:www.lume.ufrgs.br:10183/26306Biblioteca Digital de Teses e Dissertaçõeshttps://lume.ufrgs.br/handle/10183/2PUBhttps://lume.ufrgs.br/oai/requestlume@ufrgs.br||lume@ufrgs.bropendoar:18532018-10-17T11:43:29Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false
dc.title.pt_BR.fl_str_mv Um sistema de apoio ao teste de aplicações smalltalk
dc.title.alternative.en.fl_str_mv Support's system of the smalltalk applications test
title Um sistema de apoio ao teste de aplicações smalltalk
spellingShingle Um sistema de apoio ao teste de aplicações smalltalk
Pinto, Ivete Martins
Engenharia : Software
Testes : Software
Orientacao : Objetos
Smalltalk
title_short Um sistema de apoio ao teste de aplicações smalltalk
title_full Um sistema de apoio ao teste de aplicações smalltalk
title_fullStr Um sistema de apoio ao teste de aplicações smalltalk
title_full_unstemmed Um sistema de apoio ao teste de aplicações smalltalk
title_sort Um sistema de apoio ao teste de aplicações smalltalk
author Pinto, Ivete Martins
author_facet Pinto, Ivete Martins
author_role author
dc.contributor.author.fl_str_mv Pinto, Ivete Martins
dc.contributor.advisor1.fl_str_mv Price, Ana Maria de Alencar
contributor_str_mv Price, Ana Maria de Alencar
dc.subject.por.fl_str_mv Engenharia : Software
Testes : Software
Orientacao : Objetos
Smalltalk
topic Engenharia : Software
Testes : Software
Orientacao : Objetos
Smalltalk
description A atividade de teste é de extrema importância em qualquer ambiente de programação para gerar produtos de qualidade e de alta confiabilidade. Entretanto, alem das dificuldades inerentes a esta tarefa, soma-se a falta de metodologias e ferramentas que a apóiem. Isto faz com que o teste se tome uma das atividades do ciclo de vida do software com maior custo e tempo associados. O paradigma de orientação a objetos surgiu na busca constante dos desenvolvedores de software por maior qualidade e novas soluções para os problemas de baixa produtividade. Todavia, as características poderosas deste paradigma geraram um conjunto adicional de problemas nas atividades de teste e manutenção, onde a alta concentração de custo e tempo envolvidos sempre foram uma constatação real. Em uma aplicação orientada a objetos, cada objeto é uma entidade que possui um comportamento bem definido, com um papel bem claro no domínio. Os valores dos atributos de um objeto definem o estado do objeto, e são acessados através de um conjunto de mensagens bem definidas, através das quais o objeto é capaz de executar alterações nestes valores de atributos. Os valores de atributos reagem passagem destas mensagens (ativação de métodos) alterando ou não o seu estado. Neste trabalho é apresentado um protótipo de ferramenta de apoio ao teste de programas orientados a objetos, chamado ATeste, fundamentado no conceito de teste baseado em estado, com uma abordagem reflexiva, para auxiliar o teste de aplicações Smalltalk. O teste baseado em estado verifica as interações entre os objetos pela monitoração das mudanças que ocorrem em valores dos atributos. Este tipo de teste verifica como um objeto reage a ativação de um método, respeitando o encapsulamento. A abordagem reflexiva possibilita que mecanismos de analise possam ser associados a aplicação através da utilização de conceitos de reflexão computacional. A reflexão computacional proporciona a analise dinâmica da aplicação, sem interferir nos aspectos comportamentais e estruturais dos objetos do domínio, permitindo a monitoração de objetos específicos do domínio, os quais podem ser dinamicamente selecionados pelo usuário. Como suporte para o desenvolvimento de ATeste foi utilizado o framework Luthier MOPs. Este framework apresenta, como principal contribuição, a utilização de técnicas de reflexão computacional baseadas no conceito de gerenciadores de metaobjetos para a implementação de meta-arquiteturas visando a captura de informações e analise de aplicações. Baseado nesta arquitetura reflexiva, ATeste trabalha com um meta-nível, que monitora os objetos selecionados pelo usuário na aplicação do nível-base. Desta forma, uma das principais características do sistema desenvolvido é a analise da aplicação sob teste de forma dinâmica sem necessidade de instrumentação de seu c6digo fonte. Isto é possível através da utilização de reflexão computacional, que permite implementar diferentes mecanismos de analise que podem ser dinamicamente associados com a aplicação em execução. O projeto de ATeste compreende um conjunto de classes pr6prias que definem a interface com o usuário e as funcionalidades desejadas, bem como classes do framework Luthier MOPs, e especializações destas.
publishDate 1998
dc.date.issued.fl_str_mv 1998
dc.date.accessioned.fl_str_mv 2010-10-12T04:18:46Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10183/26306
dc.identifier.nrb.pt_BR.fl_str_mv 000216983
url http://hdl.handle.net/10183/26306
identifier_str_mv 000216983
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.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Teses e Dissertações 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 Biblioteca Digital de Teses e Dissertações da UFRGS
collection Biblioteca Digital de Teses e Dissertações da UFRGS
bitstream.url.fl_str_mv http://www.lume.ufrgs.br/bitstream/10183/26306/2/000216983.pdf.txt
http://www.lume.ufrgs.br/bitstream/10183/26306/1/000216983.pdf
http://www.lume.ufrgs.br/bitstream/10183/26306/3/000216983.pdf.jpg
bitstream.checksum.fl_str_mv e2dc0f19296c711f2ce8d0fb51a7c9d0
50dfcaa6c87a0c9b605c6e41970c086d
e02d9c22dec15c2180f1e4f5c1fdbde2
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)
repository.mail.fl_str_mv lume@ufrgs.br||lume@ufrgs.br
_version_ 1810085186696642560