Tajmilur Rahman

dblp:374/6772 · DBLP profile ↗
← Back
4ranked-venue papers
3as first author
4since 2021 · last 2026
0000-0001-9629-8144ORCID · corroborated

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

Software engineering, systems software and programming languages · 3 · 2 first-author · 3 since 2021Human-computer interaction and ubiquitous computing · 1 · 1 first-author · 1 since 2021
YearPublicationVenuePosition
2026 Agile Story-Point Estimation: Is RAG a Better Way to Go?
abstract
The sprint-based iterative approach in the Agile software development method allows continuous feedback and adaptation. One of the crucial Agile software development activities is the sprint-planning session where developers estimate the effort required to complete tasks through a consensus-based estimation technique such as Planning Poker. In the Agile software development method, a common unit of measuring development effort is Story Point (SP) which is assigned to tasks to understand the complexity and development time needed to complete them. Despite the benefits of this process, it is an extremely time-consuming manual process. To mitigate this issue, in this study, we investigated if this manual process can be automated using Retrieval Augmented Generation (RAG) which comprises a “Retriever” and a “Generator”. We applied two embedding models - bge-large-en-v1.5, and Sentence-Transformers’ all-mpnet-base-v2 on 23 open-source software projects of varying sizes and examined four key aspects: 1) how retrieval hyper-parameters influence the performance, 2) whether estimation accuracy differs across different sizes of the projects, 3) whether embedding model choice affects accuracy, and 4) how the RAG-based approach compares to the existing baselines. Although the RAG-based approach outperformed the baseline models in several occasions, our results did not exhibit statistically significant differences in performance across the projects or across the embedding models. This highlights the need for further studies and refinement of the RAG, and model adaptation strategies for better accuracy in automatically estimating user stories.
Lamyea Maha, Tajmilur Rahman, Chanchal Kumar Roy
ICPC2
2024 Exploring Influence of Feature Toggles on Code Complexity
abstract
Feature toggles are conditional variables that control program execution flow. Toggles are used to control feature states and allow developers to introduce unfinished features to a limited user group while maintaining regular software functionality. Due to the lack of comprehensive best practices, guidelines, or a coding standard for using feature toggles, developers often use them in an inappropriate way leading to code quality issues. In this paper, we investigate four feature toggle usage patterns identified in two popular open-source software projects and assess their impact on code-complexity and size. We develop a tool ts-detector to identify the usage patterns automatically. Our investigation indicates that spread toggle and mixed toggle usage patterns occur most and least in the analyzed subject systems. We also found that feature toggle usage patterns collectively have a strong influence on the code complexity and size metrics. Our fine-grained analysis reveals that spread and nested toggle usage patterns have a significant correlation with selective size and complexity metrics. This paper not only offers a tool for software developers and researchers to identify the usage patterns and take corrective actions, but also, the study will motivate other researchers to further extend the experiments to understand and mitigate issues arising from misusing feature toggles.
Tajmilur Rahman, Imran Shalabi, Tushar Sharma 0001
EASE1
2024 Emulating Real World SE Practices in Computer Science Classrooms
abstract
This research-to-practice paper describes the analysis of the application of Project Based Learning (PjBL) using industry standard tools and practices (ISTP) in Computer Science / Software Engineering courses and investigates the students' engagement and learning effectiveness. PjBL is an instructional strategy that helps students to learn and acquire skills by solving real world problems. Industry standard tools (e.g., GitHub, Jenkins etc.) and industry standard practices (e.g., Agile method based practices) can be used to imitate the real-world software engineering activities in a PjBL classroom. Many scholars have studied the impact of PjBL on student performance, retention, motivation, and engagement. While existing studies make contributions, there exists a knowledge gap on the interplay between industry standard tools and practices (IST&P) and PjBL. Moreover, the effectiveness of IST&P in supporting students' performance, motivation and engagement in PjBL have not been well studied and are largely unknown. Consequently, instructors are hardly intentional about the integration of IST&P to PjBL, this makes it more difficult for students to learn how to use IST&P in PjBL leading them to graduate without being well prepared for the real-world software engineering industries. To fill this gap and contribute to knowledge, this paper investigates the effectiveness of IST&P in the learning effectiveness, and the engagement of the students in Software Engineering courses. We carried out an empirical study among 68 students in a mid-sized classroom of a small university in Northern Pennsylvania, United States. We collect data using the Reduced Instructional Materials Motivation (RIMMS) survey as one of our instruments to evaluate students' engagement, and the Topical Content Test (TCT) based on the revised Bloom's taxonomy to evaluate the learning effectiveness of the proposed PjBL process. Our results show that PjBL using IST&P has a significantly positive impact on students' engagement. It also significantly correlates with the learning effectiveness in project based SE courses. We also noticed that although this process leads students to perform highest in Analysis and Evaluation levels of Bloom's taxonomy, students with better performance in Application level performs better in the Create level.
Tajmilur Rahman, Sirapa Malla
FIE1
2024 Take Loads Off Your Developers: Automated User Story Generation using Large Language Model
abstract
Software Maintenance and Evolution (SME) is moving fast with the assistance of artificial intelligence (AI), especially Large Language Models (LLM). Researchers have already started automating various activities of the SME workflow. Un-derstanding the requirements for maintenance and development work i.e. Requirements Engineering (RE) is a crucial phase that kicks off the SME workflow through multiple discussions on a proposed scope of work documented in different forms. The RE phase ends with a list of user stories for each unit task and usually created and tracked on a project management tool such as GitHub, Jira, AzurDev, etc. In this research, we collaborated with Bell Mobility to develop a tool “Geneus” (Generate UserSory) using GPT-4-turbo to automatically create user stories from software requirements documents. Requirements documents are usually long and contain complex information. Since LLMs typically suffer from hallucination when the input is too complex, this paper proposes a new prompting strategy, “Refine and Thought” (RaT), to mitigate that issue and improve the performance of the LLM in prompts with large and noisy contexts. Along with manual evaluation using RUST (Readability, Understandability, Specificity, Technical-aspects) survey questionnaire, automatic evaluation with BERTScore, and AlignScore evaluation metrics are used to evaluate the results of the “Geneus” tool. Results show that our method with RaT performs consistently better in most of the cases of interactions compared to the single-shot baseline method. However, the BERTScore and AlignScore test results are not consistent. In the median case, Geneus performs significantly better in all three interactions (requirements specifi-cation, user story details, and test case specifications) according to AlignScorebut it shows slightly low performance in requirements specifications according to BERTScore. Distilling RE documents requires significant time & effort from the senior members of the team through multiple meetings with stakeholders. We believe automating this process will certainly reduce additional loads off the software engineers and increase the ultimate productivity allowing them to utilize their time on other prioritized tasks.
Tajmilur Rahman, Yuecai Zhu, Lamyea Maha, Chanchal Kumar Roy, Banani Roy, Kevin A. Schneider
ICSME1