There is a newer version of this record available.

Dataset Open Access

NJR-1 Dataset

Utture, Akshay; Kalhauge, Christian Gram; Liu, Shuyang; Palsberg, Jens


MARC21 XML Export

<?xml version='1.0' encoding='UTF-8'?>
<record xmlns="http://www.loc.gov/MARC21/slim">
  <leader>00000nmm##2200000uu#4500</leader>
  <datafield tag="041" ind1=" " ind2=" ">
    <subfield code="a">eng</subfield>
  </datafield>
  <datafield tag="653" ind1=" " ind2=" ">
    <subfield code="a">Static Analysis, Java</subfield>
  </datafield>
  <controlfield tag="005">20210530181951.0</controlfield>
  <datafield tag="500" ind1=" " ind2=" ">
    <subfield code="a">Funded by the following NSF grant (https://www.nsf.gov/awardsearch/showAward?AWD_ID=1823360&amp;amp;HistoricalAwards=false)</subfield>
  </datafield>
  <controlfield tag="001">4632231</controlfield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="u">UCLA</subfield>
    <subfield code="a">Kalhauge, Christian Gram</subfield>
  </datafield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="u">UCLA</subfield>
    <subfield code="a">Liu, Shuyang</subfield>
  </datafield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="u">UCLA</subfield>
    <subfield code="a">Palsberg, Jens</subfield>
  </datafield>
  <datafield tag="856" ind1="4" ind2=" ">
    <subfield code="s">25542</subfield>
    <subfield code="z">md5:f9b0d46bf68b0609722e980c1e317ea8</subfield>
    <subfield code="u">https://zenodo.org/record/4632231/files/benchmark_stats.csv</subfield>
  </datafield>
  <datafield tag="856" ind1="4" ind2=" ">
    <subfield code="s">2603240127</subfield>
    <subfield code="z">md5:c0a57feaf93f4b9374b32885b01997fc</subfield>
    <subfield code="u">https://zenodo.org/record/4632231/files/njr-1_dataset.zip</subfield>
  </datafield>
  <datafield tag="856" ind1="4" ind2=" ">
    <subfield code="s">377608</subfield>
    <subfield code="z">md5:8f9cf0a0df99f8c1d3cfcd9a45cea8ac</subfield>
    <subfield code="u">https://zenodo.org/record/4632231/files/scripts.zip</subfield>
  </datafield>
  <datafield tag="542" ind1=" " ind2=" ">
    <subfield code="l">open</subfield>
  </datafield>
  <datafield tag="260" ind1=" " ind2=" ">
    <subfield code="c">2020-06-16</subfield>
  </datafield>
  <datafield tag="909" ind1="C" ind2="O">
    <subfield code="p">openaire_data</subfield>
    <subfield code="o">oai:zenodo.org:4632231</subfield>
  </datafield>
  <datafield tag="100" ind1=" " ind2=" ">
    <subfield code="u">UCLA</subfield>
    <subfield code="0">(orcid)0000-0002-9623-3049</subfield>
    <subfield code="a">Utture, Akshay</subfield>
  </datafield>
  <datafield tag="245" ind1=" " ind2=" ">
    <subfield code="a">NJR-1 Dataset</subfield>
  </datafield>
  <datafield tag="540" ind1=" " ind2=" ">
    <subfield code="u">https://creativecommons.org/licenses/by/4.0/legalcode</subfield>
    <subfield code="a">Creative Commons Attribution 4.0 International</subfield>
  </datafield>
  <datafield tag="650" ind1="1" ind2="7">
    <subfield code="a">cc-by</subfield>
    <subfield code="2">opendefinition.org</subfield>
  </datafield>
  <datafield tag="520" ind1=" " ind2=" ">
    <subfield code="a">&lt;p&gt;NJR is a Normalized Java Resource.&lt;/p&gt;

&lt;p&gt;The &lt;em&gt;NJR-1&lt;/em&gt; dataset consists of 293 Java bytecode programs, each of which runs successfully with the following 12 Java static analysis tools:&lt;/p&gt;

&lt;p&gt;1. &amp;nbsp;SpotBugs (https://spotbugs.github.io)&lt;br&gt;
2. &amp;nbsp;Wala (https://wala.github.io)&lt;br&gt;
3. &amp;nbsp;Doop (https://bitbucket.org/yanniss/doop)&lt;br&gt;
4. &amp;nbsp;Soot (https://github.com/soot-oss/soot)&lt;br&gt;
5. &amp;nbsp;Petablox (https://github.com/petablox/petablox)&lt;br&gt;
6. &amp;nbsp;Infer (https://fbinfer.com)&lt;br&gt;
7. &amp;nbsp;Error-Prone (http://errorprone.info)&lt;br&gt;
8. &amp;nbsp;Checker-Framework (https://checkerframework.org)&lt;br&gt;
9. &amp;nbsp;Opium (Opal-framework) (https://www.opal-project.de)&lt;br&gt;
10. Spoon (https://spoon.gforge.inria.fr)&lt;br&gt;
11. PMD (https://pmd.github.io)&lt;br&gt;
12. CheckStyle (https://checkstyle.org)&lt;/p&gt;

&lt;p&gt;Additionally, each program&amp;nbsp;executes at least 100 unique application methods at runtime.&amp;nbsp;These programs are repositories picked from the set of Java-8 projects on Github that compile and run successfully.&amp;nbsp;Each of these programs come with a jar file, the compiled bytecode files, compiled library files&amp;nbsp;and the Java source code. It also comes with a list of source files, declared methods, application-classes list, and main-class names.&amp;nbsp;The availability of the files in both jar-file form, as well as source code form (with the compiled library classes) is a major reason the dataset works&amp;nbsp;with&amp;nbsp;so many tools, without requiring any extra effort.&lt;/p&gt;

&lt;p&gt;There are 3 files available for download: &lt;em&gt;njr-1_dataset.zip, scripts.zip, benchmark_stats.csv.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;njr-1_dataset.zip&lt;/em&gt; has the actual dataset programs. &lt;em&gt;scripts.zip&lt;/em&gt; contains&amp;nbsp;Python3 scripts&amp;nbsp;for each tool, to run it&amp;nbsp;on the entire dataset.&amp;nbsp;The &lt;em&gt;benchmark_stats.csv&lt;/em&gt; file lists, for each benchmark, the number of nodes and edges in its dynamic application call-graph, as well as the number of edges in its static application call-graph (as computed by Wala) when using the main function listed in the&amp;nbsp;&lt;em&gt;info/mainclassname&lt;/em&gt; file.&amp;nbsp;&lt;br&gt;
A summary of the same is listed here:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Statistics &amp;nbsp;Dynamic-Nodes &amp;nbsp;Dynamic-Edges &amp;nbsp;Static-Edges&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
Mean &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 205&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;469&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1404&lt;br&gt;
St.Dev &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 199&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;464&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;2523&lt;br&gt;
Median &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;149&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;327&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;610&lt;/p&gt;

&lt;p&gt;To cite the dataset, please cite the following paper:&lt;br&gt;
Jens Palsberg and Cristina V. Lopes,&amp;nbsp;NJR: a&amp;nbsp;Normalized Java Resource.&amp;nbsp;&lt;br&gt;
In Proceedings of ACM SIGPLAN International Workshop&amp;nbsp;on State Of the Art in Program Analysis (SOAP), 2018.&lt;/p&gt;</subfield>
  </datafield>
  <datafield tag="773" ind1=" " ind2=" ">
    <subfield code="n">doi</subfield>
    <subfield code="i">isSupplementTo</subfield>
    <subfield code="a">10.1145/3236454.3236501</subfield>
  </datafield>
  <datafield tag="773" ind1=" " ind2=" ">
    <subfield code="n">doi</subfield>
    <subfield code="i">isVersionOf</subfield>
    <subfield code="a">10.5281/zenodo.3897691</subfield>
  </datafield>
  <datafield tag="024" ind1=" " ind2=" ">
    <subfield code="a">10.5281/zenodo.4632231</subfield>
    <subfield code="2">doi</subfield>
  </datafield>
  <datafield tag="980" ind1=" " ind2=" ">
    <subfield code="a">dataset</subfield>
  </datafield>
</record>
152
93
views
downloads
All versions This version
Views 15281
Downloads 9345
Data volume 13.0 GB5.2 GB
Unique views 12573
Unique downloads 7241

Share

Cite as