89 research outputs found

    Inference of development activities from interaction with uninstrumented applications

    Get PDF
    Studying developers’ behavior in software development tasks is crucial for designing effective techniques and tools to support developers’ daily work. In modern software development, developers frequently use different applications including IDEs, Web Browsers, documentation software (such as Office Word, Excel, and PDF applications), and other tools to complete their tasks. This creates significant challenges in collecting and analyzing developers’ behavior data. Researchers usually instrument the software tools to log developers’ behavior for further studies. This is feasible for studies on development activities using specific software tools. However, instrumenting all software tools commonly used in real work settings is difficult and requires significant human effort. Furthermore, the collected behavior data consist of low-level and fine-grained event sequences, which must be abstracted into high-level development activities for further analysis. This abstraction is often performed manually or based on simple heuristics. In this paper, we propose an approach to address the above two challenges in collecting and analyzing developers’ behavior data. First, we use our ActivitySpace framework to improve the generalizability of the data collection. ActivitySpace uses operating-system level instrumentation to track developer interactions with a wide range of applications in real work settings. Secondly, we use a machine learning approach to reduce the human effort to abstract low-level behavior data. Specifically, considering the sequential nature of the interaction data, we propose a Condition Random Field (CRF) based approach to segment and label the developers’ low-level actions into a set of basic, yet meaningful development activities. To validate the generalizability of the proposed data collection approach, we deploy the ActivitySpace framework in an industry partner’s company and collect the real working data from ten professional developers’ one-week work in three actual software projects. The experiment with the collected data confirms that with initial human-labeled training data, the CRF model can be trained to infer development activities from low-level actions with reasonable accuracy within and across developers and software projects. This suggests that the machine learning approach is promising in reducing the human efforts required for behavior data analysis.This work was partially supported by NSFC Program (No. 61602403 and 61572426)

    Developing a person guidance module for hospital robots

    Get PDF
    This dissertation describes the design and implementation of the Person Guidance Module (PGM) that enables the IWARD (Intelligent Robot Swarm for attendance, Recognition, Cleaning and delivery) base robot to offer route guidance service to the patients or visitors inside the hospital arena. One of the common problems encountered in huge hospital buildings today is foreigners not being able to find their way around in the hospital. Although there are a variety of guide robots currently existing on the market and offering a wide range of guidance and related activities, they do not fit into the modular concept of the IWARD project. The PGM features a robust and foolproof non-hierarchical sensor fusion approach of an active RFID, stereovision and cricket mote sensor for guiding a patient to the X-ray room, or a visitor to a patient’s ward in every possible scenario in a complex, dynamic and crowded hospital environment. Moreover, the speed of the robot can be adjusted automatically according to the pace of the follower for physical comfort using this system. Furthermore, the module performs these tasks in any unconstructed environment solely from a robot’s onboard perceptual resources in order to limit the hardware installation costs and therefore the indoor setting support. Similar comprehensive solution in one single platform has remained elusive in existing literature. The finished module can be connected to any IWARD base robot using quick-change mechanical connections and standard electrical connections. The PGM module box is equipped with a Gumstix embedded computer for all module computing which is powered up automatically once the module box is inserted into the robot. In line with the general software architecture of the IWARD project, all software modules are developed as Orca2 components and cross-complied for Gumstix’s XScale processor. To support standardized communication between different software components, Internet Communications Engine (Ice) has been used as middleware. Additionally, plug-and-play capabilities have been developed and incorporated so that swarm system is aware at all times of which robot is equipped with PGM. Finally, in several field trials in hospital environments, the person guidance module has shown its suitability for a challenging real-world application as well as the necessary user acceptance

    Why Volunteer? Evidence on the Role of Altruism, Image, and Incentives

    Get PDF
    We examine motivations for prosocial behavior using new data on volunteer firefighters that contain a dictator-game based measure of altruism, surveyed measures of other behavioral factors, and call records that provide an objective measure of time spent volunteering. Controlling for a variety of other explanations, we find that the decision to volunteer is positively correlated with altruism as well as with concern for social reputation or image.” Moreover, by utilizing variation in the presence and level of small stipends paid to the firefighters, we find that the positive effect of monetary incentives declines with image concerns, supporting a prediction that extrinsic incentives can crowd out image motivation for prosocial behavior.volunteer, altruism, reputation, extrinsic motivation, firefighter

    Returns to Social Network Capital among Traders

    Get PDF
    Using data on agricultural traders in Madagascar, this paper shows that social network capital has a large effect on firm productivity. Better connected traders have significantly larger sales and value added than less connected traders after controlling for physical and human inputs as well as for entrepreneur characteristics. The analysis indicates that three dimensions of social network capital should be distinguished: relationships with other traders, which among other things help firms economize on transactions costs; relationships with potential lenders; and family relationships, which reduce efficiency, possibly because of the blurring of firm boundaries. We find no evidence that social capital favors collusion.

    The effect of male migration for work on employment patterns of females in nepal

    Get PDF
    This paper assesses the impact of work-related migration by males on the labor market behavior of females in Nepal. Using data from the 2004 Nepal household survey, the authors apply the Instrumental Variable Full Information Maximum Likelihood method to account for unobserved factors that could simultaneously affect males'decision to migrate and females'decision to participate in the labor market. The results indicate that male migration for work has a negative impact on the level of market work participation by the women left behind. The authors find evidence of substantial heterogeneity (based both on observable and unobservable characteristics) in the impact of male migration. The findings highlight the important gender dimension of the impact of predominantly male worker migration on the wellbeing of sending households. The authors argue that strategies for economic development in Nepal should take into account such gender aspects of the migration dynamics.Population Policies,Anthropology,Gender and Development,Housing&Human Habitats,Gender and Law

    Identifying users from the interaction with a door handle

    Get PDF
    Ambient intelligence pursues the integration of intelligent approaches on an IoT infrastructure, mainly using everyday objects of the environment. The main hypothesis of the work is that the way in which a user interacts with a door handle is suitable to be used in the identification task. Our proposal contributes with a new method to identify persons in a seamless and un-obstrusive way, suitable to be used in a smart building scenery without the need to bring any additional device. In this case, we embed accelerometers and gyroscopes in a door handle in order to obtain a data set comprising samples of 47 individuals. A parametric approximation is adopted to reduce each sample to a feature vector by using a dynamic time warping technique. A study has been made of the outcomes of different classification techniques over six different feature sets in order to assess the feasibility of this identification challenge. The AUC values observed with the selected feature set show promising results above 0.90 using neural networks and SVM classifiers

    Efficient branch and node testing

    Get PDF
    Software testing evaluates the correctness of a program’s implementation through a test suite. The quality of a test case or suite is assessed with a coverage metric indicating what percentage of a program’s structure was exercised (covered) during execution. Coverage of every execution path is impossible due to infeasible paths and loops that result in an exponential or infinite number of paths. Instead, metrics such as the number of statements (nodes) or control-flow branches covered are used. Node and branch coverage require instrumentation probes to be present during program runtime. Traditionally, probes were statically inserted during compilation. These static probes remain even after coverage is recorded, incurring unnecessary overhead, reducing the number of tests that can be run, or requiring large amounts of memory In this dissertation, I present three novel techniques for improving branch and node coverage performance for the Java runtime. First, Demand-driven Structural Testing (DDST) uses dynamic insertion and removal of probes so they can be removed after recording coverage, avoiding the unnecessary overhead of static instrumentation. DDST is built on a new framework for developing and researching coverage techniques, Jazz. DDST for node coverage averages 19.7% faster than statically-inserted instrumentation on an industry-standard benchmark suite, SPECjvm98. Due to DDST’s higher-cost probes, no single branch coverage technique performs best on all programs or methods. To address this, I developed Hybrid Structural Testing (HST). HST combines different test techniques, including static and DDST, into one run. HST uses a cost model for analysis, reducing the cost of branch coverage testing an average of 48% versus Static and 56% versus DDST on SPECjvm98. HST never chooses certain techniques due to expensive analysis. I developed a third technique, Test Plan Caching (TPC), that exploits the inherent repetition in testing over a suite. TPC saves analysis results to avoid recomputation. Combined with HST, TPC produces a mix of techniques that record coverage quickly and efficiently. My three techniques reduce the average cost of branch coverage by 51.6–90.8% over previous approaches on SPECjvm98, allowing twice as many test cases in a given time budget
    corecore