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

Computer Sciences Commons™

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

Software Engineering

Institution
Keyword
Publication Year
Publication
Publication Type
File Type

Articles 2551 - 2580 of 4315

Full-Text Articles in Computer Sciences

Value-Inspired Elderly Care Service Design For Aging-In-Place, Na Liu, Sandeep Purao, Hwee-Pink Tan Jun 2016

Value-Inspired Elderly Care Service Design For Aging-In-Place, Na Liu, Sandeep Purao, Hwee-Pink Tan

Research Collection School Of Computing and Information Systems

Most current projects aimed at in-home monitoring for the elderly appear to focus on demonstrating technical feasibility and ensuring safety. In doing so, they often overlook the complexity of the interactions between the elderly and the caregivers. This study explores this complexity by adopting a value-inspired design perspective. Following an action design method, we describe the (re)design of the system and service protocol for an elderly-home monitoring effort. The work requires that we leverage the capabilities (of the technological infrastructure system as well as the service providers) to reconcile the values held by the participants (the elderly and their caregivers). …


Indoor Location Error-Detection Via Crowdsourced Multi-Dimensional Mobile Data, Savina Singla, Archan Misra Jun 2016

Indoor Location Error-Detection Via Crowdsourced Multi-Dimensional Mobile Data, Savina Singla, Archan Misra

Research Collection School Of Computing and Information Systems

We explore the use of multi-dimensional mobile sensing data as a means of identifying errors in one or more of those data streams. More specifically, we look at the possibility of identifying indoor locations with likely incorrect/stale Wi-Fi fingerprints, by using concurrent readings from Wi-Fi and barometer sensors from a collection of mobile devices. Our key contribution is a novel two-step process: (i) using longitudinal, crowd-sourced readings of (possibly incorrect) Wi-Fi location estimates to statistically estimate the barometer calibration offset of individual mobile devices, and (ii) then, using such offset-corrected barometer readings from devices (that are supposedly collocated) to identify …


Cdrep: Automatic Repair Of Cryptographic-Misuses In Android Applications, Siqi Ma, David Lo, Teng Li, Robert H. Deng Jun 2016

Cdrep: Automatic Repair Of Cryptographic-Misuses In Android Applications, Siqi Ma, David Lo, Teng Li, Robert H. Deng

Research Collection School Of Computing and Information Systems

Cryptography is increasingly being used in mobile applications to provide various security services; from user authentication, data privacy, to secure communications. However, there are plenty of mistakes that developers could accidentally make when using cryptography in their mobile apps and such mistakes can lead to a false sense of security. Recent research efforts indeed show that a significant portion of mobile apps in both Android and iOS platforms misused cryptographic APIs. In this paper, we present CDRep, a tool for automatically repairing cryptographic misuse defects in Android apps. We classify such defects into seven types and manually assemble the corresponding …


Interactive Computer Science Exercises In Edx, Hong Le May 2016

Interactive Computer Science Exercises In Edx, Hong Le

Master's Projects

This project focuses on improving online learning courses for Computer Science. My approach is to create a platform in which interactive exercises can be implemented for students to work on. Methodology includes creating plugins for interactive exercises using XBlock, a component architecture for building independent online courses on edX. The exercises are based on existing exercises like CodeCheck and Wiley’s InterActivities Exercise System. In order to integrate these exercises, I implemented CodeCheck XBlock and Interactive XBlock. These Xblocks allow students to work on interactive exercises on edX, and instructors to view and download students’ submissions.


Sign & Share: Full-Stack International Video Sharing Website, Shuxu Tian May 2016

Sign & Share: Full-Stack International Video Sharing Website, Shuxu Tian

Undergraduate University Honors Capstones

Inspired by VL2 bilingual story apps that focus on American Sign Language and English, this project provides a new application for sharing multi-lingual signed and written stories to a worldwide audience. VL2 story apps include only ASL and English, and are for purchase; VL2 also sells the code to develop stories in other languages, but the code requires technical expertise to use. My new app uses a special set of tools to allow sharing stories in any signed language and written forms of spoken languages without cost and without the need for technical expertise. Known as Sign and Share, this …


Collecting Image Cropping Dataset: A Hybrid System Of Machine And Human Intelligence, Uyen T. Mai, Feng Liu May 2016

Collecting Image Cropping Dataset: A Hybrid System Of Machine And Human Intelligence, Uyen T. Mai, Feng Liu

Student Research Symposium

