Code Monkey home page Code Monkey logo

nativescript-ieeetmc-journal's Introduction

NativeScript Task Dispatcher for Reliable Android Task Scheduling

This repository is the reproducibility package for the article “Using mobile Devices as Scientific Measurement Instruments: Reliable Android Task Scheduling". In terms of software, the paper provides two main outputs. The first and most important is the NativeScript Task Dispatcher library, see https://github.com/GeoTecINIT/nativescript-task-dispatcher (10.5281/zenodo.4530103). The second is the analysis and results of one of the experiments reported in the article (Experiment 1: simple task scheduling), which is the focus of this repository.

Reproduce online

Click the “Binder” button below to open an interactive editing environment with all required software installed on MyBinder.org. It uses the current version of the branch main in the repository, but you can also enter the Zenodo DOI (see above) in the MyBinder user interface to open a preserved release version.

Binder

You can start RStudio for the analysis via “New > RStudio”. You can navigate to the R Markdown notebook file (see list of files below) to inspect the code and reproduce (“Knit > Knit to HTML”) the table and figure as described in Reproduce analysis, except that local installation of required packages is not required.

Reproduce analysis

Open the R Markdown file (ntd-experiment1.Rmd) with RStudio. Then select “Knit > Knit to HTML” to render the web page. If you have errors rendering the HTML page, try running each chunk to locate the problem. This analysis does not convert raw datasets into processed data for the analysis - please execute the chunk merge_datafiles manually if necessary.

The R Markdown file does not include code to install required packages. Run the code in the file install.R to install all dependencies.

Reproduce locally with Docker

Install Docker CE or a compatible tool for building an image based on a Dockerfile and running a container based on the image. The Dockerfile uses the Rocker image rocker/binder:3.6.3, providing R version 3.6.3 with a CRAN mirror timestamp of July 5th 2019.

Download the project files, open a command line in the root directory (where this file is), and run the commands as documented at the end of the Dockerfile file.

If you have repo2docker, you can also run repo2docker --image-name=rr-ntd-ieeetmc . The repo2docker option is the only way the original authors worked on the analysis to ensure the computing environment is properly managed.

Files in this repository

  • data-raw/*.csv. Each file corresponds to the raw data collected during 2 weeks per type of device and scheduling application.
  • data/data_ieeetmc.{csv,rds}: Processed data ready for analysis that integrates all raw datasets.
  • data/devices.csv: List of Android-based mobile devices used for experimentation.
  • ntd-experiment1.Rmd: R Markdown document with the analysis and visualisation of the Experiment 1: simple task scheduling.
  • figs/fig_boxplot.png: figure created by the analysis ntd-experiment1.Rmd and is part of the submitted article (Fig 4).
  • Dockerfile: A recipe for the computational environment using Docker.
  • install.R: R script file executed during creation of the Docker image to install required dependencies.

Licence

The documents in this repository are licensed under Creative Commons Attribution 4.0 International License.

All contained code is licensed under the Apache License 2.0.

The data used is licensed under Open Data Commons Attribution License.

nativescript-ieeetmc-journal's People

Contributors

cgranell avatar matey97 avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.