This Is AuburnElectronic Theses and Dissertations

An Interdisciplinary Study: A Framework Supporting the Automated Phonetic Transcription Grading Tool System, from Business Requirement to Software Maintenance




Li, Sicheng

Type of Degree

PhD Dissertation


Computer Science and Software Engineering

Restriction Status


Restriction Type

Auburn University Users

Date Available



Interactive learning applications enhance the motivation for students to interact and learn with the applications. In this research the primary goals are as follows: 1) to propose and implement algorithms to calculate the similarity between pairs of phonetic transcriptions of audios supporting transcription pedagogy, embedded in online learning and management systems, and 2) to evaluate the code to reduce code smells and to understand student knowledge of code smells and refactoring from CSSE students. This research has also resulted in the design and implementation of full stack web-based examination systems that enhance the performance of students and reduce the efforts for both students and instructors. Two systems were designed and implemented to support instructors, students, and clinicians use of phonetic transcription: The Automated Phonetic Transcription Comparison Tool (APTct), and the Automated Phonetic Transcription Grading Tool (APTgt). The APTct and APTgt LMS have three important contributions: a) the three embedded digital IPA keyboards (basic, advanced, and full IPA), and b) an edit distance algorithm extended by phonetic alignment guidelines (see \cite{Bailey21}) via Dynamic Programming implementation, and c) all productionalized in interactive online web learning management systems that allow individualized scoring and visual course level feedback. The core of the APTgt and AGTct is a modified edit distance calculation algorithm. Hundreds of use cases testing demonstrated the correctness and the efficiency of the algorithm, agreed well with expert’s manual verification under the same phonetic transcription guidelines. To ensure system quality, we performed refactoring. To measure the effectiveness of the code smell detection tools, we refactored three classes based on the suggestions from SonarLint. Generally, the recommendations are helpful to reduce code smells and lines of code. For example, after refactoring, we reduced the Cognitive Complexity of the code by 20\% in Distance classes and 42\% in Calculation classes. The conclusion is that using refactoring tools in the development process can support developers in detecting potential code smells. Furthermore, performing refactoring based on these suggestions can reduce the lines of code, and as a result, we can enhance the quality of code and increase the maintainability of the system. Refactoring can improve the quality of the code, yet not regularly included in course instruction, and this research aimed to determine if this was an area of interest to our students. Based on the findings, students are interested in more code smells/anti-patterns/refactoring courses.