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

Software Engineering Commons™

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

2018

Discipline
Institution
Keyword
Publication
Publication Type
File Type

Articles 61 - 90 of 249

Full-Text Articles in Software Engineering

Teaching Adult Learners On Software Architecture Design Skills, Eng Lieh Ouh, Yunghans Irawan Oct 2018

Teaching Adult Learners On Software Architecture Design Skills, Eng Lieh Ouh, Yunghans Irawan

Research Collection School Of Computing and Information Systems

Software architectures present high-level views ofsystems, enabling developers to abstract away the unnecessarydetails and focus on the overall big picture. Designing a softwarearchitecture is an essential skill in software engineering and adultlearners are seeking this skill to further progress in their career.With the technology revolution and advancements in this rapidlychanging world, the proportion of adult learners attendingcourses for continuing education are increasing. Their learningobjectives are no longer to obtain good grades but the practicalskills to enable them to perform better in their work and advancein their career. Teaching software architecture to upskill theseadult learners requires contending with the problem of …


Categorizing The Content Of Github Readme Files, Gede Artha Azriadi Prana, Christoph Treude, Ferdian Thung, Thushari Atapattu, David Lo Oct 2018

Categorizing The Content Of Github Readme Files, Gede Artha Azriadi Prana, Christoph Treude, Ferdian Thung, Thushari Atapattu, David Lo

Research Collection School Of Computing and Information Systems

README files play an essential role in shaping a developer’s first impression of a software repository and in documenting the software project that the repository hosts. Yet, we lack a systematic understanding of the content of a typical README file as well as tools that can process these files automatically. To close this gap, we conduct a qualitative study involving the manual annotation of 4,226 README file sections from 393 randomly sampled GitHub repositories and we design and evaluate a classifier and a set of features that can categorize these sections automatically. We find that information discussing the ‘What’ and …


A Learning And Masking Approach To Secure Learning, Linh Nguyen, Sky Wang, Arunesh Sinha Oct 2018

A Learning And Masking Approach To Secure Learning, Linh Nguyen, Sky Wang, Arunesh Sinha

Research Collection School Of Computing and Information Systems

Deep Neural Networks (DNNs) have been shown to be vulnerable against adversarial examples, which are data points cleverly constructed to fool the classifier. Such attacks can be devastating in practice, especially as DNNs are being applied to ever increasing critical tasks like image recognition in autonomous driving. In this paper, we introduce a new perspective on the problem. We do so by first defining robustness of a classifier to adversarial exploitation. Next, we show that the problem of adversarial example generation can be posed as learning problem. We also categorize attacks in literature into high and low perturbation attacks; well-known …


Hawkeye: Towards A Desired Directed Grey-Box Fuzzer, Hongxu Chen, Yinxing Xue, Yuekang Li, Bihuan Chen, Xiaofei Xie, Xiuheng Wu, Yang Liu Oct 2018

Hawkeye: Towards A Desired Directed Grey-Box Fuzzer, Hongxu Chen, Yinxing Xue, Yuekang Li, Bihuan Chen, Xiaofei Xie, Xiuheng Wu, Yang Liu

Research Collection School Of Computing and Information Systems

Grey-box fuzzing is a practically effective approach to test real-world programs. However, most existing grey-box fuzzers lack directedness, i.e. the capability of executing towards user-specified target sites in the program. To emphasize existing challenges in directed fuzzing, we propose Hawkeye to feature four desired properties of directed grey-box fuzzers. Owing to a novel static analysis on the program under test and the target sites, Hawkeye precisely collects the information such as the call graph, function and basic block level distances to the targets. During fuzzing, Hawkeye evaluates exercised seeds based on both static information and the execution traces to generate …


A Tool For Optimizing Java 8 Stream Software Via Automated Refactoring, Raffi Khatchadourian, Yiming Tang, Mehdi Bagherzadeh, Syed Ahmed Sep 2018

A Tool For Optimizing Java 8 Stream Software Via Automated Refactoring, Raffi Khatchadourian, Yiming Tang, Mehdi Bagherzadeh, Syed Ahmed

Publications and Research

