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

Software Engineering Commons™

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

Singapore Management University

Discipline
Keyword
Publication Year
Publication
Publication Type

Articles 1021 - 1050 of 2211

Full-Text Articles in Software Engineering

Emerging App Issue Identification From User Feedback: Experience On Wechat, Cuiyun Gao, Wujie Zheng, Yuetang Deng, David Lo, Jichuan Zeng, Michael R. Lyu, Irwin King May 2019

Emerging App Issue Identification From User Feedback: Experience On Wechat, Cuiyun Gao, Wujie Zheng, Yuetang Deng, David Lo, Jichuan Zeng, Michael R. Lyu, Irwin King

Research Collection School Of Computing and Information Systems

It is vital for popular mobile apps with large numbers of users to release updates with rich features while keeping stable user experience. Timely and accurately locating emerging app issues can greatly help developers to maintain and update apps. User feedback (i.e., user reviews) is a crucial channel between app developers and users, delivering a stream of information about bugs and features that concern users. Methods to identify emerging issues based on user feedback have been proposed in the literature, however, their applicability in industry has not been explored. We apply the recent method IDEA to WeChat, a popular messenger …


Patchnet: A Tool For Deep Patch Classification, Thong Hoang, Julia Lawall, Richard J. Oentaryo, Yuan Tian, David Lo May 2019

Patchnet: A Tool For Deep Patch Classification, Thong Hoang, Julia Lawall, Richard J. Oentaryo, Yuan Tian, David Lo

Research Collection School Of Computing and Information Systems

This work proposes PatchNet, an automated tool based on hierarchical deep learning for classifying patches by extracting features from commit messages and code changes. PatchNet contains a deep hierarchical structure that mirrors the hierarchical and sequential structure of a code change, differentiating it from the existing deep learning models on source code. PatchNet provides several options allowing users to select parameters for the training process. The tool has been validated in the context of automatic identification of stable-relevant patches in the Linux kernel and is potentially applicable to automate other software engineering tasks that can be formulated as patch classification …


Witt: Querying Technology Terms Based On Automated Classification, Mathieu Nassif, Christoph Treude, Martin P. Robillard May 2019

Witt: Querying Technology Terms Based On Automated Classification, Mathieu Nassif, Christoph Treude, Martin P. Robillard

Research Collection School Of Computing and Information Systems

Witt is a tool that systematically and automatically categorizes software technologies using original information extraction algorithms applied to Stack Overflow and Wikipedia. Witt takes as input a term, such as "django", and returns one or more categories that describe it (e.g., "framework"), along with attributes that further qualify it (e.g., "web-application"). Our comparative evaluation of Witt against six independent taxonomy tools showed that, when applied to software terms, Witt has better coverage than alternative solutions, without a corresponding degradation in the number of spurious results. The information extracted by Witt is available through the Witt Web Application, which allows users …


Automatically Generating Documentation For Lambda Expressions In Java, Anwar Alqaimi, Patanamon Thongtanunam, Christoph Treude May 2019

Automatically Generating Documentation For Lambda Expressions In Java, Anwar Alqaimi, Patanamon Thongtanunam, Christoph Treude

Research Collection School Of Computing and Information Systems

When lambda expressions were introduced to the Java programming language as part of the release of Java 8 in 2014, they were the language’s first step into functional programming. Since lambda expressions are still relatively new, not all developers use or understand them. In this paper, we first present the results of an empirical study to determine how frequently developers of GitHub repositories make use of lambda expressions and how they are documented. We find that 11% of Java GitHub repositories use lambda expressions, and that only 6% of the lambda expressions are accompanied by source code comments. We then …


Towards Zero Knowledge Learning For Cross Language Api Mappings, Duy Quoc Nghi Bui May 2019

Towards Zero Knowledge Learning For Cross Language Api Mappings, Duy Quoc Nghi Bui

Research Collection School Of Computing and Information Systems

Programmers often need to migrate programs from one language or platform to another in order to implement functionality, instead of rewriting the code from scratch. However, most techniques proposed to identify API mappings across languages and facilitate automated program translation require manually curated parallel corpora that contain already mapped API seeds or functionally-equivalent code using the APIs in two different languages so that the techniques can have an anchor to map APIs. To alleviate the need of curating parallel data and to generalize the applicability of program translation techniques, we develop a new automated approach for identifying API mappings across …


