Theme
Color
Phd Candidate
Computer Science and Engineering
Louisiana State University
Baton Rouge, LA
I am pursuing a Ph.D. in Computer Science with Dr. Anas Mahmoud as my advisor. My dissertation is on leveraging Large Language Models (LLMs) to address the needs of mobile app users and developers. I apply natural language processing (NLP), qualitative analysis, and statistical methods to gain insights from user feedback. I also investigate mobile app store policies on app testing and feature requirements and examine their impact on app development workflows.
On June 30, 2022, Apple introduced an App Store policy requiring apps that support account creation to also offer an in-app account deletion option. The policy is intended to grant end-users control over their personal data in iOS apps. After three years of enforcement, the influence of such a policy on the state of practice is still yet to be explored. Has this policy achieved the intended goals?
In this study, we investigate App Store apps' compliance to the policy by actually deleting an account.
We sampled 50 apps (five from 10 domains). For each app, we logged every screen, click, and notification involved in requesting account deletion over eight weeks of manual testing. We also interviewed 14 iOS developers and conducted thematic analysis of interview transcripts.
We found persistent use of dark design patterns to dissuade users from deleting their accounts. Patterns include confirm-shaming, nudging, obstructive discovery, hidden information, forced action, and disparate treatment. Interviews suggested that many developers treat the policy as a compliance checkbox rather than a real user need with assumptions that users care about account deletion as little as they do.
In recent years, Flutter has emerged as a popular framework for building cross-platform mobile applications. However, ensuring the usability and accessibility of Flutter app interfaces remains a challenge. Developers often struggle to identify and address usability and accessibility issues which can lead to suboptimal user experiences.
Built FUEL, a tool powered by GPT-4o to evaluate the usability and accessibility of Flutter app interfaces. FUEL takes a Flutter app's source code as input and generates a detailed report highlighting usability and accessibility issues, along with actionable code fixes.
We evaluated FUEL on a dataset of 15 UI screens from open source Flutter apps. We recruited 15 developers to assess the usability and accessibility of these screens, and compared their evaluations with FUEL's assessments.
Generic prompting can effectively identify usability and accessibility issues, suggest code-level fixes, and point out potential app store policy violations. The performance of GPT-4o under more structured prompting conditions biased the model's findings toward checklist-compliant surface concerns, while overlooking context-sensitive and framework-related issues. Our exit survey revealed FUEL can save developer time in improving Flutter UIs and address issues beyond functional errors in Flutter widgets.
Popular apps receive thousands of reviews daily. Users cannot read them all to make informed decisions, and existing star-rating systems fail to capture specific user needs. For example, stock trading app users expect seamless transaction executions, transparent pricing, no hidden fees, and strategy resources for maximizing their returns on investments (ROI). Users navigating current app review systems are forced to navigate a diverse array of feedback, including bug reports and feature requests, to determine if the app matches their user goals.
We propose an LLM-based app review summarization technique to extract and present fixed length summaries for apps. We apply the Chain of Density prompting (originally designed for news articles) with a focus on summarizing users' experiences with mobile app features/services. Unlike news articles, app reviews represent voices of thousands of users and discuss various topics related to the app. Given a list of app reviews, we instruct an LLM to iteratively identify review entities and fuse them into a fixed-length summary (120 words) that can fit in a mobile screen.
Summarized a dataset of 37,245 reviews collected from eight popular apps across four application domains: Ride-hailing, Online Dating, Investing, and Mental Health. For fair representation of different ratings in the reviews, we employed stratified sampling based on star ratings (1-5 stars) and used Hybrid TF-IDF ranking to sample 2.8k high-information reviews. We used GPT-4 to generate abstractive summaries of the sampled reviews using multiple prompts.
The modified version of CoD prompting achieved an average recall of 81% for key review entities, significantly outperforming vanilla prompts (64%) and extractive summarization (60%) baselines. Our user study with 48 participants demonstrated that the generated summaries maintained high readability even as their semantic density increased. Comparative analysis revealed that while GPT-4 produced the most balanced summaries in terms of coherence and density, Gemini-1.5-Flash and Llama-3.1 offered lower-cost alternatives with varying trade-offs in summary length and sentiment retention.
Put yourself in the position of an indie developer. You are aiming to solve a niche problem, have spent months in building a viable product, and want to start marketing your product to real customers. Google's Play Store policy now requires you to find 12 (was 20 before) testers willing to test (interact) your app everyday for two weeks. As per the policy, you can reach out to your friends, family, colleagues, or social media forums to find those testers. Now, indie developers need to spend (extra) time hunting down testers and ensuring they all pass the test before releasing their apps.
We conducted a mixed-method study to investigate how developers have perceived the policy and how they have adapted their developer workflows to comply with the policy. First, we performed qualitative thematic analysis of Reddit comments about the policy. Second, we ran a 15-min survey with developers who faced the policy in releasing their own apps on Play Store.
We analyzed 897 comments from 564 users posted on 38 subreddit threads. Then, we surveyed 14 indie developers, asking them two questions about the policy: a) strategies to comply with the policy, b) assessment of the policy requirements.
We found developers expressing frustration on several Reddit posts and shared their logistical barriers to adopting the policy. Several job posts appeared on online Gig platforms like Fiverr asking/calling for testers. Redditors reported concerns over such growing a market (e.g., 'potential scams', 'black market', 'sweatshops'). During interviews, some developers expressed that the policy discriminated them in favor of corporate developers.
Finding an app that meets specific user criteria is difficult because the current 'one-size-fits-all' 5-star rating system in app stores fails to capture domain-specific needs. This forces users to spend significant time scrolling through thousands of diverse, unstructured reviews to locate relevant information.
We developed an automated, unsupervised pipeline that uses a large language model (LLM) to generate 'Rate Features' from long, unstructured app reviews. 'Rate features' are neutral, domain-specific, concise summaries (2-3 words) of the reviews. We first filter informative reviews using Hybrid TF.IDF extractive summarization method. Then, we use GPT-3.5-turbo to generate 'Rate Features' from the filtered reviews.
Generated 'Rate Features' from 167k reviews of 90 popular apps across three domains: Ride-hailing, Mental Health, and Investing.
Our qualitative analysis revealed that users in different application domain express desires for different application features. The model identified user goals described in the reviews as the best candidates for Rate features. Other prompting approaches, such as mining non-functional requirements for Rate Features, produced user concerns that were highly abstract, difficult to interpret, and frequently repeated across multiple domains. Top three frequently appearing 'Rate Features' recalled 95-100% of the user goals in the analyzed reviews.
Ph.D. Candidate in Computer Science; GPA: 3.91
Dissertation title: “Leveraging Large Language Models to Enhance the Utility of Mobile App Store Rating Systems”
Baton Rouge, LA, USA
Bachelor in Computer Engineering; GPA: 3.75
Lalitpur, Nepal
Programming Lab Assistant (3 hr, 30 students)
Supervised first-year undergraduate computer science students in their lab assignments for the ''Introduction to the Java programming language'' course, helping students work through programming and debugging.
Graduate Teaching Assistant (3 hr, 100+ students)
Assisted with grading midterm and final exams for ''Software Systems Design'' and ''Programming Language.'' Designed a full project-assignment module covering product strategy documentation, Figma-based UI/UX design, and code/testing evaluation (GitHub activity, commit history, automated tests); coordinated student project groups, proctored exams, and led a session on Git/GitHub workflows.
Python, Java, Kotlin, JavaScript (JS), Dart
Batch Tasks, Function/tool calling, Embeddings & Vector Search
SpringBoot, Next.js, React (library), Flutter (SDK), Figma, NLTK, Git
Firebase (Auth, Functions, FireStore, NextJS integration), Google Cloud Run, AWS
PostgreSQL, MongoDB, Elasticsearch, HBase