• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 161
  • 30
  • 17
  • 10
  • 7
  • 7
  • 6
  • 3
  • 2
  • 2
  • 1
  • 1
  • 1
  • 1
  • 1
  • Tagged with
  • 293
  • 148
  • 121
  • 72
  • 53
  • 40
  • 34
  • 31
  • 30
  • 30
  • 27
  • 23
  • 23
  • 22
  • 20
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
151

SOFTVIZ... A Step Forward

Singh, Mahim 30 April 2004 (has links)
Complex software systems are difficult to understand and very hard to debug. Programmers trying to understand or debug these systems must read through source code which may span over thousands of files. Software Visualization tries to ease this burden by using graphics and animation to convey important information about the program to the user, which may be used either for understanding the behavior of the program or for detecting any defects within the code. SoftViz is one such software visualization system, developed by Ben Kurtz under the guidance of Prof. George T. Heineman at WPI. We carry forward the work initiated with SoftViz. Our preliminary study showed various avenues for making the system more effective and user-friendly. Specifically I completed the unfinished work, made optimizations, implemented new functionality and added new visualization plug-ins, all aimed at making the system a more versatile and user-friendly debugging framework. We built a solid core functionality that would be able to support various functionalities and created new plug-ins that would make understanding and bug-detection easier. Further we integrated SoftViz with the Eclipse development environment, making the system easily accessible and potentially widely used. We created an error classification framework relating the common error classes and the visualizations that could be used to detect them. We believe this will be helpful in both selecting the right visualization options as well as constructing new plug-ins.
152

Minimization of Model-based Tests in Modbat / Minimering av modellbaserade tester i Modbat

Borg, Caroline January 2023 (has links)
Model-based testing (MBT) is a promising testing method with advantages like exhaustive exploration and high maintainability. However, one notable downside is that the generated tests usually contain much unnecessary noise. This noise can present itself as superfluous actions that bear no effect on test outcome — worsening comprehensibility and inflating test size. Generalpurpose minimization techniques like delta debugging have been successful in minimizing similar input before. The process involves removing elements that are redundant for satisfying given criteria, e.g., that a test still identifies a specific fault. In this thesis, we formulate the modmin algorithm which makes use of a hierarchical delta debugging approach to minimize sequences generated with Modbat — an open source MBT tool based on the extended finite-state machine (EFSM). One after the other, the algorithm attacks three common sub-structures found within the generated tests: model instances, loops, and transitions. To evaluate the work, we extended Modbat with modmin and applied it to tests generated from a set of ten models of varying complexity. The results show that modmin is very proficient at minimizing the tests generated from our model set and that it does so at a negligible cost. / Modellbaserad testning är en lovande teknik med fördelar som uttömande sökning och hög underhållbarhet. En nackdel är däremot att de genererade testfallen tenderar att innehålla onödig information. Ett testfall ska, med fördel, vara så kort och koncist som möjligt, och överflödiga instruktioner förvärrar både testbegriplighet och teststorlek. Minimeringsstrategier som delta debugging har med goda resultat används för att minimera liknande datastrukturer tidigare. Processen innebär vanligtvis att man plockar bort element som inte är nödvändiga för att särskilda kriterier ska vara uppfyllda. Exempelvis att ett test fortfarande identifierar samma fel som innan. I det här verket formulerar vi och implementerar modmin-algoritmen, en algoritm som bygger på hierarkisk delta debugging för att minimera testfall generade med det modellbaserade testningsverktyget Modbat. En efter en attackerar vår algoritm tre vanliga delstrukturer som vi har identifierat i Modbats testfall: modellinstanser, slingor, och individuella övergångar. Vi utvärderade arbetet genom att utöka Modbats öppna källkod med modmin och sen minimera testfall genererade från tio olika modeller av varierande komplexitet. Resultaten visar att modmin klarar av att minimera testfall generade från alla våra modeller och att det bara tillför en försumbar kostnad vad gäller systemresurser eller körtid.
153

Discovering heap anomalies in the wild

