Profile Image

Essa Imhmed, Ph.D.

Assistant Professor, Computer Science

SEPO Lab — Projects


My current research focuses on software engineering and computer science education, with an emphasis on integrating real-world, industry-aligned practices into the classroom. In particular, I study how automated and AI-driven tools—such as CI-based code assessment, static analysis, NLP techniques, and large language models—can support formative feedback, improve code quality, and enhance learning outcomes for novice programmers.

I am also interested in memory architecture design and the development of innovative data management techniques aimed at improving application performance.


From Submission to Feedback: Leveraging LLMs and CI Tooling for Automated Code Assessment

CodeInspector Architecture

Timely, formative feedback is essential in programming education. However, manual grading of code submissions is time-consuming and often delays student learning feedback.

This project investigates modern automated code assessment techniques and proposes CodeInspector, a CI-driven, semi-automated system that integrates industry-standard tools and LLM-based feedback generation. The goal is to provide immediate, high-quality feedback on student submissions while supporting iterative learning and continuous improvement.

Status: Funded by the ENMU FRID Grant Program (2023–2025)
Amount: $8,471
Role: Principal Investigator

Students


AI-Driven Static Analysis and Feedback Generation

Novice programmers often struggle with interpreting runtime errors and identifying logical or stylistic issues in their code. This project explores an AI-driven approach to static code analysis using NLP and machine learning techniques to automatically detect errors and generate meaningful feedback.

Status: Funded by the ENMU FRID Grant Program (2025–2026)
Amount: $2,046
Role: Principal Investigator

Students


Local Memory Store for Embedded Systems

LMStore Architecture

Local Memory Store (LMStore) is a novel scratchpad memory design that combines hardware-supported management with explicit program-level control.

Instead of a flat address space, LMStore uses structured tuple-based references (2-tuples and 3-tuples) to manage memory more efficiently. This approach improves memory utilization, reduces latency, and lowers power consumption in embedded systems.

Status: Completed

Students