Suzanne J. Kozaitis

dblp:210/1351 · DBLP profile ↗
← Back
3ranked-venue papers
0as first author
1since 2021 · last 2025
0000-0002-0535-708XORCID · reported

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 2 · 1 since 2021Artificial intelligence and machine learning · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
1 paper
Program analysis · 77% Software maintenance and evolution · 23%

Topics — the 2 heaviest of 2, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Program analysis › static analysis
program slicing
0.912025
Program Slicing: A Brief Retrospective · IEEE Trans. Software Eng. 2025
Software maintenance and evolution
program comprehension
0.312025
Program Slicing: A Brief Retrospective · IEEE Trans. Software Eng. 2025
YearPublicationVenuePosition
2025 Program Slicing: A Brief Retrospective
abstract
Program slicing is a software analysis technique conceived of and developed in the late 70s and early 80s by the late Mark Weiser to remove code from a program that does not affect a given computation. A program slice is any selection of program statements that maintains the same behavior as the original program at a specific point while considering a particular set of variables, known as the slicing criterion. This technique permits a software engineer to focus on an immediate computation and safely ignore statements and variables that do not contribute to that focus. We will briefly review the basics of program slicing and some of the myriad of related techniques and applications that developed over the years to tackle the problems that software engineers confront while sitting at their workstations.
Keith B. Gallagher, Suzanne J. Kozaitis
IEEE Trans. Software Eng.2
2019 Teaching Software Maintenance
abstract
This paper outlines the content and techniques used to teach software maintenance to American university sophomores (second year students) who have had 3 semesters of programming. The course uses an introductory text that is geared to the maturity of the audience. By turning the project of the introductory course into a large software evolution exercise, the major topics of software engineering can still be easily introduced and examined. We present the course organization, evaluation rubrics, and student and instructor experiences from six offerings of the course to demonstrate that treating the project in an introductory course as a software evolution exercise on a large, mature system is a viable alternative to the usual (greenfield) approaches. As an added benefit, meaningful contributions to the open source community can be made.
Keith B. Gallagher, Mark Fioravanti, Suzanne J. Kozaitis
ICSME3
2017 Evaluating the Use of Sound in Static Program Comprehension
abstract
Comprehension of computer programs is daunting, due in part to clutter in the software developer's visual environment and the need for frequent visual context changes. Previous research has shown that nonspeech sound can be useful in understanding the runtime behavior of a program. We explore the viability and advantages of using nonspeech sound in an ecological framework to help understand the static structure of software. We describe a novel concept for auditory display of program elements in which sounds indicate characteristics and relationships among a Java program's classes, interfaces, and methods. An empirical study employing this concept was used to evaluate 24 sighted software professionals and students performing maintenance-oriented tasks using a 2×2 crossover. Viability is strong for differentiation and characterization of software entities, less so for identification. The results suggest that sonification can be advantageous under certain conditions, though they do not indicate the overall advantage of using sound in terms of task duration at a 5% level of significance. The results uncover other findings such as differences in comprehension strategy based on the available tool environment. The participants reported enthusiasm for the idea of software sonification, mitigated by lack of familiarity with the concept and the brittleness of the tool. Limitations of the present research include restriction to particular types of comprehension tasks, a single sound mapping, a single programming language, and limited training time, but the use of sound in program comprehension shows sufficient promise for continued research.
Lewis Berman, Keith B. Gallagher, Suzanne J. Kozaitis
ACM Trans. Appl. Percept.3