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

Software Engineering Commons™

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

4,680 Full-Text Articles 7,285 Authors 2,188,662 Downloads 182 Institutions

All Articles in Software Engineering

Faceted Search

4,680 full-text articles. Page 128 of 190.

A Tree Locality-Sensitive Hash For Secure Software Testing, Camdon J. Cady 2017 Air Force Institute of Technology

A Tree Locality-Sensitive Hash For Secure Software Testing, Camdon J. Cady

Theses and Dissertations

Bugs in software that make it through testing can cost tens of millions of dollars each year, and in some cases can even result in the loss of human life. In order to eliminate bugs, developers may use symbolic execution to search through possible program states looking for anomalous states. Most of the computational effort to search through these states is spent solving path constraints in order to determine the feasibility of entering each state. State merging can make this search more efficient by combining program states, allowing multiple execution paths to be analyzed at the same time. However, a …


Graphh: High Performance Big Graph Analytics In Small Clusters, Peng SUN, Yonggang WEN, Nguyen Binh Duong TA, Xiaokui XIAO 2017 Singapore Management University

Graphh: High Performance Big Graph Analytics In Small Clusters, Peng Sun, Yonggang Wen, Nguyen Binh Duong Ta, Xiaokui Xiao

Research Collection School Of Computing and Information Systems

It is common for real-world applications to analyze big graphs using distributed graph processing systems. Popular in-memory systems require an enormous amount of resources to handle big graphs. While several out-of-core approaches have been proposed for processing big graphs on disk, the high disk I/O overhead could significantly reduce performance. In this paper, we propose GraphH to enable highperformance big graph analytics in small clusters. Specifically, we design a two-stage graph partition scheme to evenly divide the input graph into partitions, and propose a GAB (GatherApply-Broadcast) computation model to make each worker process a partition in memory at a time. …


Joanaudit: A Tool For Auditing Common Injection Vulnerabilities, Julian THOME, Lwin Khin SHAR, Domenico BIANCULLI, Lionel BRIAND 2017 Singapore Management University

Joanaudit: A Tool For Auditing Common Injection Vulnerabilities, Julian Thome, Lwin Khin Shar, Domenico Bianculli, Lionel Briand

Research Collection School Of Computing and Information Systems

JoanAudit is a static analysis tool to assist security auditors in auditing Web applications and Web services for common injection vulnerabilities during software development. It automatically identifies parts of the program code that are relevant for security and generates an HTML report to guide security auditors audit the source code in a scalable way. JoanAudit is configured with various security-sensitive input sources and sinks relevant to injection vulnerabilities and standard sanitization procedures that prevent these vulnerabilities. It can also automatically fix some cases of vulnerabilities in source code — cases where inputs are directly used in sinks without any form …


Sequential Schemes For Frequentist Estimation Of Properties In Statistical Model Checking, Cyrille JEGOUREL, Jun SUN, Jin Song DONG 2017 1 Singapore University of Technology and Design

Sequential Schemes For Frequentist Estimation Of Properties In Statistical Model Checking, Cyrille Jegourel, Jun Sun, Jin Song Dong

Research Collection School Of Computing and Information Systems

Statistical Model Checking (SMC) is an approximate verification method that overcomes the state space explosion problem for probabilistic systems by Monte Carlo simulations. Simulations might be however costly if many samples are required. It is thus necessary to implement efficient algorithms to reduce the sample size while preserving precision and accuracy. In the literature, some sequential schemes have been provided for the estimation of property occurrence based on predefined confidence and absolute or relative error. Nevertheless, these algorithms remain conservative and may result in huge sample sizes if the required precision standards are demanding. In this article, we compare some …


Automated Software Testing In The Dod: Current Practices And Opportunities For Improvement, Darryl K. Ahner, James Wisnowski, James R. Simpson 2017 Air Force Institute of Technology

Automated Software Testing In The Dod: Current Practices And Opportunities For Improvement, Darryl K. Ahner, James Wisnowski, James R. Simpson

Faculty Publications

The concept of automating the testing of software-intensive systems has been around for decades, but the practice of automating testing is scarce in many industries, especially in the government defense sector. A one-year project initiated by the Office of the Secretary of Defense (OSD), Scientific Test and Analysis Techniques Center of Excellence (STAT COE) and sponsored by Navy OPNAV N94 set out to:

  • study the degree to which the Department of Defense (DoD) has adopted automated software testing (AST);
  • share the best software practices used by industry; and
  • develop and distribute an AST implementation guide intended for program management and …


