Open Access. Powered by Scholars. Published by Universities.®

Software Engineering Commons™

Open Access. Powered by Scholars. Published by Universities.®

4,404 Full-Text Articles 6,714 Authors 2,121,733 Downloads 182 Institutions

All Articles in Software Engineering

Faceted Search

4,404 full-text articles. Page 45 of 179.

Algorithmic Bias: Causes And Effects On Marginalized Communities, Katrina M. Baha 2023 University of San Diego

Algorithmic Bias: Causes And Effects On Marginalized Communities, Katrina M. Baha

Undergraduate Honors Theses

Individuals from marginalized backgrounds face different healthcare outcomes due to algorithmic bias in the technological healthcare industry. Algorithmic biases, which are the biases that arise from the set of steps used to solve or analyze a problem, are evident when people from marginalized communities use healthcare technology. For example, many pulse oximeters, which are the medical devices used to measure oxygen saturation in the blood, are not able to accurately read people who have darker skin tones. Thus, people with darker skin tones are not able to receive proper health care due to their pulse oximetry data being inaccurate. This …


Explainable Software Defect Prediction From Cross Company Project Metrics Using Machine Learning, Susmita Haldar, Luiz Fernando Capretz 2023 Fanshawe College of Applied Arts and Technology

Explainable Software Defect Prediction From Cross Company Project Metrics Using Machine Learning, Susmita Haldar, Luiz Fernando Capretz

Electrical and Computer Engineering Publications

Predicting the number of defects in a project is critical for project test managers to allocate budget, resources, and schedule for testing, support and maintenance efforts. Software Defect Prediction models predict the number of defects in given projects after training the model with historical defect related information. The majority of defect prediction studies focused on predicting defect-prone modules from methods, and class-level static information, whereas this study predicts defects from project-level information based on a cross-company project dataset. This study utilizes software sizing metrics, effort metrics, and defect density information, and focuses on developing defect prediction models that apply various …


Ptmtorrent: A Dataset For Mining Open-Source Pre-Trained Model Packages, Wenxin Jiang, Nicholas Synovic, Purvish Jajal, Taylor R. Schorlemmer, Arav Tewari, Bhavesh Pareek, George K. Thiruvathukal, James C. Davis 2023 Purdue University

Ptmtorrent: A Dataset For Mining Open-Source Pre-Trained Model Packages, Wenxin Jiang, Nicholas Synovic, Purvish Jajal, Taylor R. Schorlemmer, Arav Tewari, Bhavesh Pareek, George K. Thiruvathukal, James C. Davis

Computer Science: Faculty Publications and Other Works

Due to the cost of developing and training deep learning models from scratch, machine learning engineers have begun to reuse pre-trained models (PTMs) and fine-tune them for downstream tasks. PTM registries known as “model hubs” support engineers in distributing and reusing deep learning models. PTM packages include pre-trained weights, documentation, model architectures, datasets, and metadata. Mining the information in PTM packages will enable the discovery of engineering phenomena and tools to support software engineers. However, accessing this information is difficult — there are many PTM registries, and both the registries and the individual packages may have rate limiting for accessing …


Visualized Algorithm Engineering On Two Graph Partitioning Problems, Zizhen Chen 2023 Southern Methodist University

Visualized Algorithm Engineering On Two Graph Partitioning Problems, Zizhen Chen

Computer Science and Engineering Theses and Dissertations

Concepts of graph theory are frequently used by computer scientists as abstractions when modeling a problem. Partitioning a graph (or a network) into smaller parts is one of the fundamental algorithmic operations that plays a key role in classifying and clustering. Since the early 1970s, graph partitioning rapidly expanded for applications in wide areas. It applies in both engineering applications, as well as research. Current technology generates massive data (“Big Data”) from business interactions and social exchanges, so high-performance algorithms of partitioning graphs are a critical need.

This dissertation presents engineering models for two graph partitioning problems arising from completely …


Beyond Algorithms: A User-Centered Evaluation Of A Feature Recommender System In Requirements Engineering, Oluwatobi Lasisi 2023 Mississippi State University

Beyond Algorithms: A User-Centered Evaluation Of A Feature Recommender System In Requirements Engineering, Oluwatobi Lasisi

Theses and Dissertations

Several studies have applied recommender technologies to support requirements engineering activities. As in other application areas of recommender systems (RS), many studies have focused on the algorithms’ prediction accuracy, while there have been limited discussions around users’ interactions with the systems. Since recommender systems are designed to aid users in information retrieval, they should be assessed not just as recommendation algorithms but also from the users’ perspective. In contrast to accuracy measures, user-related issues can only be effectively investigated via empirical studies involving real users. Furthermore, researchers are becoming increasingly aware that the effectiveness of the systems goes beyond recommendation …