Streaming APIs are pervasive in mainstream Object-Oriented languages. For example, the Java 8 Stream API allows for functional-like, MapReduce-style operations in processing both finite and infinite data structures. However, using this API efficiently involves subtle considerations like determining when it is best for stream operations to run in parallel, when running operations in parallel can be less efficient, and when it is safe to run in parallel due to possible lambda expression side-effects. In this paper, we describe the engineering aspects of an open source automated refactoring tool called Optimize Streams that assists developers in writing optimal stream software in …


Cultivating Third Party Development In Platform-Centric Software Ecosystems: Extended Boundary Resources Model, Brown C. Msiska Sep 2018

Cultivating Third Party Development In Platform-Centric Software Ecosystems: Extended Boundary Resources Model, Brown C. Msiska

The African Journal of Information Systems

Software ecosystems provide an effective way through which software solutions can be constructed by composing software components, typically applications, developed by internal and external developers on top of a software platform. Third party development increases the potential of a software ecosystem to effectively and quickly respond to context-specific software requirements. The boundary resources model gives a theoretical account for cultivation of third party development premised on the role of platform boundary resources such as application programming interfaces (API). However, from a longitudinal case study of the DHIS2 software ecosystem, this paper observes that no matter how good the boundary resources …


Break The Dead End Of Dynamic Slicing: Localizing Data And Control Omission Bug, Yun Lin, Jun Sun, Lyly Tran, Guangdong Bai, Haijun Wang, Jin Song Dong Sep 2018

Break The Dead End Of Dynamic Slicing: Localizing Data And Control Omission Bug, Yun Lin, Jun Sun, Lyly Tran, Guangdong Bai, Haijun Wang, Jin Song Dong

Research Collection School Of Computing and Information Systems

Dynamic slicing is a common way of identifying the root cause when a program fault is revealed. With the dynamic slicing technique, the programmers can follow data and control flow along the program execution trace to the root cause. However, the technique usually fails to work on omission bugs, i.e., the faults which are caused by missing executing some code. In many cases, dynamic slicing over-skips the root cause when an omission bug happens, leading the debugging process to a dead end. In this work, we conduct an empirical study on the omission bugs in the Defects4J bug repository. Our …


Pfix: Fixing Concurrency Bugs Based On Memory Access Patterns, Huarui Lin, Zan Wang, Shuang Liu, Jun Sun, Dongdi Zhang, Guangning Wei Sep 2018

Pfix: Fixing Concurrency Bugs Based On Memory Access Patterns, Huarui Lin, Zan Wang, Shuang Liu, Jun Sun, Dongdi Zhang, Guangning Wei

Research Collection School Of Computing and Information Systems

Concurrency bugs of a multi-threaded program may only manifest with certain scheduling, i.e., they are heisenbugs which are observed only from time to time if we execute the same program with the same input multiple times. They are notoriously hard to fix. In this work, we propose an approach to automatically fix concurrency bugs. Compared to previous approaches, our key idea is to systematically fix concurrency bugs by inferring locking policies from failure inducing memory-access patterns. That is, we automatically identify memory-access patterns which are correlated with the manifestation of the bug, and then conjecture what is the intended locking …


Hpc For Predictive Models In Healthcare, Luiz Fernando Capretz Sep 2018

Hpc For Predictive Models In Healthcare, Luiz Fernando Capretz

Electrical and Computer Engineering Publications

Increasingly we are faced with complex health data, thus researchers are limited in their capacity to mine data in a way that accounts for the complex inter-relationships between health variables of interest. This research tackles the challenge of producing accurate health prediction models in order to overcome the limitations of simple multivariate regression techniques and the assumption of linear association, also known as algorithmic models, by combining it with a soft computing approach. Predictive models develop methods to enable healthcare researchers and professionals to predict the likelihood of an individual's proclivity to a disease and the likely effectiveness of possible …


List, Sample, And Count, Ali Assarpour Sep 2018

List, Sample, And Count, Ali Assarpour

Dissertations, Theses, and Capstone Projects