Sotorrent: Studying The Origin, Evolution, And Usage Of Stack Overflow Code Snippets, Sebastian Baltes, Christoph Treude, Stephan Diehl May 2019

Sotorrent: Studying The Origin, Evolution, And Usage Of Stack Overflow Code Snippets, Sebastian Baltes, Christoph Treude, Stephan Diehl

Research Collection School Of Computing and Information Systems

Stack Overflow (SO) is the most popular questionand-answer website for software developers, providing a large amount of copyable code snippets. Like other software artifacts, code on SO evolves over time, for example when bugs are fixed or APIs are updated to the most recent version. To be able to analyze how code and the surrounding text on SO evolves, we built SOTorrent, an open dataset based on the official SO data dump. SOTorrent provides access to the version history of SO content at the level of whole posts and individual text and code blocks. It connects code snippets from SO …


Patchnet: A Tool For Deep Patch Classification, Thong Hoang, Julia Lawall, Richard J. Oentaryo, Yuan Tian, David Lo May 2019

Patchnet: A Tool For Deep Patch Classification, Thong Hoang, Julia Lawall, Richard J. Oentaryo, Yuan Tian, David Lo

Research Collection School Of Computing and Information Systems

This work proposes PatchNet, an automated tool based on hierarchical deep learning for classifying patches by extracting features from commit messages and code changes. PatchNet contains a deep hierarchical structure that mirrors the hierarchical and sequential structure of a code change, differentiating it from the existing deep learning models on source code. PatchNet provides several options allowing users to selectparameters for the training process. The tool has been validated in the context of automatic identification of stable-relevant patches in the Linux kernel and is potentially applicable to automate other software engineering tasks that can be formulated as patch classification problems. …


On Reliability Of Patch Correctness Assessment, Xuan-Bach D. Le, Lingfeng Bao, David Lo, Xin Xia, Shanping Li, Corina S. Pasareanu May 2019

On Reliability Of Patch Correctness Assessment, Xuan-Bach D. Le, Lingfeng Bao, David Lo, Xin Xia, Shanping Li, Corina S. Pasareanu

Research Collection School Of Computing and Information Systems

Current state-of-the-art automatic software repair (ASR) techniques rely heavily on incomplete specifications, or test suites, to generate repairs. This, however, may cause ASR tools to generate repairs that are incorrect and hard to generalize. To assess patch correctness, researchers have been following two methods separately: (1) Automated annotation, wherein patches are automatically labeled by an independent test suite (ITS) – a patch passing the ITS is regarded as correct or generalizable, and incorrect otherwise, (2) Author annotation, wherein authors of ASR techniques manually annotate the correctness labels of patches generated by their and competing tools. While automated annotation cannot ascertain …


How Practitioners Perceive Coding Proficiency, Xin Xia, Zhiyuan Wan, Pavneet S. Kochhar, David Lo May 2019

How Practitioners Perceive Coding Proficiency, Xin Xia, Zhiyuan Wan, Pavneet S. Kochhar, David Lo

Research Collection School Of Computing and Information Systems

Coding proficiency is essential to software practitioners. Unfortunately, our understanding on coding proficiency often translates to vague stereotypes, e.g., “able to write good code”. The lack of specificity hinders employers from measuring a software engineer’s coding proficiency, and software engineers from improving their coding proficiency skills. This raises an important question: what skills matter to improve one’s coding proficiency. To answer this question, we perform an empirical study by surveying 340 software practitioners from 33 countries across 5 continents. We first identify 38 coding proficiency skills grouped into nine categories by interviewing 15 developers from three companies. We then ask …


Graph Based Optimization For Multiagent Cooperation, Arambam James Singh, Akshat Kumar May 2019

Graph Based Optimization For Multiagent Cooperation, Arambam James Singh, Akshat Kumar

Research Collection School Of Computing and Information Systems

We address the problem of solving math programs defined over a graph where nodes represent agents and edges represent interaction among agents. The objective and constraint functions of this program model the task agent team must perform and the domain constraints. In this multiagent setting, no single agent observes the complete objective and all the constraints of the program. Thus, we develop a distributed message-passing approach to solve this optimization problem. We focus on the class of graph structured linear and quadratic programs (LPs/QPs) which can model important multiagent coordination frameworks such as distributed constraint optimization (DCOP). For DCOPs, our …


