Balwinder Sodhi

dblp:43/10009 · DBLP profile ↗
← Back
15ranked-venue papers
6as first author
7since 2021 · last 2025
0000-0001-7137-5529ORCID · corroborated

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

Software engineering, systems software and programming languages · 9 · 3 first-author · 4 since 2021Applied, interdisciplinary, general and emerging computing · 2 · 2 since 2021Artificial intelligence and machine learning · 1 · 1 since 2021
YearPublicationVenuePosition
2025 Using Incremental LLM Context for Cost Reduction in LLM-Driven IoT Applications
Aashna Sofat, Balwinder Sodhi
ECSA2
2023 Hybrid quantum-classical solution for electric vehicle charger placement problem
Poojith U. Rao, Balwinder Sodhi
Soft Comput.2
2022 A Bilayer Clustered-Priority-Driven Energy Management Model for Inclining Block Rate Tariff Environment
abstract
This article proposes an energy management model for residences in an inclining block rate (IBR) tariff environment. Given acluster, i.e., a group of appliances that satisfy certain requirements, the proposed scheme is primarily driven by two layers of clustered priorities. The first layer of clusters comprises various services of the residences and governs it with shareablez1priorities, and the second layer of clusters binds the major power-consuming appliances under each substation and regulates it with dynamically changingz2priorities. Integer linear programming is used to solve the multicriteria decision problem crafted to address both grid-connected and isolated modes of operations. The model is tested on MATLAB using the IEEE 123-bus system with the modified Pecan Street dataset. Various results reveal that the proposed model is effective in providing a reliable power supply to the critical loads in all the scenarios while keeping the price within the preference limit with minimum comfort-loss for end-users, even in the presence of nonresponsive IBR environment.
Shitikantha Dash, Ranjana Sodhi, Balwinder Sodhi
IEEE Trans. Ind. Informatics3
2022 OSS Effort Estimation Using Software Features Similarity and Developer Activity-Based Metrics
abstract
Software development effort estimation (SDEE) generally involves leveraging the information about the effort spent in developing similar software in the past. Most organizations do not have access to sufficient and reliable forms of such data from past projects. As such, the existing SDEE methods suffer from low usage and accuracy. We propose an efficient SDEE method for open source software, which provides accurate and fast effort estimates. The significant contributions of our article are (i) novel SDEE software metrics derived from developer activity information of various software repositories, (ii) an SDEE dataset comprising the SDEE metrics’ values derived from approximately 13,000 GitHub repositories from 150 different software categories, and (iii) an effort estimation tool based on SDEE metrics and a software description similarity model . Our software description similarity model is basically a machine learning model trained using the PVA on the software product descriptions of GitHub repositories. Given the software description of a newly envisioned software, our tool yields an effort estimate for developing it. Our method achieves the highest standardized accuracy score of 87.26% (with Cliff’s δ = 0.88 at 99.999% confidence level) and 42.7% with the automatically transformed linear baseline model. Our software artifacts are available at https://doi.org/10.5281/zenodo.5095723.
Ritu Kapur, Balwinder Sodhi
ACM Trans. Softw. Eng. Methodol.2
2021 BloatLibD: Detecting Bloat Libraries in Java Applications
Agrim Dewan, Poojith U. Rao, Balwinder Sodhi, Ritu Kapur
ENASE3
2021 Quantum Computing Platforms: Assessing the Impact on Quality Attributes and SDLC Activities
abstract
Practical quantum computing is rapidly becoming a reality. To harness quantum computers’ real potential in software applications, one needs to have an in-depth understanding of all such characteristics of quantum computing platforms (QCPs), relevant from the Software Engineering (SE) perspective. Restrictions on copying, deletion, the transmission of qubit states, a hard dependency on quantum algorithms are few, out of many, examples of QCP characteristics that have significant implications for building quantum software.Thus, developing quantum software requires a paradigm shift in thinking by software engineers. This paper presents the key findings from the SE perspective, resulting from an in-depth examination of state-of-the-art QCPs available today. The main contributions that we present include i) Proposing a general architecture of the QCPs, ii) Proposing a programming model for developing quantum software, iii) Determining architecturally significant characteristics of QCPs, and iv) Determining the impact of these characteristics on various Quality Attributes (QAs) and Software Development Life Cycle (SDLC) activities.We show that the nature of QCPs makes them useful mainly in specialized application areas such as scientific computing. Except for performance and scalability, most of the other QAs (e.g., maintainability, testability, and reliability) are adversely affected by different characteristics of a QCP.
Balwinder Sodhi, Ritu Kapur
ICSA1
2021 An Appliance Load Disaggregation Scheme Using Automatic State Detection Enabled Enhanced Integer Programming
abstract
Measuring the power consumption of individual household appliance is an essential task for home energy management and demand response programmes. To this end, this article proposes a simple yet effective, two-stage nonintrusive appliance load monitoring scheme. A standard deviation based automatic state detection algorithm is developed in stage-1, which results in the information about states and the transient spans of individual appliances. In stage-2 of the proposal, a penalty-based enhanced integer programming (IP) based load disaggregation method is proposed. The efficacy of the proposed method is initially verified with the reference energy disaggregation data dataset and, then, tested on an actual residential house. Various test results reveal that the proposed enhanced IP-based method is an effective and less complex solution to load disaggregation problem.
Shitikantha Dash, Ranjana Sodhi, Balwinder Sodhi
IEEE Trans. Ind. Informatics3
2020 A Defect Estimator for Source Code: Linking Defect Reports with Programming Constructs Usage Metrics
abstract
An important issue faced during software development is to identify defects and the properties of those defects, if found, in a given source file. Determiningdefectivenessof source code assumes significance due to its implications on software development and maintenance cost. We present a novel system to estimate the presence of defects in source code and detect attributes of the possible defects, such as the severity of defects. The salient elements of our system are: (i) a dataset of newly introduced source code metrics, calledPROgrammingCONstruct (PROCON) metrics, and (ii) a novelMachine-Learning (ML)-based system, calledDefectEstimator forSourceCode (DESCo), that makes use of PROCON dataset for predicting defectiveness in a given scenario. The dataset was created by processing 30,400+ source files written in four popular programming languages, viz., C, C++, Java, and Python. The results of our experiments show that DESCo system outperforms one of the state-of-the-art methods with an improvement of 44.9%. To verify the correctness of our system, we compared the performance of 12 different ML algorithms with 50+ different combinations of their key parameters. Our system achieves the best results with SVM technique with a mean accuracy measure of 80.8%.
Ritu Kapur, Balwinder Sodhi
ACM Trans. Softw. Eng. Methodol.2
2019 Towards a knowledge warehouse and expert system for the automation of SDLC tasks
abstract
Cost of a skilled and competent software developer is high, and it is desirable to minimize dependency on such costly human resources. One of the ways to minimize such costs is via automation of various software development tasks. Recent advances in Artificial Intelligence (AI) and the availability of a large volume of knowledge bearing data at various software development related venues present a ripe opportunity for building tools that can automate software development tasks. For instance, there is significant latent knowledge present in raw or unstructured data associated with items such as source files, code commit logs, defect reports, comments, and so on, available in the Open Source Software (OSS) repositories. We aim to leverage such knowledge-bearing data, the latest advances in AI and hardware to create knowledge warehouses and expert systems for the software development domain. Such tools can help in building applications for performing various software development tasks such as defect prediction, effort estimation, code review, etc.
Ritu Kapur, Balwinder Sodhi
ICSSP2
2019 Using Stack Overflow content to assist in code review
abstract
Summary An essential goal for programmers is to minimize the cost of identifying and correcting defects in source code. Code review is commonly used for identifying programming defects. However, manual code review has some shortcomings: (1) it is time‐consuming and (2) outcomes are subjective and depend on the skills of reviewers. An automated approach for assisting in code reviews is thus highly desirable. We present a tool for assisting in code review and results from our experiments evaluating the tool in different scenarios. The tool leveraged content available from professional programmer support forums (eg, StackOverflow.com) to determine potential defectiveness of a given piece of source code. The defectiveness is expressed on the scale of {Likely defective, neutral, unlikely to be defective}. The basic idea employed in the tool is (1) to identify a set P of discussion posts on Stack Overflow such that each p∈P contains source code fragment(s), which sufficiently resemble the input code C being reviewed, and (2) to determine the likelihood of C being defective by considering all p∈P. A novel aspect of our approach is to use document fingerprinting for comparing two pieces of source code. Our choice of document fingerprinting technique is inspired by source code plagiarism detection tools where it has proven to be very successful. In the experiments that we performed to verify the effectiveness of our approach, source code samples from more than 300 GitHub open‐source repositories were taken as input. An F1 score of 0.94 has been achieved in identifying correct/relevant results.
Shipra Sharma, Balwinder Sodhi
Softw. Pract. Exp.2
2012 Cloud Platforms: Impact on Guest Application Quality Attributes
abstract
Virtualization and cloud oriented platforms are becoming popular both in data centres as well as in personal computing space. Several variants with differing characteristics exist for the said platforms. Someone designing an industrial grade software using/for such platforms today has to understand and analyse a large set of issues and characteristics for these variants. In the presented work, we examine and bring out the architecturally significant characteristics of various virtualization and cloud based platforms. We then determine the impact of such characteristics on the ability of guest applications to achieve various quality attributes (QA), such as security, scalability, and other *bilities. These two knowledge artifacts help in systematic and objective assessment of computing platforms on a set of QA criteria. In our findings we observe that efficiency, resource elasticity and security are among the most impacted QAs, and virtualization platforms exhibit the maximum impact on QAs.
Balwinder Sodhi
APSCC1
2012 Assessing Platform Suitability for Achieving Quality in Guest Applications
abstract
Selecting a computing platform, such as private cloud or stand-alone virtualization based, is arguably a very critical task in an enterprise. It impacts several aspects of software systems -- from architecture to post-deployment support and operations. Emergence of various virtualization and cloud based platforms has added to the complexity of the said assessment and selection process. The main reason for this complexity is that each such platform possesses unique characteristics, and each such characteristic impacts Quality Attributes (QA) achievable by the guest applications. A novel method is presented to perform assessment of platforms on QA criteria. This method makes use of fuzzy sets techniques for performing multi-criteria evaluation of platforms. Taking a set of platforms and QA criteria as inputs, this method produces an ordered ranking of platforms. This output can be used in architecture design activities. Efficacy of the proposed approach has been demonstrated by assessing several variants of virtualization and cloud based platforms on a set of QA criteria.
Balwinder Sodhi
APSEC1
2012 Cloud-Oriented Platforms: Bearing on Application Architecture and Design Patterns
abstract
The business problems that are handled by today's computing systems have grown much in complexity. Handling data volumes in excess of peta-scale are no longer restricted to few narrow application areas. Computing platforms ecosystem has also advanced with virtualization based and cloud oriented platforms emerging as most disruptive ones. Unique characteristics of such platforms have important implications for how the architecture of business applications is designed - particularly the ability to achieve certain non-functional requirements. In this paper we first bring out properties of the said computing platforms that are architecturally significant from business applications' view point. We then bring out implications that such properties have for software design and architecture. We demonstrate the use of this knowledge about platform properties by devising a novel architectural design pattern “Platform Level Aspect-Orientation” which can be used to address a variety of application scenarios.
Balwinder Sodhi
SERVICES1
2011 A Cloud Architecture Using Smart Nodes
abstract
Most Infrastructure As A Service (IaaS) cloud platforms are implemented with a cluster of machines having multiple worker nodes and a single master node, which acts as the cloud front-end. In such an architecture the control regarding the Virtual Machine (VM) scheduling and policies compliance etc. lies largely with the front-end node of the cluster. Decision making in such IaaS cloud does not have any intelligent and real time participation from the worker nodes. This is undesirable for scenarios where the cloud is composed from nodes that are semi/fully autonomous and/or when their ownership is hierarchical in nature. It becomes even more significant issue in cases where the hyper visor is a Type-2 (i.e. hosted) kind. This is because a Type-2 hyper visor runs as a regular operating system (OS) process subjected to local OS policies regarding resource allocation and security etc. To address these issues, we propose here an architecture which makes use of real time system-state information from the cluster nodes and decentralizes the cluster node policy management etc., among other design decisions. We show that the scalability, security, availability and reliability of the IaaS cloud gets improved with our proposed architecture. We apply the proposed architecture to a real use case where it helps utilize the untapped computing capacity of large pool of powerful PCs without violating the unique Quality of Service (QoS) needs of their regular owners and users.
Balwinder Sodhi
APSCC1
2011 Assessing Suitability of Cloud Oriented Platforms for Application Development
abstract
The enterprise data centers and software development teams are increasingly embracing the cloud oriented and virtualized computing platforms and technologies. As a result it is no longer straight forward to choose the most suitable platform which may satisfy a given set of Non-Functional Quality Attributes (NFQA) criteria that is significant for an application. Existing methods such as Serial Evaluation and Consequential Choice etc. are inadequate as they fail to capture the objective measurement of various criteria that are important for evaluating the platform alternatives. In practice, these methods are applied in an ad-hoc fashion. In this paper we introduce three application development platforms: 1) Traditional non-cloud 2) Virtualized and 3) Cloud Aware. We propose a systematic method that allows the stakeholders to evaluate these platforms so as to select the optimal one by considering important criteria. We apply our evaluation method to these platforms by considering a certain (non-business) set of NFQAs. We show that the pure cloud oriented platforms fare no better than the traditional non-cloud and vanilla virtualized platforms in case of most NFQAs.
Balwinder Sodhi
WICSA1