Code Monkey home page Code Monkey logo

smartcommitevaluation-viz's Introduction

SmartCommitEvaluation-Viz

Requirements

  • macOS/Linux
  • Python 3.7.0
  • PyCharm 2020

Instructions

  1. Open the project in PyCharm, setup the vent as Python 3.7.0, and install dependencies:

    pip install -r requirements.txt
    
  2. Edit SmartCommitEvaluation-Viz/config.py to change the raw data directory:

    # root dir of raw data
    root_path = str(Path.home()) + '/smartcommit/viz/'
    
  3. For Controlled Open Source Experiment:

    • Run rq1/rq1-boxplot-project_method.py to generate rq1-baselines.pdf: Accuracy of SmartCommit and 3 baseline methods (Figure 7(a) in the paper)
    • Run rq1/rq1-boxplot-project_length.py to generate rq1-length.pdf: Accuracy of SmartCommit for different numbers of merged atomic commits (Figure 7(b) in the paper)
    • Run rq2/rq2-adjustments.py to generate reassign_frequency.txt and reorder_frequency.txt: Number of reassign and reorder steps and proportions.
  4. For Industrial Field Study:

    • Run rq3/rq3-scatterplot.py to generate rq3.pdf: the runtime cost with different input sizes;
    • Run rq4/preprocess.py first, and other python files then to generate usage distributions (Figure 9 in the paper).

smartcommitevaluation-viz's People

Contributors

symbolk avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

smartcommitevaluation-viz's Issues

May I ask where to find the complete dataset?

Thanks for your wonderful work, SmartCommit!
As mentioned in your paper, "3,000 synthetic composite commits" are generated "from 10 open-source projects, by merging 2, 3, or 5 consecutive noncomposite commits".
After I studied this repository and downloaded dataset.zip, I found that there is only one commit per OOS project.
May I ask where to find other composite commits and their atomic commits?

I really appreciate any help you can provide.

May I ask about the meaning of the nodes in this figure?

I am reading your paper about SmartCommit. The Figure 4 in this paper shows that each vertex is labed with the format of (xx1,xx2). I understand each vertex represents a diff hunk, So its label may be its id . So can you explain the meaning of the format of (xx1,xx2) .
Looking forward to your reply.
1

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.