{"id":"https://openalex.org/W2464228044","doi":"https://doi.org/10.1145/2899415.2899443","title":"Automatic Grading of Programming Exercises using Property-Based Testing","display_name":"Automatic Grading of Programming Exercises using Property-Based Testing","publication_year":2016,"publication_date":"2016-07-08","ids":{"openalex":"https://openalex.org/W2464228044","doi":"https://doi.org/10.1145/2899415.2899443","mag":"2464228044"},"language":"en","primary_location":{"id":"doi:10.1145/2899415.2899443","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2899415.2899443","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2016 ACM Conference on Innovation and Technology in Computer Science Education","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5079166867","display_name":"Clara Benac Earle","orcid":"https://orcid.org/0000-0002-8629-5289"},"institutions":[{"id":"https://openalex.org/I88060688","display_name":"Universidad Polit\u00e9cnica de Madrid","ror":"https://ror.org/03n6nwv02","country_code":"ES","type":"education","lineage":["https://openalex.org/I88060688"]}],"countries":["ES"],"is_corresponding":true,"raw_author_name":"Clara Benac Earle","raw_affiliation_strings":["Unversidad Polit\u00e9cnica de Madrid, Madrid, Spain"],"affiliations":[{"raw_affiliation_string":"Unversidad Polit\u00e9cnica de Madrid, Madrid, Spain","institution_ids":["https://openalex.org/I88060688"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5048436076","display_name":"Lars\u2010\u00c5ke Fredlund","orcid":"https://orcid.org/0000-0002-8296-4609"},"institutions":[{"id":"https://openalex.org/I88060688","display_name":"Universidad Polit\u00e9cnica de Madrid","ror":"https://ror.org/03n6nwv02","country_code":"ES","type":"education","lineage":["https://openalex.org/I88060688"]}],"countries":["ES"],"is_corresponding":false,"raw_author_name":"Lars-\u00c5ke Fredlund","raw_affiliation_strings":["Universidad Polit\u00e9cnica de Madrid, Madrid, Spain"],"affiliations":[{"raw_affiliation_string":"Universidad Polit\u00e9cnica de Madrid, Madrid, Spain","institution_ids":["https://openalex.org/I88060688"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5068339489","display_name":"John Hughes","orcid":"https://orcid.org/0000-0001-8042-0969"},"institutions":[{"id":"https://openalex.org/I4210149418","display_name":"Quviq (Sweden)","ror":"https://ror.org/05q10zf45","country_code":"SE","type":"company","lineage":["https://openalex.org/I4210149418"]},{"id":"https://openalex.org/I66862912","display_name":"Chalmers University of Technology","ror":"https://ror.org/040wg7k59","country_code":"SE","type":"education","lineage":["https://openalex.org/I66862912"]}],"countries":["SE"],"is_corresponding":false,"raw_author_name":"John Hughes","raw_affiliation_strings":["Chalmers University of Technology and Quviq AB, G\u00f6teborg, Sweden"],"affiliations":[{"raw_affiliation_string":"Chalmers University of Technology and Quviq AB, G\u00f6teborg, Sweden","institution_ids":["https://openalex.org/I4210149418","https://openalex.org/I66862912"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5079166867"],"corresponding_institution_ids":["https://openalex.org/I88060688"],"apc_list":null,"apc_paid":null,"fwci":2.9183,"has_fulltext":false,"cited_by_count":18,"citation_normalized_percentile":{"value":0.91022707,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"47","last_page":"52"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":1.0,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":1.0,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10533","display_name":"Teaching and Learning Programming","score":0.9979000091552734,"subfield":{"id":"https://openalex.org/subfields/1706","display_name":"Computer Science Applications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T12423","display_name":"Software Reliability and Analysis Research","score":0.9958000183105469,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7587805986404419},{"id":"https://openalex.org/keywords/correctness","display_name":"Correctness","score":0.71816086769104},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.5771497488021851},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5771176815032959},{"id":"https://openalex.org/keywords/cyclomatic-complexity","display_name":"Cyclomatic complexity","score":0.5597949028015137},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.552248477935791},{"id":"https://openalex.org/keywords/property","display_name":"Property (philosophy)","score":0.5129820704460144},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.4470764696598053},{"id":"https://openalex.org/keywords/functional-testing","display_name":"Functional testing","score":0.4174639582633972},{"id":"https://openalex.org/keywords/program-analysis","display_name":"Program analysis","score":0.4160573482513428},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.2448231279850006},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.15306341648101807},{"id":"https://openalex.org/keywords/testability","display_name":"Testability","score":0.12045449018478394}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7587805986404419},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.71816086769104},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.5771497488021851},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5771176815032959},{"id":"https://openalex.org/C187303228","wikidata":"https://www.wikidata.org/wiki/Q867330","display_name":"Cyclomatic complexity","level":3,"score":0.5597949028015137},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.552248477935791},{"id":"https://openalex.org/C189950617","wikidata":"https://www.wikidata.org/wiki/Q937228","display_name":"Property (philosophy)","level":2,"score":0.5129820704460144},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.4470764696598053},{"id":"https://openalex.org/C80823478","wikidata":"https://www.wikidata.org/wiki/Q4493432","display_name":"Functional testing","level":3,"score":0.4174639582633972},{"id":"https://openalex.org/C98183937","wikidata":"https://www.wikidata.org/wiki/Q2112188","display_name":"Program analysis","level":2,"score":0.4160573482513428},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.2448231279850006},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.15306341648101807},{"id":"https://openalex.org/C51234621","wikidata":"https://www.wikidata.org/wiki/Q2149495","display_name":"Testability","level":2,"score":0.12045449018478394},{"id":"https://openalex.org/C105795698","wikidata":"https://www.wikidata.org/wiki/Q12483","display_name":"Statistics","level":1,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C111472728","wikidata":"https://www.wikidata.org/wiki/Q9471","display_name":"Epistemology","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2899415.2899443","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2899415.2899443","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2016 ACM Conference on Innovation and Technology in Computer Science Education","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G8336535233","display_name":null,"funder_award_id":"TIN2012-39391-C04-02","funder_id":"https://openalex.org/F4320321837","funder_display_name":"Ministerio de Econom\u00eda y Competitividad"},{"id":"https://openalex.org/G8830909938","display_name":null,"funder_award_id":"317820","funder_id":"https://openalex.org/F4320334960","funder_display_name":"Seventh Framework Programme"}],"funders":[{"id":"https://openalex.org/F4320321837","display_name":"Ministerio de Econom\u00eda y Competitividad","ror":"https://ror.org/034900433"},{"id":"https://openalex.org/F4320334960","display_name":"Seventh Framework Programme","ror":"https://ror.org/00k4n6c32"}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":13,"referenced_works":["https://openalex.org/W1964962870","https://openalex.org/W1967709752","https://openalex.org/W2030358379","https://openalex.org/W2067448797","https://openalex.org/W2070629635","https://openalex.org/W2083222184","https://openalex.org/W2107709519","https://openalex.org/W2119717320","https://openalex.org/W2128112496","https://openalex.org/W2130413583","https://openalex.org/W2151828850","https://openalex.org/W2159586681","https://openalex.org/W4242126179"],"related_works":["https://openalex.org/W2138154145","https://openalex.org/W2078498437","https://openalex.org/W1836373119","https://openalex.org/W1564871014","https://openalex.org/W4361000813","https://openalex.org/W3168910894","https://openalex.org/W2097110854","https://openalex.org/W2218760685","https://openalex.org/W4200456901","https://openalex.org/W2497124453"],"abstract_inverted_index":{"We":[0],"present":[1],"a":[2,13,39,58,65,77,114,132],"framework":[3,100,128],"for":[4,89],"automatic":[5],"grading":[6],"of":[7,15,28,42,53,61,80],"programming":[8],"exercises":[9,54],"using":[10,139],"property-based":[11],"testing,":[12],"form":[14],"model-based":[16],"black-box":[17],"testing.":[18],"Models":[19],"are":[20,45],"developed":[21],"to":[22,57,94,113],"assess":[23],"both":[24,120],"the":[25,35,51,81],"functional":[26,36],"behaviour":[27],"programs":[29],"and":[30,123,136],"their":[31],"algorithmic":[32,90],"complexity.":[33],"From":[34],"correctness":[37],"model":[38,88],"large":[40],"number":[41],"test":[43,82],"cases":[44,83],"derived":[46],"automatically.":[47],"Executing":[48],"them":[49],"on":[50],"body":[52],"gives":[55],"rise":[56,112],"(partial)":[59],"ranking":[60],"programs,":[62],"so":[63],"that":[64,118],"program":[66,72,116],"A":[67],"is":[68,92,129],"ranked":[69],"higher":[70],"than":[71],"B":[73],"if":[74],"it":[75],"fails":[76],"strict":[78],"subset":[79],"failed":[84],"by":[85],"B.":[86],"The":[87,99,127],"complexity":[91,97],"used":[93],"compute":[95],"worst-case":[96],"bounds.":[98],"moreover":[101],"considers":[102],"code":[103,124],"structural":[104,125],"metrics,":[105],"such":[106],"as":[107],"McCabe's":[108],"cyclomatic":[109],"complexity,":[110],"giving":[111],"composite":[115],"grade":[117],"includes":[119],"functional,":[121],"non-functional,":[122],"aspects.":[126],"evaluated":[130],"in":[131],"course":[133],"teaching":[134],"algorithms":[135],"data":[137],"structures":[138],"Java.":[140]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2024,"cited_by_count":1},{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":3},{"year":2020,"cited_by_count":5},{"year":2019,"cited_by_count":3},{"year":2018,"cited_by_count":3},{"year":2017,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