Clustering And Its Extensions In The Social Media Domain, Lei Meng, Ah-Hwee Tan, Donald C. Wunsch May 2019

Clustering And Its Extensions In The Social Media Domain, Lei Meng, Ah-Hwee Tan, Donald C. Wunsch

Research Collection School Of Computing and Information Systems

This chapter summarizes existing clustering and related approaches for the identified challenges as described in Sect. 1.2 and presents the key branches of social media mining applications where clustering holds a potential. Specifically, several important types of clustering algorithms are first illustrated, including clustering, semi-supervised clustering, heterogeneous data co-clustering, and online clustering. Subsequently, Sect. 2.5 presents a review on existing techniques that help decide the value of the predefined number of clusters (required by most clustering algorithms) automatically and highlights the clustering algorithms that do not require such a parameter. It better illustrates the challenge of input parameter sensitivity of …


9.6 Million Links In Source Code Comments: Purpose, Evolution, And Decay, Hideaki Hata, Christoph Treude, Raula Gaikovina Kula, Takashi Ishio May 2019

9.6 Million Links In Source Code Comments: Purpose, Evolution, And Decay, Hideaki Hata, Christoph Treude, Raula Gaikovina Kula, Takashi Ishio

Research Collection School Of Computing and Information Systems

Links are an essential feature of the World Wide Web, and source code repositories are no exception. However, despite their many undisputed benefits, links can suffer from decay, insufficient versioning, and lack of bidirectional traceability. In this paper, we investigate the role of links contained in source code comments from these perspectives. We conducted a large-scale study of around 9.6 million links to establish their prevalence, and we used a mixed-methods approach to identify the links' targets, purposes, decay, and evolutionary aspects. We found that links are prevalent in source code repositories, that licenses, software homepages, and specifications are common …


Predicting Good Configurations For Github And Stack Overflow Topic Models, Christoph Treude, Markus Wagner May 2019

Predicting Good Configurations For Github And Stack Overflow Topic Models, Christoph Treude, Markus Wagner

Research Collection School Of Computing and Information Systems

Software repositories contain large amounts of textual data, ranging from source code comments and issue descriptions to questions, answers, and comments on Stack Overflow. To make sense of this textual data, topic modelling is frequently used as a text-mining tool for the discovery of hidden semantic structures in text bodies. Latent Dirichlet allocation (LDA) is a commonly used topic model that aims to explain the structure of a corpus by grouping texts. LDA requires multiple parameters to work well, and there are only rough and sometimes conflicting guidelines available on how these parameters should be set. In this paper, we …


A Homophily-Free Community Detection Framework For Trajectories With Delayed Responses, Chung-Kyun Han, Shih-Fen Cheng, Pradeep Varakantham May 2019

A Homophily-Free Community Detection Framework For Trajectories With Delayed Responses, Chung-Kyun Han, Shih-Fen Cheng, Pradeep Varakantham

Research Collection School Of Computing and Information Systems

No abstract provided.


Robust Factorization Machine: A Doubly Capped Norms Minimization, Chenghao Liu, Teng Zhang, Jundong Li, Jianwen Yin, Peilin Zhao, Jianling Sun, Steven C. H. Hoi May 2019

Robust Factorization Machine: A Doubly Capped Norms Minimization, Chenghao Liu, Teng Zhang, Jundong Li, Jianwen Yin, Peilin Zhao, Jianling Sun, Steven C. H. Hoi

Research Collection School Of Computing and Information Systems

Factorization Machine (FM) is a general supervised learning framework for many AI applications due to its powerful capability of feature engineering. Despite being extensively studied, existing FM methods have several limitations in common. First of all, most existing FM methods often adopt the squared loss in the modeling process, which can be very sensitive when the data for learning contains noises and outliers. Second, some recent FM variants often explore the low-rank structure of the feature interactions matrix by relaxing the low-rank minimization problem as a trace norm minimization, which cannot always achieve a tight approximation to the original one. …


Practitioners' Views On Good Software Testing Practices, Pavneet S. Kochhar, Xin Xia, David Lo May 2019

Practitioners' Views On Good Software Testing Practices, Pavneet S. Kochhar, Xin Xia, David Lo

