hero image
Md Khorrom Khan, Ph.D. - Milwaukee School of Engineering. Milwaukee, WI, US

Md Khorrom Khan, Ph.D.

Assistant Professor | Milwaukee School of Engineering

Milwaukee, WI, UNITED STATES

Md Khorrom Khan has a demonstrated leadership skills and experience in the software industry as a software quality assurance engineer.

Education, Licensure and Certification (3)

Ph.D.: Computer Science and Engineering, University of North Texas 2023

M.S.: Applied Physics, Electronics and Communication Engineering, University of Chittagong, Bangladesh 2011

B.S.: Applied Physics, Electronics and Communication Engineering, University of Chittagong, Bangladesh 2010

Biography

Md Khorrom Khan holds a Ph.D. in Computer Science and Engineering (CSE) and has over 5 years of industry experience as a Software Quality Assurance Engineer. During his doctoral studies at the University of North Texas (UNT), Khan worked as a teaching assistant and actively engaged in teaching a range of graduate and undergraduate courses, including Computer Science I, Computer Science II, Software Engineering, and Usability Testing. In addition to his TA role, Khan also served as an instructor for multiple summer camps and provided mentorship in the NSF-funded Research Experience for Undergraduates (REU) program. His commitment and effective teaching approach were recognized with the prestigious “Outstanding Teaching Assistant Award” from the Department of CSE.

During Khan's tenure as a graduate student at UNT, he worked under the mentorship of Dr. Renee Bryce at the Research Innovation in Software Engineering (RISE) lab, focusing on innovative Android Graphical User Interface (GUI) testing techniques using reinforcement learning algorithms and novel Test Case Prioritization techniques for Android GUI test suites. The department of CSE at UNT recognized Khan's academic excellence with the “Outstanding Doctoral Student Award”.

Additionally, Khan has held leadership positions in several student organizations as a president, such as World Echoes, Bangladesh Student Association, and Association for Computing Machinery at UNT. His contributions as a student leader were acknowledged with the prestigious “UNT Golden Eagle Award”, affirming his exceptional leadership skills and significant impact on the academic and diverse community at UNT.

Areas of Expertise (9)

Reinforcement Learning

Software Testing

Computer Security

Database Management

Computer Foundations

Object-Oriented Programming

Data Structures and Algorithms

Software Engineering

Automated Test Generation and Prioritization

Accomplishments (5)

Outstanding Teaching Assistant Award (professional)

2023 Department of Computer Science, University of North Texas

UNT Golden Eagle Award (professional)

2023 Division of Student Affairs, University of North Texas

Outstanding Doctoral Student Award (professional)

2022 Department of Computer Science, University of North Texas

Graduate Student Officer of the Year Award (professional)

2020 Division of Student Affairs, University of North Texas

International Education Scholarship (professional)

2019 – 2020 and 2021-2022 International Affairs, University of North Texas

Affiliations (2)

  • The Institute of Electrical and Electronics Engineers (IEEE)
  • The Association for Computing Machinery (ACM)

Social

Event and Speaking Appearances (3)

Post Prioritization Techniques to Improve Code Coverage for SARSA Generated Test Cases

IEEE 13th Annual Computing and Communication Workshop and Conference (CCWC)  Las Vegas, NV

Android GUI Test Generation with SARSA

IEEE 12th Annual Computing and Communication Workshop and Conference (CCWC)  Las Vegas, NV

Reinforcement learning for android gui testing

A-TEST 2018: Proceedings of the 9th ACM SIGSOFT International Workshop on Automating TEST Case Design, Selection, and Evaluation  Lake Buena Vista, FL

Selected Publications (9)

Context Data Compact Prediction Tree (CD-CPT): Transforming User Experience Through Predictive Analysis.

9th International Conference on Internet of Things, Big Data and Security (IoTBDS 2024)

Pooja Goyal, Md Khorrom Khan, Natnael Teshome, Brendan Geary, Renée C Bryce

2024 Use of IoT (Internet of Things) devices have significantly increased over the last decade, specifically smartphones as compared to desktops, and laptops have become an integral part of our everyday lives. Smartphone applications operate in dynamic environments and generate huge and vast amount of context events such as screen orientation, location, battery life, and network connectivity throughout the day. Such context events may affect usage of the smartphone and smartphone applications by the user and the behaviour of these applications, Sparsity and complexity of these events make it difficult to identify patterns and trends in the data using traditional data mining techniques. Hence, predictive analysis of these events and finding patterns in context event data can have drastic impact on the application usage and enhance user experience. Prediction trees can be used to predict future events based on the context of past events, This work proposes a modified method of Compact Prediction Tree (CPT) called Context Data Compact Prediction Tree (CD-CPT) to predict real-world context data for multiple users. The experiments conducted used Transition Directed Acyclic Graph (TDAG) and All-k Order Markov (AKOM) algorithms to generate short-term predictions based on current context events and compare with baseline models such as Prediction by Pattern Mining (PPM), Dependency Graph (DG), CPT, and CPT+. The experimental results indicate that AKOM and TDAG outperform other algorithms, achieving a 50.4% weighted F-1 score for the highest supported context event. CD-CPT, without referencing the test file, still achieves a 14.27% weighted F-1 score for the same event, showing potential for improved accuracy in predicting context data compared to other algorithm.

view more

Post prioritization techniques to improve code coverage for sarsa generated test cases

2023 IEEE 13th Annual Computing and Communication Workshop and Conference (CCWC)