Counting plays a fundamental role in many scientific fields including chemistry, physics, mathematics, and computer science. There are two approaches for counting, the first relies on analytical tools to drive closed form expression, while the second takes advantage of the combinatorial nature of the problem to construct an algorithm whose output is the number of structures. There are many algorithmic techniques for counting, they cover the explicit approach of counting by listing to the approximate approach of counting by sampling.

This thesis looks at counting three sets of objects. First, we consider a subclass of boolean functions that are monotone. …


Enhancing 3d Visual Odometry With Single-Camera Stereo Omnidirectional Systems, Carlos A. Jaramillo Sep 2018

Enhancing 3d Visual Odometry With Single-Camera Stereo Omnidirectional Systems, Carlos A. Jaramillo

Dissertations, Theses, and Capstone Projects

We explore low-cost solutions for efficiently improving the 3D pose estimation problem of a single camera moving in an unfamiliar environment. The visual odometry (VO) task -- as it is called when using computer vision to estimate egomotion -- is of particular interest to mobile robots as well as humans with visual impairments. The payload capacity of small robots like micro-aerial vehicles (drones) requires the use of portable perception equipment, which is constrained by size, weight, energy consumption, and processing power. Using a single camera as the passive sensor for the VO task satisfies these requirements, and it motivates the …


Rule-Based Specification Mining Leveraging Learning To Rank, Zherui Cao, Yuan Tian, Bui Tien Duy Le, David Lo Sep 2018

Rule-Based Specification Mining Leveraging Learning To Rank, Zherui Cao, Yuan Tian, Bui Tien Duy Le, David Lo

Research Collection School Of Computing and Information Systems

Software systems are often released without formal specifications. To deal with the problem of lack of and outdated specifications, rule-based specification mining approaches have been proposed. These approaches analyze execution traces of a system to infer the rules that characterize the protocols, typically of a library, that its clients must obey. Rule-based specification mining approaches work by exploring the search space of all possible rules and use interestingness measures to differentiate specifications from false positives. Previous rule-based specification mining approaches often rely on one or two interestingness measures, while the potential benefit of combining multiple available interestingness measures is not …


Welcome Message From The Dysdoc3 2018 Chairs, Martin P. Robillard, Andrian Marcus, Christoph Treude, Michele Lanza Sep 2018

Welcome Message From The Dysdoc3 2018 Chairs, Martin P. Robillard, Andrian Marcus, Christoph Treude, Michele Lanza

Research Collection School Of Computing and Information Systems

Presents the introductory welcome message from the conference proceedings. May include the conference officers' congratulations to all involved with the conference event and publication of the proceedings record.


A Vector Field Design Approach To Animated Transitions, Yong Wang, Daniel Archambault, Carlos E. Scheidegger, Huamin Qu Sep 2018

A Vector Field Design Approach To Animated Transitions, Yong Wang, Daniel Archambault, Carlos E. Scheidegger, Huamin Qu

Research Collection School Of Computing and Information Systems

Animated transitions can be effective in explaining and exploring a small number of visualizations where there are drastic changes in the scene over a short interval of time. This is especially true if data elements cannot be visually distinguished by other means. Current research in animated transitions has mainly focused on linear transitions (all elements follow straight line paths) or enhancing coordinated motion through bundling of linear trajectories. In this paper, we introduce animated transition design, a technique to build smooth, non-linear transitions for clustered data with either minimal or no user involvement. The technique is flexible and simple to …


Focusvr: Effective And Usable Vr Display Power Management, Kiat Wee Tan, Eduardo Cuervo, Rajesh Krishna Balan Sep 2018

Focusvr: Effective And Usable Vr Display Power Management, Kiat Wee Tan, Eduardo Cuervo, Rajesh Krishna Balan

Research Collection School Of Computing and Information Systems

In this paper, we present the design and implementation of FocusVR, a system for effectively and efficiently reducing the power consumption of Virtual Reality (VR) devices by smartly dimming their displays. These devices are becoming increasingly common with large companies such as Facebook (Oculus Rift), and HTC and Valve (Vive), recently releasing high quality VR devices to the consumer market. However, these devices require increasingly higher screen resolutions and refresh rates to be effective, and this in turn, leads to high display power consumption costs. We show how the use of smart dimming techniques, vignettes and color mapping, can significantly …


