Tanmay Bhowmik

dblp:68/8855 · DBLP profile ↗
← Back
23ranked-venue papers
5as first author
9since 2021 · last 2025
0000-0002-0456-161XORCID · corroborated

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

Software engineering, systems software and programming languages · 21 · 4 first-author · 9 since 2021Artificial intelligence and machine learning · 3 · 1 first-authorApplied, interdisciplinary, general and emerging computing · 2 · 1 since 2021
YearPublicationVenuePosition
2025 Toward a Resilience-Oriented Understanding of Unit Test Suites and Refactoring in Software Evolution
abstract
Unit testing is widely advocated for improving software reliability and maintainability, yet little is known about how developers experience its interaction with refactoring and technical debt. In my early-stage doctoral research, I conducted a preliminary study with 109 professional developers to investigate how unit test suites support—or hinder—refactoring efforts. The findings reveal developer expectations that unit test suites should enable safe, productive change, but also frustrations with fragile tests that break during refactoring. This paper outlines the insights gained, lessons learned about conducting empirical software engineering research, and my evolving proposal: to define and empirically ground the concept of “unit test suite resilience to refactoring.” I present the open questions I find personally meaningful, and describe how I intend to explore frameworks and practices that increase the adaptability of unit test suites.
Daniel Knight, Tanmay Bhowmik
ICSME2
2025 Exploiting Vision-Language Models in GUI Reuse
abstract
Graphical user interface (GUI) prototyping helps to clarify requirements and keep stakeholders engaged in software development. While contemporary approaches retrieve GUIs relevant to a user’s query, little support exists for the actual reuse, i.e., for using an existing GUI to create a new one. To shorten the gap, we investigate GUI-centered reuse via one of the latest artificial intelligence (AI) techniques—vision-language models (VLMs). We report an empirical study involving 73 university students working on ten GUI reuse tasks. Each task is associated with different reuse directions recommended by VLMs and by a natural language (NL) method. In addition, a focused GUI element is provided to offer a starting point for making the actual changes. Our results show that VLMs significantly outperform the NL method in making reuse recommendations, but surprisingly, the focused GUI elements are not consistently modified during reuse. With the assessments made by four experienced designers, we further offer insights into the creativity of human-reuse and AI-reuse results.
Victoria Niu, Walaa Alshammari, Naga Mamata Iluru, Padmaja Vaishnavi Teeleti, Nan Niu, Tanmay Bhowmik, Jianzhang Zhang
ICSR6
2024 Explaining poor performance of text-based machine learning models for vulnerability detection
Kollin Napier, Tanmay Bhowmik, Zhiqian Chen
Empir. Softw. Eng.2
2023 A Preliminary Critical Review of the Impact of Three Popular Development Practices on Source Code Maintainability
abstract
The maintainability of source code is a vital quality of resilient software systems and speaks to the ability of software engineering teams to modify source code quickly. For organizations seeking to build resilient software systems, it is crucial to consider source code maintainability because rapidly changing source code in response to new adversities is critical to the long-term resilience of software systems. In this study, we review relevant literature on three popular software development practices that aim to improve the maintainability of source code: test-driven development, refactoring, and pair programming. Our review provides insights into the strengths and weaknesses of these practices and highlights their potential role in enhancing the resilience of software systems.
Daniel Knight, Stephen Torri, Tanmay Bhowmik
COMPSAC3
2023 Prompting Creative Requirements via Traceable and Adversarial Examples in Deep Learning
abstract
Creativity focuses on the generation of novel and useful ideas. In this paper, we propose an approach to automatically generating creative requirements candidates via the adversarial examples resulted from applying small changes (perturbations) to the original requirements descriptions. We present an architecture where the perturbator and the classifier positively influence each other. Meanwhile, we ensure that each adversarial example is uniquely traceable to an existing feature of the software, instrumenting explainability. Our experimental evaluation of six datasets shows that around 20% adversarial shift rate is achievable. In addition, a human subject study demonstrates our results are more clear, novel, and useful than the requirements candidates outputted from a state-of-the-art machine learning method. To connect the creative requirements closer with software development, we collaborate with a software development team and show how our results can support behavior-driven development for a web app built by the team.
Hemanth Gudaparthi, Nan Niu, Boyang Wang 0007, Tanmay Bhowmik, Hui Liu 0003, Jianzhang Zhang, Juha Savolainen, Glen Horton, Sean Crowe, Thomas Scherz, Lisa Haitz
RE4
2023 An empirical study of text-based machine learning models for vulnerability detection
Kollin Napier, Tanmay Bhowmik, Shaowei Wang 0002
Empir. Softw. Eng.2
2022 Testing software's changing features with environment-driven abstraction identification
Zedong Peng, Prachi Rathod, Nan Niu, Tanmay Bhowmik, Hui Liu 0003, Lin Shi 0006, Zhi Jin 0001
Requir. Eng.4
2021 Information on Potential Vulnerabilities for New Requirements: Does It Help Writing Secure Code?
abstract
Recent research advocates a proactive approach toward addressing software vulnerability, i.e., identification and resolution of vulnerability before exploitation. To that end, a recent research has presented a framework to provide developers with information related to vulnerabilities that are identified with the existing implementation of functionally similar requirements. The idea is that a developer implementing a new requirement may learn from such vulnerability information and write her code in a secure manner. Given the various technologies and platforms a developer may use to implement the current system, to what extent such information would actually help in writing secure code is an open question. In this paper, we design a human subject study to explore how information related to potential vulnerabilities influence developers on secure implementation of new requirements. We further present a pilot run of our study with 50 participants. The results suggest that developers with limited professional experience could be a major beneficiary of the information on potential vulnerabilities.
Md Rayhan Amin, Tanmay Bhowmik
RE2
2021 Environment-Driven Abstraction Identification for Requirements-Based Testing
abstract
Abstractions are significant domain terms that have assisted in requirements elicitation and modeling. To extend the assistance towards requirements validation, we present in this paper an automated approach to identifying the abstractions for supporting requirements-based testing. We select relevant Wikipedia pages to serve as a domain corpus that is independent from any specific software system. We further define five novel patterns based on part-of-speech tagging and dependency parsing, and frame our candidate abstractions in the form ofpairs for better testability. We evaluate our approach with six software systems in two application domains: Electronic health records and Web conferencing. The results show that our abstractions are more accurate than those generated by two of the state-of-the-art techniques. Initial findings also indicate our abstractions’ capabilities of revealing bugs and matching the environmental assumptions created manually.
Zedong Peng, Prachi Rathod, Nan Niu, Tanmay Bhowmik, Hui Liu 0003, Lin Shi 0006, Zhi Jin 0001
RE4
2020 SecureChange: An Automated Framework to Guide Programmers in Fixing Vulnerability
Sayem Mohammad Imtiaz, Kazi Zakia Sultana, Tanmay Bhowmik
SEKE3
2020 Capturing creative requirements via requirements reuse: A machine learning-based approach
Anh Quoc Do, Tanmay Bhowmik, Gary L. Bradshaw
J. Syst. Softw.2
2019 Automated Support to Capture Creative Requirements via Requirements Reuse
Anh Quoc Do, Surendra Raju Chekuri, Tanmay Bhowmik
ICSR3
2019 The Role of Environment Assertions in Requirements-Based Testing
abstract
Software developers dedicate a major portion of their development effort towards testing and quality assurance (QA) activities, especially during and around the implementation phase. Nevertheless, we continue to see an alarmingly increasing trend in the cost and consequences of software failure. In an attempt to mitigate such loss and address software issues at a much earlier stage, researchers have recently emphasized on the successful coordination of requirements engineering and testing. In addition, the notion of requirements-based testing (RBT) has also emerged with a focus on checking the correctness, completeness, unambiguity, and logical consistency of requirements. One seminal work points out that requirements reside in the environment which is comprised of certain problem domain phenomena. Environmental assertions, which connect some of these phenomena in the indicative mood, play a key role in deciding whether a software solution is acceptable. Despite that requirements are located in the environment, little is known about if and how the environment assertions would impact testing and QA activities. In order to address this gap, we present a detailed empirical study, with 114 developers, on the prominence of environment assertions in RBT. Although the results suggest that paying attention to correct, complete, and useful environment assertions has a positive impact on RBT, developers often face difficulty in formulating good assertions from scratch. Our work, to that end, illuminates the potential usefulness of automated support in generating environment assertions.
Tanmay Bhowmik, Surendra Raju Chekuri, Anh Quoc Do, Wentao Wang 0003, Nan Niu
RE1
2019 A study examining relationships between micro patterns and security vulnerabilities
Kazi Zakia Sultana, Byron J. Williams, Tanmay Bhowmik
Softw. Qual. J.3
2018 Towards data-driven vulnerability prediction for requirements
abstract
Due to the abundance of security breaches we continue to see, the software development community is recently paying attention to a more proactive approach towards security. This includes predicting vulnerability before exploitation employing static code analysis and machine learning techniques. Such mechanisms, however, are designed to detect post-implementation vulnerabilities. As the root of a vulnerability can often be traced back to the requirement specification, and vulnerability discovered later in the development life cycle is more expensive to fix, we need additional preventive mechanisms capable of predicting vulnerability at a much earlier stage. In this paper, we propose a novel framework providing an automated support to predict vulnerabilities for a requirement as early as during requirement engineering. We further present a preliminary demonstration of our framework and the promising results we observe clearly indicate the value of this new research idea.
Sayem Mohammad Imtiaz, Tanmay Bhowmik
ESEC/SIGSOFT FSE2
2016 Optimal Group Size for Software Change Tasks: A Social Information Foraging Perspective
abstract
Group size is a key factor in collaborative software development and many other cybernetic applications where task assignments are important. While methods exist to estimate its value for proprietary projects, little is known about how group size affects distributed and decentralized cybernetic applications and in particular open source software (OSS) development. This paper presents a novel approach in which we frame developers' collective resolution of OSS change tasks as a social information foraging problem. This new perspective enables us to predict the optimal group size and quantify group size's effect on individual performance. We test the theory with data mined from two projects: 1) Firefox and 2) Mylyn. This paper not only uncovers the mismatch of optimal and actual group sizes, but also reveals the association of optimality with improved productivity. In addition, the social-level productivity gain is observed as project evolves. We show this paper's impact by extending the frontiers of knowledge in two areas: 1) social coding and 2) recommendation systems.
Tanmay Bhowmik, Nan Niu, Wentao Wang 0003, Jing-Ru C. Cheng, Ling Li 0008, Xiongfei Cao
IEEE Trans. Cybern.1
2015 Leveraging topic modeling and part-of-speech tagging to support combinational creativity in requirements engineering
Tanmay Bhowmik, Nan Niu, Juha Savolainen, Anas Mahmoud 0001
Requir. Eng.1
2014 Stakeholders' social interaction in requirements engineering of open source software
abstract
Requirements engineering (RE) involves human-centric activities that require interaction among different stakeholders. Traditionally, RE has been considered as a centralized, collocated, and phase-specific process. However, in open-source software (OSS) development environment, the core RE activities are iterative and dynamic and follow a rather decentralized software engineering paradigm. This crosscutting characteristic of open-source RE can be conceptualized using the “Twin Peaks” model that weaves RE together with software architecture. Although many weaving mechanisms have been proposed in recent years, lack of theoretical underpinning limits a mechanism's applicability and usefulness in different scenarios. In this research proposal, we hypothesize stakeholders' social interaction as an ecologically valid weaving mechanism of the “Twin Peaks” in open-source RE. We further outline a concrete research plan to examine the generalizability of this weaving mechanism for three activities: requirements identification, requirements implementation, and creativity in RE. Carrying out this research plan will enable us to gain valuable insights to generate guidelines for enhancing software engineering practice in relevant areas.
Tanmay Bhowmik
RE1
2014 Automated support for combinational creativity in requirements engineering
abstract
Requirements engineering (RE), framed as a creative problem solving process, plays a key role in innovating more useful and novel requirements and improving a software system's sustainability. Existing approaches, such as creativity workshops and feature mining from web services, facilitate creativity by exploring a search space of partial and complete possibilities of requirements. To further advance the literature, we support creativity from a combinational perspective, i.e., making unfamiliar connections between familiar possibilities of requirements. In particular, we propose a novel framework that extracts familiar ideas from the requirements and stakeholders' comments using topic modeling and applies part-of-speech tagging to obtain unfamiliar idea combinations. We apply our framework on two large open source software systems and further report a human subject evaluation. The results show that our framework complements existing approaches by generating original and relevant requirements in an automated manner.
Tanmay Bhowmik, Nan Niu, Anas Mahmoud 0001, Juha Savolainen
RE1
2014 Traceability-enabled refactoring for managing just-in-time requirements
abstract
Just-in-time requirements management, characterized by lightweight representation and continuous refinement of requirements, fits many iterative and incremental development projects. Being lightweight and flexible, however, can cause wasteful and procrastinated implementation, leaving certain stakeholder goals not satisfied. This paper proposes traceability-enabled refactoring aimed at fulfilling more requirements fully. We make a novel use of requirements traceability to accurately locate where the software should be refactored, and develop a new scheme to precisely determine what refactorings should be applied to the identified places. Our approach is evaluated through an industrial study. The results show that our approach recommends refactorings more appropriately than a contemporary recommender.
Nan Niu, Tanmay Bhowmik, Hui Liu 0003, Zhendong Niu
RE2
2014 Visual requirements analytics: a framework and case study
Sandeep Reddivari, Shirin Rad, Tanmay Bhowmik, Nisreen Cain, Nan Niu
Requir. Eng.3
2012 A Framework for Examining Topical Locality in Object-Oriented Software
abstract
The software entities of an object-oriented system should be organized in such a way that "spatial relatedness entails semantic relatedness". We refer this as the tenet of "topical locality" and argue that it is fundamental for the code base to be navigable. In this paper, we propose a novel experimental framework to test this key tenet and use large-scale open-source projects to assess three relationships. In particular, we find that: (1) class name along with header comments conveys class body's topic; (2) a code line is indicative of its surroundings; and (3) a contiguous code fragment may serve as a snapshot of the entire class. Our work not only shows the foundations necessary for the success of many code navigation approaches, but also opens avenues for further tool enhancements.
Nan Niu, Juha Savolainen, Tanmay Bhowmik, Anas Mahmoud 0001, Sandeep Reddivari
COMPSAC3
2010 Performance evaluation of a community structure finding algorithm using modularity and C-rand measures
abstract
Biological networks, social networks, and the World Wide Web are some examples of real world networks exhibiting community structure. We present a concise review of community structure finding (CSF) algorithms and applications. We apply a CSF algorithm and various other algorithms on three different microarray data sets. We calculate modularity and C-rand indices as an indication of the quality of each clustering of the three data sets. We compare the performance of the CSF algorithm with the performance of three other algorithms: hierarchical clustering (HC) algorithm, K-means, dynamic tree cut (DTC) algorithm and Naive Bayes Clustering (NBC) using both C-rand and modularity values. We report that the CSF algorithm detects clusters resulting in high modularity; however the CSF does not result in clusters with high C-rand values compared to the other methods.
Harun Pirim, Dilip Gautam, Tanmay Bhowmik, Andy D. Perkins, Burak Eksioglu
IJCNN3