Impacts Of Java Language Features On The Memory Performances Of Android Apps, Yoonsik Cheon, Adriana Escobar De La Torre 2017 The University of Texas at El Paso

Impacts Of Java Language Features On The Memory Performances Of Android Apps, Yoonsik Cheon, Adriana Escobar De La Torre

Departmental Technical Reports (CS)

Android apps are written in Java, but unlike Java applications they are resource-constrained in storage capacity and battery lifetime. In this document, we perform an experiment to measure quantitatively the impact of Java language and standard API features on the memory efficiency of Android apps. We focus on garbage collection because it is a critical process for performance affecting user experience. We learned that even Java language constructs and standard application programming interfaces (APIs) may be a source of a performance problem causing a significant memory overhead for Android apps. Any critical section of code needs to be scrutinized on …


Sugarmate: Non-Intrusive Blood Glucose Monitoring With Smartphones, Weixi GU, Yuxun ZHOU, Zimu ZHOU, Xi LIU, Han ZOU, Pei ZHANG, Costas J. SPANOS, Lin ZHANG 2017 Singapore Management University

Sugarmate: Non-Intrusive Blood Glucose Monitoring With Smartphones, Weixi Gu, Yuxun Zhou, Zimu Zhou, Xi Liu, Han Zou, Pei Zhang, Costas J. Spanos, Lin Zhang

Research Collection School Of Computing and Information Systems

Inferring abnormal glucose events such as hyperglycemia and hypoglycemia is crucial for the health of both diabetic patients and non-diabetic people. However, regular blood glucose monitoring can be invasive and inconvenient in everyday life. We present SugarMate, a first smartphone-based blood glucose inference system as a temporary alternative to continuous blood glucose monitors (CGM) when they are uncomfortable or inconvenient to wear. In addition to the records of food, drug and insulin intake, it leverages smartphone sensors to measure physical activities and sleep quality automatically. Provided with the imbalanced and often limited measurements, a challenge of SugarMate is the inference …


Audiosense: Sound-Based Shopper Behavior Analysis System, Amit SHARMA, Youngki LEE 2017 Singapore Management University

Audiosense: Sound-Based Shopper Behavior Analysis System, Amit Sharma, Youngki Lee

Research Collection School Of Computing and Information Systems

This paper presents AudioSense, the system to monitor user-item interactions inside a store hence enabling precisely customized promotions. A shopper's smartwatch emits sound every time the shopper picks up or touches an item inside a store. This sound is then localized, in 2D space, by calculating the angles of arrival captured by multiple microphones deployed on the racks. Lastly, the 2D location is mapped to specific items on the rack based on the rack layout information. In our initial experiments conducted with a single rack with 16 compartments, we could localize the shopper's smartwatch with a median estimation error of …


Clsters: A General System For Reducing Errors Of Trajectories Under Challenging Localization Situations, Hao WU, Weiwei SUN, Baihua ZHENG, Li YANG, Wei ZHOU 2017 Fudan University

Clsters: A General System For Reducing Errors Of Trajectories Under Challenging Localization Situations, Hao Wu, Weiwei Sun, Baihua Zheng, Li Yang, Wei Zhou

Research Collection School Of Computing and Information Systems

Trajectory data generated by outdoor activities have great potential for location based services. However, depending on the localization technique used, certain trajectory data could contain large errors. For example, the error of trajectories generated by cellular-based localization techniques is around 100m which is ten times larger than that of GPS-based trajectories. Hence, enhancing the utility of those large-error trajectories becomes a challenge. In this paper we show how to improve the quality of trajectory data having large errors. Some existing works reduce the error through hardware which requires information such as the time of arrival (TOA), received signal strength indication …


Xsearch: A Domain-Specific Cross-Language Relevant Question Retrieval Tool, Bowen XU, Zhenchang XING, Xin XIA, David LO, Xuan-Bach D. LE 2017 Singapore Management University

Xsearch: A Domain-Specific Cross-Language Relevant Question Retrieval Tool, Bowen Xu, Zhenchang Xing, Xin Xia, David Lo, Xuan-Bach D. Le

Research Collection School Of Computing and Information Systems

