1 In this paper we present an optimization based technique to allocate time windows for railroad ... more 1 In this paper we present an optimization based technique to allocate time windows for railroad track maintenance in order to minimize the impact on train circulation. The hypothesis is that it is possible to reduce the impact on train circulation if track maintenance slots are scheduled in naturally occurring gaps on the circulation, instead of just using a decision making process that does not take the train circulation into consideration. The proposed solution uses simulated annealing as the basis for the algorithm and yields promising results when a random initial placement of track blocks is used. We show the results of our experiments that consider as restrictions the earliest initial time for the track block and the latest termination time for the track blocks (to account for restriction in crew work hours, for example). For this work we do not restrict the number of simultaneous maintenance teams that could be working, future investigations will account for that restriction.
Available statistical data shows that the cost of repairing software faults rises dramatically in... more Available statistical data shows that the cost of repairing software faults rises dramatically in later development stages. It is important to have reliable software specifications. In particular, as the technology
Os principais aspectos da especificacaoda ViewGraph, uma ferramenta cujo proposito e auxiliar a a... more Os principais aspectos da especificacaoda ViewGraph, uma ferramenta cujo proposito e auxiliar a atividade de teste e depuracao de programas, atraves da visualizacao de informacoes de teste fomecidas pela POKE-TOOL [CHA91], sao apresentados. Os principais pontos relacionados do Teste Estrutural Baseado em Analise de Fluxo de Dados suportado pela POKE-TOOL, sao tambem apresentados. Os principais algoritmos utilizados na ferramenta ViewGraph sao aqueles que tratam da geracao da disposicao grafica dos grafos de programa; sua descricao e mostrada em detalhes nessa dissertacao. Uma avaliacao empirica dos algoritmos foi realizada e os resultados sao apresentados. As caracteristicas bem como os principais problemas encontrados na implementacao de um subconjunto da especificacao da ViewGraph sao tambem discutidos Abstract
The rapid growth of the Internet has spurred development of new protocols and algorithms to meet ... more The rapid growth of the Internet has spurred development of new protocols and algorithms to meet changing operational requirements such as security, multicast transport, mobile networking, policy management, and quality-of-service support. Development and evaluation of these operational tools requires answering many design questions. Building testbeds and labs is expensive, reconfiguring and sharing them are difficult, and they are relatively inflexible. Networking research increasingly depends on simulation to investigate new network design, protocol behavior, performance, and interactions. Simulation relies on network models. This paper provides an automatic method for constructing simulation models from network scenario workflows. Our experiments show that automatic construction of simulation models allows online simulation that can be adjusted dynamically and promptly
Uma familia de Criterios de Teste Estrutural baseado em Analise de Fluxo de Dados para o Teste de... more Uma familia de Criterios de Teste Estrutural baseado em Analise de Fluxo de Dados para o Teste de Integracao de Programas, denominada Familia de Criterios Potenciais Usos de Integracao, e definida. Essa familia de criterios inclui os criterios basicos e os criterios executaveis. As propriedades teoricas desses criterios sao analisadas, incluindo a analise da relacao de inclusao e da habilidade de deteccao de defeitos tanto para os criterios basicos como para os executaveis. Essa familia de criterios estabelece uma hierarquia de criterios entre o teste de ramos e o teste de caminhos tanto para a relacao de inclusao como para a habilidade de deteccao de defeitos, mesmo na presenca de caminhos nao executaveis. A analise inicial para a especificacao de uma ferramenta de teste que suporte a aplicacao dos Criterios Potenciais Usos de Integracao e apresentada. Uma abordagem conservadora para o teste de programas com variaveis do tipo ponteiro, baseada na abordagem proposta por Maldonado pa...
Database applications, including SQL-based applications, have received little attention directed ... more Database applications, including SQL-based applications, have received little attention directed towards improving the knowledge of their possible faults. This paper deals with issues related to software faults and failures aiming at understanding what types of faults occur in SQL manipulation commands, and how they are propagated to the output of command execution. SQL manipulation commands are studied and their structure is organized into structural items, a step towards understanding and grouping fault types. A list of manipulation fault types is determined and presented with SQL command examples. Failure dimensions are discussed along with query and state changing operations. An experiment to abstract the types of manipulation faults for SQL was carried out and the results are presented. The experiment built databases and faulty commands to promote failure in command execution. A database was built and a set of faulty SQL commands used to map fault types and failure dimensions. ...
Teoricamente, a habilidade de programar nao e requisito para escrever testes automatizados, porem... more Teoricamente, a habilidade de programar nao e requisito para escrever testes automatizados, porem geralmente esta habilidade se faz necessaria devido a conexao intrinseca entre os cenarios de teste e sua implementacao em codigo. Na maior parte dos casos, os programadores que fizeram o codigo acabam escrevendo os cenarios de teste. Esta sitituacao permite o surgimento de testes tendenciosos, uma vez que o programador quer provar que seu codigo funciona. Com base neste cenario, nos apresentamos o BDDManager: uma ferramenta que premite que nao-programadores gerenciem testes comportamentais automatizados.
1 The railway traffic system is an important player in passenger and freight transportation. This... more 1 The railway traffic system is an important player in passenger and freight transportation. This paper aims to present a survey of optimization models for the most commonly studied rail transportation problems related to train scheduling. We propose a classification of models and describe their characteristics by focusing on model structure and algorithmic aspects. Most reviewed papers have been proposed during the last decades. Apart from a few exceptions, the survey concentrates on published and easily accessible material. We have also elected to limit ourselves to contributions dealing specifically with rail transportation planning in single and double tracks. Each model has different goals, such as, to minimize service delays, to reduce the unscheduled train stops or to minimize the total time a train has to remain motionless, specially to allow crossings. For each group of problems, we propose a classification of models and describe their important characteristics by focusing ...
ABSTRACT Available statistical data shows that the cost of repairing software faults rises dramat... more ABSTRACT Available statistical data shows that the cost of repairing software faults rises dramatically in later development stages. It is important to reduce software faults in the early stages of software development, such as requirement and design specification. In particular, the new technology of generating implementation code from specification requires highly reliable design specifications. Much research has been done on verification and validation, such as model checking. We believe such approaches are similar to software testing. We apply our state-of-the-art technology in software coverage testing, program diagnosis and understanding to stages as early as software requirements and designs. Early analysis provides many benefits, including: 1) early detection and recovery of software faults; 2) visualization and simulation of the software specifications; 3) improvement of the confidence on the specification; 4) making programming on the specification level more possible; and 5) reduction of the number of introduced faults. This paper presents the technology and the accompanying tool suite to the diagnosis and understanding of software specifications. We use the simulation of the specifications to collect the execution trace for computing the coverage and slicing data. Our technology is based on both the control flow and the data flow of the executable specifications
Active databases have been traditionally used as an alternative to implement persistent data requ... more Active databases have been traditionally used as an alternative to implement persistent data requirements of applications on several knowledge domains. Their principle is the activation of tasks with specific functionalities as a response to events. These reactive abilities are generally expressed with active rules defined within the database itself. We investigate the use of data flowbased testing to identify the presence of faults in active rules written in SQL. Our research is based on the precision of data flow analysis, also named as data flow granularity, aiming at comparing different granularities and preliminarily evaluating their fault-revealing effectiveness. This analysis has an important impact on the cost of database application testing. The results point to higher granularities do not improve the fault detecting ability.
This paper presents a case study to produce supporting evidence to prove the hypothesis that it i... more This paper presents a case study to produce supporting evidence to prove the hypothesis that it is viable to test a program for security vulnerabilities. The approach considers the use of Mutation Analysis, a structural error-based testing technique, to increase the chances of detecting code related security breaches in software. Two mutant operators with four variations each are defined and subsequently used to generate mutants. Cost related issues are always raised when mutation analysis is used, we address the problem from both the theoretical and empirical point of view.
Database applications, including SQL-based applications, have received little attention di- recte... more Database applications, including SQL-based applications, have received little attention di- rected towards improving the knowledge of their possible faults. This paper deals with issues related to software faults and failures aiming at understanding what types of faults occur in SQL manipulation commands, and how they are propagated to the output of command execution. SQL manipulation com- mands are studied and
Computing the circulation plan for trains in a railroad is a hard problem. The number of variable... more Computing the circulation plan for trains in a railroad is a hard problem. The number of variables considered, size of the search space and limitations on processing time define rigid limits to the solutions considered for any practical use. Our approach to train circulation planning implements a simulation of discrete events that performs really well. Nevertheless, the approach is known to have some shortsightedness, specially when a global analysis is considered. To reduce the impact of such shortsightedness, a couple of solutions have been developed, including a second layer of intelligence on top of the core algorithm. This layer is called Adaptive Engine (AE), and is able to execute pre-processing and post- processing rules to fine tune the core engine’s output. The solution that is presented in this paper, called Meta Planning Engine (MPE), tackles another limitation of the tool, no matter how adjusted the implemented heuristics are, the core engine is computing only one outpu...
Proceedings of the 2014 Joint Rail Conference, Apr 2, 2014
Decision support tools that employ the use of computational intelligence are natural candidates t... more Decision support tools that employ the use of computational intelligence are natural candidates to tackle the problem of dispatching trains in a railroad, allowing for the construction of flexible algorithms that explore the solution space optimizing the result for a defined objective, besides supporting the insertion of knowledge to the solution search process. We present a solution based on discrete-event simulation and heuristics to find feasible routes for all the trains. Decisions about passings and overtakings follow a set of heuristics that adhere to the railway circulation rules. Empirical results show that this algorithm runs in polynomial time. Some possibilities for improving the results provided by the tool are discussed. The first is to collect information from one planning run to feed the next run and improve the subsequent result, this approach is called adaptive. We use a rules executing environment that process a set of facts collected from previous executions of th...
1 In this paper we present an optimization based technique to allocate time windows for railroad ... more 1 In this paper we present an optimization based technique to allocate time windows for railroad track maintenance in order to minimize the impact on train circulation. The hypothesis is that it is possible to reduce the impact on train circulation if track maintenance slots are scheduled in naturally occurring gaps on the circulation, instead of just using a decision making process that does not take the train circulation into consideration. The proposed solution uses simulated annealing as the basis for the algorithm and yields promising results when a random initial placement of track blocks is used. We show the results of our experiments that consider as restrictions the earliest initial time for the track block and the latest termination time for the track blocks (to account for restriction in crew work hours, for example). For this work we do not restrict the number of simultaneous maintenance teams that could be working, future investigations will account for that restriction.
Available statistical data shows that the cost of repairing software faults rises dramatically in... more Available statistical data shows that the cost of repairing software faults rises dramatically in later development stages. It is important to have reliable software specifications. In particular, as the technology
Os principais aspectos da especificacaoda ViewGraph, uma ferramenta cujo proposito e auxiliar a a... more Os principais aspectos da especificacaoda ViewGraph, uma ferramenta cujo proposito e auxiliar a atividade de teste e depuracao de programas, atraves da visualizacao de informacoes de teste fomecidas pela POKE-TOOL [CHA91], sao apresentados. Os principais pontos relacionados do Teste Estrutural Baseado em Analise de Fluxo de Dados suportado pela POKE-TOOL, sao tambem apresentados. Os principais algoritmos utilizados na ferramenta ViewGraph sao aqueles que tratam da geracao da disposicao grafica dos grafos de programa; sua descricao e mostrada em detalhes nessa dissertacao. Uma avaliacao empirica dos algoritmos foi realizada e os resultados sao apresentados. As caracteristicas bem como os principais problemas encontrados na implementacao de um subconjunto da especificacao da ViewGraph sao tambem discutidos Abstract
The rapid growth of the Internet has spurred development of new protocols and algorithms to meet ... more The rapid growth of the Internet has spurred development of new protocols and algorithms to meet changing operational requirements such as security, multicast transport, mobile networking, policy management, and quality-of-service support. Development and evaluation of these operational tools requires answering many design questions. Building testbeds and labs is expensive, reconfiguring and sharing them are difficult, and they are relatively inflexible. Networking research increasingly depends on simulation to investigate new network design, protocol behavior, performance, and interactions. Simulation relies on network models. This paper provides an automatic method for constructing simulation models from network scenario workflows. Our experiments show that automatic construction of simulation models allows online simulation that can be adjusted dynamically and promptly
Uma familia de Criterios de Teste Estrutural baseado em Analise de Fluxo de Dados para o Teste de... more Uma familia de Criterios de Teste Estrutural baseado em Analise de Fluxo de Dados para o Teste de Integracao de Programas, denominada Familia de Criterios Potenciais Usos de Integracao, e definida. Essa familia de criterios inclui os criterios basicos e os criterios executaveis. As propriedades teoricas desses criterios sao analisadas, incluindo a analise da relacao de inclusao e da habilidade de deteccao de defeitos tanto para os criterios basicos como para os executaveis. Essa familia de criterios estabelece uma hierarquia de criterios entre o teste de ramos e o teste de caminhos tanto para a relacao de inclusao como para a habilidade de deteccao de defeitos, mesmo na presenca de caminhos nao executaveis. A analise inicial para a especificacao de uma ferramenta de teste que suporte a aplicacao dos Criterios Potenciais Usos de Integracao e apresentada. Uma abordagem conservadora para o teste de programas com variaveis do tipo ponteiro, baseada na abordagem proposta por Maldonado pa...
Database applications, including SQL-based applications, have received little attention directed ... more Database applications, including SQL-based applications, have received little attention directed towards improving the knowledge of their possible faults. This paper deals with issues related to software faults and failures aiming at understanding what types of faults occur in SQL manipulation commands, and how they are propagated to the output of command execution. SQL manipulation commands are studied and their structure is organized into structural items, a step towards understanding and grouping fault types. A list of manipulation fault types is determined and presented with SQL command examples. Failure dimensions are discussed along with query and state changing operations. An experiment to abstract the types of manipulation faults for SQL was carried out and the results are presented. The experiment built databases and faulty commands to promote failure in command execution. A database was built and a set of faulty SQL commands used to map fault types and failure dimensions. ...
Teoricamente, a habilidade de programar nao e requisito para escrever testes automatizados, porem... more Teoricamente, a habilidade de programar nao e requisito para escrever testes automatizados, porem geralmente esta habilidade se faz necessaria devido a conexao intrinseca entre os cenarios de teste e sua implementacao em codigo. Na maior parte dos casos, os programadores que fizeram o codigo acabam escrevendo os cenarios de teste. Esta sitituacao permite o surgimento de testes tendenciosos, uma vez que o programador quer provar que seu codigo funciona. Com base neste cenario, nos apresentamos o BDDManager: uma ferramenta que premite que nao-programadores gerenciem testes comportamentais automatizados.
1 The railway traffic system is an important player in passenger and freight transportation. This... more 1 The railway traffic system is an important player in passenger and freight transportation. This paper aims to present a survey of optimization models for the most commonly studied rail transportation problems related to train scheduling. We propose a classification of models and describe their characteristics by focusing on model structure and algorithmic aspects. Most reviewed papers have been proposed during the last decades. Apart from a few exceptions, the survey concentrates on published and easily accessible material. We have also elected to limit ourselves to contributions dealing specifically with rail transportation planning in single and double tracks. Each model has different goals, such as, to minimize service delays, to reduce the unscheduled train stops or to minimize the total time a train has to remain motionless, specially to allow crossings. For each group of problems, we propose a classification of models and describe their important characteristics by focusing ...
ABSTRACT Available statistical data shows that the cost of repairing software faults rises dramat... more ABSTRACT Available statistical data shows that the cost of repairing software faults rises dramatically in later development stages. It is important to reduce software faults in the early stages of software development, such as requirement and design specification. In particular, the new technology of generating implementation code from specification requires highly reliable design specifications. Much research has been done on verification and validation, such as model checking. We believe such approaches are similar to software testing. We apply our state-of-the-art technology in software coverage testing, program diagnosis and understanding to stages as early as software requirements and designs. Early analysis provides many benefits, including: 1) early detection and recovery of software faults; 2) visualization and simulation of the software specifications; 3) improvement of the confidence on the specification; 4) making programming on the specification level more possible; and 5) reduction of the number of introduced faults. This paper presents the technology and the accompanying tool suite to the diagnosis and understanding of software specifications. We use the simulation of the specifications to collect the execution trace for computing the coverage and slicing data. Our technology is based on both the control flow and the data flow of the executable specifications
Active databases have been traditionally used as an alternative to implement persistent data requ... more Active databases have been traditionally used as an alternative to implement persistent data requirements of applications on several knowledge domains. Their principle is the activation of tasks with specific functionalities as a response to events. These reactive abilities are generally expressed with active rules defined within the database itself. We investigate the use of data flowbased testing to identify the presence of faults in active rules written in SQL. Our research is based on the precision of data flow analysis, also named as data flow granularity, aiming at comparing different granularities and preliminarily evaluating their fault-revealing effectiveness. This analysis has an important impact on the cost of database application testing. The results point to higher granularities do not improve the fault detecting ability.
This paper presents a case study to produce supporting evidence to prove the hypothesis that it i... more This paper presents a case study to produce supporting evidence to prove the hypothesis that it is viable to test a program for security vulnerabilities. The approach considers the use of Mutation Analysis, a structural error-based testing technique, to increase the chances of detecting code related security breaches in software. Two mutant operators with four variations each are defined and subsequently used to generate mutants. Cost related issues are always raised when mutation analysis is used, we address the problem from both the theoretical and empirical point of view.
Database applications, including SQL-based applications, have received little attention di- recte... more Database applications, including SQL-based applications, have received little attention di- rected towards improving the knowledge of their possible faults. This paper deals with issues related to software faults and failures aiming at understanding what types of faults occur in SQL manipulation commands, and how they are propagated to the output of command execution. SQL manipulation com- mands are studied and
Computing the circulation plan for trains in a railroad is a hard problem. The number of variable... more Computing the circulation plan for trains in a railroad is a hard problem. The number of variables considered, size of the search space and limitations on processing time define rigid limits to the solutions considered for any practical use. Our approach to train circulation planning implements a simulation of discrete events that performs really well. Nevertheless, the approach is known to have some shortsightedness, specially when a global analysis is considered. To reduce the impact of such shortsightedness, a couple of solutions have been developed, including a second layer of intelligence on top of the core algorithm. This layer is called Adaptive Engine (AE), and is able to execute pre-processing and post- processing rules to fine tune the core engine’s output. The solution that is presented in this paper, called Meta Planning Engine (MPE), tackles another limitation of the tool, no matter how adjusted the implemented heuristics are, the core engine is computing only one outpu...
Proceedings of the 2014 Joint Rail Conference, Apr 2, 2014
Decision support tools that employ the use of computational intelligence are natural candidates t... more Decision support tools that employ the use of computational intelligence are natural candidates to tackle the problem of dispatching trains in a railroad, allowing for the construction of flexible algorithms that explore the solution space optimizing the result for a defined objective, besides supporting the insertion of knowledge to the solution search process. We present a solution based on discrete-event simulation and heuristics to find feasible routes for all the trains. Decisions about passings and overtakings follow a set of heuristics that adhere to the railway circulation rules. Empirical results show that this algorithm runs in polynomial time. Some possibilities for improving the results provided by the tool are discussed. The first is to collect information from one planning run to feed the next run and improve the subsequent result, this approach is called adaptive. We use a rules executing environment that process a set of facts collected from previous executions of th...
Uploads
Papers by Plinio Vilela