Image cropping is a common tool that exists in almost any image editor, yet automatic cropping is still a difficult problem in Computer Vision. Since images nowadays can be easily collected through the web, machine learning is a promising approach to solve this problem. However, an image cropping dataset is not yet available and gathering such a large-scale dataset is a non-trivial task. Although a crowdsourcing website such as Mechanical Turk seems to be a solution to this task, image cropping is a sophisticated task that is vulnerable to unreliable annotation; furthermore, collecting a large-scale high-quality dataset through crowdsourcing is …


Why Do Record/Replay Tests Of Web Applications Break?, Mouna Hammoudi May 2016

Why Do Record/Replay Tests Of Web Applications Break?, Mouna Hammoudi

School of Computing: Dissertations, Theses, and Student Research

Software engineers often use record/replay tools to enable the automated testing of web applications. Tests created in this manner can then be used to regression test new versions of the web applications as they evolve. Web application tests recorded by record/replay tools, however, can be quite brittle; they can easily break as applications change. For this reason, researchers have begun to seek approaches for automatically repairing record/replay tests. To date, however, there have been no comprehensive attempts to characterize the causes of breakages in record/replay tests for web applications. In this work, we present a taxonomy classifying the ways in …


Ant Colony Optimization For Continuous Spaces, Rachel Findley May 2016

Ant Colony Optimization For Continuous Spaces, Rachel Findley

Computer Science and Computer Engineering Undergraduate Honors Theses

Ant Colony Optimization (ACO) is an optimization algorithm designed to find semi-optimal solutions to Combinatorial Optimization Problems. The challenge of modifying this algorithm to effectively optimize over a continuous domain is one that has been tackled by several researchers. In this paper, ACO has been modified to use several variations of the algorithm for continuous spaces. An aspect of ACO which is crucial to its success when optimizing over a continuous space is choosing the appropriate object (solution component) out of an infinite set to add to the ant's path. This step is highly important in shaping good solutions. Important …


Environmental Factors Influencing Individual Decision-Making Behavior In Software Project: A Systematic Literature Review, Luiz Fernando Capretz, Jingdong Jia May 2016

Environmental Factors Influencing Individual Decision-Making Behavior In Software Project: A Systematic Literature Review, Luiz Fernando Capretz, Jingdong Jia

Electrical and Computer Engineering Publications

As one of the crucial human aspects, individual decision-making behavior that may affect the quality of a software project is adaptive to the environment in which the individual is. However, no comprehensive reference framework of the environmental factors influencing individual decision-making behavior in software projects is presently available. This paper undertakes a systematic literature review (SLR) to gain insight into existing studies on this topic. After a careful SLR process, 40 studies were targeted to solve this question. Based on these extracted studies, we first provided a taxonomy of environmental factors comprising eight categories. Then a total of 237 factors …


Enabling Runtime Profiling To Hide And Exploit Heterogeneity Within Chip Heterogeneous Multiprocessor Systems (Chmps), Eugene Cartwright May 2016

Enabling Runtime Profiling To Hide And Exploit Heterogeneity Within Chip Heterogeneous Multiprocessor Systems (Chmps), Eugene Cartwright

Graduate Theses and Dissertations

The heterogeneity of multiprocessor systems on chip (MPSoC) has presented unique opportunities for furthering today’s diverse application needs. FPGA-based MPSoCs have the potential of bridging the gap between generality and specialization but has traditionally been limited to device experts. The flexibility of these systems can enable computation without compromise but can only be realized if this flexibility extends throughout the software stack. At the top of this stack, there has been significant effort for leveraging the heterogeneity of the architecture. However, the betterment of these abstractions are limited to what the bottom of the stack exposes: the runtime system.

The …


Sonifying Git History, Kevin J. North May 2016

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 …


The Social Side Of Software Platform Ecosystems, Cleidson R. B. Da Souza, Fernando Figueira Filho, Müller Miranda, Renato Pina Ferreira, Christoph Treude, Leif Singer May 2016

The Social Side Of Software Platform Ecosystems, Cleidson R. B. Da Souza, Fernando Figueira Filho, Müller Miranda, Renato Pina Ferreira, Christoph Treude, Leif Singer

Research Collection School Of Computing and Information Systems

Software ecosystems as a paradigm for large-scale software development encompass a complex mix of technical, business, and social aspects. While significant research has been conducted to understand both the technical and business aspects, the social aspects of software ecosystems are less well understood. To close this gap, this paper presents the results of an empirical study aimed at understanding the influence of social aspects on developers’ participation in software ecosystems. We conducted 25 interviews with mobile software developers and an online survey with 83 respondents from the mobile software development community. Our results point out a complex social system based …


