首页 > 最新文献

Anais do XIII Simpósio Brasileiro de Engenharia de Software (SBES 1999)最新文献

英文 中文
Reengenharia com Uso de Padrões de Projeto 使用设计模式进行再造
Pub Date : 1999-10-13 DOI: 10.5753/sbes.1999.23927
Maria Istela Cagnin, R. Penteado, Fernão S. R. Germano, P. C. Masiero
O processo de reengenharia de um sistema originalmente desenvolvido orientado a procedimentos em linguagem C foi conduzido com mudança de paradigma para orientação a objetos. Esse processo é precedido pela engenharia reversa orientada a objetos do sistema legado usando o método Fusion/RE. Foi também precedido por uma primeira fase em que é mantida a linguagem C, utilizando um processo de segmentação em que o código é reestruturado para atender a algumas características de orientação a objetos. Neste trabalho usa-se a linguagem Java e o Banco de Dados Relacional Sybase fazendo-se três variantes de implementação de acordo com os três modos alternativos sugeridos no padrão Persistent Layer. O padrão CRUD é usado para o projeto dessa camada de persistência. As operações do padrão CRUD são implementadas: nas classes da aplicação (primeiro modo); em classes específicas para cada classe da aplicação (segundo modo) e em uma classe Broker, que faz o mapeamento de qualquer tipo de objeto para o banco de dados relacional (terceiro modo). Modelos de objetos das diferentes implementações e exemplos de código fonte são incluídos no trabalho para ilustrar a efetividade da evolução alcançada com as três configurações. Essas são usadas para avaliar o processo de segmentação que resulta em uma implementação similar àquela obtida no primeiro modo sugerido para implementar o padrão Persistent Layer, pois a herança envolvida nela é praticamente restrita à assinatura nas classes abstratas. Isto é compatível com a falta de herança da linguagem C.
用C语言对一个最初开发的面向过程的系统进行了重新设计,范式转变为面向对象。在此之前,使用Fusion/RE方法对遗留系统进行面向对象的逆向工程。在此之前还有一个维护C语言的初始阶段,使用分割过程重新构建代码以满足一些面向对象的特性。在这项工作中,我们使用Java语言和Sybase关系数据库,根据持久层标准中建议的三种替代模式,成为三种实现变体。CRUD标准用于这个持久性层的设计。CRUD标准操作实现:在应用程序类中(第一模式);在每个应用程序类的特定类(第二种模式)和代理类中,代理类将任何类型的对象映射到关系数据库(第三种模式)。工作中包含了不同实现的对象模型和源代码示例,以说明使用这三种配置实现的演进的有效性。这些被用来评估分割过程,从而产生一个类似于在实现持久层模式的第一种建议模式中获得的实现,因为其中涉及的继承实际上仅限于抽象类中的签名。这与C语言缺乏继承是一致的。
{"title":"Reengenharia com Uso de Padrões de Projeto","authors":"Maria Istela Cagnin, R. Penteado, Fernão S. R. Germano, P. C. Masiero","doi":"10.5753/sbes.1999.23927","DOIUrl":"https://doi.org/10.5753/sbes.1999.23927","url":null,"abstract":"O processo de reengenharia de um sistema originalmente desenvolvido orientado a procedimentos em linguagem C foi conduzido com mudança de paradigma para orientação a objetos. Esse processo é precedido pela engenharia reversa orientada a objetos do sistema legado usando o método Fusion/RE. Foi também precedido por uma primeira fase em que é mantida a linguagem C, utilizando um processo de segmentação em que o código é reestruturado para atender a algumas características de orientação a objetos. Neste trabalho usa-se a linguagem Java e o Banco de Dados Relacional Sybase fazendo-se três variantes de implementação de acordo com os três modos alternativos sugeridos no padrão Persistent Layer. O padrão CRUD é usado para o projeto dessa camada de persistência. As operações do padrão CRUD são implementadas: nas classes da aplicação (primeiro modo); em classes específicas para cada classe da aplicação (segundo modo) e em uma classe Broker, que faz o mapeamento de qualquer tipo de objeto para o banco de dados relacional (terceiro modo). Modelos de objetos das diferentes implementações e exemplos de código fonte são incluídos no trabalho para ilustrar a efetividade da evolução alcançada com as três configurações. Essas são usadas para avaliar o processo de segmentação que resulta em uma implementação similar àquela obtida no primeiro modo sugerido para implementar o padrão Persistent Layer, pois a herança envolvida nela é praticamente restrita à assinatura nas classes abstratas. Isto é compatível com a falta de herança da linguagem C.","PeriodicalId":325756,"journal":{"name":"Anais do XIII Simpósio Brasileiro de Engenharia de Software (SBES 1999)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1999-10-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127522169","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}
引用次数: 1
Aquisição de Conhecimento no Contexto de Análise de Domínio 在领域分析的背景下获取知识
Pub Date : 1999-10-13 DOI: 10.5753/sbes.1999.23935
Mônica Zopelari Roseti, C. Werner
Este artigo aborda a questão sobre a aquisição de conhecimento no contexto de análise de domínio, apresentando três estudos de caso concretos. Os resultados desses estudos mostram a real necessidade de elaboração de uma sistemática para aquisição de conhecimento, adequada ao contexto de análise de domínio, e indicam caminhos para a sua elaboração e refino. Os estudos de caso apresentam resultados gradativos em relação à maturidade e rigor da sistematica experimentada em cada um deles, tentando-se na medida do possível contornar as dificuldades diagnosticadas no estudo anterior. Técnicas de aquisição como análise de protocolo, auto-explicação, a técnica LEL, entrevistas e brainstorming, juntamente com representações tais como esquemas facetados, modelos Orientados a Objetos e diagramas de características, são combinados para explorar ao máximo o conhecimento existente sobre o domínio de interesse.
本文探讨了领域分析背景下的知识获取问题,并提出了三个具体的案例研究。这些研究的结果表明,真正需要发展一个适合领域分析背景的知识获取系统,并指出了其发展和完善的途径。案例研究显示了与每一个案例所经历的系统的成熟度和严谨性相关的渐进式结果,试图尽可能地绕过前一个研究中诊断的困难。获取技术,如协议分析、自我解释、LEL技术、访谈和头脑风暴,以及表示,如分面方案、面向对象模型和特征图,被结合起来,以最大限度地探索有关感兴趣领域的现有知识。
{"title":"Aquisição de Conhecimento no Contexto de Análise de Domínio","authors":"Mônica Zopelari Roseti, C. Werner","doi":"10.5753/sbes.1999.23935","DOIUrl":"https://doi.org/10.5753/sbes.1999.23935","url":null,"abstract":"Este artigo aborda a questão sobre a aquisição de conhecimento no contexto de análise de domínio, apresentando três estudos de caso concretos. Os resultados desses estudos mostram a real necessidade de elaboração de uma sistemática para aquisição de conhecimento, adequada ao contexto de análise de domínio, e indicam caminhos para a sua elaboração e refino. Os estudos de caso apresentam resultados gradativos em relação à maturidade e rigor da sistematica experimentada em cada um deles, tentando-se na medida do possível contornar as dificuldades diagnosticadas no estudo anterior. Técnicas de aquisição como análise de protocolo, auto-explicação, a técnica LEL, entrevistas e brainstorming, juntamente com representações tais como esquemas facetados, modelos Orientados a Objetos e diagramas de características, são combinados para explorar ao máximo o conhecimento existente sobre o domínio de interesse.","PeriodicalId":325756,"journal":{"name":"Anais do XIII Simpósio Brasileiro de Engenharia de Software (SBES 1999)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1999-10-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127602251","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}
引用次数: 1
Especificação Formal de uma Ferramenta de Trabalho Colaborativo através da Composição de Objetos Náutilus 通过航海对象组合的协作工作工具的正式规范
Pub Date : 1999-10-13 DOI: 10.5753/sbes.1999.23916
Cirney Carneiro, Rodrigo Quites Reis, P. Menezes
A construção de programas concorrentes e distribuídos que sejam corretos e confiáveis consiste em uma importante meta atual da Engenharia de Software. A linguagem baseada em objetos concorrentes Náutilus é um formalismo voltado a construção de programas desta natureza. Para ilustrar as facilidades de Náutilus, esta linguagem foi usada para especificar um editor colaborativo síncrono (CoEdit) anteriormente implementado em Java. Com a utilização de Náutilus, a especificação se mostrou mais clara, pois foi possível expressar a sincronização de processos concorrentes facilmente através das construções existentes na linguagem. Além disso, uma importante extensão ao programa CoEdit original foi realizada a partir da utilização dos mecanismos de abstração da linguagem, reutilizando os componentes especificados anteriormente e adicionando nova funcionalidade à especificação.
构建正确可靠的并发和分布式程序是当前软件工程的一个重要目标。基于并发对象的语言是一种旨在构建这类程序的形式主义。为了说明这一点,我们使用了这种语言来指定以前用Java实现的同步协作编辑器(CoEdit)。使用naulus,规范变得更加清晰,因为可以通过语言中现有的结构轻松地表达并发进程的同步。此外,通过使用语言抽象机制、重用之前指定的组件并向规范添加新功能,实现了对原始CoEdit程序的重要扩展。
{"title":"Especificação Formal de uma Ferramenta de Trabalho Colaborativo através da Composição de Objetos Náutilus","authors":"Cirney Carneiro, Rodrigo Quites Reis, P. Menezes","doi":"10.5753/sbes.1999.23916","DOIUrl":"https://doi.org/10.5753/sbes.1999.23916","url":null,"abstract":"A construção de programas concorrentes e distribuídos que sejam corretos e confiáveis consiste em uma importante meta atual da Engenharia de Software. A linguagem baseada em objetos concorrentes Náutilus é um formalismo voltado a construção de programas desta natureza. Para ilustrar as facilidades de Náutilus, esta linguagem foi usada para especificar um editor colaborativo síncrono (CoEdit) anteriormente implementado em Java. Com a utilização de Náutilus, a especificação se mostrou mais clara, pois foi possível expressar a sincronização de processos concorrentes facilmente através das construções existentes na linguagem. Além disso, uma importante extensão ao programa CoEdit original foi realizada a partir da utilização dos mecanismos de abstração da linguagem, reutilizando os componentes especificados anteriormente e adicionando nova funcionalidade à especificação.","PeriodicalId":325756,"journal":{"name":"Anais do XIII Simpósio Brasileiro de Engenharia de Software (SBES 1999)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1999-10-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116475913","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}
引用次数: 1
Operadores Essenciais de Interface: Um Estudo de Caso 基本界面操作符:案例研究
Pub Date : 1999-10-13 DOI: 10.5753/sbes.1999.23933
A. M. R. Vincenzi, J. Maldonado, E. Barbosa, M. E. Delamaro
Apesar de evidências obtidas em estudos empíricos da eficácia do Teste de Mutação, seu alto custo, decorrente principalmente do grande número de mutantes gerados, tem motivado a proposição de diversas abordagens alternativas para a sua aplicação [1, 2, 3, 16, 19, 20, 27], dentre essas a determinação de conjuntos essenciais de operadores de mutação. Nesse contexto, alguns estudos já foram conduzidos para a determinação de um conjunto essencial de operadores de mutação para as linguagens Fortran e C [2, 3, 20, 27]. A aplicação do teste de mutação no nível de unidade para a linguagem C é apoiada pela ferramenta Proteum, que implementa 71 operadores de mutação [4]. No estudo empírico conduzido por Barbosa [2, 3], utilizando a ferramenta Proteum, foi proposto o procedimento Essencial, contribuindo para a determinação de um conjunto essencial de operadores de mutação para a linguagem C. Explorando o conceito de mutação no teste de integração foi proposto o critério Mutação de Interface [5]. A ferramenta PROTEUM/IM, desenvolvida para apoiar a aplicação do critério Mutação de Interface, possui 33 operadores de mutação desenvolvidos para modelar erros típicos de integração [5]. Este trabalho investiga a aplicação do procedimento Essencial para a determinação de um conjunto essencial de operadores para o teste de integração, contribuindo para o estabelecimento de estratégias de teste incrementais baseadas no teste de mutação que englobe as fases de unidade e de integração.
尽管实证研究获得的证据的有效性测试的突变,尤其是高,成本的大量变异的命题,促使产生的各种实施方法[1、2、3、16、19、20、27]这些运营商的基本组变异的决心。在此背景下,已经进行了一些研究,以确定一组基本的Fortran和C语言的突变操作符[2,3,20,27]。Proteum工具支持C语言单元级突变测试的应用,该工具实现了71个突变操作符[4]。在Barbosa[2,3]进行的实证研究中,利用Proteum工具,提出了基本程序,有助于确定c语言的一组基本突变运算符。利用集成检验中的突变概念,提出了界面突变准则[5]。PROTEUM/IM工具是为支持接口突变准则的应用而开发的,它有33个突变操作符,用于建模典型的集成错误[5]。这项工作研究了基本程序的应用,以确定一组基本运算符的集成测试,有助于建立基于突变测试的增量测试策略,包括单元和集成阶段。
{"title":"Operadores Essenciais de Interface: Um Estudo de Caso","authors":"A. M. R. Vincenzi, J. Maldonado, E. Barbosa, M. E. Delamaro","doi":"10.5753/sbes.1999.23933","DOIUrl":"https://doi.org/10.5753/sbes.1999.23933","url":null,"abstract":"Apesar de evidências obtidas em estudos empíricos da eficácia do Teste de Mutação, seu alto custo, decorrente principalmente do grande número de mutantes gerados, tem motivado a proposição de diversas abordagens alternativas para a sua aplicação [1, 2, 3, 16, 19, 20, 27], dentre essas a determinação de conjuntos essenciais de operadores de mutação. Nesse contexto, alguns estudos já foram conduzidos para a determinação de um conjunto essencial de operadores de mutação para as linguagens Fortran e C [2, 3, 20, 27]. A aplicação do teste de mutação no nível de unidade para a linguagem C é apoiada pela ferramenta Proteum, que implementa 71 operadores de mutação [4]. No estudo empírico conduzido por Barbosa [2, 3], utilizando a ferramenta Proteum, foi proposto o procedimento Essencial, contribuindo para a determinação de um conjunto essencial de operadores de mutação para a linguagem C. Explorando o conceito de mutação no teste de integração foi proposto o critério Mutação de Interface [5]. A ferramenta PROTEUM/IM, desenvolvida para apoiar a aplicação do critério Mutação de Interface, possui 33 operadores de mutação desenvolvidos para modelar erros típicos de integração [5]. Este trabalho investiga a aplicação do procedimento Essencial para a determinação de um conjunto essencial de operadores para o teste de integração, contribuindo para o estabelecimento de estratégias de teste incrementais baseadas no teste de mutação que englobe as fases de unidade e de integração.","PeriodicalId":325756,"journal":{"name":"Anais do XIII Simpósio Brasileiro de Engenharia de Software (SBES 1999)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1999-10-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124454774","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}
引用次数: 4
Um Mecanismo de Adaptação para Aplicações Tempo Real Baseado em Computação Imprecisa e Reflexão Computacional 一种基于不精确计算和计算反射的实时应用自适应机制
Pub Date : 1999-10-13 DOI: 10.5753/sbes.1999.23925
Rômulo Silva de Oliveira, Olinto J. V. Furtado
Diversas aplicações com restrições de tempo real são disseminadas através da Internet na forma de applets Java ou componentes Active-X. Por exemplo, aplicações que lidam com áudio e vídeo, ferramentas para trabalho cooperativo e vídeogames. A satisfação das restrições temporais torna-se um problema pois estas aplicações devem executar em diferentes plataformas (processadores e sistemas operacionais), as quais apresentam os mais variados níveis de desempenho e ocupação. Um problema importante é como projetar os componentes do software de forma que eles apresentem desempenho satisfatório nestas diferentes plataformas. Uma das técnicas que possibilitam esta adaptação é a Computação Imprecisa, na medida em que ela flexibiliza o tempo de execução das tarefas. O uso de Reflexão Computacional facilita a implementação da Computação Imprecisa, separando as questões funcionais das questões de controle responsáveis pela adaptação da aplicação. O objetivo deste artigo é mostrar como variações da Computação Imprecisa, implementadas através de reflexão computacional, podem ser utilizadas para permitir a adaptação de aplicações de tempo real a diferentes plataformas no contexto da Internet. O modelo de programação RTR será utilizado para ilustrar a forma como esta adaptação pode ser realizada.
一些具有实时约束的应用程序以Java applet或Active-X组件的形式在互联网上传播。例如,处理音频和视频的应用程序、协作工作工具和电子游戏。满足时间限制成为一个问题,因为这些应用程序必须在不同的平台(处理器和操作系统)上运行,这些平台具有不同级别的性能和占用。一个重要的问题是如何设计软件组件,使它们在不同的平台上表现出令人满意的性能。使这种适应成为可能的技术之一是不精确计算,因为它使任务的执行时间更加灵活。计算反射的使用促进了不精确计算的实现,将功能问题与负责应用程序适应性的控制问题分离开来。本文的目的是展示如何通过计算反射实现不精确计算的变化,以允许实时应用程序适应不同的互联网平台。RTR编程模型将用于说明如何实现这种适应。
{"title":"Um Mecanismo de Adaptação para Aplicações Tempo Real Baseado em Computação Imprecisa e Reflexão Computacional","authors":"Rômulo Silva de Oliveira, Olinto J. V. Furtado","doi":"10.5753/sbes.1999.23925","DOIUrl":"https://doi.org/10.5753/sbes.1999.23925","url":null,"abstract":"Diversas aplicações com restrições de tempo real são disseminadas através da Internet na forma de applets Java ou componentes Active-X. Por exemplo, aplicações que lidam com áudio e vídeo, ferramentas para trabalho cooperativo e vídeogames. A satisfação das restrições temporais torna-se um problema pois estas aplicações devem executar em diferentes plataformas (processadores e sistemas operacionais), as quais apresentam os mais variados níveis de desempenho e ocupação. Um problema importante é como projetar os componentes do software de forma que eles apresentem desempenho satisfatório nestas diferentes plataformas. Uma das técnicas que possibilitam esta adaptação é a Computação Imprecisa, na medida em que ela flexibiliza o tempo de execução das tarefas. O uso de Reflexão Computacional facilita a implementação da Computação Imprecisa, separando as questões funcionais das questões de controle responsáveis pela adaptação da aplicação. O objetivo deste artigo é mostrar como variações da Computação Imprecisa, implementadas através de reflexão computacional, podem ser utilizadas para permitir a adaptação de aplicações de tempo real a diferentes plataformas no contexto da Internet. O modelo de programação RTR será utilizado para ilustrar a forma como esta adaptação pode ser realizada.","PeriodicalId":325756,"journal":{"name":"Anais do XIII Simpósio Brasileiro de Engenharia de Software (SBES 1999)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1999-10-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125893522","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}
引用次数: 1
Suporte ao Desenvolvimento e Uso de Componentes Flexíveis 支持灵活组件的开发和使用
Pub Date : 1999-10-13 DOI: 10.5753/sbes.1999.23911
Ricardo Pereira e Silva, R. T. Price
Component-oriented development is being stimulated by the availability of devices allowing component interoperability, regardless of programming language, running platform and executing location. However, there are some unsolved problems concerning search and selection, functionality understanding and adaptation of components. Flexibility is an important feature for increasing component reusability. Some approaches like wrappers, help in adapting actual components to systems not fully compatible. In this paper we propose to develop components as object-oriented frameworks. This leads to flexible components, much more suitable to reuse. On the other hand, this approach makes more complex the development and the use of components. SEA is an environment supporting development and use of reusable software artifacts. It employs a describing approach like those used in OOAD methodologies. The environment supports development, semantic checking and semi-automatic translation of design specifications. In this paper we describe how SEA supports the development and the use of flexible components.
面向组件的开发受到设备可用性的刺激,这些设备允许组件互操作性,而不考虑编程语言、运行平台和执行位置。但是,在组件的搜索和选择、功能理解和适配等方面还存在一些尚未解决的问题。灵活性是提高组件可重用性的一个重要特性。有些方法,如包装器,有助于使实际组件适应不完全兼容的系统。在本文中,我们建议将组件开发为面向对象的框架。这导致了灵活的组件,更适合重用。另一方面,这种方法使组件的开发和使用变得更加复杂。SEA是一个支持开发和使用可重用软件构件的环境。它采用了类似于OOAD方法中使用的描述方法。该环境支持开发、语义检查和设计规范的半自动翻译。在本文中,我们描述了SEA如何支持灵活组件的开发和使用。
{"title":"Suporte ao Desenvolvimento e Uso de Componentes Flexíveis","authors":"Ricardo Pereira e Silva, R. T. Price","doi":"10.5753/sbes.1999.23911","DOIUrl":"https://doi.org/10.5753/sbes.1999.23911","url":null,"abstract":"Component-oriented development is being stimulated by the availability of devices allowing component interoperability, regardless of programming language, running platform and executing location. However, there are some unsolved problems concerning search and selection, functionality understanding and adaptation of components. Flexibility is an important feature for increasing component reusability. Some approaches like wrappers, help in adapting actual components to systems not fully compatible. In this paper we propose to develop components as object-oriented frameworks. This leads to flexible components, much more suitable to reuse. On the other hand, this approach makes more complex the development and the use of components. SEA is an environment supporting development and use of reusable software artifacts. It employs a describing approach like those used in OOAD methodologies. The environment supports development, semantic checking and semi-automatic translation of design specifications. In this paper we describe how SEA supports the development and the use of flexible components.","PeriodicalId":325756,"journal":{"name":"Anais do XIII Simpósio Brasileiro de Engenharia de Software (SBES 1999)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1999-10-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122510854","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}
引用次数: 0
Data Flow Based Integration Testing 基于数据流的集成测试
Pub Date : 1999-10-13 DOI: 10.5753/sbes.1999.23934
P. Vilela, J. Maldonado, M. Jino
An approach to extend Structural Unit Testing Criteria to the Integration Testing is presented. The approach is based on the concept of Potential Uses, which basically states that a data flow association exists between a definition of a variable and every point reachable from that definition through a definition-clear subpath, even without an explicit usage of the variable - it is called a potential data flow association. A practical procedure to implement the approach, based on testing information generated during unit testing, is also presented.
提出了一种将结构单元测试标准扩展到集成测试的方法。该方法基于潜在用途(Potential Uses)的概念,它基本上表明,即使没有明确使用变量,数据流关联也存在于变量的定义和从该定义通过明确定义的子路径可到达的每个点之间——它被称为潜在数据流关联。本文还提出了一个基于单元测试过程中产生的测试信息的实用程序来实现该方法。
{"title":"Data Flow Based Integration Testing","authors":"P. Vilela, J. Maldonado, M. Jino","doi":"10.5753/sbes.1999.23934","DOIUrl":"https://doi.org/10.5753/sbes.1999.23934","url":null,"abstract":"An approach to extend Structural Unit Testing Criteria to the Integration Testing is presented. The approach is based on the concept of Potential Uses, which basically states that a data flow association exists between a definition of a variable and every point reachable from that definition through a definition-clear subpath, even without an explicit usage of the variable - it is called a potential data flow association. A practical procedure to implement the approach, based on testing information generated during unit testing, is also presented.","PeriodicalId":325756,"journal":{"name":"Anais do XIII Simpósio Brasileiro de Engenharia de Software (SBES 1999)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1999-10-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130004596","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}
引用次数: 8
Aspectos de Validação do Método de Engenharia Reversa Fusion-RE/I aplicado a um Sistema Hipermídia 融合-RE/I逆向工程方法应用于超媒体系统的验证方面
Pub Date : 1999-10-13 DOI: 10.5753/sbes.1999.23926
V. D. Feltrim, Renata Pontin de M. Fortes, W. Silva
The growth of the software market has leading to an increasing use of development techniques, which are, sometimes, informal ones. The maintenance of such software is problematic, since its documentation rarely reflects the implemented code. In this context Reverse Engineering of Software can help by means of recovering the project information lost during the development phase and documenting the current software state. This article discusses the issues emerged during the application of the method of reverse engineering named Fusion-RE/I. The described experiment is part of the re-engineering of a prototype hypermedia system, which has, as main goal, to adapt it to a Software Engineering domain. Since the target is a hypermedia system, the results obtained during the use of Fusion-RE/I can be registered as a hyperdocument. By doing that, it is possible to observe and analyse some relevant issues concerning the method Fusion-RE/I.
软件市场的增长导致越来越多地使用开发技术,这些技术有时是非正式的。这种软件的维护是有问题的,因为它的文档很少反映实现的代码。在这种情况下,软件逆向工程可以通过恢复在开发阶段丢失的项目信息和记录当前软件状态来提供帮助。本文讨论了逆向工程方法Fusion-RE/I在应用过程中出现的问题。所描述的实验是原型超媒体系统再工程的一部分,其主要目标是使其适应软件工程领域。由于目标是一个超媒体系统,在使用Fusion-RE/I过程中获得的结果可以注册为一个超文档。通过这样做,可以观察和分析关于Fusion-RE/I方法的一些相关问题。
{"title":"Aspectos de Validação do Método de Engenharia Reversa Fusion-RE/I aplicado a um Sistema Hipermídia","authors":"V. D. Feltrim, Renata Pontin de M. Fortes, W. Silva","doi":"10.5753/sbes.1999.23926","DOIUrl":"https://doi.org/10.5753/sbes.1999.23926","url":null,"abstract":"The growth of the software market has leading to an increasing use of development techniques, which are, sometimes, informal ones. The maintenance of such software is problematic, since its documentation rarely reflects the implemented code. In this context Reverse Engineering of Software can help by means of recovering the project information lost during the development phase and documenting the current software state. This article discusses the issues emerged during the application of the method of reverse engineering named Fusion-RE/I. The described experiment is part of the re-engineering of a prototype hypermedia system, which has, as main goal, to adapt it to a Software Engineering domain. Since the target is a hypermedia system, the results obtained during the use of Fusion-RE/I can be registered as a hyperdocument. By doing that, it is possible to observe and analyse some relevant issues concerning the method Fusion-RE/I.","PeriodicalId":325756,"journal":{"name":"Anais do XIII Simpósio Brasileiro de Engenharia de Software (SBES 1999)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1999-10-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122436291","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}
引用次数: 1
Configurando Protocolos de Interação na Abordagem R-RIO 在R-RIO方法中配置交互协议
Pub Date : 1999-10-13 DOI: 10.5753/sbes.1999.23912
Alexandre Sztajnberg, Marcelo Lobosco, Orlando Loques
Aplicações modernas possuem natureza dinâmica e necessitam de suporte para se adaptarem a novas demandas funcionais e não-funcionais. Novas demandas funcionais são criadas por usuários das aplicações, que precisam funções não previstas originalmente ou necessitam alterar funções existentes. Durante o ciclo de vida das aplicações, podem também surgir requisitos não-funcionais que, em geral, não estão associados diretamente com a aplicação. Modelos mais usuais para o desenvolvimento de software não oferecem as facilidades necessárias para a produção de aplicações que se adaptem dinamicamente a essas demandas. Portanto, uma abordagem que facilite a concepção dessas aplicações se faz necessária. Apresentamos neste artigo a abordagem R-RIO, que estende o conceito tradicional de configuração, permitindo que se descreva a arquitetura das aplicações a partir de componentes e suas interações e, adicionalmente, seus aspectos não-funcionais como a distribuição, coordenação e protocolos de comunicação. A arquitetura de uma aplicação é descrita com o uso de CBabel, a linguagem de configuração de R-RIO. A partir da descrição da arquitetura um middleware, chamado configurador, pode criar instâncias de seus componentes e iniciar a execução da aplicação. O configurador também oferece suporte para adaptação das aplicações que necessitam reagir à mudanças de requisitos ou de condições de operação, inclusive durante a fase de funcionamento. O exemplo do Jogo da Velha (TicTacToe) é utilizado para ilustrar a concepção de uma aplicação com um protocolo de interação complexo utilizando-se R-RIO e para permitir uma comparação com outras abordagens.
现代应用程序具有动态特性,需要支持以适应新的功能和非功能需求。新的功能需求是由应用程序的用户创建的,他们需要最初没有计划的功能或需要更改现有的功能。在应用程序的生命周期中,也可能出现非功能需求,这些需求通常与应用程序没有直接关联。更常见的软件开发模型并没有提供生产动态适应这些需求的应用程序所需的设施。因此,需要一种方法来促进这些应用程序的设计。在本文中,我们提出了R-RIO方法,它扩展了传统的配置概念,允许从组件及其交互以及非功能方面(如分发、协调和通信协议)描述应用程序的架构。使用R-RIO配置语言CBabel描述了应用程序的体系结构。从体系结构的描述中,称为配置器的中间件可以创建其组件的实例并启动应用程序的执行。配置器还支持适应需要对不断变化的需求或操作条件作出反应的应用程序,包括在操作阶段。本文以TicTacToe为例,用R-RIO来说明具有复杂交互协议的应用程序的设计,并允许与其他方法进行比较。
{"title":"Configurando Protocolos de Interação na Abordagem R-RIO","authors":"Alexandre Sztajnberg, Marcelo Lobosco, Orlando Loques","doi":"10.5753/sbes.1999.23912","DOIUrl":"https://doi.org/10.5753/sbes.1999.23912","url":null,"abstract":"Aplicações modernas possuem natureza dinâmica e necessitam de suporte para se adaptarem a novas demandas funcionais e não-funcionais. Novas demandas funcionais são criadas por usuários das aplicações, que precisam funções não previstas originalmente ou necessitam alterar funções existentes. Durante o ciclo de vida das aplicações, podem também surgir requisitos não-funcionais que, em geral, não estão associados diretamente com a aplicação. Modelos mais usuais para o desenvolvimento de software não oferecem as facilidades necessárias para a produção de aplicações que se adaptem dinamicamente a essas demandas. Portanto, uma abordagem que facilite a concepção dessas aplicações se faz necessária. Apresentamos neste artigo a abordagem R-RIO, que estende o conceito tradicional de configuração, permitindo que se descreva a arquitetura das aplicações a partir de componentes e suas interações e, adicionalmente, seus aspectos não-funcionais como a distribuição, coordenação e protocolos de comunicação. A arquitetura de uma aplicação é descrita com o uso de CBabel, a linguagem de configuração de R-RIO. A partir da descrição da arquitetura um middleware, chamado configurador, pode criar instâncias de seus componentes e iniciar a execução da aplicação. O configurador também oferece suporte para adaptação das aplicações que necessitam reagir à mudanças de requisitos ou de condições de operação, inclusive durante a fase de funcionamento. O exemplo do Jogo da Velha (TicTacToe) é utilizado para ilustrar a concepção de uma aplicação com um protocolo de interação complexo utilizando-se R-RIO e para permitir uma comparação com outras abordagens.","PeriodicalId":325756,"journal":{"name":"Anais do XIII Simpósio Brasileiro de Engenharia de Software (SBES 1999)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1999-10-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122507786","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}
引用次数: 3
Um Modelo de Simulação de Processos de Software Baseado em Agentes Cooperativos 基于协作代理的软件过程仿真模型
Pub Date : 1999-10-13 DOI: 10.5753/sbes.1999.23920
Fábio Augusto das Dores Silva, Rodrigo Quites Reis, C. Reis, D. J. Nunes
Este artigo apresenta um modelo e uma ferramenta de simulação de processo de software baseada em conhecimento através de agentes inteligentes e cooperativos. O objetivo desta abordagem é validar e refinar um modelo de processo de software antes de sua execução real, prevenindo, desta forma, os custos decorrentes de falhas na modelagem, alocação de recursos e definição de prazos. O modelo AgentProcess simula o comportamento dos desenvolvedores através de agentes cognitivos. Esses agentes possuem habilidades na execução de algumas tarefas e afinidades com outros agentes. Assim, este modelo apresenta um mecanismo mais adequado para a simulação de processos de software pois trata o envolvimento cooperativo dos desenvolvedores nas suas atividades do processo através de uma base de conhecimento distribuída em agentes.
本文提出了一种基于智能agent和协作agent的基于知识的软件过程仿真模型和工具。这种方法的目标是在软件过程模型实际执行之前验证和细化它,从而防止由于建模失败、资源分配和截止日期定义而产生的成本。AgentProcess模型通过认知代理模拟开发人员的行为。这些代理具有执行某些任务的技能,并与其他代理有亲和力。因此,该模型提出了一种更适合软件过程模拟的机制,因为它通过分布式知识库处理开发人员在其过程活动中的合作参与。
{"title":"Um Modelo de Simulação de Processos de Software Baseado em Agentes Cooperativos","authors":"Fábio Augusto das Dores Silva, Rodrigo Quites Reis, C. Reis, D. J. Nunes","doi":"10.5753/sbes.1999.23920","DOIUrl":"https://doi.org/10.5753/sbes.1999.23920","url":null,"abstract":"Este artigo apresenta um modelo e uma ferramenta de simulação de processo de software baseada em conhecimento através de agentes inteligentes e cooperativos. O objetivo desta abordagem é validar e refinar um modelo de processo de software antes de sua execução real, prevenindo, desta forma, os custos decorrentes de falhas na modelagem, alocação de recursos e definição de prazos. O modelo AgentProcess simula o comportamento dos desenvolvedores através de agentes cognitivos. Esses agentes possuem habilidades na execução de algumas tarefas e afinidades com outros agentes. Assim, este modelo apresenta um mecanismo mais adequado para a simulação de processos de software pois trata o envolvimento cooperativo dos desenvolvedores nas suas atividades do processo através de uma base de conhecimento distribuída em agentes.","PeriodicalId":325756,"journal":{"name":"Anais do XIII Simpósio Brasileiro de Engenharia de Software (SBES 1999)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1999-10-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124448617","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}
引用次数: 2
期刊
Anais do XIII Simpósio Brasileiro de Engenharia de Software (SBES 1999)
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1