During software development process, Chinese developers often seek solutions to the technical problems they encounter by searching relevant questions on Q&A sites. When developers fail to find solutions on Q&A sites in Chinese, they could translate their query and search on the English Q&A sites. However, Chinese developers who are non-native English speakers often are not comfortable to ask or search questions in English, as they do not know the proper translation of the Chinese technical words into the English technical words. Furthermore, the process of manually formulating cross-language queries and determining the importance of query words is a tedious …


S3: Syntax- And Semantic-Guided Repair Synthesis Via Programming By Examples, Xuan-Bach D. LE, Duc-Hiep CHU, David LO, Claire LE GOUES, Willem VISSER 2017 Singapore Management University

S3: Syntax- And Semantic-Guided Repair Synthesis Via Programming By Examples, Xuan-Bach D. Le, Duc-Hiep Chu, David Lo, Claire Le Goues, Willem Visser

Research Collection School Of Computing and Information Systems

A notable class of techniques for automatic program repair is known as semantics-based. Such techniques, e.g., Angelix, infer semantic specifications via symbolic execution, and then use program synthesis to construct new code that satisfies those inferred specifications. However, the obtained specifications are naturally incomplete, leaving the synthesis engine with a difficult task of synthesizing a general solution from a sparse space of many possible solutions that are consistent with the provided specifications but that do not necessarily generalize. We present S3, a new repair synthesis engine that leverages programming-by-examples methodology to synthesize high-quality bug repairs. The novelty in S3 that …


Personality And Project Success: Insights From A Large-Scale Study With Professionals, Xin XIA, David LO, Lingfeng BAO, Abhishek SHARMA, Shanping LI 2017 Singapore Management University

Personality And Project Success: Insights From A Large-Scale Study With Professionals, Xin Xia, David Lo, Lingfeng Bao, Abhishek Sharma, Shanping Li

Research Collection School Of Computing and Information Systems

A software project is typically completed as a result of a collective effort done by individuals of different personalities. Personality reflects differences among people in behaviour patterns, communication, cognition and emotion. It often impacts relationships and collaborative work, and software engineering teamwork is no exception. Some personalities are more likely to click while others to clash. A number of studies have investigated the relationship between personality and collaborative work success. However, most of them are done in a laboratory setting, do not involve professionals, or consider non software engineering tasks. Additionally, they only answer a limited set of questions, and …


Inferring Spread Of Readers’ Emotion Affected By Online News, Agus SULISTYA, Ferdian THUNG, David LO 2017 Singapore Management University

Inferring Spread Of Readers’ Emotion Affected By Online News, Agus Sulistya, Ferdian Thung, David Lo

Research Collection School Of Computing and Information Systems

Depending on the reader, A news article may be viewed from many different perspectives, thus triggering different (and possibly contradicting) emotions. In this paper, we formulate a problem of predicting readers’ emotion distribution affected by a news article. Our approach analyzes affective annotations provided by readers of news articles taken from a non-English online news site. We create a new corpus from the annotated articles, and build a domain-specific emotion lexicon and word embedding features. We finally construct a multi-target regression model from a set of features extracted from online news articles. Our experiments show that by combining lexicon and …


Automated Android Application Permission Recommendation, Lingfeng BAO, David LO, Xin XIA, Shanping LI 2017 Zhejiang University

Automated Android Application Permission Recommendation, Lingfeng Bao, David Lo, Xin Xia, Shanping Li

Research Collection School Of Computing and Information Systems

The number of Android applications has increased rapidly as Android is becoming the dominant platform in the smartphone market. Security and privacy are key factors for an Android application to be successful. Android provides a permission mechanism to ensure security and privacy. This permission mechanism requires that developers declare the sensitive resources required by their applications. On installation or during runtime, users are required to agree with the permission request. However, in practice, there are numerous popular permission misuses, despite Android introducing official documents stating how to use these permissions properly. Some data mining techniques (e.g., association rule mining) have …


Code Coverage And Postrelease Defects: A Large-Scale Study On Open Source Projects, Pavneet Singh KOCHHAR, David LO, Julia LAWALL, Nachiappan NAGAPPAN 2017 Singapore Management University

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 …


Unobtrusive Monitoring To Detect Depression For Elderly With Chronic Illnesses, Jung-Yoon KIM, Na LIU, Hwee Xian TAN, Chao-Hsien CHU 2017 University of Michigan

Unobtrusive Monitoring To Detect Depression For Elderly With Chronic Illnesses, Jung-Yoon Kim, Na Liu, Hwee Xian Tan, Chao-Hsien Chu

Research Collection School Of Computing and Information Systems