Optimizing Selection Of Competing Services With Probabilistic Hierarchical Refinement, Tian Huat Tan, Manman Chen, Jun Sun, Yang Liu, Étienne André, Yinxing Xue, Jin Song Dong May 2016

Optimizing Selection Of Competing Services With Probabilistic Hierarchical Refinement, Tian Huat Tan, Manman Chen, Jun Sun, Yang Liu, Étienne André, Yinxing Xue, Jin Song Dong

Research Collection School Of Computing and Information Systems

Recently, many large enterprises (e.g., Netflix, Amazon) have decomposed their monolithic application into services, and composed them to fulfill their business functionalities. Many hosting services on the cloud, with different Quality of Service (QoS) (e.g., availability, cost), can be used to host the services. This is an example of competing services. QoS is crucial for the satisfaction of users. It is important to choose a set of services that maximize the overall QoS, and satisfy all QoS requirements for the service composition. This problem, known as optimal service selection, is NPhard. Therefore, an effective method for reducing the search space …


Deeper Look Into Bug Fixes: Patterns, Replacements, Deletions, And Additions, Mauricio Soto, Ferdian Thung, Chu-Pan Wong, Claire Le Goues, David Lo May 2016

Deeper Look Into Bug Fixes: Patterns, Replacements, Deletions, And Additions, Mauricio Soto, Ferdian Thung, Chu-Pan Wong, Claire Le Goues, David Lo

Research Collection School Of Computing and Information Systems

Many implementations of research techniques that automatically repair software bugs target programs written in C. Work that targets Java often begins from or compares to direct translations of such techniques to a Java context. However, Java and C are very different languages, and Java should be studied to inform the construction of repair approaches to target it. We conduct a large-scale study of bugfixing commits in Java projects, focusing on assumptions underlying common search-based repair approaches. We make observations that can be leveraged to guide high quality automatic software repair to target Java specifically, including common and uncommon statement modifications …


An Example Of Atomic Requirements - Login Screen, William L. Honig May 2016

An Example Of Atomic Requirements - Login Screen, William L. Honig

Computer Science: Faculty Publications and Other Works

A simple example of what an atomic or individual or singular requirement statement should be. Using the example of the familiar login screen, shows the evolution from a low quality initial attempt at requirements to a complete atomic requirement statement. Introduces the idea of a system glossary to support the atomic requirement.


Atomic Requirements Quick Notes, William L. Honig, Shingo Takada May 2016

Atomic Requirements Quick Notes, William L. Honig, Shingo Takada

Computer Science: Faculty Publications and Other Works

Working paper on atomic requirements for systems development and the importance of singular, cohesive, individual requirements statements. Covers possible definitions of atomic requirements, and their characteristics. Atomic requirements improve many parts of the development process from requirements to testing and contracting.


You Are Being Watched: Bystanders' Perspective On The Use Of Camera Devices In Public Spaces, Samarth Singhal, Carman Neustaedter, Thecla Schiphorst, Anthony Tang, Abhisekh Patra, Rui Pan May 2016

You Are Being Watched: Bystanders' Perspective On The Use Of Camera Devices In Public Spaces, Samarth Singhal, Carman Neustaedter, Thecla Schiphorst, Anthony Tang, Abhisekh Patra, Rui Pan

Research Collection School Of Computing and Information Systems

We are observing an increase in the use of smartphones and wearable devices in public places for streaming and recording video. Yet the use of cameras in these devices can infringe upon the privacy of the people in the surrounding environment by inadvertently capturing them. This paper presents findings from an in-situ exploratory study that investigates bystanders' reactions and feelings towards streaming and recording videos with smartphones and wearable glasses in public spaces. We use the interview results to guide an exploration of design directions for mobile video.


Graph-Aided Directed Testing Of Android Applications For Checking Runtime Privacy Behaviours, Joseph Joo Keng Chan, Lingxiao Jiang, Kiat Wee Tan, Rajesh Krishna Balan May 2016

Graph-Aided Directed Testing Of Android Applications For Checking Runtime Privacy Behaviours, Joseph Joo Keng Chan, Lingxiao Jiang, Kiat Wee Tan, Rajesh Krishna Balan

Research Collection School Of Computing and Information Systems

While automated testing of mobile applications is very useful for checking run-time behaviours and specifications, its capability in discovering issues in apps is often limited in practice due to long testing time. A common practice is to randomly and exhaustively explore the whole app test space, which takes a lot of time and resource to achieve good coverage and reach targeted parts of the apps. In this paper, we present MAMBA, a directed testing system for checking privacy in Android apps. MAMBA performs path searches of user events in control-flow graphs of callbacks generated from static analysis of app bytecode. …


