Open Access. Powered by Scholars. Published by Universities.®
- Discipline
-
- Programming Languages and Compilers (25)
- Artificial Intelligence and Robotics (19)
- Engineering (13)
- Databases and Information Systems (10)
- Numerical Analysis and Scientific Computing (6)
-
- Computer Engineering (4)
- Electrical and Computer Engineering (4)
- Theory and Algorithms (4)
- Other Computer Sciences (3)
- Systems Architecture (3)
- Business (2)
- Computer and Systems Architecture (2)
- Discrete Mathematics and Combinatorics (2)
- Electrical and Electronics (2)
- Graphics and Human Computer Interfaces (2)
- Life Sciences (2)
- Mathematics (2)
- OS and Networks (2)
- Operational Research (2)
- Operations Research, Systems Engineering and Industrial Engineering (2)
- Social and Behavioral Sciences (2)
- Applied Mathematics (1)
- Bioinformatics (1)
- Biomedical Engineering and Bioengineering (1)
- Business Administration, Management, and Operations (1)
- Communication (1)
- Ecology and Evolutionary Biology (1)
- Institution
-
- Singapore Management University (49)
- Air Force Institute of Technology (27)
- City University of New York (CUNY) (17)
- Western University (8)
- Loyola University Chicago (7)
-
- Portland State University (5)
- California State University, San Bernardino (4)
- Institute of Business Administration (4)
- University of Nebraska - Lincoln (3)
- Edith Cowan University (2)
- Old Dominion University (2)
- St. Mary's University (2)
- University of Texas at El Paso (2)
- Andrews University (1)
- Boise State University (1)
- Bridgewater College (1)
- Clemson University (1)
- Dakota State University (1)
- DePaul University (1)
- Embry-Riddle Aeronautical University (1)
- Florida Institute of Technology (1)
- Gallaudet University (1)
- Governors State University (1)
- Kutztown University (1)
- Montana Tech Library (1)
- Montclair State University (1)
- Munster Technological University (1)
- Nova Southeastern University (1)
- Rochester Institute of Technology (1)
- Seattle Pacific University (1)
- Publication Year
- Publication
-
- Research Collection School Of Computing and Information Systems (45)
- Theses and Dissertations (28)
- Open Educational Resources (14)
- Electrical and Computer Engineering Publications (8)
- Computer Science: Faculty Publications and Other Works (7)
-
- Dissertations and Theses Collection (Open Access) (4)
- International Conference on Information and Communication Technologies (4)
- Theses Digitization Project (4)
- Publications and Research (3)
- School of Computing: Dissertations, Theses, and Student Research (3)
- Computer Science Faculty Publications and Presentations (2)
- Dissertations and Theses (2)
- ASPIRE 2026 (1)
- All Capstone Projects (1)
- All Dissertations (1)
- Articles (1)
- Boise State University Theses and Dissertations (1)
- CCAC Theses and Dissertations (1)
- COURI Symposium Abstracts, Spring 2012 (1)
- COURI Symposium Abstracts, Summer 2012 (1)
- College of Computing and Digital Media Dissertations (1)
- Computer Science & Software Engineering (1)
- Doctoral Dissertations and Master's Theses (1)
- Electrical & Computer Engineering Theses & Dissertations (1)
- Honors Projects (1)
- Honors Student Research (1)
- Master's Theses (1)
- Northeast Parallel Architecture Center (1)
- Ocean Engineering and Marine Sciences Faculty Publications (1)
- Other (1)
- Publication Type
Articles 61 - 90 of 152
Full-Text Articles in Software Engineering
Analytic Provenance For Software Reverse Engineers, Wayne C. Henry
Analytic Provenance For Software Reverse Engineers, Wayne C. Henry
Theses and Dissertations
Reverse engineering is a time-consuming process essential to software-security tasks such as malware analysis and vulnerability discovery. During the process, an engineer will follow multiple leads to determine how the software functions. The combination of time and possible explanations makes it difficult for the engineers to maintain a context of their findings within the overall task. Analytic provenance tools have demonstrated value in similarly complex fields that require open-ended exploration and hypothesis vetting. However, they have not been explored in the reverse engineering domain. This dissertation presents SensorRE, the first analytic provenance tool designed to support software reverse engineers. A …
Novel Deep Learning Methods Combined With Static Analysis For Source Code Processing, Duy Quoc Nghi Bui
Novel Deep Learning Methods Combined With Static Analysis For Source Code Processing, Duy Quoc Nghi Bui
Dissertations and Theses Collection (Open Access)
It is desirable to combine machine learning and program analysis so that one can leverage the best of both to increase the performance of software analytics. On one side, machine learning can analyze the source code of thousands of well-written software projects that can uncover patterns that partially characterize software that is reliable, easy to read, and easy to maintain. On the other side, the program analysis can be used to define rigorous and unique rules that are only available in programming languages, which enrich the representation of source code and help the machine learning to capture the patterns better. …
How Practitioners Perceive Automated Bug Report Management Techniques, Weiqin Zou, David Lo, Zhenyu Chen, Xin Xia, Yang Feng, Baowen Xu
How Practitioners Perceive Automated Bug Report Management Techniques, Weiqin Zou, David Lo, Zhenyu Chen, Xin Xia, Yang Feng, Baowen Xu
Research Collection School Of Computing and Information Systems
Bug reports play an important role in the process of debugging and fixing bugs. To reduce the burden of bug report managers and facilitate the process of bug fixing, a great amount of software engineering research has been invested into automated bug report management techniques. However, the verdict is still open whether such techniques are actually required and applicable outside of the theoretical research domain. To fill this gap, in this paper, we conducted a survey among 327 practitioners to gain their insights into various categories of automated bug report management techniques. Specifically, in the survey, we asked them to …
What Malaysian Software Students Think About Testing?, Luiz Fernando Capretz, Shuib Basri, Maythem Adili, Aamir Amin
What Malaysian Software Students Think About Testing?, Luiz Fernando Capretz, Shuib Basri, Maythem Adili, Aamir Amin
Electrical and Computer Engineering Publications
Software testing is one of the crucial supporting processes of software life cycle. Unfortunately for the software industry, the role is stigmatized, partly due to misperception and partly due to treatment of the role in the software industry. The present study aims to analyse this situation to explore what inhibit an individual from taking up a software testing career. In order to investigate this issue, we surveyed 82 senior students taking a degree in information technology, information and communication technology, and computer science at two Malaysian universities. The subjects were asked the PROs and CONs of taking up a career …
How We Refactor And How We Document It? On The Use Of Supervised Machine Learning Algorithms To Classify Refactoring Documentation, Eman Abdullah Alomar, Anthony Peruma, Mohamed Wiem Mkaouer, Christian D. Newman, Marouane Kessentini, Ali Ouni
How We Refactor And How We Document It? On The Use Of Supervised Machine Learning Algorithms To Classify Refactoring Documentation, Eman Abdullah Alomar, Anthony Peruma, Mohamed Wiem Mkaouer, Christian D. Newman, Marouane Kessentini, Ali Ouni
Articles
Refactoring is the art of improving the structural design of a software system without altering its external behavior. Today, refactoring has become a well-established and disciplined software engineering practice that has attracted a significant amount of research presuming that refactoring is primarily motivated by the need to improve system structures. However, recent studies have shown that developers may incorporate refactoring strategies in other development-related activities that go beyond improving the design especially with the emerging challenges in contemporary software engineering. Unfortunately, these studies are limited to developer interviews and a reduced set of projects. To cope with the above-mentioned limitations, …
Devops: Lecture 1 - "Overview", Jeremy Andrews, Nyc Tech-In-Residence Corps
Devops: Lecture 1 - "Overview", Jeremy Andrews, Nyc Tech-In-Residence Corps
Open Educational Resources
Overview lecture for the "DevOps" course delivered at the City College of New York in Spring 2020 by Jeremy Andrews as part of the Tech-in-Residence Corps program.
Devops: Architecting Your Infrastructure (Syllabus), Jeremy Andrews, Nyc Tech-In-Residence Corps
Devops: Architecting Your Infrastructure (Syllabus), Jeremy Andrews, Nyc Tech-In-Residence Corps
Open Educational Resources
Syllabus for the "DevOps" course delivered at the City College of New York in Spring 2020 by Jeremy Andrews as part of the Tech-in-Residence Corps program.
How Does Machine Learning Change Software Development Practices?, Zhiyuan Wan, Xin Xia, David Lo, Gail C. Murphy
How Does Machine Learning Change Software Development Practices?, Zhiyuan Wan, Xin Xia, David Lo, Gail C. Murphy
Research Collection School Of Computing and Information Systems
Adding an ability for a system to learn inherently adds uncertainty into the system. Given the rising popularity of incorporating machine learning into systems, we wondered how the addition alters software development practices. We performed a mixture of qualitative and quantitative studies with 14 interviewees and 342 survey respondents from 26 countries across four continents to elicit significant differences between the development of machine learning systems and the development of non-machine-learning systems. Our study uncovers significant differences in various aspects of software engineering (e.g., requirements, design, testing, and process) and work characteristics (e.g., skill variety, problem solving and task identity). …
Tests As Maintainable Assets Via Auto-Generated Spies: A Case Study Involving The Scala Collections Library's Iterator Trait, Konstantin Läufer, John O'Sullivan, George K. Thiruvathukal
Tests As Maintainable Assets Via Auto-Generated Spies: A Case Study Involving The Scala Collections Library's Iterator Trait, Konstantin Läufer, John O'Sullivan, George K. Thiruvathukal
Computer Science: Faculty Publications and Other Works
In testing stateful abstractions, it is often necessary to record interactions, such as method invocations, and express assertions over these interactions. Following the Test Spy design pattern, we can reify such interactions programmatically through additional mutable state. Alternatively, a mocking framework, such as Mockito, can automatically generate test spies that allow us to record the interactions and express our expectations in a declarative domain-specific language. According to our study of the test code for Scala’s Iterator trait, the latter approach can lead to a significant reduction of test code complexity in terms of metrics such as code size (in some …
Single Image Reflection Removal Beyond Linearity, Qiang Wen, Yinjie Tan, Jing Qin, Wenxi Liu, Guoqiang Han, Shengfeng He
Single Image Reflection Removal Beyond Linearity, Qiang Wen, Yinjie Tan, Jing Qin, Wenxi Liu, Guoqiang Han, Shengfeng He
Research Collection School Of Computing and Information Systems
Due to the lack of paired data, the training of image reflection removal relies heavily on synthesizing reflection images. However, existing methods model reflection as a linear combination model, which cannot fully simulate the real-world scenarios. In this paper, we inject non-linearity into reflection removal from two aspects. First, instead of synthesizing reflection with a fixed combination factor or kernel, we propose to synthesize reflection images by predicting a non-linear alpha blending mask. This enables a free combination of different blurry kernels, leading to a controllable and diverse reflection synthesis. Second, we design a cascaded network for reflection removal with …
Comparing The Popularity Of Testing Career Among Canadian, Chinese, And Indian Students, Luiz Fernando Capretz, Pradeep Waychal, Jingdong Jia
Comparing The Popularity Of Testing Career Among Canadian, Chinese, And Indian Students, Luiz Fernando Capretz, Pradeep Waychal, Jingdong Jia
Electrical and Computer Engineering Publications
Despite its importance, software testing is, arguably, the least understood part of the software life cycle and still the toughest to perform correctly. Many researchers and practitioners have been working to address the situation. However, most of the studies focus on the process and technology dimensions and only a few on the human dimension of testing, in spite of the reported relevance of human aspects of software testing. Testers need to understand various stakeholders’ explicit and implicit requirements, be aware of how developers work individually and in teams, and develop skills to report test results wisely to stakeholders. These multifaceted …
Recommending Who To Follow In The Software Engineering Twitter Space, Abhabhisheksh Sharma, Yuan Tian, Agus Sulistya, Dinusha Wijedasa, David Lo
Recommending Who To Follow In The Software Engineering Twitter Space, Abhabhisheksh Sharma, Yuan Tian, Agus Sulistya, Dinusha Wijedasa, David Lo
Research Collection School Of Computing and Information Systems
With the advent of social media, developers are increasingly using it in their software development activities. Twitter is one of the popular social mediums used by developers. A recent study by Singer et al. found that software developers use Twitter to “keep up with the fast-paced development landscape.” Unfortunately, due to the general-purpose nature of Twitter, it’s challenging for developers to use Twitter for their development activities. Our survey with 36 developers who use Twitter in their development activities highlights that developers are interested in following specialized software gurus who share relevant technical tweets.To help developers perform this task, in …
A Survey Of Software Metric Use In Research Software Development, Nasir U. Eisty, George K. Thiruvathukal, Jeffrey C. Carver
A Survey Of Software Metric Use In Research Software Development, Nasir U. Eisty, George K. Thiruvathukal, Jeffrey C. Carver
Computer Science: Faculty Publications and Other Works
Background: Breakthroughs in research increasingly depend on complex software libraries, tools, and applications aimed at supporting specific science, engineering, business, or humanities disciplines. The complexity and criticality of this software motivate the need for ensuring quality and reliability. Software metrics are a key tool for assessing, measuring, and understanding software quality and reliability. Aims: The goal of this work is to better understand how research software developers use traditional software engineering concepts, like metrics, to support and evaluate both the software and the software development process. One key aspect of this goal is to identify how the set of metrics …
Detecting Saliency By Combining Speech And Object Detection In Indoor Environments, Kiran Thapa
Detecting Saliency By Combining Speech And Object Detection In Indoor Environments, Kiran Thapa
Boise State University Theses and Dissertations
Describing scenes such as rooms, city streets, or routes, is a very common human task that requires the ability to identify and describe the scene sufficiently for a hearer to develop a mental model of the scene. When people talk about such scenes, they mention some objects of the scene at the exclusion of others. We call the mentioned objects salient objects as people consider them noticeable or important in comparison to other non-mentioned objects. In this thesis, we look at saliency of visual scenes and how visual saliency informs what can and should be said about a scene when …
Mining Implicit Design Templates For Actionable Code Reuse, Yun Lin, Guozhu Meng, Yinxing Yue, Zhenchang Xing, Jun Sun, Xin Peng, Yang Liu, Wenyun Zhao, Jin Song Dong
Mining Implicit Design Templates For Actionable Code Reuse, Yun Lin, Guozhu Meng, Yinxing Yue, Zhenchang Xing, Jun Sun, Xin Peng, Yang Liu, Wenyun Zhao, Jin Song Dong
Research Collection School Of Computing and Information Systems
In this paper, we propose an approach to detecting project-specific recurring designs in code base and abstracting them into design templates as reuse opportunities. The mined templates allow programmers to make further customization for generating new code. The generated code involves the code skeleton of recurring design as well as the semi-implemented code bodies annotated with comments to remind programmers of necessary modification. We implemented our approach as an Eclipse plugin called MICoDe. We evaluated our approach with a reuse simulation experiment and a user study involving 16 participants. The results of our simulation experiment on 10 open source Java …
Improving Probability Estimation Through Active Probabilistic Model Learning, Jingyi Wang, Xiaohong Chen, Jun Sun, Shengchao Qin
Improving Probability Estimation Through Active Probabilistic Model Learning, Jingyi Wang, Xiaohong Chen, Jun Sun, Shengchao Qin
Research Collection School Of Computing and Information Systems
It is often necessary to estimate the probability of certain events occurring in a system. For instance, knowing the probability of events triggering a shutdown sequence allows us to estimate the availability of the system. One approach is to run the system multiple times and then construct a probabilistic model to estimate the probability. When the probability of the event to be estimated is low, many system runs are necessary in order to generate an accurate estimation. For complex cyber-physical systems, each system run is costly and time-consuming, and thus it is important to reduce the number of system runs …
A Semantics Comparison Workbench For A Concurrent, Asynchronous, Distributed Programming Language, Claudio Corrodi, Alexander Heußner, Christopher M. Poskitt
A Semantics Comparison Workbench For A Concurrent, Asynchronous, Distributed Programming Language, Claudio Corrodi, Alexander Heußner, Christopher M. Poskitt
Research Collection School Of Computing and Information Systems
A number of high-level languages and libraries have been proposed that offer novel and simple to use abstractions for concurrent, asynchronous, and distributed programming. The execution models that realise them, however, often change over time---whether to improve performance, or to extend them to new language features---potentially affecting behavioural and safety properties of existing programs. This is exemplified by SCOOP, a message-passing approach to concurrent object-oriented programming that has seen multiple changes proposed and implemented, with demonstrable consequences for an idiomatic usage of its core abstraction. We propose a semantics comparison workbench for SCOOP with fully and semi-automatic tools for analysing …
Apibot: Question Answering Bot For Api Documentation, Yuan Tian, Ferdian Thung, Abhishek Sharma, David Lo
Apibot: Question Answering Bot For Api Documentation, Yuan Tian, Ferdian Thung, Abhishek Sharma, David Lo
Research Collection School Of Computing and Information Systems
As the carrier of Application Programming Interfaces (APIs) knowledge, API documentation plays a crucial role in how developers learn and use an API. It is also a valuable information resource for answering API-related questions, especially when developers cannot find reliable answers to their questions online/offline. However, finding answers to API-related questions from API documentation might not be easy because one may have to manually go through multiple pages before reaching the relevant page, and then read and understand the information inside the relevant page to figure out the answers. To deal with this challenge, we develop APIBot, a bot that …
Classification-Based Parameter Synthesis For Parametric Timed Automata, Jiaying Li, Jun Sun, Bo Gao, Étienne Andre
Classification-Based Parameter Synthesis For Parametric Timed Automata, Jiaying Li, Jun Sun, Bo Gao, Étienne Andre
Research Collection School Of Computing and Information Systems
Parametric timed automata are designed to model timed systems with unknown parameters, often representing design uncertainties of external environments. In order to design a robust system, it is crucial to synthesize constraints on the parameters, which guarantee the system behaves according to certain properties. Existing approaches suffer from scalability issues. In this work, we propose to enhance existing approaches through classification-based learning. We sample multiple concrete values for parameters and model check the corresponding non-parametric models. Based on the checking results, we form conjectures on the constraint through classification techniques, which can be subsequently confirmed by existing model checkers for …
Code Coverage And Postrelease Defects: A Large-Scale Study On Open Source Projects, Pavneet Singh Kochhar, David Lo, Julia Lawall, Nachiappan Nagappan
Code Coverage And Postrelease Defects: A Large-Scale Study On Open Source Projects, Pavneet Singh Kochhar, David Lo, Julia Lawall, Nachiappan Nagappan
Research Collection School Of Computing and Information Systems
Testing is a pivotal activity in ensuring the quality of software. Code coverage is a common metric used as a yardstick to measure the efficacy and adequacy of testing. However, does higher coverage actually lead to a decline in postrelease bugs? Do files that have higher test coverage actually have fewer bug reports? The direct relationship between code coverage and actual bug reports has not yet been analyzed via a comprehensive empirical study on real bugs. Past studies only involve a few software systems or artificially injected bugs (mutants). In this empirical study, we examine these questions in the context …
An Exploratory Study Of Functionality And Learning Resources Of Web Apis On Programmableweb, Yuan Tian, Pavneet Singh Kochhar, David Lo
An Exploratory Study Of Functionality And Learning Resources Of Web Apis On Programmableweb, Yuan Tian, Pavneet Singh Kochhar, David Lo
Research Collection School Of Computing and Information Systems
Web APIs provide various functionalities that can be leveraged by developers in building their applications. ProgrammableWeb, which is the largest and most active web API and mashup collection, provides a record of thousands of web APIs and mashups. However, important properties about these large number of web APIs, such as their functionality and support/resources for learning, have never been studied by the existing research work. In this study, we perform an exploratory analysis on functionality and learning resources of 9,883 web APIs and 4,315 mashups listed on ProgrammableWeb, and find that: (1) web APIs provide a wide range of functionalities …
Grace's Inheritance, James Noble, Andrew P. Black, Kim B. Bruce, Michael Homer, Timothy Jones
Grace's Inheritance, James Noble, Andrew P. Black, Kim B. Bruce, Michael Homer, Timothy Jones
Computer Science Faculty Publications and Presentations
This article is an apologia for the design of inheritance in the Grace educational programming language: it explains how the design of Grace’s inheritance draws from inheritance mechanisms in predecessor languages, and defends that design as the best of the available alternatives. For simplicity, Grace objects are generated from object constructors, like those of Emerald, Lua, and Javascript; for familiarity, the language also provides classes and inheritance, like Simula, Smalltalk and Java. The design question we address is whether or not object constructors can provide an inheritance semantics similar to classes.
Software Engineering For Science, Jeffrey C. Carver, Neil P. Chue Hong, George K. Thiruvathukal
Software Engineering For Science, Jeffrey C. Carver, Neil P. Chue Hong, George K. Thiruvathukal
Computer Science: Faculty Publications and Other Works
Software Engineering for Science provides an in-depth collection of peer-reviewed chapters that describe experiences with applying software engineering practices to the development of scientific software. It provides a better understanding of how software engineering is and should be practiced, and which software engineering practices are effective for scientific software.
The book starts with a detailed overview of the Scientific Software Lifecycle, and a general overview of the scientific software development process. It highlights key issues commonly arising during scientific software development, as well as solutions to these problems.
The second part of the book provides examples of the use of …
Metrics, Software Engineering, Small Systems – The Future Of Systems Development, William L. Honig
Metrics, Software Engineering, Small Systems – The Future Of Systems Development, William L. Honig
Computer Science: Faculty Publications and Other Works
In this talk I will introduce the importance of metrics, or measures, and the role they play in the development of high quality computer systems. I will review some key mega trends in computer science over the last three decades and then explain why I believe the trend to small networked systems, along with metrics and software engineering will define the future of high technology computer based systems.
I first learned about metrics at the Bell System where everything was measured. Metrics can be understood easily if you think of them as measures, for example of calories or salt in …
How Long Will This Live? Discovering The Lifespans Of Software Engineering Ideas, Subhajit Datta, Santonu Sarkar, A. S. M Sajeev
How Long Will This Live? Discovering The Lifespans Of Software Engineering Ideas, Subhajit Datta, Santonu Sarkar, A. S. M Sajeev
Research Collection School Of Computing and Information Systems
We all want to be associated with long lasting ideas; as originators, or at least, expositors. For a tyro researcher or a seasoned veteran, knowing how long an idea will remain interesting in the community is critical in choosing and pursuing research threads. In the physical sciences, the notion of half-life is often evoked to quantify decaying intensity. In this paper, we study a corpus of 19,000+ papers written by 21,000+ authors across 16 software engineering publication venues from 1975 to 2010, to empirically determine the half-life of software engineering research topics. In the absence of any consistent and well-accepted …
Sonifying Git History, Kevin J. North
Sonifying Git History, Kevin J. North
School of Computing: Dissertations, Theses, and Student Research
Version control is a technique that software developers use in industry to manage their source code artifacts. One benefit of using version control is that it produces a history of every change made to a codebase, which developers frequently analyze in order to aid the software development process. However, version control history contains highly multidimensional and temporal data. State of the art techniques can show several of these dimensions, but they cannot show a large number of dimensions simultaneously without becoming difficult to understand. An alternative technique to understand temporal data with high dimensionality is sonification. Sonification maps information to …
A Roadmap To Safe And Reliable Engineered Biological Nano-Communication Networks, Justin W. Firestone
A Roadmap To Safe And Reliable Engineered Biological Nano-Communication Networks, Justin W. Firestone
School of Computing: Dissertations, Theses, and Student Research
Synthetic biology has the potential to benefit society with novel applications that can improve soil quality, produce biofuels, grow customized biological tissue, and perform intelligent drug delivery, among many other possibilities. Engineers are creating techniques to program living cells, inserting new logic, and leveraging cell-to-cell communication, which result in changes to a cell's core functionality. Using these techniques, we can now create synthetic biological organisms (SBOs) with entirely new (potentially unseen) behaviors, which, similar to silicon devices, can sense, actuate, perform computation, and interconnect with other networks at the nanoscale level. SBOs are programmable evolving entities, and can be likened …
Capturing, Eliciting, And Prioritizing (Cep) Non-Functional Requirements Metadata During The Early Stages Of Agile Software Development, Richard Rabin Maiti
Capturing, Eliciting, And Prioritizing (Cep) Non-Functional Requirements Metadata During The Early Stages Of Agile Software Development, Richard Rabin Maiti
CCAC Theses and Dissertations
Agile software engineering has been a popular methodology to develop software rapidly and efficiently. However, the Agile methodology often favors Functional Requirements (FRs) due to the nature of agile software development, and strongly neglects Non-Functional Requirements (NFRs). Neglecting NFRs has negative impacts on software products that have resulted in poor quality and higher cost to fix problems in later stages of software development.
This research developed the CEP “Capture Elicit Prioritize” methodology to effectively gather NFRs metadata from software requirement artifacts such as documents and images. Artifact included the Optical Character Recognition (OCR) artifact which gathered metadata from images. The …
Detecting Broken Pointcuts Using Structural Commonality And Degree Of Interest, Raffi Khatchadourian, Awais Rashd, Hidehiko Masuhara, Takuya Watanabe
Detecting Broken Pointcuts Using Structural Commonality And Degree Of Interest, Raffi Khatchadourian, Awais Rashd, Hidehiko Masuhara, Takuya Watanabe
Publications and Research
Pointcut fragility is a well-documented problem in Aspect-Oriented Programming; changes to the base code can lead to join points incorrectly falling in or out of the scope of pointcuts. Deciding which pointcuts have broken due to base-code changes is daunting, especially in large and complex systems. We present an automated approach that recommends pointcuts that are likely to require modification due to a certain base-code change and ones that do not. Our hypothesis is that join points selected by a pointcut exhibit common structural characteristics. Patterns describing such commonalities recommend pointcuts that have potentially broken to the developer. The approach …
Choosing Your Weapons: On Sentiment Analysis Tools For Software Engineering Research, Robbert Jongeling, Subhajit Datta, Alexander Serebrenik
Choosing Your Weapons: On Sentiment Analysis Tools For Software Engineering Research, Robbert Jongeling, Subhajit Datta, Alexander Serebrenik
Research Collection School Of Computing and Information Systems
Recent years have seen an increasing attention to social aspects of software engineering, including studies of emotions and sentiments experienced and expressed by the software developers. Most of these studies reuse existing sentiment analysis tools such as SentiStrength and NLTK. However, these tools have been trained on product reviews and movie reviews and, therefore, their results might not be applicable in the software engineering domain. In this paper we study whether the sentiment analysis tools agree with the sentiment recognized by human evaluators (as reported in an earlier study) as well as with each other. Furthermore, we evaluate the impact …