Neural-Machine-Translation-Based Commit Message Generation: How Far Are We?, Zhongxin Liu, Xin Xia, Ahmed E. Hassan, David Lo, Zhenchang Xing, Xinyu Wang Sep 2018

Neural-Machine-Translation-Based Commit Message Generation: How Far Are We?, Zhongxin Liu, Xin Xia, Ahmed E. Hassan, David Lo, Zhenchang Xing, Xinyu Wang

Research Collection School Of Computing and Information Systems

Commit messages can be regarded as the documentation of software changes. These messages describe the content and purposes of changes, hence are useful for program comprehension and software maintenance. However, due to the lack of time and direct motivation, commit messages sometimes are neglected by developers. To address this problem, Jiang et al. proposed an approach (we refer to it as NMT), which leverages a neural machine translation algorithm to automatically generate short commit messages from code. The reported performance of their approach is promising, however, they did not explore why their approach performs well. Thus, in this paper, we …


Api Method Recommendation Without Worrying About The Task-Api Knowledge Gap, Qiao Huang, Xin Xia, Zhenchang Xing, David Lo, Xinyu Wang Sep 2018

Api Method Recommendation Without Worrying About The Task-Api Knowledge Gap, Qiao Huang, Xin Xia, Zhenchang Xing, David Lo, Xinyu Wang

Research Collection School Of Computing and Information Systems

Developers often need to search for appropriate APIs for theirprogramming tasks. Although most libraries have API referencedocumentation, it is not easy to find appropriate APIs due to thelexical gap and knowledge gap between the natural language description of the programming task and the API description in APIdocumentation. Here, the lexical gap refers to the fact that the samesemantic meaning can be expressed by different words, and theknowledge gap refers to the fact that API documentation mainlydescribes API functionality and structure but lacks other types ofinformation like concepts and purposes, which are usually the keyinformation in the task description. In this …


Efficient And Privacy-Preserving Online Face Recognition Over Encrypted Outsourced Data, Xiaopeng Yang, Hui Zhu, Rongxing Lu, Ximeng Liu, Hui Li Sep 2018

Efficient And Privacy-Preserving Online Face Recognition Over Encrypted Outsourced Data, Xiaopeng Yang, Hui Zhu, Rongxing Lu, Ximeng Liu, Hui Li

Research Collection School Of Computing and Information Systems

With the development of image processing technology and the pervasiveness of mobile devices, face recognition, which can be used to offer convenient and efficient individual authentication service, has attracted considerable interest in recent years. However, people's concern about their face data being leaked during the face recognition process impedes the flourish of face recognition. To address this problem, we present a novel privacy-preserving online face recognition scheme over encrypted outsourced data, named EPFR. With EPFR, a user can achieve secure, accurate and efficient authentication service without disclosing her/his face data. Specifically, an improved homomorphic encryption technology is introduced to provide …


A Hybrid Model For Identity Obfuscation By Face Replacement, Qianru Sun, Ayush Tewari, Weipeng Xu, Mario Fritz, Christian Theobalt, Bernt Schiele Sep 2018

A Hybrid Model For Identity Obfuscation By Face Replacement, Qianru Sun, Ayush Tewari, Weipeng Xu, Mario Fritz, Christian Theobalt, Bernt Schiele

Research Collection School Of Computing and Information Systems

As more and more personal photos are shared and tagged in social media, avoiding privacy risks such as unintended recognition, becomes increasingly challenging. We propose a new hybrid approach to obfuscate identities in photos by head replacement. Our approach combines state of the art parametric face synthesis with latest advances in Generative Adversarial Networks (GAN) for data-driven image synthesis. On the one hand, the parametric part of our method gives us control over the facial parameters and allows for explicit manipulation of the identity. On the other hand, the data-driven aspects allow for adding fine details and overall realism as …


Bilock: User Authentication Via Dental Occlusion Biometrics, Yongpan Zou, Meng Zhao, Zimu Zhou, Jiawei Lin, Mo Li, Kaishun Wu Sep 2018