Mental health related disorders are common diseases, especially among the elder. Among the various mental health diseases, one potential threat to ageing-in-place is the risk of depression. In this paper, we propose a simple unobtrusive sensing system using passive infra-red motion sensors to monitor the activities of daily living of elderly, who are living alone. A feature extraction module comprising of three layers-states, events, and activities, and the corresponding algorithms are proposed to extract features. Four popular classification models-neural network, C4.5 decision tree, Bayesian network, and support vector machine are then applied to detect the severity of depression. We implement …


Github And Stack Overflow: Analyzing Developer Interests Across Multiple Social Collaborative Platforms, Ka Wei Roy LEE, David LO 2017 Singapore Management University

Github And Stack Overflow: Analyzing Developer Interests Across Multiple Social Collaborative Platforms, Ka Wei Roy Lee, David Lo

Research Collection School Of Computing and Information Systems

Increasingly, software developers are using a wide array of social collaborative platforms for software development and learning. In this work, we examined the similarities in developer’s interests within and across GitHub and Stack Overflow. Our study finds that developers share common interests in GitHub and Stack Overflow; on average, 39% of the GitHub repositories and Stack Overflow questions that a developer had participated fall in the common interests. Also, developers do share similar interests with other developers who co-participated activities in the two platforms. In particular, developers who co-commit and co-pull-request same GitHub repositories and co-answer same Stack Overflow questions, …


Loopster: Static Loop Termination Analysis, Xiaofei XIE, Bihuan CHEN, Liang ZOU, Shang-Wei LIN, Yang LIU, Xiaohong LI 2017 Singapore Management University

Loopster: Static Loop Termination Analysis, Xiaofei Xie, Bihuan Chen, Liang Zou, Shang-Wei Lin, Yang Liu, Xiaohong Li

Research Collection School Of Computing and Information Systems

Loop termination is an important problem for proving the correctness of a system and ensuring that the system always reacts. Existing loop termination analysis techniques mainly depend on the synthesis of ranking functions, which is often expensive. In this paper, we present a novel approach, named Loopster, which performs an efficient static analysis to decide the termination for loops based on path termination analysis and path dependency reasoning. Loopster adopts a divide-and-conquer approach: (1) we extract individual paths from a target multi-path loop and analyze the termination of each path, (2) analyze the dependencies between each two paths, and then …


Nlp2code: Code Snippet Content Assist Via Natural Language Tasks, Brock A. CAMPBELL, Christoph TREUDE 2017 Singapore Management University

Nlp2code: Code Snippet Content Assist Via Natural Language Tasks, Brock A. Campbell, Christoph Treude

Research Collection School Of Computing and Information Systems

Developers increasingly take to the Internet for code snippets to integrate into their programs. To save developers the time required to switch from their development environments to a web browser in the quest for a suitable code snippet, we introduce NLP2Code, a content assist for code snippets. Unlike related tools, NLP2Code integrates directly into the source code editor and provides developers with a content assist feature to close the vocabulary gap between developers’ needs and code snippet meta data. Our preliminary evaluation of NLP2Code shows that the majority of invocations lead to code snippets rated as helpful by users and …


On-Demand Developer Documentation, Martin P. ROBILLARD, Andrian MARCUS, Christoph TREUDE, Gabriele BAVOTA, Oscar CHAPARRO, Neil ERNST, Marco Aurélio GEROSA, Michael GODFREY, Michele LANZA, Mario LINARES-VASQUEZ, Gail C. MURPHY, Laura MORENO, David SHEPHERD, Edmund WONG 2017 Singapore Management University

On-Demand Developer Documentation, Martin P. Robillard, Andrian Marcus, Christoph Treude, Gabriele Bavota, Oscar Chaparro, Neil Ernst, Marco Aurélio Gerosa, Michael Godfrey, Michele Lanza, Mario Linares-Vasquez, Gail C. Murphy, Laura Moreno, David Shepherd, Edmund Wong

Research Collection School Of Computing and Information Systems

We advocate for a paradigm shift in supporting the information needs of developers, centered around the concept of automated on-demand developer documentation. Currently, developer information needs are fulfilled by asking experts or consulting documentation. Unfortunately, traditional documentation practices are inefficient because of, among others, the manual nature of its creation and the gap between the creators and consumers. We discuss the major challenges we face in realizing such a paradigm shift, highlight existing research that can be leveraged to this end, and promote opportunities for increased convergence in research on software documentation.


Digital Commons powered by bepress