Research Collection School Of Computing and Information Systems

Software testing is an integral part of software development process. Unfortunately, for many projects, bugs are prevalent despite testing effort, and testing continues to cost significant amount of time and resources. This brings forward the issue of test case quality and prompts us to investigate what make good test cases. To answer this important question, we interview 21 and survey 261 practitioners, who come from many small to large companies and open source projects distributed in 27 countries, to create and validate 29 hypotheses that describe characteristics of good test cases and testing practices. These characteristics span multiple dimensions including …


Deepjit: An End-To-End Deep Learning Framework For Just-In-Time Defect Prediction, Thong Hoang, Hoa Khanh Dam, Yasutaka Kamei, David Lo, Naoyasu Ubayashi May 2019

Deepjit: An End-To-End Deep Learning Framework For Just-In-Time Defect Prediction, Thong Hoang, Hoa Khanh Dam, Yasutaka Kamei, David Lo, Naoyasu Ubayashi

Research Collection School Of Computing and Information Systems

Software quality assurance efforts often focus on identifying defective code. To find likely defective code early, change-level defect prediction – aka. Just-In-Time (JIT) defect prediction – has been proposed. JIT defect prediction models identify likely defective changes and they are trained using machine learning techniques with the assumption that historical changes are similar to future ones. Most existing JIT defect prediction approaches make use of manually engineered features. Unlike those approaches, in this paper, we propose an end-to-end deep learning framework, named DeepJIT, that automatically extracts features from commit messages and code changes and use them to identify defects. Experiments …


Deepreview: Automatic Code Review Using Deep Multi-Instance Learning, Hengyi Li, Shuting Shi, Ferdian Thung, Xuan Huo, Bowen Xu, Ming Li, David Lo Apr 2019

Deepreview: Automatic Code Review Using Deep Multi-Instance Learning, Hengyi Li, Shuting Shi, Ferdian Thung, Xuan Huo, Bowen Xu, Ming Li, David Lo

Research Collection School Of Computing and Information Systems

Code review, an inspection of code changes in order to identify and fix defects before integration, is essential in Software Quality Assurance (SQA). Code review is a time-consuming task since the reviewers need to understand, analysis and provide comments manually. To alleviate the burden of reviewers, automatic code review is needed. However, this task has not been well studied before. To bridge this research gap, in this paper, we formalize automatic code review as a multi-instance learning task that each change consisting of multiple hunks is regarded as a bag, and each hunk is described as an instance. We propose …


Dynamic Student Classification On Memory Networks For Knowledge Tracing, Sein Minn, Michel C. Desmarais, Feida Zhu, Jing Xiao, Jianzong Wang Apr 2019

Dynamic Student Classification On Memory Networks For Knowledge Tracing, Sein Minn, Michel C. Desmarais, Feida Zhu, Jing Xiao, Jianzong Wang

Research Collection School Of Computing and Information Systems

Knowledge Tracing (KT) is the assessment of student’s knowledge state and predicting whether that student may or may not answer the next problem correctly based on a number of previous practices and outcomes in their learning process. KT leverages machine learning and data mining techniques to provide better assessment, supportive learning feedback and adaptive instructions. In this paper, we propose a novel model called Dynamic Student Classification on Memory Networks (DSCMN) for knowledge tracing that enhances existing KT approaches by capturing temporal learning ability at each time interval in student’s long-term learning process. Experimental results confirm that the proposed model …


Revocable Attribute-Based Encryption With Decryption Key Exposure Resistance And Ciphertext Delegation, Shengmin Xu, Guomin Yang, Yi Mu Apr 2019

Revocable Attribute-Based Encryption With Decryption Key Exposure Resistance And Ciphertext Delegation, Shengmin Xu, Guomin Yang, Yi Mu

Research Collection School Of Computing and Information Systems

Attribute-based encryption (ABE) enables fine-grained access control over encrypted data. A practical and popular approach for handing revocation in ABE is to use the indirect revocation mechanism, in which a key generation centre (KGC) periodically broadcasts key update information for all data users over a public channel. Unfortunately, existing RABE schemes are vulnerable to decryption key exposure attack which has been well studied in the identity-based setting. In this paper, we introduce a new notion for RABE called re-randomizable piecewise key generation by allowing a data user to re-randmomize the combined secret key and the key update to obtain the …