Bilock: User Authentication Via Dental Occlusion Biometrics, Yongpan Zou, Meng Zhao, Zimu Zhou, Jiawei Lin, Mo Li, Kaishun Wu

Research Collection School Of Computing and Information Systems

User authentication on smart devices is indispensable to keep data privacy and security. It is especially significant for emerging wearable devices such as smartwatches considering data sensitivity in them. However, conventional authentication methods are not applicable for wearables due to constraints of size and hardware, which makes present wearable devices lack convenient, secure and low-cost authentication schemes. To tackle this problem, we reveal a novel biometric authentication mechanism which makes use of sounds of human dental occlusion (i.e., tooth click). We demonstrate its feasibility by comprehensive measurement study, and design a prototype-BiLock with two Android platforms. Extensive real-world experiments have …


Computational Thinking And Literacy, Sharin Rawhiya Jacob, Mark Warschauer Aug 2018

Computational Thinking And Literacy, Sharin Rawhiya Jacob, Mark Warschauer

Journal of Computer Science Integration

Today’s students will enter a workforce that is powerfully shaped by computing. To be successful in a changing economy, students must learn to think algorithmically and computationally, to solve problems with varying levels of abstraction. These computational thinking skills have become so integrated into social function as to represent fundamental literacies. However, computer science has not been widely taught in K-12 schools. Efforts to create computer science standards and frameworks have yet to make their way into mandated course requirements. Despite a plethora of research on digital literacies, research on the role of computational thinking in the literature is sparse. …


Cloud Service Reliability And Usability Measurement, Abdullah Bokhary Aug 2018

Cloud Service Reliability And Usability Measurement, Abdullah Bokhary

Computer Science and Engineering Theses and Dissertations

Cloud computing has become a major resource for fulfilling people's computational and storage needs. Investing in these services requires measuring and assuring its quality in general, and reliability and usability are primary concerns. However, using traditional reliability models can be challenging because of the environmental constraints and limited data availability due to the heterogeneous environment and diverse stakeholders. Also, the quality of cloud service Application Programming Interfaces (APIs) has a direct impact on the usability and reliability of the service.

We developed a framework to measure reliability with alternative available information that most cloud providers offer in three stages: 1) …


Exploring Confidentiality Issues In Hyperledger Fabric Business Applications, Shivam Bajpayi, Pedro Moreno-Sanchez, Donghang Lu, Sihao Yin Aug 2018

Exploring Confidentiality Issues In Hyperledger Fabric Business Applications, Shivam Bajpayi, Pedro Moreno-Sanchez, Donghang Lu, Sihao Yin

The Summer Undergraduate Research Fellowship (SURF) Symposium

The rise of Bitcoin and cryptocurrencies over the last decade have made its underlying technology (blockchain) come into the spotlight. Blockchain is a secure ledger of linked records called blocks. These records are cryptographically immutable and any tampering with the block is evident through a change in the cryptographic signature of the block. Among the blockchains deployed in practice today, Hyperledger Fabric is a platform that allows businesses to make use of blockchains in their applications. However, confidentiality issues arise with respects to the blocks in this blockchain network due to the fact that blocks might contain sensitive information accessible …


Visualization Of Geospatial Data As An Analytical And Educational Tool, Richard A. Vu Aug 2018

Visualization Of Geospatial Data As An Analytical And Educational Tool, Richard A. Vu

STAR Program Research Presentations

World Wind is an open-source API developed for Java, Android, and browsers that is designed to visualize and interact with geospatial data. The Web World Wind client is composed of four major components: the HTML template, the globe, geospatial features, and application features. The template was implemented using Bootstrap and hosts the globe provided by World Wind. This globe draws its data from multiple imagery sources, including the Open Geospatial Consortium (OGC) Web Map Service and Web Map Tile Service. This enables the application to perform and visualize complex calculations with multiple types of data such as weather and terrain. …


Formal Verification Of A Modern Boot Loader, Scott D. Constable, Rob Sutton, Arash Sahebolamri, Steve Chapin Aug 2018