An Analysis Of Text-Based Machine Learning Models For Vulnerability Detection, Kollin Ryne Napier 2023 Mississippi State University

An Analysis Of Text-Based Machine Learning Models For Vulnerability Detection, Kollin Ryne Napier

Theses and Dissertations

With an increase in complexity of software, developers rely more on reuse and dependencies in their source code via code snippets. As a result, it is becoming harder to identify and mitigate vulnerabilities. Although traditional analysis tools are still utilized, machine learning models are being adopted to expand efforts and combat such threats. Given the possibilities towards usage of such models, research in this area has introduced various approaches which vary in usability and prediction. In generalizing models to a more natural language approach, researchers have opted to train models on source code to identify existing and potential vulnerabilities. Exploratory …


Procedural Level Generation For A Top-Down Roguelike Game, Kieran Ahn, Tyler Edmiston 2023 Loyola Marymount University

Procedural Level Generation For A Top-Down Roguelike Game, Kieran Ahn, Tyler Edmiston

Honors Thesis

In this file, I present a sequence of algorithms that handle procedural level generation for the game Fragment, a game designed for CMSI 4071 and CMSI 4071 in collaboration with students from the LMU Animation department. I use algorithms inspired by graph theory and implementing best practices to the best of my ability. The full level generation sequence is comprised of four algorithms: the terrain generation, boss room placement, player spawn point selection, and enemy population. The terrain generation algorithm takes advantage of tree traversal methods to create a connected graph of walkable tiles. The boss room placement algorithm randomly …


Designing Programming Languages For Writing Maintainable Software, Aaron Friesen 2023 University of Nebraska-Lincoln

Designing Programming Languages For Writing Maintainable Software, Aaron Friesen

Honors Program: Senior Projects (Public)

Maintainability is crucial to the long-term success of software projects. Among other factors, it is affected by the programming language in which the software is written. Programming language designers should be conscious of how their design decisions can influence software maintainability. Non-functional properties of a language can affect the readability of source code in ways beyond the control of programmers. Language features can cause or prevent certain classes of bugs, and runtime issues especially can require significant maintenance effort. Tools external to the language, especially those developed and distributed by language implementers, can aid in the creation of maintainable software. …


Brif: A Novel And Efficient Implementation Of Random Forests Based On Bit Packing And Parallel Computing, Yanchao Liu 2023 Wayne State University

Brif: A Novel And Efficient Implementation Of Random Forests Based On Bit Packing And Parallel Computing, Yanchao Liu

Industrial and Systems Engineering Faculty Research Publications

Random forests are powerful and popular machine learning methods. While general principles of tree induction are straightforward and well-understood, the numerous algorithmic treatments implemented in software tools, as well as their impacts on performance, are less familiar to most users. This paper introduces a new random forest toolkit (the ‘brif’ package in R and Python) along with its key algorithmic design features, and demonstrates the effects of the forest’s hyper-parameters such as the split search method, tree depth and the voting mechanism, on the classification performance. Summaries of benchmarking experiments are also presented. Results show that ‘brif’ stands out among …


Boosting Just-In-Time Defect Prediction With Specific Features Of C/C++ Programming Languages In Code Changes, Chao NI, Xiaodan XU, Kaiwen YANG, David LO 2023 Zhejiang University

Boosting Just-In-Time Defect Prediction With Specific Features Of C/C++ Programming Languages In Code Changes, Chao Ni, Xiaodan Xu, Kaiwen Yang, David Lo

Research Collection School Of Computing and Information Systems

Just-in-time (JIT) defect prediction can identify changes as defect-inducing ones or clean ones and many approaches are proposed based on several programming language-independent change-level features. However, different programming languages have different characteristics and consequently may affect the quality of software projects. Meanwhile, the C programming language, one of the most popular ones, is widely used to develop foundation applications (i.e., operating system, database, compiler, etc.) in IT companies and its change-level characteristics on project quality have not been fully investigated. Additionally, whether open-source C projects have similar important features to commercial projects has not been studied much.To address the aforementioned …


Applying Information Theory To Software Evolution, Adriano TORRES, Sebastian BALTES, Christoph TREUDE, Markus WAGNER 2023 Singapore Management University

Applying Information Theory To Software Evolution, Adriano Torres, Sebastian Baltes, Christoph Treude, Markus Wagner

Research Collection School Of Computing and Information Systems