Dependable Machine Intelligence At The Tactical Edge, Archan Misra, Kasthuri Jayarajah, Dulanga Kaveesha Weerakoon Weerakoon Mudiyanselage, Randy Tandriansyah Daratan, Shuochao Yao, Tarek Abdelzaher Apr 2019

Dependable Machine Intelligence At The Tactical Edge, Archan Misra, Kasthuri Jayarajah, Dulanga Kaveesha Weerakoon Weerakoon Mudiyanselage, Randy Tandriansyah Daratan, Shuochao Yao, Tarek Abdelzaher

Research Collection School Of Computing and Information Systems

The paper describes a vision for dependable application of machine learning-based inferencing on resource-constrained edge devices. The high computational overhead of sophisticated deep learning learning techniques imposes a prohibitive overhead, both in terms of energy consumption and sustainable processing throughput, on such resource-constrained edge devices (e.g., audio or video sensors). To overcome these limitations, we propose a ``cognitive edge" paradigm, whereby (a) an edge device first autonomously uses statistical analysis to identify potential collaborative IoT nodes, and (b) the IoT nodes then perform real-time sharing of various intermediate state to improve their individual execution of machine intelligence tasks. We provide …


Perception Coordination Network: A Neuro Framework For Multimodal Concept Acquisition And Binding, You-Lu Xing, Xiao-Feng Shi, Fu-Rao Shen, Jin-Xi Zhao, Jing-Xin Pan, Ah-Hwee Tan Apr 2019

Perception Coordination Network: A Neuro Framework For Multimodal Concept Acquisition And Binding, You-Lu Xing, Xiao-Feng Shi, Fu-Rao Shen, Jin-Xi Zhao, Jing-Xin Pan, Ah-Hwee Tan

Research Collection School Of Computing and Information Systems

To simulate the concept acquisition and binding of different senses in the brain, a biologically inspired neural network model named perception coordination network (PCN) is proposed. It is a hierarchical structure, which is functionally divided into the primary sensory area (PSA), the primary sensory association area (SAA), and the higher order association area (HAA). The PSA contains feature neurons which respond to many elementary features, e.g., colors, shapes, syllables, and basic flavors. The SAA contains primary concept neurons which combine the elementary features in the PSA to represent unimodal concept of objects, e.g., the image of an apple, the Chinese …


To The Attention Of Mobile Software Developers: Guess What, Test Your App!, Luis C. Cruz, Rui Abreu, David Lo Apr 2019

To The Attention Of Mobile Software Developers: Guess What, Test Your App!, Luis C. Cruz, Rui Abreu, David Lo

Research Collection School Of Computing and Information Systems

Software testing is an important phase in the software development lifecycle because it helps in identifying bugs in a software system before it is shipped into the hand of its end users. There are numerous studies on how developers test general-purpose software applications. The idiosyncrasies of mobile software applications, however, set mobile apps apart from general-purpose systems (e.g., desktop, stand-alone applications, web services). This paper investigates working habits and challenges of mobile software developers with respect to testing. A key finding of our exhaustive study, using 1000 Android apps, demonstrates that mobile apps are still tested in a very ad …


Wiwear: Wearable Sensing Via Directional Wifi Energy Harvesting, Huy Vu Tran, Archan Misra, Jie Xiong, Rajesh Krishna Balan Mar 2019

Wiwear: Wearable Sensing Via Directional Wifi Energy Harvesting, Huy Vu Tran, Archan Misra, Jie Xiong, Rajesh Krishna Balan

Research Collection School Of Computing and Information Systems

Energy harvesting, from a diverse set of modes such as light or motion, has been viewed as the key to developing batteryless sensing devices. In this paper, we develop the nascent idea of harvesting RF energy from WiFi transmissions, applying it to power a prototype wearable device that captures and transmits accelerometer sensor data. Our solution, WiWear, has two key innovations: 1) beamforming WiFi transmissions to significantly boost the energy that a receiver can harvest ~23 meters away, and 2) smart zero-energy, triggering of inertial sensing, that allows intelligent duty-cycled operation of devices whose transient power consumption far exceeds what …


Quantum Computing Is Here To Stay, Manoj Thulasidas Mar 2019

