Peter Ohmann

ORCID: 0000-0002-7670-7374
Publications
Citations
Views
---
Saved
---
About
Contact & Profiles
Research Areas
  • Software Testing and Debugging Techniques
  • Software System Performance and Reliability
  • Software Engineering Research
  • Software Reliability and Analysis Research
  • Teaching and Learning Programming
  • Pharmacy and Medical Practices
  • China's Ethnic Minorities and Relations
  • Advanced Malware Detection Techniques
  • Information Systems Education and Curriculum Development
  • Higher Education Learning Practices
  • Security and Verification in Computing
  • Student Assessment and Feedback
  • Patient Safety and Medication Errors
  • Software Engineering Techniques and Practices
  • Fault Detection and Control Systems
  • Ethics and Social Impacts of AI
  • Online and Blended Learning
  • COVID-19 diagnosis using AI
  • Pharmaceutical Practices and Patient Outcomes
  • Adversarial Robustness in Machine Learning
  • Eurasian Exchange Networks
  • Innovative Teaching and Learning Methods
  • Advanced Data Storage Technologies
  • Online Learning and Analytics
  • Artificial Intelligence in Healthcare and Education

College of Saint Benedict and Saint John's University
2019-2025

University of Wisconsin–Madison
2013-2017

Xavier University
2017

GrammaTech (United States)
2017

Assessment of student knowledge is a crucial and challenging part course design. Especially in computer science courses the United States, written examinations are very common. While exams offer number advantages convenience familiarity, they also inflexible prone to question misinterpretation. In contrast tests, oral prospect an interactive conversation where students can express their variety ways while asking clarifying questions. this paper, we present assess our implementation...

10.1145/3287324.3287489 article EN 2019-02-22

Debugging is difficult and costly. As a human programmer looks for bug, it would be helpful to see complete trace of events leading the point failure. Unfortunately, full tracing simply too slow use in deployment, may even impractical during testing. We aid post-deployment debugging by giving programmers additional information about program activity shortly before latent post-failure memory dumps, augmented low-overhead, tunable run-time tracing. Our results with realistically-tuned scheme...

10.1109/ase.2013.6693096 article EN 2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE) 2013-11-01

Program coverage is used across many stages of software development. While common during testing, program has also found use outside the test lab, in production software. However, stricter requirements on run-time overheads, and may limit possible instrumentation. Thus, optimizing placement probes to gather important.

10.1145/2970276.2970351 article EN 2016-08-25

Debugging is difficult. When software fails in production, debugging even harder, as failure reports usually provide only an incomplete picture of the failing execution. We present a system that answers control-flow queries posed by developers formal languages, indicating whether query expresses control flow possible or impossible for given report. consider three separate approaches trade off precision, expressiveness constraints, and scalability. also introduce new subclass regular...

10.1145/3062341.3062368 article EN 2017-06-14

Due to resource constraints, tracing production applications often results in incomplete data. Nevertheless, developers ideally want answers queries about the program's execution beyond data explicitly gathered. For example, a developer may ask whether particular program statement executed during run corresponding given failure report. In this work, we investigate problem of determining each executed, did not execute, or have set (possibly-incomplete) observations. Using two distinct...

10.1145/2823363.2823368 article EN 2015-10-26

Debugging is difficult and costly, especially for failures that occur after deployment. In prior work, we developed a suite of instrumentation analysis tools, collectively titled the Crash Scene Investigation toolkit (CSI). These tools aid developers by providing additional information about failing program executions using latent data in post-failure memory dumps. While showed our technique effective reducing execution ambiguity, it lacked proper user interface developers. this paper,...

10.1145/2846650.2846651 article EN 2015-10-27

Debugging is difficult. When software fails in production, debugging even harder, as failure reports usually provide only an incomplete picture of the failing execution. We present a system that answers control-flow queries posed by developers formal languages, indicating whether query expresses control flow possible or impossible for given report. consider three separate approaches trade off precision, expressiveness constraints, and scalability. also introduce new subclass regular...

10.1145/3140587.3062368 article EN ACM SIGPLAN Notices 2017-06-14

Debugging is difficult and costly. Developers greatly value full traces complete, reproducible crash recordings, but these are impractical for deployed software. Fortunately, failing applications can leave behind a snapshot of their crashing state in the form core dump. Unfortunately, data alone often leaves substantial ambiguity program's execution. My thesis work aims both to improve quality information extracted from dumps enhance this readily-available information. prior showed that...

10.1145/2771783.2784772 article EN 2015-07-10

Prior work proposes inexpensive, tunable tracing of acyclic paths and callsite coverage to enhance post-failure memory dumps. To better understand this data, current investigates the benefit each piece traced data independently, their interplay, future low-cost collect, further analysis uses post-mortem data.

10.1145/2508075.2514881 article EN 2013-10-23

An oral exam is an assessment approach involving verbal explanations of key concepts or thought process to achieve a solution problem, sometimes accompanied by written typed work. As complement refreshing alternative standard assessments, exams are being implemented in CS courses variety formats. This Birds Feather (BoF) session will bring together the growing community educators who have previously used and those interested approaches share ideas discuss best practices. The discussion...

10.1145/3545947.3573347 article EN 2023-03-01

Program coverage customization selectively adds instrumentation to a compiled computer program so that limited amount of directly observed data can be used infer other information after run. A good plan reduce run-time overheads while still giving software developers the they need. Unfortunately, optimal planning is NP-hard, limiting either quality heuristic plans or sizes programs instrumented optimally. We exploit monotonicity property feasible instrumentations formulate this problem as an...

10.1287/ijoc.2021.0349 article EN INFORMS journal on computing 2023-10-09

This software is an instrumenting compiler for lightweight, customizable control-flow tracing. The has embedded within it calls to the mixed-integer programming package Gurobi implement cutting plane method as described in paper.

10.1287/ijoc.2021.0349.cd article EN INFORMS journal on computing 2023-10-09

The paper describes Vertx, a tool for validating software binary transformations. Vertx enables developers and system administrators to automatically check the correctness of transformations such as security hardening optimization. Transformation validation increases user trust in binary-transformation technology allows be safely used critical applications that have narrow margins error.

10.1145/3141235.3141237 article EN 2017-10-31

Preventing medication errors remains a priority in nursing education. The implementation of Barcode Medication Administration (BCMA) systems is one strategy that has been used to reduce errors. Practice using BCMA simulated settings may enhance the transfer these skills clinical practice setting. However, purchase educational products available for students can be cost prohibitive many programs. To overcome barrier cost, an interdisciplinary and innovative collaborative approach was create...

10.1097/01.nep.0000000000000972 article EN Nursing Education Perspectives 2022-04-14

This poster presents SynpleTest, a teaching tool created for introductory computer science courses. SynpleTest uses program synthesis to generate code based on test cases given by the user. Students must continue add until generates they desire. By doing this, our teaches student importance of producing thoughtful and diverse improve fundamental understanding testing programs. Preliminary experimentation in classrooms is underway initial results usability effectiveness are being analyzed.

10.1145/3545947.3576347 article EN 2022-03-01
Coming Soon ...