Although information theory has found success in disciplines, the literature on its applications to software evolution is limit. We are still missing artifacts that leverage the data and tooling available to measure how the information content of a project can be a proxy for its complexity. In this work, we explore two definitions of entropy, one structural and one textual, and apply it to the historical progression of the commit history of 25 open source projects. We produce evidence that they generally are highly correlated. We also observed that they display weak and unstable correlations with other complexity metrics. Our …


Are You Cloud-Certified? Preparing Computing Undergraduates For Cloud Certification With Experiential Learning, Eng Lieh OUH, Benjamin GAN 2023 Singapore Management University

Are You Cloud-Certified? Preparing Computing Undergraduates For Cloud Certification With Experiential Learning, Eng Lieh Ouh, Benjamin Gan

Research Collection School Of Computing and Information Systems

Cloud Computing skills have been increasing in demand. Many software engineers are learning these skills and taking cloud certification examinations to be job competitive. Preparing undergraduates to be cloud-certified remains challenging as cloud computing is a relatively new topic in the computing curriculum, and many of these certifications require working experience. In this paper, we report our experiences designing a course with experiential learning to prepare our computing undergraduates to take the cloud certification. We adopt a university project-based experiential learning framework to engage industry partners who provide project requirements for students to develop cloud solutions and an experiential risk …


Widget Detection-Based Testing For Industrial Mobile Games, Xiongfei WU, Jiaming YE, Ke CHEN, Xiaofei XIE, Ruochen HUANG, Lei MA, Jianjun ZHAO 2023 Singapore Management University

Widget Detection-Based Testing For Industrial Mobile Games, Xiongfei Wu, Jiaming Ye, Ke Chen, Xiaofei Xie, Ruochen Huang, Lei Ma, Jianjun Zhao

Research Collection School Of Computing and Information Systems