Jump, Maria Eva 01 February 2010 (has links)
Programmers increasingly rely on managed languages (e.g. Java and C#) to develop applications faster and with fewer bugs. Managed languages encourage allocating objects in the heap and rely on automatic memory management (garbage collection) to reclaim objects the program can no longer access. With more objects in the heap, the heap encodes more program state than ever before and offers new opportunities for optimization and analysis. This dissertation shows how to efficiently leverage the managed runtime to perform dynamic heap analysis. Previous heap analysis approaches significantly slow down programs, require special hardware, and/or increase memory consumption by 75% or more. We presents two synergistic techniques—dynamic object sampling (DOS) and heap summarization (HSG)—that mine program state embedded in the heap efficiently enough to use in production and effectively enough to improve performance, find bugs, and increase program understanding. We use these techniques to address three problems: (1) Performance of managed language. Because some objects live for a long time, they incur disproportionate collection costs. We optimize these costs with dynamic pretenuring. Dynamic pretenuring uses DOS to accurately predict allocation site survival rates and uses these predictions to improve performance. (2) Finding bugs. Memory leaks in managed languages occur when a program inadvertently maintains references to objects that it no longer needs. Along with degrading performance and resulting in program crashes, memory leaks cause systematic heap growth. We introduce Cork which uses the simplest type of HSG, a class points-from summary graph (CPFG), to detect systematic heap growth. Cork quickly identifies growing data structures observed in three popular benchmarks (fop, jess, and jbb2000) while adding an average of only 2.3% to total time. Additionally, we use Cork to debug a reported memory leak in Eclipse. (3) Program understanding. For a long time, static analysis has sought to statically summarize the shape of dynamic data structures to aid in program verification and understanding. Unfortunately, it only works on small programs. We introduce ShapeUp which instead characterizes recursive data structures dynamically by discovering data structure shape and degree invariants at runtime. ShapeUp uses DOS and a class field-wise summary graph (CFSG) to track in- and out-degree invariants of data structure nodes. We show how ShapeUp automatically identifies recursive data structures and likely shape invariants. Finally, we monitor discovered shape invariants to detect when a data structure becomes malformed. In summary, this dissertation is the first to leverage the managed runtime to perform dynamic heap analysis both accurately and efficiently. Our results show that the heap contains an enormous amount of program state and that there is much potential for dynamically mining heap characteristics for optimization, debugging, and program understanding. / text
154

User-Defined XML-to-Relational Mapping / User-Defined XML-to-Relational Mapping

Kohan, Tomáš January 2007 (has links)
In the present work we study opportunities of mapping the XML data into relational systems. In the first part we describe basic terminology used in this work and subsequently also basic techniques for mapping XML data into the relational database. In the next part we engaged in theoretical methods like MXM and ShreX, which were proposed on premises of a university or by a research group. In the third part we describe mapping methods, that are used in some commercial systems like Oracle, DB2 and MS SQL. In the whole second half of this work we propose a new mapping method (XRM), which bring in several new features, while the origin positive features are kept. At the end we analyze the prototype implementation of the proposed mapping method.
155

Nástroje pro tvorbu chování virtuálních agentu v POSHi / Tools for virtual agent behavior specification in POSH

Havlíček, Jan January 2013 (has links)
Goal of the work is to improve the SPOSH planner and its developement tools. SPOSH is a reactive planner of virtual agents similar to behavior trees that is used in the Pogamut platform, which is used to develop virtual agents. SPOSH itself suffers from several problems, especially excessive duplication of primitives (actions and senses) in different agents and unnatural execution of primitives. This work aims to remove these problems. Nearly all behavior tree planners are not public and developement tools are not usually available. Absence of such tools, especially of debugger, is major problem for users. Part of this work are tools for easy creation and debugging of SPOSH plans. Improved planner and created tools are demonstrated using an agent in game Unreal Tournament 2004.
156

Debugger Frontend for the SharpDevelop IDE / Debugger Frontend for the SharpDevelop IDE

Koníček, Martin January 2011 (has links)
The overall goal of the thesis is to explore new approaches to debugging managed code, namely visualization of data in the program being debugged. Particular goals of the work are: (a) to build an object graph visualizer, which displays selected data structure used in the program as directed graph, (b) improve visualization of object collections by providing an overview of collection contents and supporting broad range of collection types. The work is implemented for the SharpDevelop open source IDE for .NET. The author cooperates with the SharpDevelop team and the results of the work have been already incorporated into the new version of the IDE.
157

Presenting results of software model checker via debugging interface / Presenting results of software model checker via debugging interface

Kohan, Tomáš January 2012 (has links)
Title: Presenting results of software model checker via debugging interface Author: Tomáš Kohan Department: Department of Software Engineering Supervisor of the master thesis: RNDr. Ondřej Šerý, Ph.D., Department of Distributed and Dependable Systems Abstract: This thesis is devoted to design and implementation of the new debugging interface of the Java PathFinder application. As a suitable inte- face container was selected the Eclipse development environment. The created interface should visualize results of JPF and details of paused JVM state, es- pecially a list of variables and their values. Two subprojects were created, i.e. debug4jpf and JPFDeb.core. The first one is responsible for controlling and communication with the JPF instance. The latter one is an Eclipse plugin and provides user interface which is similar to the interface of standard Java debugger. These two components communicate with each other by using the ad-hoc communication protocol created for this purpose. Keywords: Java, verification, model checker, JPF, debugging interface
158

Context Aware Android Application Trace Analysis / Context Aware Android Application Trace Analysis

Kacz, Kristián January 2013 (has links)
The thesis examines how current mobile operating systems support context-aware applications and investigates the methods of mobile application debugging. The thesis points out what kind of problems need to be solved during debugging of context-aware applications. The primary goal of the thesis is to propose a debugging method which takes context information into account and to implement this method. The thesis contains a real world use case to demonstrate the proposed method.
159

Depuração de programas baseada em cobertura de integração / Program debugging based on integration coverage

Souza, Higor Amario de 20 December 2012 (has links)
Depuração é a atividade responsável pela localização e correção de defeitos gerados durante o desenvolvimento de programas. A depuração ocorre devido à atividade de teste bem-sucedida, na qual falhas no comportamento do programa são reveladas, indicando a existência de defeitos. Diversas técnicas têm sido propostas para automatizar a tarefa de depuração de programas. Algumas delas utilizam heurísticas baseadas em informações de cobertura obtidas da execução de testes. O objetivo é indicar trechos de código do programa mais suspeitos de conter defeitos. As informações de cobertura mais usadas em depuração automatizada são baseadas no teste estrutural de unidade. A cobertura de integração, obtida por meio da comunicação entre as unidades de um programa, pode trazer novas informações sobre o código executado, possibilitando a criação de novas estratégias para a tarefa de localização de defeitos. Este trabalho apresenta uma nova técnica de localização de defeitos chamada Depuração de programas baseada em Cobertura de Integração (DCI). São apresentadas duas coberturas de integração baseadas nas chamadas de métodos de um programa. Essas coberturas são usadas para a proposição de roteiros de busca dos defeitos a partir dos métodos considerados mais suspeitos. As informações de cobertura de unidade são então utilizadas para a localização dos defeitos dentro dos métodos. A DCI também utiliza uma nova heurística para atribuição de valores de suspeição a entidades de integração estática dos programas como pacotes, classes e métodos, fornecendo também um roteiro para a procura dos defeitos. Os experimentos realizados em programas reais mostram que a DCI permite realizar a localização de defeitos de forma mais eficaz do que o uso de informações de cobertura de unidade isoladamente. / Debugging is the activity responsible for localizing and fixing faults generated during software development. Debugging occurs due to a successful testing activity, in which failures in the behavior of the program are revealed, indicating the existence of faults. Several techniques have been proposed to automate the debugging tasks, especially the fault localization task. Some techniques use heuristics based on coverage data obtained from the execution of tests. The goal is to indicate program code excerpts more likely to contain faults. The coverage data mostly used in automated debugging is based on white-box unit testing. Integration coverage data, obtained from the communication between the units of a program, can bring about new information with respect to the executed code, which allows new strategies to the fault localization task to be devised. This work presents a new fault localization technique called Debugging based on Integration Coverage (DIC). Two integration coverages based on method invocations are presented. These coverages are used to propose two search strategies that provides a roadmap to locate faults by investigating the more suspicious methods. The unit coverage information are used to search the faulty statement inside the suspicious methods. The DIC technique also proposes a heuristic that assigns suspiciousness values to static integration entities of the programs, namely, packages, classes, and methods. This heuristic also provides a roadmap to search for the faults. Experiments using real programs show that DIC is more effective to locate faults than solely using unit coverage information.
160

Nontermination debugging of Prolog programs.

January 1992 (has links)
by Lam, Hin-ki Isaac. / Thesis (M.Phil.)--Chinese University of Hong Kong, 1992. / Includes bibliographical references (leaves 219-220). / Chapter Chapter 1 --- Introduction --- p.1 / Chapter 1.1 --- The Problem --- p.1 / Chapter 1.2 --- Related Works --- p.3 / Chapter 1.3 --- Contribution of the Present Study --- p.8 / Chapter 1.4 --- Outline of the Thesis --- p.8 / Chapter Chapter 2 --- Nontermination and Recursive Definition --- p.11 / Chapter 2.1 --- Prolog Execution Model --- p.11 / Chapter 2.2 --- Nontermination --- p.15 / Chapter 2.3 --- Exit Condition --- p.21 / Chapter 2.4 --- Exit-Reaching Process --- p.29 / Chapter 2.5 --- Parameter Based Detection --- p.35 / Chapter Chapter 3 --- Parameter Analysis --- p.38 / Chapter 3.1 --- Parameter Links --- p.39 / Chapter 3.1.1 --- Parameter Links and Parameter Modifying Process --- p.39 / Chapter 3.1.2 --- Parameter Links of Multi-Parameters --- p.43 / Chapter 3.1.3 --- Parameter Links in Indirect Recursive Definition --- p.44 / Chapter 3.1.4 --- Parameter Links with Special Parameters --- p.46 / Chapter 3.1.5 --- Parameter Links of the Same Name Parameters --- p.47 / Chapter 3.1.6 --- The Significance of Parameter Links --- p.49 / Chapter 3.2 --- Cyclic Parameter Links --- p.51 / Chapter 3.3 --- Parameter Link Detection --- p.58 / Chapter 3.3.1 --- Graph Technique --- p.58 / Chapter 3.3.1.1 --- Preliminaries --- p.58 / Chapter 3.3.1.2 --- on Parameter Links --- p.59 / Chapter 3.3.2 --- Algorithms --- p.62 / Chapter Chapter 4 --- Data Analysis --- p.70 / Chapter 4.1 --- Data Links --- p.72 / Chapter 4.1.1 --- The Direct Recursive Definition Case --- p.76 / Chapter 4.1.1.1 --- Subgoal Procedures with Facts Alone --- p.76 / Chapter 4.1.1.2 --- Procedures with Rules --- p.79 / Chapter 4.1.2 --- The Indirect Recursive Definition Case --- p.84 / Chapter 4.2 --- on the Difference between Pure and General Prolog --- p.86 / Chapter 4.3 --- Data Link Significance --- p.89 / Chapter 4.4 --- Connected Data-link Lists --- p.92 / Chapter 4.4.1 --- Data Links and Connected Data-link Lists --- p.92 / Chapter 4.4.1.1 --- Connected Data-link Lists and Data Transfer Sequence --- p.95 / Chapter 4.4.1.2 --- Connected Data-link Lists and Backtracking --- p.97 / Chapter 4.4.1.3 --- Connected Data-link Lists and the Recursion Result --- p.99 / Chapter 4.4.2 --- Cyclic and Non-Cyclic Connected Data-link Lists --- p.100 / Chapter 4.4.2.1 --- Non-Cyclic Connected Data-link Lists and Exit Conditions --- p.102 / Chapter 4.4.2.2 --- Cyclic Connected Data-link Lists and Nontermination --- p.104 / Chapter 4.4.3 --- Multi-Connected Data-link Lists --- p.107 / Chapter 4.4.3.1 --- in One Cyclic Parameter Link --- p.107 / Chapter 4.4.3.2 --- in Multi-Cyclic Parameter Links --- p.115 / Chapter 4.4.3.3 --- The Case of Multiple Recursive Subgoals in the Same Rule --- p.120 / Chapter 4.5. --- Special Parameters and Data Links --- p.125 / Chapter 4.5.1. --- Data Links with Special Parameters Only --- p.126 / Chapter 4.5.2 --- Data Links with Both Special Parameters and Subgoals --- p.136 / Chapter 4.6 --- Data Links and Infinite Data Transfer Sequence Detection --- p.142 / Chapter CHAPTER 5 --- Special Cases --- p.150 / Chapter 5.1 --- Interdependent Cyclic Parameter Links --- p.150 / Chapter 5.1.1 --- Interdependent Cyclic Parameter Links through Common Parameters --- p.151 / Chapter 5.1.1.1 --- Interdependency between Cyclic and Non-cyclic Parameter Links and Interdependency between Cyclic Parameter Link and Subgoals --- p.158 / Chapter 5.1.1.2 --- Interdependency between Cyclic Parameter Links --- p.165 / Chapter 5.1.1.2.1 --- Lengths of Cyclic Connected- data Links in Different Ratios --- p.171 / Chapter 5.1.1.2.2 --- Cyclic Parameter Links with Lengths in Different Ratios --- p.182 / Chapter 5.1.2 --- Interdependent Cyclic Parameter Links through Common Subgoals --- p.196 / Chapter 5.1.3 --- Interdependent Cyclic Parameter Links with Special Parameters --- p.202 / Chapter 5.2 --- A Special Case of Cyclic Parameter Links established through Special Parameters --- p.208 / Chapter CHAPTER 6 --- Discussion and Conclusion --- p.213 / Chapter 6.1 --- The Results and Implications --- p.213 / Chapter 6.2 --- Limitations and Future Research --- p.215 / Chapter 6.3 --- Conclusion --- p.217 / Reference --- p.219

Page generated in 0.0913 seconds