Md Khorrom Khan; Ryan Michaels; Dylan Williams; Benjamin Dinal; Beril Gurkas; Austin Luloh; Renee Bryce

2023 Reinforcement learning techniques are gaining popularity for automated test suite generation. SARSA(State-Action-Reward-State-Action) is one such reinforcement learning approach that has demonstrated success in generating test cases with high code coverage in the Android domain. This paper improves upon prior SARSA test generation work by applying post prioritization strategies. That is, while SARSA produced test suites with good code coverage, we may reorder test cases using different prioritization criteria to improve rates of code coverage. The prioritization criteria that we examine include event pair coverage, the number of states covered, and the number of activities covered. On average, the post-prioritization techniques resulted in 2.58% to 8.14% increases of Average Percentage of Code Coverage (APSC) and 2.98% to 7.32% increases of Average Percentage Branch Coverage (APBC) over default and random orderings.

view more

Smartphone context event sequence prediction with poermh and tke-rules algorithms

2023 IEEE 13th Annual Computing and Communication Workshop and Conference (CCWC)

Pooja Goyal, Md Khorrom Khan, Christian Steil, Sarah M Martel, Renee Bryce

2023 Smartphone applications run in complex environments and are sensitive to context events, i.e., changes to screen orientation, location, battery, etc. Context events and sequences make reliability, accuracy, and testing of mobile applications costly and more application development susceptible to errors. Modern smartphones have continued to increase the number of context event possibilities compared to earlier versions. Multiple context events may occur within quick intervals and complicate an application's behavior. While apps are continuously released and updated, future devices will likely have more features with more context events that will lead to even greater challenges. In this work, we implemented a model for prediction of common context event sequences by using two sequence rule mining algorithms: POERMH: Partially-Ordered Episode Rule Mining with Head Support, and TKE-Rules: Top-K Episode mining, along with a sequence prediction algorithm to increase smartphone application testing efficiency. Indeed, testing frequently encountered scenarios often relates to user perceived reliability of an app. The experiment was significantly successful at predicting next sequence in sequence of events for individual events as compared to overall performance using both POERMH and TKE-Rules in terms of Recall, Precision and F-1 score.

view more

Events-Based Test Suite Reduction for Mobile App Test Suites Generated by Reinforcement Learning

2023 Congress in Computer Science, Computer Engineering, & Applied Computing (CSCE

Abdullah Alenzi, Waleed Alhumud, Md Khorrom Khan, Ryan Michaels, Renée Bryce

2023 Reinforcement learning is promising for automated test generation. However, a current shortcoming of these algorithms is that the exploration process may result in extra test cases that have duplicate coverage of events within a test suite. Fine tuning parameters of reinforcement algorithms may help, but this comes with trade-offs and requires time consuming and careful consideration of the characteristics of the application under test and its environment. This work takes a different approach. Instead of exploring parameters of reinforcement algorithms, we look at reducing test suites that have already been generated. Specifically, we use test suites that were generated with the SARSA algorithm and then apply a greedy test suite reduction algorithm that uses an event coverage criterion. Results show that test suite reduction results in 10.74% to 50% reduction in test suite sizes while maintaining the same code coverage of the original test suites. The results motivate that redundant event coverage should be considered during and/or after test generation.

view more

Android GUI Test Generation with SARSA

2022 IEEE 12th Annual Computing and Communication Workshop and Conference (CCWC)

2022 Android applications are often challenging to test because of large event spaces with an exponential number of event sequences. Several studies employ reinforcement learning to generate test suites in an effort to optimize code coverage and fault-finding effectiveness under limited testing budgets. In this paper, we generate test cases using the SARSA rein-forcement learning algorithm for seven Android applications, each with a two-hour testing window.

view more

Discovery of Real World Context Event Patterns for Smartphone Devices Using Conditional Random Fields

ITNG 2021 18th International Conference on Information Technology-New Generations

2021 Mobile applications are Event Driven Systems that react to user events and context events (e.g. changes in network connectivity, battery level, etc.) The large number of context events complicate the testing process. Context events may modify several context variables (e.g. screen orientation, connectivity status, etc.) that affect the behavior of an application.

view more

Test Suite Prioritization with Element and Event Sequences for Android Applications

2021 IEEE 11th Annual Computing and Communication Workshop and Conference (CCWC)

2021 Several empirical studies show that test suite prioritization guided by combinatorial-based criteria improves the rate of fault detection for a variety of event-driven systems. This work examines test suite prioritization using novel sequences of elements and events for four Android applications. The results show that the prioritization criteria that use element and event sequences cover the test suite's elements, events, and code faster than random orderings.

view more

Mobile Test Suite Generation via Combinatorial Sequences

ITNG 2021 18th International Conference on Information Technology-New Generations

2021 Mobile applications are event driven systems that are often driven primarily by user interactions through a GUI. The large event space for mobile applications poses challenges for testing. This work considers the architecture of modern mobile applications to generate test cases that systematically incorporate activities, elements, and events in different sequences for testing.

view more

Reinforcement learning for Android GUI testing

A-TEST 2018: Proceedings of the 9th ACM SIGSOFT International Workshop on Automating TEST Case Design, Selection, and Evaluation

2018 This paper presents a reinforcement learning approach to automated GUI testing of Android apps. We use a test generation algorithm based on Q-learning to systematically select events and explore the GUI of an application under test without requiring a preexisting abstract model. We empirically evaluate the algorithm on eight Android applications and find that the proposed approach generates test suites that achieve between 3.31% to 18.83% better block-level code coverage than random test generation.

view more