André L. S. Domingues, A. Simão, A. M. R. Vincenzi, J. Maldonado
Este artigo apresenta um ambiente de apoio à avaliação e seleção de ferramentas de teste para programas orientados a objetos, denominado EvalTool. Este ambiente foi desenvolvido com base no método OOHDM e utiliza-se de dados obtidos a partir de questionários de avaliação de ferramentas, revisões de usuários e estudos comparativos para gerar relatórios que auxiliem no processo de seleção de ferramentas.
{"title":"EvalTool: Um Ambiente de Apoio à Avaliação e Seleção de Ferramentas de Teste para Programas Orientados a Objetos","authors":"André L. S. Domingues, A. Simão, A. M. R. Vincenzi, J. Maldonado","doi":"10.5753/sbes.2002.23963","DOIUrl":"https://doi.org/10.5753/sbes.2002.23963","url":null,"abstract":"Este artigo apresenta um ambiente de apoio à avaliação e seleção de ferramentas de teste para programas orientados a objetos, denominado EvalTool. Este ambiente foi desenvolvido com base no método OOHDM e utiliza-se de dados obtidos a partir de questionários de avaliação de ferramentas, revisões de usuários e estudos comparativos para gerar relatórios que auxiliem no processo de seleção de ferramentas.","PeriodicalId":219161,"journal":{"name":"Anais do XVI Simpósio Brasileiro de Engenharia de Software (SBES 2002)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-10-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130102978","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Devido aos seus reconhecidos beneficios, a realização de testes vem sendo enfatizada em diversos processos e metodologias de desenvolvimento. Entretanto, por ser trabalhosa e entediante, a atividade de teste causa, em geral, um impacto negativo na produtividade a curto prazo. Este trabalho apresenta um processo de teste que utiliza geradores de código para melhorar a produtividade do desenvolvimento. Estes geradores são baseados na linguagem WSat que é introduzida por este trabalho e utilizada para realizar testes de sistemas Web como os de aceitação e de performance.
{"title":"Testes e Geração de Código de Sistemas Web","authors":"Eduardo Aranha, P. Borba","doi":"10.5753/sbes.2002.23942","DOIUrl":"https://doi.org/10.5753/sbes.2002.23942","url":null,"abstract":"Devido aos seus reconhecidos beneficios, a realização de testes vem sendo enfatizada em diversos processos e metodologias de desenvolvimento. Entretanto, por ser trabalhosa e entediante, a atividade de teste causa, em geral, um impacto negativo na produtividade a curto prazo. Este trabalho apresenta um processo de teste que utiliza geradores de código para melhorar a produtividade do desenvolvimento. Estes geradores são baseados na linguagem WSat que é introduzida por este trabalho e utilizada para realizar testes de sistemas Web como os de aceitação e de performance.","PeriodicalId":219161,"journal":{"name":"Anais do XVI Simpósio Brasileiro de Engenharia de Software (SBES 2002)","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-10-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131093424","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Considerando as características dos sistemas de informação tipicamente utilizados para atendimento aos processos do negócio de organizações empresariais, este trabalho apresenta uma abordagem para a modelagem de sistemas multiagentes (SMA) tendo como foco o modelo de projeto. Para a construção dos modelos são utilizadas extensões da UML. O processo de modelagem é baseado no refinamento entre os modelos, o que implica na evolução dos diagramas elaborados no modelo de análise em direção a construção do modelo de projeto. Para o atendimento aos serviços de infra-estrutura necessários para o processamento do sistema são propostos agentes especializados denominados agentes de infra-estrutura. Tal proposição está fundamentada na premissa de que os agentes devem ter elevado grau de especialização em uma sociedade de agentes. Sendo assim, aos agentes do domínio do SMA devem ser definidas atribuições restritas aos papéis que lhes foram destinados no modelo de casos de uso, cabendo ao conjunto de agentes de infra-estrutura cobrir os demais serviços necessários ao processamento do sistema.
{"title":"Projetando Sistemas Multiagentes em Organizações Empresariais","authors":"Murilo Juchem, R. Bastos","doi":"10.5753/sbes.2002.23946","DOIUrl":"https://doi.org/10.5753/sbes.2002.23946","url":null,"abstract":"Considerando as características dos sistemas de informação tipicamente utilizados para atendimento aos processos do negócio de organizações empresariais, este trabalho apresenta uma abordagem para a modelagem de sistemas multiagentes (SMA) tendo como foco o modelo de projeto. Para a construção dos modelos são utilizadas extensões da UML. O processo de modelagem é baseado no refinamento entre os modelos, o que implica na evolução dos diagramas elaborados no modelo de análise em direção a construção do modelo de projeto. Para o atendimento aos serviços de infra-estrutura necessários para o processamento do sistema são propostos agentes especializados denominados agentes de infra-estrutura. Tal proposição está fundamentada na premissa de que os agentes devem ter elevado grau de especialização em uma sociedade de agentes. Sendo assim, aos agentes do domínio do SMA devem ser definidas atribuições restritas aos papéis que lhes foram destinados no modelo de casos de uso, cabendo ao conjunto de agentes de infra-estrutura cobrir os demais serviços necessários ao processamento do sistema.","PeriodicalId":219161,"journal":{"name":"Anais do XVI Simpósio Brasileiro de Engenharia de Software (SBES 2002)","volume":"128 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-10-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130258656","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Aplicações distribuídas com suporte a tempo real fazem parte de um tipo emergente de aplicação. Neste tipo de sistema podem ser encontrados alguns fortes requisitos de qualidade de serviço e recursos temporais. Embora exista esta tendência de utilização de sistemas que atendam a requisitos de tempo e qualidade de serviços, os sistemas que já atingiram uma certa maturidade em ambientes corporativos não podem simplesmente ser abandonados e redesenvolvidos com a intensão de atender a tais restrições. Com o objetivo de encontrar uma solução para isto, este artigo apresenta duas estratégias de migração de sistemas distribuídos legados para sistemas de tempo real, utilizando as especificações de Real-time CORBA e CORBA Messaging.
{"title":"Estratégias para a Integração de Aspectos de Tempo Real em uma Aplicação Distribuída Legada","authors":"J. Barros, Carlos A. G. Ferraz","doi":"10.5753/sbes.2002.23955","DOIUrl":"https://doi.org/10.5753/sbes.2002.23955","url":null,"abstract":"Aplicações distribuídas com suporte a tempo real fazem parte de um tipo emergente de aplicação. Neste tipo de sistema podem ser encontrados alguns fortes requisitos de qualidade de serviço e recursos temporais. Embora exista esta tendência de utilização de sistemas que atendam a requisitos de tempo e qualidade de serviços, os sistemas que já atingiram uma certa maturidade em ambientes corporativos não podem simplesmente ser abandonados e redesenvolvidos com a intensão de atender a tais restrições. Com o objetivo de encontrar uma solução para isto, este artigo apresenta duas estratégias de migração de sistemas distribuídos legados para sistemas de tempo real, utilizando as especificações de Real-time CORBA e CORBA Messaging.","PeriodicalId":219161,"journal":{"name":"Anais do XVI Simpósio Brasileiro de Engenharia de Software (SBES 2002)","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-10-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122174185","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The GREN-Wizard, a tool to instantiate the GREN framework to particular systems in the business resource management domain, is presented in this paper. It was built based on a pattern language for the same domain, called GRN, which is used during the instantiation process. The GREN-Wizard automatically generates all the code needed to adapt the framework to the particular system, according to the input data supplied by the user. This data consists basically of information about the patterns of GRN applied to model the particular system, together with additional attributes included in the classes that compose each pattern.
{"title":"GREN-Wizard: a Tool to Instantiate the GREN Framework","authors":"R. Braga, P. Masiero","doi":"10.5753/sbes.2002.23967","DOIUrl":"https://doi.org/10.5753/sbes.2002.23967","url":null,"abstract":"The GREN-Wizard, a tool to instantiate the GREN framework to particular systems in the business resource management domain, is presented in this paper. It was built based on a pattern language for the same domain, called GRN, which is used during the instantiation process. The GREN-Wizard automatically generates all the code needed to adapt the framework to the particular system, according to the input data supplied by the user. This data consists basically of information about the patterns of GRN applied to model the particular system, together with additional attributes included in the classes that compose each pattern.","PeriodicalId":219161,"journal":{"name":"Anais do XVI Simpósio Brasileiro de Engenharia de Software (SBES 2002)","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-10-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125719266","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
O objetivo deste artigo é apresentar uma aplicação industrial de uma arquitetura em camada para o sistema bancário. Esta proposta, chamada de Modelo de Controle Baseado em Eventos, permite o uso do Evento como uma abstração dos serviços oferecidos pela rede bancária. Este modelo utiliza o estilo de arquitetura em camada, que prove uma organização intuitiva para os sistemas bancários. O Modelo de Controle Baseado em Eventos está sendo aplicado no Banco do Brasil com a finalidade de prover mecanismos de controle de produtividade e de qualidade no processo de desenvolvimento e no compartilhamento de informações.
{"title":"Aplicação da Arquitetura com Modelo de Controle Baseado em Eventos no Banco do Brasil S.A.","authors":"L. Bastos, J. Castro","doi":"10.5753/sbes.2002.23948","DOIUrl":"https://doi.org/10.5753/sbes.2002.23948","url":null,"abstract":"O objetivo deste artigo é apresentar uma aplicação industrial de uma arquitetura em camada para o sistema bancário. Esta proposta, chamada de Modelo de Controle Baseado em Eventos, permite o uso do Evento como uma abstração dos serviços oferecidos pela rede bancária. Este modelo utiliza o estilo de arquitetura em camada, que prove uma organização intuitiva para os sistemas bancários. O Modelo de Controle Baseado em Eventos está sendo aplicado no Banco do Brasil com a finalidade de prover mecanismos de controle de produtividade e de qualidade no processo de desenvolvimento e no compartilhamento de informações.","PeriodicalId":219161,"journal":{"name":"Anais do XVI Simpósio Brasileiro de Engenharia de Software (SBES 2002)","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-10-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133595067","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Geraldo Zimbrão, R. A. Miranda, J. Souza, Francisco P. Neto
A Object Constraint Language (OCL) é uma linguagem proposta para ser utilizada em conjunto com outras ferramentas, tais como os diagramas de classe da UML, e que serve para especificar restrições em um modelo de classes. Além disso, existem uma série de abordagens propondo o uso de OCL para a documentação de Regras de Negócio. Embora a OCL seja uma linguagem declarativa e de fácil entendimento, programadores pouco familiarizados com ela podem ter certa dificuldade em entender expressões em OCL. Este artigo apresenta a ferramenta FalaOCL. Esta ferramenta é um módulo parafraseasor de OCL, ou seja, dada uma expressão em OCL, a ferramenta gera um texto que explica, em linguagem natural, a expressão dada. Com isso, é possível a um usuário sem habilidades de programação em OCL entender expressões em OCL, facilitando o trabalho de validação e manutenção do sistema.
{"title":"FalaOCL: Uma Ferramenta para Parafrasear OCL","authors":"Geraldo Zimbrão, R. A. Miranda, J. Souza, Francisco P. Neto","doi":"10.5753/sbes.2002.23964","DOIUrl":"https://doi.org/10.5753/sbes.2002.23964","url":null,"abstract":"A Object Constraint Language (OCL) é uma linguagem proposta para ser utilizada em conjunto com outras ferramentas, tais como os diagramas de classe da UML, e que serve para especificar restrições em um modelo de classes. Além disso, existem uma série de abordagens propondo o uso de OCL para a documentação de Regras de Negócio. Embora a OCL seja uma linguagem declarativa e de fácil entendimento, programadores pouco familiarizados com ela podem ter certa dificuldade em entender expressões em OCL. Este artigo apresenta a ferramenta FalaOCL. Esta ferramenta é um módulo parafraseasor de OCL, ou seja, dada uma expressão em OCL, a ferramenta gera um texto que explica, em linguagem natural, a expressão dada. Com isso, é possível a um usuário sem habilidades de programação em OCL entender expressões em OCL, facilitando o trabalho de validação e manutenção do sistema.","PeriodicalId":219161,"journal":{"name":"Anais do XVI Simpósio Brasileiro de Engenharia de Software (SBES 2002)","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-10-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131590909","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Mutation Testing is a testing approach for assessing the adequacy of a set of test cases by analyzing their ability in distinguishing the product under test from a set of alternative products, the so-called mutants. The mutants are generated from the product under test by applying a set of mutant operators, which systematically yield products with slight syntactical differences. Aiming at automating the generation of mutants, we have designed a language — named MuDeL — for describing mutant operators. In this paper, we describe the mudelgen system, which was developed to support the language MuDeL. mudelgen was developed using concepts that come from transformational and logical programming paradigms, as well as from context-free grammar and denotational semantics theories.
{"title":"mudelgen: A Tool for Processing Mutant Operator Descriptions","authors":"A. Simão, A. Vincenzi, J. Maldonado","doi":"10.5753/sbes.2002.23970","DOIUrl":"https://doi.org/10.5753/sbes.2002.23970","url":null,"abstract":"Mutation Testing is a testing approach for assessing the adequacy of a set of test cases by analyzing their ability in distinguishing the product under test from a set of alternative products, the so-called mutants. The mutants are generated from the product under test by applying a set of mutant operators, which systematically yield products with slight syntactical differences. Aiming at automating the generation of mutants, we have designed a language — named MuDeL — for describing mutant operators. In this paper, we describe the mudelgen system, which was developed to support the language MuDeL. mudelgen was developed using concepts that come from transformational and logical programming paradigms, as well as from context-free grammar and denotational semantics theories.","PeriodicalId":219161,"journal":{"name":"Anais do XVI Simpósio Brasileiro de Engenharia de Software (SBES 2002)","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-10-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130953585","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Eduardo Santana de Almeida, Daniel Lucrédio, Calebe P. Bianchini, A. F. Prado, L. C. Trevelin
Este artigo apresenta a Ferramenta MVCase que integra diferentes tecnologias para orientar o engenheiro de software no Desenvolvimento de Componentes Distribuídos de um domínio do problema. As tecnologias envolvidas são: o método Catalysis, o padrão CORBA para distribuição dos componentes e frameworks de componentes.Catalysis é utilizado como método de Desenvolvimento Baseado em Componentes (DBC) para definir, especificar e projetar os componentes distribuídos, segundo a arquitetura CORBA. Frameworks de componentes são reutilizados para orientar a distribuição dos componentes desenvolvidos do domínio do problema e facilitar o acesso a banco de dados relacional.
{"title":"Ferramenta MVCase – Uma Ferramenta Integradora de Tecnologias para o Desenvolvimento de Componentes Distribuídos","authors":"Eduardo Santana de Almeida, Daniel Lucrédio, Calebe P. Bianchini, A. F. Prado, L. C. Trevelin","doi":"10.5753/sbes.2002.23971","DOIUrl":"https://doi.org/10.5753/sbes.2002.23971","url":null,"abstract":"Este artigo apresenta a Ferramenta MVCase que integra diferentes tecnologias para orientar o engenheiro de software no Desenvolvimento de Componentes Distribuídos de um domínio do problema. As tecnologias envolvidas são: o método Catalysis, o padrão CORBA para distribuição dos componentes e frameworks de componentes.Catalysis é utilizado como método de Desenvolvimento Baseado em Componentes (DBC) para definir, especificar e projetar os componentes distribuídos, segundo a arquitetura CORBA. Frameworks de componentes são reutilizados para orientar a distribuição dos componentes desenvolvidos do domínio do problema e facilitar o acesso a banco de dados relacional.","PeriodicalId":219161,"journal":{"name":"Anais do XVI Simpósio Brasileiro de Engenharia de Software (SBES 2002)","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-10-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129495286","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The construction of concurrent programs is especially complex due mainly to the inherent non-determinism of their execution, which makes it difficult to repeat test scenarios. Process algebras have been used to design and reason about these programs. This paper presents an approach to developing concurrent programs using a set of process algebra constructs implemented as an object-oriented framework in Java, called JACK. The main objective of the framework is the design and implementation of process algebra constructs that provides as naturally as possible, the algebraic idiom as an extension package to Java. This work emphasises the use of design patterns and pattern languages to properly build frameworks like this, achieving desired software engineering properties and software quality requirements. The user of the JACK framework is able to describe its process specification in Java.
{"title":"JACK: A Framework for Process Algebra Implementation in Java","authors":"L. Freitas, Ana Cavalcanti, A. Sampaio","doi":"10.5753/sbes.2002.23941","DOIUrl":"https://doi.org/10.5753/sbes.2002.23941","url":null,"abstract":"The construction of concurrent programs is especially complex due mainly to the inherent non-determinism of their execution, which makes it difficult to repeat test scenarios. Process algebras have been used to design and reason about these programs. This paper presents an approach to developing concurrent programs using a set of process algebra constructs implemented as an object-oriented framework in Java, called JACK. The main objective of the framework is the design and implementation of process algebra constructs that provides as naturally as possible, the algebraic idiom as an extension package to Java. This work emphasises the use of design patterns and pattern languages to properly build frameworks like this, achieving desired software engineering properties and software quality requirements. The user of the JACK framework is able to describe its process specification in Java.","PeriodicalId":219161,"journal":{"name":"Anais do XVI Simpósio Brasileiro de Engenharia de Software (SBES 2002)","volume":"73 7","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-08-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132241452","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}