Leveraging Automated Privacy Checking For Design Of Mobile Privacy Protection Mechanisms, Joseph Joo Keng Chan, Lingxiao Jiang, Kiat Wee Tan, Rajesh Balan May 2016

Leveraging Automated Privacy Checking For Design Of Mobile Privacy Protection Mechanisms, Joseph Joo Keng Chan, Lingxiao Jiang, Kiat Wee Tan, Rajesh Balan

Research Collection School Of Computing and Information Systems

While mobile platforms rely on developers to follow good practices in privacy design, developers might not always adhere. In addition, it is often difficult for users to understand the privacy behaviour of their applications without some prolonged usage. To aid in these issues, we describe on-going research to improve privacy protection by utilizing techniques that mine privacy information from application binaries as a grey-box (Automated Privacy Checking). The outputs can then be utilized to improve the users' ability to exercise privacy-motivated discretion. We conducted a user study to observe the effects of presenting information on leak-causing triggers within applications in …


Learning To Rank For Bug Report Assignee Recommendation, Yuan Tian, Withthige Dinusha Ruchira Wijedasa, David Lo, Claire Le Goues May 2016

Learning To Rank For Bug Report Assignee Recommendation, Yuan Tian, Withthige Dinusha Ruchira Wijedasa, David Lo, Claire Le Goues

Research Collection School Of Computing and Information Systems

Projects receive a large number of bug reports, and resolving these reports take considerable time and human resources. To aid developers in the resolution of bug reports, various automated techniques have been proposed to identify and recommend developers to address newly reported bugs. Two families of bug assignee recommendation techniques include those that recommend developers who have fixed similar bugs before (a.k.a. activity-based techniques) and those recommend suitable developers based on the location of the bug (a.k.a. location-based techniques). Previously, each of these techniques has been investigated separately. In this work, we propose a unified model that combines information from …


The Design Of Assistive Location-Based Technologies For People With Ambulatory Disabilities: A Formative Study, Kotaro Hara, Christine Chen, Jon E. Froehlich May 2016

The Design Of Assistive Location-Based Technologies For People With Ambulatory Disabilities: A Formative Study, Kotaro Hara, Christine Chen, Jon E. Froehlich

Research Collection School Of Computing and Information Systems

In this paper, we investigate how people with mobility impairments assess and evaluate accessibility in the built environment and the role of current and emerging location-based technologies therein. We conducted a three-part formative study with 20 mobility impaired participants: a semi-structured interview (Part 1), a participatory design activity (Part 2), and a design probe activity (Part 3). Part 2 and 3 actively engaged our participants in exploring and designing the future of what we call assistive location-based technologies (ALTs) location-based technologies that specifically incorporate accessibility features to support navigating, searching, and exploring the physical world. Our Part 1 findings highlight …


Overcoming Open Source Project Entry Barriers With A Portal For Newcomers, Igor Steinmacher, Tayana U. Conte, Christoph Treude, Marco Aurélio Gerosa May 2016

Overcoming Open Source Project Entry Barriers With A Portal For Newcomers, Igor Steinmacher, Tayana U. Conte, Christoph Treude, Marco Aurélio Gerosa

Research Collection School Of Computing and Information Systems

Community-based Open Source Software (OSS) projects are usually self-organized and dynamic, receiving contributions from distributed volunteers. Newcomer are important to the survival, long-term success, and continuity of these communities. However, newcomers face many barriers when making their first contribution to an OSS project, leading in many cases to dropouts. Therefore, a major challenge for OSS projects is to provide ways to support newcomers during their first contribution. In this paper, we propose and evaluate FLOSScoach, a portal created to support newcomers to OSS projects. FLOSScoach was designed based on a conceptual model of barriers created in our previous work. To …


Augmenting Api Documentation With Insights From Stack Overflow, Christoph Treude, Martin P. Robillard May 2016

Augmenting Api Documentation With Insights From Stack Overflow, Christoph Treude, Martin P. Robillard

Research Collection School Of Computing and Information Systems

Software developers need access to different kinds of information which is often dispersed among different documentation sources, such as API documentation or Stack Overflow. We present an approach to automatically augment API documentation with “insight sentences” from Stack Overflow— sentences that are related to a particular API type and that provide insight not contained in the API documentation of that type. Based on a development set of 1,574 sentences, we compare the performance of two state-of-the-art summarization techniques as well as a pattern-based approach for insight sentence extraction. We then present SISE, a novel machine learning based approach that uses …


