Date of Award

1-1-2016

Document Type

Thesis

Degree Name

M.S.

Department

Computer Science

First Advisor

Matthew J. Rutherford, Ph.D.

Second Advisor

Chris Gauthier-Dickey

Third Advisor

Davor Balzar

Keywords

Debugging, Omniscient, Software, Web

Abstract

Debugging can be an extremely expensive and time-consuming task for a software developer. To find a bug, the developer typically needs to navigate backwards through infected states and symptoms of the bug to find the initial defect. Modern debugging tools are not designed for navigating back-in-time and typically require the user to jump through hoops by setting breakpoints, re-executing, and guessing where errors occur. Omniscient debuggers offer back-in-time debugging capabilities to make this task easier. These debuggers trace the program allowing the user to navigate forwards and backwards through the execution, examine variable histories, and visualize program data and control flow. Presented in this thesis is PECCit, an omniscient debugger designed for backend web development. PECCit traces web frameworks remotely and provides a browser-based IDE to navigate through the trace. The user can even watch a preview of the web page as it's being built line-by-line using a novel feature called capturing. To evaluate, PECCit was used to debug real-world problems provided by users of two Content Management Systems: WordPress and Drupal. In these case studies, PECCit's features and debugging capabilities are demonstrated and contrasted with standard debugging techniques.

Publication Statement

Copyright is held by the author. User is responsible for all copyright compliance.

Provenance

Received from ProQuest

Rights holder

Zachary Ryan Azar

File size

164 p.

File format

application/pdf

Language

en

Discipline

Computer Science



Share

COinS