Quantum Computing Is Here To Stay, Manoj Thulasidas

MITB Thought Leadership Series

QUANTUM COMPUTING is emerging from university laboratories and entering the industry arena at a painfully slow pace. The measured and deliberate progress is understandable given its complexity and promise. The stakes are high, because quantum computing presents the tantalising prospect of solving problems previously considered completely insoluble


Functionality & Privacy In Mobile Applications - Who's Going To Win The Game, Debin Gao Mar 2019

Functionality & Privacy In Mobile Applications - Who's Going To Win The Game, Debin Gao

MITB Thought Leadership Series

MOBILE APPS have brought so much convenience and fun into our lives. From route planning to grocery shopping, reserving flights and hiring bicycles, to the action games we play to pass the time on public transport.


Characterizing And Identifying Reverted Commits, Meng Yan, Xin Xia, David Lo, Ahmed E. Hassan, Shanping Li Mar 2019

Characterizing And Identifying Reverted Commits, Meng Yan, Xin Xia, David Lo, Ahmed E. Hassan, Shanping Li

Research Collection School Of Computing and Information Systems

In practice, a popular and coarse-grained approach for recovering from a problematic commit is to revert it (i.e., undoing the change). However, reverted commits could induce some issues for software development, such as impeding the development progress and increasing the difficulty for maintenance. In order to mitigate these issues, we set out to explore the following central question: can we characterize and identify which commits will be reverted? In this paper, we characterize commits using 27 commit features and build an identification model to identify commits that will be reverted. We first identify reverted commits by analyzing commit messages and …


Design And Assessment Of Myoelectric Games For Prosthesis Training Of Upper Limb Amputees, Meeralakshmi Radhakrishnan, Asim Smailagic, Brian French, Daniel P. Siewiorek, Rajesh Krishna Balan Mar 2019

Design And Assessment Of Myoelectric Games For Prosthesis Training Of Upper Limb Amputees, Meeralakshmi Radhakrishnan, Asim Smailagic, Brian French, Daniel P. Siewiorek, Rajesh Krishna Balan

Research Collection School Of Computing and Information Systems

In this paper, we present the design and evaluation of our system, which provides an engaging game-based pre-prosthesis training environment for upper limb transradial amputees. We believe that patients who train using such a training tool will demonstrate significantly higher improvement in functional performance tests using a myoelectric prosthesis than when conventional pre-prosthesis training protocols are used. We re-designed two simple games to be playable using three muscle contractions which are appropriate to pre-prosthesis exercises and are detected by an EMG-based arm sleeve. Through user studies conducted with 16 non-amputee subjects, we show that the proposed games are enjoyable, fun …


Making Wearable Sensing Less Obtrusive, Huy Vu Tran, Archan Misra Mar 2019

Making Wearable Sensing Less Obtrusive, Huy Vu Tran, Archan Misra

Research Collection School Of Computing and Information Systems

Sensing is a crucial part of any cyber-physical system. Wearable device has its huge potential for sensing applications because it is worn on the user body. However, wearable sensing can cause obtrusiveness to the user. Obtrusiveness can be seen as a perception of a lack of usefulness [1] such as a lag in user interaction channel. In addition, being worn by a user, it is not connected to a power supply, and thus needs to be removed to be charged regularly. This can cause a nuisance to elderly or disabled people. However, there are also opportunities for wearable devices to …


Ict: In-Field Calibration Transfer For Air Quality Sensor Deployments, Yun Cheng, Xiaoxi He, Zimu Zhou, Lothar Thiele Mar 2019

Ict: In-Field Calibration Transfer For Air Quality Sensor Deployments, Yun Cheng, Xiaoxi He, Zimu Zhou, Lothar Thiele

Research Collection School Of Computing and Information Systems

Recent years have witnessed a growing interest in urban air pollution monitoring, where hundreds of low-cost air quality sensors are deployed city-wide. To guarantee data accuracy and consistency, these sensors need periodic calibration after deployment. Since access to ground truth references is often limited in large-scale deployments, it is difficult to conduct city-wide post-deployment sensor calibration. In this work we propose In-field Calibration Transfer (ICT), a calibration scheme that transfers the calibration parameters of source sensors (with access to references) to target sensors (without access to references). On observing that (i) the distributions of ground truth in both source and …