{ "data_id": "43357", "name": "Within-project-Defect-Prediction-for-Ansible", "exact_name": "Within-project-Defect-Prediction-for-Ansible", "version": 1, "version_label": "v1.0", "description": "Context\nInfrastructure-as-code (IaC) is the DevOps strategy that allows management and provisioning of infrastructure through the definition of machine-readable files and automation around them, rather than physical hardware configuration or interactive configuration tools.\nOn the one hand, although IaC represents an ever-increasing widely adopted practice nowadays, still little is known concerning how to best maintain, speedily evolve, and continuously improve the code behind the IaC strategy in a measurable fashion. \nOn the other hand, source code measurements are often computed and analyzed to evaluate the different quality aspects of the software developed.\nIn particular, Infrastructure-as-Code is simply \"code\", as such it is prone to defects as any other programming languages.\nThis dataset targets the YAML-based Ansible language to devise defects prediction approaches for IaC based on Machine-learning.\n\nContent\nThe dataset contains metrics extracted from 86 open-source GitHub repositories based on the Ansible language that satisfied the following criteria:\n\nThe repository has at least one push event to its master branch in the last six months;\nThe repository has at least 2 releases;\nAt least 11 of the files in the repository are IaC scripts;\nThe repository has at least 2 core contributors;\nThe repository has evidence of continuous integration practice, such as the presence of a .travis.yaml file;\nThe repository has a comments ratio of at least 0.2;\nThe repository has commit frequency of at least 2 per month on average;\nThe repository has an issue frequency of at least 0.023 events per month on average;\nThe repository has evidence of a license, such as the presence of a LICENSE.md file\nThe repository has at least 190 source lines of code.\n\nMetrics are grouped into three categories:\n\nIaC-oriented: metrics of structural properties derived from the source code of infrastructure scripts;\nDelta: metrics that capture the amount of change in a file between two successive releases, collected for each IaC-oriented metric;\nProcess: metrics that capture aspects of the development process rather than aspects about the code itself. Description of the process metrics in this dataset can be found here.\n\nAcknowledgements\nThanks to the open-source community.\n\nInspiration\nWhat source code properties and properties about the development process are good predictors of defects in Infrastructure-as-Code scripts?", "format": "arff", "uploader": "Elif Ceren Gok", "uploader_id": 30125, "visibility": "public", "creator": null, "contributor": null, "date": "2022-03-23 12:39:07", "update_comment": null, "last_update": "2022-03-23 12:39:07", "licence": "CC0: Public Domain", "status": "active", "error_message": null, "url": "https:\/\/www.openml.org\/data\/download\/22102182\/dataset", "default_target_attribute": "failure_prone", "row_id_attribute": null, "ignore_attribute": null, "runs": 0, "suggest": { "input": [ "Within-project-Defect-Prediction-for-Ansible", "Context Infrastructure-as-code (IaC) is the DevOps strategy that allows management and provisioning of infrastructure through the definition of machine-readable files and automation around them, rather than physical hardware configuration or interactive configuration tools. On the one hand, although IaC represents an ever-increasing widely adopted practice nowadays, still little is known concerning how to best maintain, speedily evolve, and continuously improve the code behind the IaC strategy i " ], "weight": 5 }, "qualities": { "NumberOfInstances": 227272, "NumberOfFeatures": 113, "NumberOfClasses": 0, "NumberOfMissingValues": 757758, "NumberOfInstancesWithMissingValues": 13078, "NumberOfNumericFeatures": 109, "NumberOfSymbolicFeatures": 0, "Dimensionality": 0.0004972015910450913, "PercentageOfNumericFeatures": 96.46017699115043, "MajorityClassPercentage": null, "PercentageOfSymbolicFeatures": 0, "MajorityClassSize": null, "MinorityClassPercentage": null, "MinorityClassSize": null, "NumberOfBinaryFeatures": 0, "PercentageOfBinaryFeatures": 0, "PercentageOfInstancesWithMissingValues": 5.754338413882924, "AutoCorrelation": 0.8973780200729525, "PercentageOfMissingValues": 2.9505715657228158 }, "tags": [ { "uploader": "38960", "tag": "Computer Systems" }, { "uploader": "38960", "tag": "Machine Learning" } ], "features": [ { "name": "failure_prone", "index": "17", "type": "numeric", "distinct": "2", "missing": "0", "target": "1", "min": "0", "max": "1", "mean": "0", "stdev": "0" }, { "name": "additions", "index": "0", "type": "numeric", "distinct": "374", "missing": "0", "min": "0", "max": "6967", "mean": "2", "stdev": "23" }, { "name": "additions_avg", "index": "1", "type": "numeric", "distinct": "221", "missing": "0", "min": "0", "max": "6967", "mean": "1", "stdev": "18" }, { "name": "additions_max", "index": "2", "type": "numeric", "distinct": "286", "missing": "0", "min": "0", "max": "6967", "mean": "2", "stdev": "20" }, { "name": "avg_play_size", "index": "3", "type": "numeric", "distinct": "178", "missing": "3439", "min": "0", "max": "1035", "mean": "1", "stdev": "9" }, { "name": "avg_task_size", "index": "4", "type": "numeric", "distinct": "288", "missing": "3439", "min": "0", "max": "3452", "mean": "15", "stdev": "35" }, { "name": "change_set_avg", "index": "5", "type": "numeric", "distinct": "36", "missing": "0", "min": "0", "max": "198", "mean": "2", "stdev": "7" }, { "name": "change_set_max", "index": "6", "type": "numeric", "distinct": "121", "missing": "0", "min": "0", "max": "990", "mean": "17", "stdev": "58" }, { "name": "code_churn_avg", "index": "7", "type": "numeric", "distinct": "343", "missing": "0", "min": "-389", "max": "6967", "mean": "1", "stdev": "18" }, { "name": "code_churn_count", "index": "8", "type": "numeric", "distinct": "475", "missing": "0", "min": "-1105", "max": "6967", "mean": "1", "stdev": "21" }, { "name": "code_churn_max", "index": "9", "type": "numeric", "distinct": "378", "missing": "0", "min": "-389", "max": "6967", "mean": "1", "stdev": "20" }, { "name": "commit", "index": "10", "type": "string", "distinct": "3420", "missing": "0" }, { "name": "commits_count", "index": "11", "type": "numeric", "distinct": "53", "missing": "0", "min": "0", "max": "151", "mean": "0", "stdev": "1" }, { "name": "committed_at", "index": "12", "type": "string", "distinct": "3420", "missing": "0" }, { "name": "contributors_count", "index": "13", "type": "numeric", "distinct": "19", "missing": "0", "min": "0", "max": "21", "mean": "0", "stdev": "1" }, { "name": "deletions", "index": "14", "type": "numeric", "distinct": "276", "missing": "0", "min": "0", "max": "2230", "mean": "1", "stdev": "12" }, { "name": "deletions_avg", "index": "15", "type": "numeric", "distinct": "142", "missing": "0", "min": "0", "max": "460", "mean": "0", "stdev": "6" }, { "name": "deletions_max", "index": "16", "type": "numeric", "distinct": "210", "missing": "0", "min": "0", "max": "1157", "mean": "1", "stdev": "9" }, { "name": "filepath", "index": "18", "type": "string", "distinct": "10829", "missing": "0" }, { "name": "highest_contributor_experience", "index": "19", "type": "numeric", "distinct": "1468", "missing": "0", "min": "0", "max": "100", "mean": "10", "stdev": "29" }, { "name": "hunks_median", "index": "20", "type": "numeric", "distinct": "69", "missing": "0", "min": "0", "max": "333", "mean": "0", "stdev": "1" }, { "name": "lines_blank", "index": "21", "type": "numeric", "distinct": "137", "missing": "3439", "min": "0", "max": "385", "mean": "6", "stdev": "8" }, { "name": "lines_code", "index": "22", "type": "numeric", "distinct": "502", "missing": "3439", "min": "1", "max": "6582", "mean": "38", "stdev": "51" }, { "name": "lines_comment", "index": "23", "type": "numeric", "distinct": "163", "missing": "3439", "min": "0", "max": "517", "mean": "5", "stdev": "11" }, { "name": "minor_contributors_count", "index": "24", "type": "numeric", "distinct": "15", "missing": "0", "min": "0", "max": "15", "mean": "0", "stdev": "0" }, { "name": "num_authorized_key", "index": "25", "type": "numeric", "distinct": "5", "missing": "3439", "min": "0", "max": "4", "mean": "0", "stdev": "0" }, { "name": "num_block_error_handling", "index": "26", "type": "numeric", "distinct": "6", "missing": "3439", "min": "0", "max": "7", "mean": "0", "stdev": "0" }, { "name": "num_blocks", "index": "27", "type": "numeric", "distinct": "19", "missing": "3439", "min": "0", "max": "29", "mean": "0", "stdev": "1" }, { "name": "num_commands", "index": "28", "type": "numeric", "distinct": "43", "missing": "3439", "min": "0", "max": "138", "mean": "1", "stdev": "2" }, { "name": "num_conditions", "index": "29", "type": "numeric", "distinct": "109", "missing": "3439", "min": "0", "max": "382", "mean": "2", "stdev": "6" }, { "name": "num_decisions", "index": "30", "type": "numeric", "distinct": "89", "missing": "3439", "min": "0", "max": "191", "mean": "1", "stdev": "4" }, { "name": "num_deprecated_keywords", "index": "31", "type": "numeric", "distinct": "22", "missing": "3439", "min": "0", "max": "33", "mean": "0", "stdev": "1" }, { "name": "num_deprecated_modules", "index": "32", "type": "numeric", "distinct": "5", "missing": "3439", "min": "0", "max": "4", "mean": "0", "stdev": "0" }, { "name": "num_distinct_modules", "index": "33", "type": "numeric", "distinct": "93", "missing": "3439", "min": "0", "max": "201", "mean": "5", "stdev": "6" }, { "name": "num_external_modules", "index": "34", "type": "numeric", "distinct": "25", "missing": "3439", "min": "0", "max": "68", "mean": "0", "stdev": "1" }, { "name": "num_fact_modules", "index": "35", "type": "numeric", "distinct": "6", "missing": "3439", "min": "0", "max": "5", "mean": "0", "stdev": "0" }, { "name": "num_file_exists", "index": "36", "type": "numeric", "distinct": "9", "missing": "3439", "min": "0", "max": "29", "mean": "0", "stdev": "0" }, { "name": "num_file_mode", "index": "37", "type": "numeric", "distinct": "29", "missing": "3439", "min": "0", "max": "49", "mean": "0", "stdev": "1" }, { "name": "num_file_modules", "index": "38", "type": "numeric", "distinct": "23", "missing": "3439", "min": "0", "max": "23", "mean": "0", "stdev": "1" }, { "name": "num_filters", "index": "39", "type": "numeric", "distinct": "85", "missing": "3439", "min": "0", "max": "101", "mean": "2", "stdev": "5" }, { "name": "num_ignore_errors", "index": "40", "type": "numeric", "distinct": "32", "missing": "3439", "min": "0", "max": "40", "mean": "0", "stdev": "2" }, { "name": "num_import_playbook", "index": "41", "type": "numeric", "distinct": "20", "missing": "3439", "min": "0", "max": "31", "mean": "0", "stdev": "0" }, { "name": "num_import_role", "index": "42", "type": "numeric", "distinct": "26", "missing": "3439", "min": "0", "max": "110", "mean": "0", "stdev": "0" }, { "name": "num_import_tasks", "index": "43", "type": "numeric", "distinct": "22", "missing": "3439", "min": "0", "max": "27", "mean": "0", "stdev": "1" }, { "name": "num_include", "index": "44", "type": "numeric", "distinct": "33", "missing": "3439", "min": "0", "max": "191", "mean": "0", "stdev": "2" }, { "name": "num_include_role", "index": "45", "type": "numeric", "distinct": "14", "missing": "3439", "min": "0", "max": "25", "mean": "0", "stdev": "1" }, { "name": "num_include_tasks", "index": "46", "type": "numeric", "distinct": "24", "missing": "3439", "min": "0", "max": "51", "mean": "0", "stdev": "1" }, { "name": "num_include_vars", "index": "47", "type": "numeric", "distinct": "12", "missing": "3439", "min": "0", "max": "36", "mean": "0", "stdev": "0" }, { "name": "num_keys", "index": "48", "type": "numeric", "distinct": "435", "missing": "3439", "min": "0", "max": "1742", "mean": "29", "stdev": "38" }, { "name": "num_lookups", "index": "49", "type": "numeric", "distinct": "16", "missing": "3439", "min": "0", "max": "23", "mean": "0", "stdev": "1" }, { "name": "num_loops", "index": "50", "type": "numeric", "distinct": "44", "missing": "3439", "min": "0", "max": "77", "mean": "1", "stdev": "2" }, { "name": "num_math_operations", "index": "51", "type": "numeric", "distinct": "1", "missing": "3439", "min": "0", "max": "0", "mean": "0", "stdev": "0" }, { "name": "num_names_with_vars", "index": "52", "type": "numeric", "distinct": "32", "missing": "3439", "min": "0", "max": "33", "mean": "1", "stdev": "2" }, { "name": "num_parameters", "index": "53", "type": "numeric", "distinct": "164", "missing": "3439", "min": "0", "max": "481", "mean": "7", "stdev": "13" }, { "name": "num_paths", "index": "54", "type": "numeric", "distinct": "55", "missing": "3439", "min": "0", "max": "116", "mean": "2", "stdev": "4" }, { "name": "num_plays", "index": "55", "type": "numeric", "distinct": "28", "missing": "3439", "min": "0", "max": "48", "mean": "0", "stdev": "1" }, { "name": "num_prompts", "index": "56", "type": "numeric", "distinct": "11", "missing": "3439", "min": "0", "max": "18", "mean": "0", "stdev": "0" }, { "name": "num_regex", "index": "57", "type": "numeric", "distinct": "27", "missing": "3439", "min": "0", "max": "47", "mean": "0", "stdev": "1" }, { "name": "num_roles", "index": "58", "type": "numeric", "distinct": "23", "missing": "3439", "min": "0", "max": "30", "mean": "0", "stdev": "1" }, { "name": "num_suspicious_comments", "index": "59", "type": "numeric", "distinct": "11", "missing": "3439", "min": "0", "max": "12", "mean": "0", "stdev": "0" }, { "name": "num_tasks", "index": "60", "type": "numeric", "distinct": "96", "missing": "3439", "min": "0", "max": "201", "mean": "5", "stdev": "6" }, { "name": "num_tokens", "index": "61", "type": "numeric", "distinct": "1192", "missing": "3439", "min": "1", "max": "12307", "mean": "128", "stdev": "181" }, { "name": "num_unique_names", "index": "62", "type": "numeric", "distinct": "112", "missing": "3439", "min": "0", "max": "215", "mean": "5", "stdev": "7" }, { "name": "num_uri", "index": "63", "type": "numeric", "distinct": "18", "missing": "3439", "min": "0", "max": "24", "mean": "0", "stdev": "0" }, { "name": "num_vars", "index": "64", "type": "numeric", "distinct": "54", "missing": "3439", "min": "0", "max": "135", "mean": "1", "stdev": "3" }, { "name": "text_entropy", "index": "65", "type": "numeric", "distinct": "551", "missing": "3439", "min": "0", "max": "9", "mean": "5", "stdev": "1" }, { "name": "delta_avg_play_size", "index": "66", "type": "numeric", "distinct": "119", "missing": "13034", "min": "-540", "max": "173", "mean": "0", "stdev": "2" }, { "name": "delta_avg_task_size", "index": "67", "type": "numeric", "distinct": "127", "missing": "13034", "min": "-351", "max": "388", "mean": "0", "stdev": "2" }, { "name": "delta_lines_blank", "index": "68", "type": "numeric", "distinct": "85", "missing": "13034", "min": "-120", "max": "59", "mean": "0", "stdev": "1" }, { "name": "delta_lines_code", "index": "69", "type": "numeric", "distinct": "332", "missing": "13034", "min": "-872", "max": "500", "mean": "0", "stdev": "8" }, { "name": "delta_lines_comment", "index": "70", "type": "numeric", "distinct": "104", "missing": "13034", "min": "-203", "max": "195", "mean": "0", "stdev": "2" }, { "name": "delta_num_authorized_key", "index": "71", "type": "numeric", "distinct": "7", "missing": "13034", "min": "-4", "max": "3", "mean": "0", "stdev": "0" }, { "name": "delta_num_block_error_handling", "index": "72", "type": "numeric", "distinct": "4", "missing": "13034", "min": "-1", "max": "3", "mean": "0", "stdev": "0" }, { "name": "delta_num_blocks", "index": "73", "type": "numeric", "distinct": "18", "missing": "13034", "min": "-6", "max": "25", "mean": "0", "stdev": "0" }, { "name": "delta_num_commands", "index": "74", "type": "numeric", "distinct": "35", "missing": "13034", "min": "-104", "max": "18", "mean": "0", "stdev": "0" }, { "name": "delta_num_conditions", "index": "75", "type": "numeric", "distinct": "89", "missing": "13034", "min": "-87", "max": "100", "mean": "0", "stdev": "1" }, { "name": "delta_num_decisions", "index": "76", "type": "numeric", "distinct": "76", "missing": "13034", "min": "-85", "max": "54", "mean": "0", "stdev": "1" }, { "name": "delta_num_deprecated_keywords", "index": "77", "type": "numeric", "distinct": "20", "missing": "13034", "min": "-15", "max": "28", "mean": "0", "stdev": "0" }, { "name": "delta_num_deprecated_modules", "index": "78", "type": "numeric", "distinct": "3", "missing": "13034", "min": "-2", "max": "2", "mean": "0", "stdev": "0" }, { "name": "delta_num_distinct_modules", "index": "79", "type": "numeric", "distinct": "82", "missing": "13034", "min": "-105", "max": "117", "mean": "0", "stdev": "1" }, { "name": "delta_num_external_modules", "index": "80", "type": "numeric", "distinct": "22", "missing": "13034", "min": "-11", "max": "25", "mean": "0", "stdev": "0" }, { "name": "delta_num_fact_modules", "index": "81", "type": "numeric", "distinct": "6", "missing": "13034", "min": "-3", "max": "2", "mean": "0", "stdev": "0" }, { "name": "delta_num_file_exists", "index": "82", "type": "numeric", "distinct": "11", "missing": "13034", "min": "-25", "max": "5", "mean": "0", "stdev": "0" }, { "name": "delta_num_file_mode", "index": "83", "type": "numeric", "distinct": "21", "missing": "13034", "min": "-42", "max": "18", "mean": "0", "stdev": "0" }, { "name": "delta_num_file_modules", "index": "84", "type": "numeric", "distinct": "18", "missing": "13034", "min": "-18", "max": "9", "mean": "0", "stdev": "0" }, { "name": "delta_num_filters", "index": "85", "type": "numeric", "distinct": "59", "missing": "13034", "min": "-44", "max": "83", "mean": "0", "stdev": "1" }, { "name": "delta_num_ignore_errors", "index": "86", "type": "numeric", "distinct": "28", "missing": "13034", "min": "-21", "max": "28", "mean": "0", "stdev": "0" }, { "name": "delta_num_import_playbook", "index": "87", "type": "numeric", "distinct": "14", "missing": "13034", "min": "-3", "max": "23", "mean": "0", "stdev": "0" }, { "name": "delta_num_import_role", "index": "88", "type": "numeric", "distinct": "13", "missing": "13034", "min": "-1", "max": "69", "mean": "0", "stdev": "0" }, { "name": "delta_num_import_tasks", "index": "89", "type": "numeric", "distinct": "19", "missing": "13034", "min": "-15", "max": "15", "mean": "0", "stdev": "0" }, { "name": "delta_num_include", "index": "90", "type": "numeric", "distinct": "29", "missing": "13034", "min": "-49", "max": "17", "mean": "0", "stdev": "0" }, { "name": "delta_num_include_role", "index": "91", "type": "numeric", "distinct": "14", "missing": "13034", "min": "-17", "max": "7", "mean": "0", "stdev": "0" }, { "name": "delta_num_include_tasks", "index": "92", "type": "numeric", "distinct": "28", "missing": "13034", "min": "-26", "max": "49", "mean": "0", "stdev": "0" }, { "name": "delta_num_include_vars", "index": "93", "type": "numeric", "distinct": "11", "missing": "13034", "min": "-36", "max": "35", "mean": "0", "stdev": "0" }, { "name": "delta_num_keys", "index": "94", "type": "numeric", "distinct": "287", "missing": "13034", "min": "-839", "max": "414", "mean": "0", "stdev": "7" }, { "name": "delta_num_lookups", "index": "95", "type": "numeric", "distinct": "14", "missing": "13034", "min": "-7", "max": "11", "mean": "0", "stdev": "0" }, { "name": "delta_num_loops", "index": "96", "type": "numeric", "distinct": "34", "missing": "13034", "min": "-32", "max": "33", "mean": "0", "stdev": "0" }, { "name": "delta_num_math_operations", "index": "97", "type": "numeric", "distinct": "1", "missing": "13034", "min": "0", "max": "0", "mean": "0", "stdev": "0" }, { "name": "delta_num_names_with_vars", "index": "98", "type": "numeric", "distinct": "23", "missing": "13034", "min": "-17", "max": "14", "mean": "0", "stdev": "0" }, { "name": "delta_num_parameters", "index": "99", "type": "numeric", "distinct": "132", "missing": "13034", "min": "-382", "max": "169", "mean": "0", "stdev": "2" }, { "name": "delta_num_paths", "index": "100", "type": "numeric", "distinct": "44", "missing": "13034", "min": "-100", "max": "32", "mean": "0", "stdev": "0" }, { "name": "delta_num_plays", "index": "101", "type": "numeric", "distinct": "21", "missing": "13034", "min": "-15", "max": "14", "mean": "0", "stdev": "0" }, { "name": "delta_num_prompts", "index": "102", "type": "numeric", "distinct": "17", "missing": "13034", "min": "-11", "max": "13", "mean": "0", "stdev": "0" }, { "name": "delta_num_regex", "index": "103", "type": "numeric", "distinct": "18", "missing": "13034", "min": "-20", "max": "20", "mean": "0", "stdev": "0" }, { "name": "delta_num_roles", "index": "104", "type": "numeric", "distinct": "24", "missing": "13034", "min": "-20", "max": "15", "mean": "0", "stdev": "0" }, { "name": "delta_num_suspicious_comments", "index": "105", "type": "numeric", "distinct": "11", "missing": "13034", "min": "-11", "max": "5", "mean": "0", "stdev": "0" }, { "name": "delta_num_tasks", "index": "106", "type": "numeric", "distinct": "82", "missing": "13034", "min": "-105", "max": "120", "mean": "0", "stdev": "1" }, { "name": "delta_num_tokens", "index": "107", "type": "numeric", "distinct": "654", "missing": "13034", "min": "-2685", "max": "1497", "mean": "1", "stdev": "24" }, { "name": "delta_num_unique_names", "index": "108", "type": "numeric", "distinct": "72", "missing": "13034", "min": "-132", "max": "69", "mean": "0", "stdev": "1" }, { "name": "delta_num_uri", "index": "109", "type": "numeric", "distinct": "11", "missing": "13034", "min": "-7", "max": "14", "mean": "0", "stdev": "0" }, { "name": "delta_num_vars", "index": "110", "type": "numeric", "distinct": "46", "missing": "13034", "min": "-66", "max": "56", "mean": "0", "stdev": "1" }, { "name": "delta_text_entropy", "index": "111", "type": "numeric", "distinct": "586", "missing": "13034", "min": "-8", "max": "5", "mean": "0", "stdev": "0" }, { "name": "repository", "index": "112", "type": "string", "distinct": "139", "missing": "0" } ], "nr_of_issues": 0, "nr_of_downvotes": 0, "nr_of_likes": 0, "nr_of_downloads": 0, "total_downloads": 0, "reach": 0, "reuse": 0, "impact_of_reuse": 0, "reach_of_reuse": 0, "impact": 0 }