Software Open Access
Sayali Kate; Michael Chinn; Hongjun Choi; Xiangyu Zhang; Sebastian Elbaum
PHYSFRAME is a static analysis tool for detecting reference frame inconsistencies and violations of common practices (i.e., implicit frame conventions) in C/C++ projects that build against the [Robot Operating System](http://www.ros.org/). It requires nothing from the developers except running the tool on their project. The tool automatically models the project, and checks for problems.
This repository contains the following files and folders:
* README.md : This file.
* LICENSE.txt : BSD 2-Clause license.
* STATUS.txt : Describes the ACM artifact badges sought for this artifact.
* REQUIREMENTS.md : Describes the hardware and software requirements.
* INSTALL.txt : Describes how to install PHYSFRAME using Docker and a minimal working example.
* HOWTO.txt: Describes how to use PHYSFRAME with the provided data.
* HOWTO-WITH-SCRIPT.txt : Describes how to run scripts to evaluate PHYSFRAME with the provided data.
* untar_data.sh : Script to untar files in data/.
* evaluate_data.sh : Script to run PHYSFRAME on the provided data.
* evaluate_z-score.sh : Script to run PHYSFRAME on the provided data with z-score = 2, 5 or 10.
* Dockerfile : a Docker install file for PHYSFRAME.
* requirements.txt : List of python dependencies required by PHYSFRAME. Referenced by the Dockerfile.
* src/ : The python source code for PHYSFRAME, files containing implicit frame conventions.
* data/ : Dataset of C/C++ projects (downloaded from public GitHub repositories) used to evaluate PHYSFRAME.
* USER-GUIDE.txt : Helpful notes for user.