The fast advances in mobile hardware and widespread smartphone usage have fueled the growth of global mobile gaming in the past decade. As a result, the need for quality assurance of mobile gaming has become increasingly pressing. While general-purpose testing methods have been developed for mobile applications, they become struggling when being applied to mobile games due to the unique characteristics of mobile games, such as dynamic loading and stunning visual effects. There comes a growing industrial demand for automated testing techniques with high compatibility (compatible with various resolutions, and platforms) and non-intrusive characteristics (without packaging external modules into the …


Automating Arduino Programming: From Hardware Setups To Sample Source Code Generation, IMAM NUR BANI YUSUF, DIYANAH BINTE ABDUL JAMAL, Lingxiao JIANG 2023 Singapore Management University

Automating Arduino Programming: From Hardware Setups To Sample Source Code Generation, Imam Nur Bani Yusuf, Diyanah Binte Abdul Jamal, Lingxiao Jiang

Research Collection School Of Computing and Information Systems

An embedded system is a system consisting of software code, controller hardware, and I/O (Input/Output) hardware that performs a specific task. Developing an embedded system presents several challenges. First, the development often involves configuring hardware that requires domain-specific knowledge. Second, the library for the hardware may have API usage patterns that must be followed. To overcome such challenges, we propose a framework called ArduinoProg towards the automatic generation of Arduino applications. ArduinoProg takes a natural language query as input and outputs the configuration and API usage pattern for the hardware described in the query. Motivated by our findings on the …


Techsumbot: A Stack Overflow Answer Summarization Tool For Technical Query, Chengran YANG, Bowen XU, Jiakun LIU, David LO 2023 Singapore Management University

Techsumbot: A Stack Overflow Answer Summarization Tool For Technical Query, Chengran Yang, Bowen Xu, Jiakun Liu, David Lo

Research Collection School Of Computing and Information Systems

Stack Overflow is a popular platform for developers to seek solutions to programming-related problems. However, prior studies identified that developers may suffer from the redundant, useless, and incomplete information retrieved by the Stack Overflow search engine. To help developers better utilize the Stack Overflow knowledge, researchers proposed tools to summarize answers to a Stack Overflow question. However, existing tools use hand-craft features to assess the usefulness of each answer sentence and fail to remove semantically redundant information in the result. Besides, existing tools only focus on a certain programming language and cannot retrieve up-to-date new posted knowledge from Stack Overflow. …


A Study Of Variable-Role-Based Feature Enrichment In Neural Models Of Code, Aftab. HUSSAIN, Md. Rafiqul Islam. RABIN, Bowen. XU, David LO, Mohammad Amin. ALIPOUR 2023 Singapore Management University

A Study Of Variable-Role-Based Feature Enrichment In Neural Models Of Code, Aftab. Hussain, Md. Rafiqul Islam. Rabin, Bowen. Xu, David Lo, Mohammad Amin. Alipour

Research Collection School Of Computing and Information Systems

Although deep neural models substantially reduce the overhead of feature engineering, the features readily available in the inputs might significantly impact training cost and the performance of the models. In this paper, we explore the impact of an unsuperivsed feature enrichment approach based on variable roles on the performance of neural models of code. The notion of variable roles (as introduced in the works of Sajaniemi et al. [1], [2]) has been found to help students' abilities in programming. In this paper, we investigate if this notion would improve the performance of neural models of code. To the best of …


Generation-Based Code Review Automation: How Far Are We?, Xin ZHOU, Kisub KIM, Bowen XU, DongGyun HAN, Junda HE, David LO 2023 Singapore Management University

Generation-Based Code Review Automation: How Far Are We?, Xin Zhou, Kisub Kim, Bowen Xu, Donggyun Han, Junda He, David Lo

Research Collection School Of Computing and Information Systems

Code review is an effective software quality assurance activity; however, it is labor-intensive and time-consuming. Thus, a number of generation-based automatic code review (ACR) approaches have been proposed recently, which leverage deep learning techniques to automate various activities in the code review process (e.g., code revision generation and review comment generation).We find the previous works carry three main limitations. First, the ACR approaches have been shown to be beneficial in each work, but those methods are not comprehensively compared with each other to show their superiority over their peer ACR approaches. Second, general-purpose pre-trained models such as CodeT5 are proven …


What Do Users Ask In Open-Source Ai Repositories? An Empirical Study Of Github Issues, Zhou YANG, Chenyu WANG, Jieke SHI, Thong HOANG, Pavneet Singh KOCHHAR, Qinghua LU, Zhenchang XING, David LO 2023 Singapore Management University

What Do Users Ask In Open-Source Ai Repositories? An Empirical Study Of Github Issues, Zhou Yang, Chenyu Wang, Jieke Shi, Thong Hoang, Pavneet Singh Kochhar, Qinghua Lu, Zhenchang Xing, David Lo

Research Collection School Of Computing and Information Systems

Artificial Intelligence (AI) systems, which benefit from the availability of large-scale datasets and increasing computational power, have become effective solutions to various critical tasks, such as natural language understanding, speech recognition, and image processing. The advancement of these AI systems is inseparable from open-source software (OSS). Specifically, many benchmarks, implementations, and frameworks for constructing AI systems are made open source and accessible to the public, allowing researchers and practitioners to reproduce the reported results and broaden the application of AI systems. The development of AI systems follows a data-driven paradigm and is sensitive to hyperparameter settings and data separation. Developers …


Picaso: Enhancing Api Recommendations With Relevant Stack Overflow Posts, Ivana Clairine IRSAN, Ting ZHANG, Ferdian THUNG, Kisub KIM, David LO 2023 Singapore Management University

Picaso: Enhancing Api Recommendations With Relevant Stack Overflow Posts, Ivana Clairine Irsan, Ting Zhang, Ferdian Thung, Kisub Kim, David Lo

Research Collection School Of Computing and Information Systems

While having options could be liberating, too many options could lead to the sub-optimal solution being chosen. This is not an exception in the software engineering domain. Nowadays, API has become imperative in making software developers' life easier. APIs help developers implement a function faster and more efficiently. However, given the large number of open-source libraries to choose from, choosing the right APIs is not a simple task. Previous studies on API recommendation leverage natural language (query) to identify which API would be suitable for the given task. However, these studies only consider one source of input, i.e., GitHub or …


Overcoming Challenges In Devops Education Through Teaching Methods, Samuel FERINO, Marcelo FERNANDES, Elder CIRILO, Lucas AGNEZ, Bruno BATISTA, Uirá KULESZA, Eduardo ARANHA, Christoph TREUDE 2023 Singapore Management University

Overcoming Challenges In Devops Education Through Teaching Methods, Samuel Ferino, Marcelo Fernandes, Elder Cirilo, Lucas Agnez, Bruno Batista, Uirá Kulesza, Eduardo Aranha, Christoph Treude

Research Collection School Of Computing and Information Systems

DevOps is a set of practices that deals with coordination between development and operation teams and ensures rapid and reliable new software releases that are essential in industry. DevOps education assumes the vital task of preparing new professionals in these practices using appropriate teaching methods. However, there are insufficient studies investigating teaching methods in DevOps. We performed an analysis based on interviews to identify teaching methods and their relationship with DevOps educational challenges. Our findings show that project-based learning and collaborative learning are emerging as the most relevant teaching methods.


Digital Commons powered by bepress