Formal Verification Of A Modern Boot Loader, Scott D. Constable, Rob Sutton, Arash Sahebolamri, Steve Chapin

Electrical Engineering and Computer Science - Technical Reports

We introduce the Syracuse Assured Boot Loader Executive (SABLE), a trustworthy secure loader. A trusted boot loader performs a cryptographic measurement (hash) of program code and executes it unconditionally, allowing later-stage software to verify the integrity of the system through local or remote attestation. A secure loader differs from a trusted loader in that it executes subsequent code only if measurements of that code match known-good values. We have applied a rigorous formal verification technique recently demonstrated in practice by NICTA in their verification of the seL4 microkernel. We summarize our design philosophy from a high level and present our …


Fusing Multi-Abstraction Vector Space Models For Concern Localization, Yun Zhang, David Lo, Xin Xia, Giuseppe Scanniello, Tien-Duy B. Le, Jianling Sun Aug 2018

Fusing Multi-Abstraction Vector Space Models For Concern Localization, Yun Zhang, David Lo, Xin Xia, Giuseppe Scanniello, Tien-Duy B. Le, Jianling Sun

Research Collection School Of Computing and Information Systems

Concern localization refers to the process of locating code units that match a particular textual description. It takes as input textual documents such as bug reports and feature requests and outputs a list of candidate code units that are relevant to the bug reports or feature requests. Many information retrieval (IR) based concern localization techniques have been proposed in the literature. These techniques typically represent code units and textual descriptions as a bag of tokens at one level of abstraction, e.g., each token is a word, or each token is a topic. In this work, we propose a multi-abstraction concern …


Detecting Saliency By Combining Speech And Object Detection In Indoor Environments, Kiran Thapa Aug 2018

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 …


A Formal Specification And Verification Framework For Timed Security Protocols, Li Li, Jun Sun, Yang Liu, Meng Sun, Jin Song Dong Aug 2018

A Formal Specification And Verification Framework For Timed Security Protocols, Li Li, Jun Sun, Yang Liu, Meng Sun, Jin Song Dong

Research Collection School Of Computing and Information Systems

Nowadays, protocols often use time to provide better security. For instance, critical credentials are often associated with expiry dates in system designs. However, using time correctly in protocol design is challenging, due to the lack of time related formal specification and verification techniques. Thus, we propose a comprehensive analysis framework to formally specify as well as automatically verify timed security protocols. A parameterized method is introduced in our framework to handle timing parameters whose values cannot be decided in the protocol design stage. In this work, we first propose timed applied p-calculus as a formal language for specifying timed security …


An Empirical Study Of Security Issues Posted In Open Source Projects, Mansooreh Zahedi, M. Ali Babar, Christoph Treude Aug 2018

An Empirical Study Of Security Issues Posted In Open Source Projects, Mansooreh Zahedi, M. Ali Babar, Christoph Treude

Research Collection School Of Computing and Information Systems

When developers gain thorough understanding and knowledge of software security, they can produce more secure software. This study aims at empirically identifying and understanding the security issues posted on a random sample of GitHub repositories. We tried to understand the presence of security issues and their key themes and topics. We applied a mixedmethods approach, combining topic modeling techniques and qualitative analysis. Our findings have revealed that a) the rate of security-related issues was rather small (approx. 3% of all issues), b) the majority of the security issues were related to identity management and cryptography topics. We present 7 high-level …


Performance, Scalability, And Robustness In Distributed File Tree Copy, Christopher Robert Sutton Aug 2018

Performance, Scalability, And Robustness In Distributed File Tree Copy, Christopher Robert Sutton

Boise State University Theses and Dissertations

As storage needs continually increase, and network file systems become more common, the need arises for tools that efficiently copy to and from these types of file systems. Traditional copy tools like the Linux cp utility were originally created for traditional storage systems, where storage is managed by a single host machine. cp uses a single-threaded approach to copying files. Using a multi-threaded approach would likely not provide an advantage in this system since the disk accesses are the bottleneck for this type of operation. In a distributed file system the disk accesses are spread across multiple hosts, and many …