Audio Software (Vst Plugin) Development With Practical Application, Zachary Hummel Apr 2016

Audio Software (Vst Plugin) Development With Practical Application, Zachary Hummel

Honors Theses

Audio engineers around the world routinely utilize small pieces of software, known as “plugins,” to help shape the sound of the media they are working with. These plugins are inserted into a digital audio workstation (DAW) and contain digital signal processing (DSP) algorithms that can affect audio in a number of ways limited only by the creativity of the software developer. Common implementations of plugins include equalizers, compressors and limiters, gain, phase rotation or polarity inversion algorithms, reverb and delay, and emulation of the non-linearities of analog audio equipment. The intent of this thesis project is to design and produce …


A Roadmap To Safe And Reliable Engineered Biological Nano-Communication Networks, Justin W. Firestone Apr 2016

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 …


Software Improvements To Parint, A Parallel Integration Software Package, Lawrence Cuneaz Apr 2016

Software Improvements To Parint, A Parallel Integration Software Package, Lawrence Cuneaz

Honors Theses

The best software is easy to configure and compile, is expandable and is well tested. Development of the ParInt software package for parallel integration stopped a number of years ago. When handed the software, parts of the package no longer configured or compiled consistently. Furthermore it relied on one random number generator and had no functional testing. The team tuned the auto configuration so that the program would configure and build on current systems, created expandable functionality to add new random number generators and created two functional test packs. Now ParInt can be developed with confidence knowing that it compiles …


Chipathlon: A Competitive Assessment For Gene Regulation Tools, Avi Knecht, Adam Caprez, Istvan Ladunga Apr 2016

Chipathlon: A Competitive Assessment For Gene Regulation Tools, Avi Knecht, Adam Caprez, Istvan Ladunga

UCARE: Research Products

When gene regulation of the cell cycle malfunctions, it frequently causes cancer.

Adult, differentiated cells can be reprogrammed to induced pluripotent stem cell; which can then be reprogrammed to heart muscle, skin, etc, to repair damaged tissue (to limited extent in clinical practice).

ChIPathlon: Evaluate the performance of all transcription factor mapping (peak calling) methods. To this end, we will develop a scalable and easy to use super computing pipeline to stage data, compare many different peak calling and differential binding site tools, and store all results into a single database.


A Graph-Based Semantics Workbench For Concurrent Asynchronous Programs, Claudio Corrodi, Alexander Heußner, Christopher M. Poskitt Apr 2016

A Graph-Based Semantics Workbench For Concurrent Asynchronous Programs, Claudio Corrodi, Alexander Heußner, Christopher M. Poskitt

Research Collection School Of Computing and Information Systems

A number of novel programming languages and libraries have been proposed that offer simpler-to-use models of concurrency than threads. It is challenging, however, to devise execution models that successfully realise their abstractions without forfeiting performance or introducing unintended behaviours. This is exemplified by Scoop—a concurrent object-oriented message-passing language—which has seen multiple semantics proposed and implemented over its evolution. We propose a “semantics workbench” with fully and semi-automatic tools for Scoop, that can be used to analyse and compare programs with respect to different execution models. We demonstrate its use in checking the consistency of semantics by applying it to a …


Better Together Apr 2016

Better Together

DePaul Magazine

Faculty have taken full advantage of the university's innovative intercollegiate grant program, and the resulting research is as interesting and diverse as the collaborators themselves. What is resulting is research on "Patient and Primary Care Provider Perspectives on Recreational and Therapeutic Cannabis Use Within a Changing Socioculltural and Political Context;" a new minor in climate change science and policy; a new class, Communication, Coding and Entrepreneurship; brain inflammation research; and the project "Cosmology Meets Continental Philosophy: Natural Laws and Why There Is Something Rather Than Nothing"


Development Of A Wireless Mobile Computing Platform For Fall Risk Prediction, Akm Jahangir Alam Majumder Apr 2016

Development Of A Wireless Mobile Computing Platform For Fall Risk Prediction, Akm Jahangir Alam Majumder

Dissertations (1934 -)

Falls are a major health risk with which the elderly and disabled must contend. Scientific research on smartphone-based gait detection systems using the Internet of Things (IoT) has recently become an important component in monitoring injuries due to these falls. Analysis of human gait for detecting falls is the subject of many research projects. Progress in these systems, the capabilities of smartphones, and the IoT are enabling the advancement of sophisticated mobile computing applications that detect falls after they have occurred. This detection has been the focus of most fall-related research; however, ensuring preventive measures that predict a fall is …