{"id":"https://openalex.org/W2952338725","doi":"https://doi.org/10.1109/fie.2017.8190589","title":"Prof. CI: Employing continuous integration services and Github workflows to teach test-driven development","display_name":"Prof. CI: Employing continuous integration services and Github workflows to teach test-driven development","publication_year":2017,"publication_date":"2017-10-01","ids":{"openalex":"https://openalex.org/W2952338725","doi":"https://doi.org/10.1109/fie.2017.8190589","mag":"2952338725"},"language":"en","primary_location":{"id":"doi:10.1109/fie.2017.8190589","is_oa":false,"landing_page_url":"https://doi.org/10.1109/fie.2017.8190589","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2017 IEEE Frontiers in Education Conference (FIE)","raw_type":"proceedings-article"},"type":"conference-paper","indexed_in":["arxiv","crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://arxiv.org/pdf/1809.00580","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5026770627","display_name":"Christoph Matthies","orcid":"https://orcid.org/0000-0002-6612-5055"},"institutions":[{"id":"https://openalex.org/I143288331","display_name":"Hasso Plattner Institute","ror":"https://ror.org/058rn5r42","country_code":"DE","type":"facility","lineage":["https://openalex.org/I143288331","https://openalex.org/I176453806"]},{"id":"https://openalex.org/I176453806","display_name":"University of Potsdam","ror":"https://ror.org/03bnmw459","country_code":"DE","type":"education","lineage":["https://openalex.org/I176453806"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Christoph Matthies","raw_affiliation_strings":["Hasso Plattner Institute, University of Potsdam, Potsdam, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Hasso Plattner Institute, University of Potsdam, Potsdam, Germany","institution_ids":["https://openalex.org/I143288331","https://openalex.org/I176453806"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5020333607","display_name":"Arian Treffer","orcid":null},"institutions":[{"id":"https://openalex.org/I143288331","display_name":"Hasso Plattner Institute","ror":"https://ror.org/058rn5r42","country_code":"DE","type":"facility","lineage":["https://openalex.org/I143288331","https://openalex.org/I176453806"]},{"id":"https://openalex.org/I176453806","display_name":"University of Potsdam","ror":"https://ror.org/03bnmw459","country_code":"DE","type":"education","lineage":["https://openalex.org/I176453806"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Arian Treffer","raw_affiliation_strings":["Hasso Plattner Institute, University of Potsdam, Potsdam, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Hasso Plattner Institute, University of Potsdam, Potsdam, Germany","institution_ids":["https://openalex.org/I143288331","https://openalex.org/I176453806"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5080813303","display_name":"Matthias Uflacker","orcid":null},"institutions":[{"id":"https://openalex.org/I143288331","display_name":"Hasso Plattner Institute","ror":"https://ror.org/058rn5r42","country_code":"DE","type":"facility","lineage":["https://openalex.org/I143288331","https://openalex.org/I176453806"]},{"id":"https://openalex.org/I176453806","display_name":"University of Potsdam","ror":"https://ror.org/03bnmw459","country_code":"DE","type":"education","lineage":["https://openalex.org/I176453806"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Matthias Uflacker","raw_affiliation_strings":["Hasso Plattner Institute, University of Potsdam, Potsdam, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Hasso Plattner Institute, University of Potsdam, Potsdam, Germany","institution_ids":["https://openalex.org/I143288331","https://openalex.org/I176453806"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":1.8039,"has_fulltext":false,"cited_by_count":13,"citation_normalized_percentile":{"value":0.86431925,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":null,"issue":null,"first_page":"1","last_page":"8"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11122","display_name":"Online Learning and Analytics","score":0.9950000047683716,"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"}},"topics":[{"id":"https://openalex.org/T11122","display_name":"Online Learning and Analytics","score":0.9950000047683716,"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/T10533","display_name":"Teaching and Learning Programming","score":0.9921000003814697,"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/T10260","display_name":"Software Engineering Research","score":0.989300012588501,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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/workflow","display_name":"Workflow","score":0.8009661436080933},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7612740993499756},{"id":"https://openalex.org/keywords/test-driven-development","display_name":"Test-driven development","score":0.6901172995567322},{"id":"https://openalex.org/keywords/scalability","display_name":"Scalability","score":0.673795223236084},{"id":"https://openalex.org/keywords/popularity","display_name":"Popularity","score":0.6283751130104065},{"id":"https://openalex.org/keywords/bittorrent-tracker","display_name":"BitTorrent tracker","score":0.6220213174819946},{"id":"https://openalex.org/keywords/automation","display_name":"Automation","score":0.525233268737793},{"id":"https://openalex.org/keywords/test","display_name":"Test (biology)","score":0.5071902275085449},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.4683246910572052},{"id":"https://openalex.org/keywords/world-wide-web","display_name":"World Wide Web","score":0.45839038491249084},{"id":"https://openalex.org/keywords/multimedia","display_name":"Multimedia","score":0.44076448678970337},{"id":"https://openalex.org/keywords/web-application","display_name":"Web application","score":0.41884246468544006},{"id":"https://openalex.org/keywords/web-service","display_name":"Web service","score":0.41622394323349},{"id":"https://openalex.org/keywords/software-development","display_name":"Software development","score":0.2557729482650757},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.23732003569602966},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.12297669053077698},{"id":"https://openalex.org/keywords/engineering","display_name":"Engineering","score":0.11558592319488525},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.11447027325630188},{"id":"https://openalex.org/keywords/database","display_name":"Database","score":0.11156576871871948}],"concepts":[{"id":"https://openalex.org/C177212765","wikidata":"https://www.wikidata.org/wiki/Q627335","display_name":"Workflow","level":2,"score":0.8009661436080933},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7612740993499756},{"id":"https://openalex.org/C4478048","wikidata":"https://www.wikidata.org/wiki/Q950250","display_name":"Test-driven development","level":4,"score":0.6901172995567322},{"id":"https://openalex.org/C48044578","wikidata":"https://www.wikidata.org/wiki/Q727490","display_name":"Scalability","level":2,"score":0.673795223236084},{"id":"https://openalex.org/C2780586970","wikidata":"https://www.wikidata.org/wiki/Q1357284","display_name":"Popularity","level":2,"score":0.6283751130104065},{"id":"https://openalex.org/C57501372","wikidata":"https://www.wikidata.org/wiki/Q2021268","display_name":"BitTorrent tracker","level":3,"score":0.6220213174819946},{"id":"https://openalex.org/C115901376","wikidata":"https://www.wikidata.org/wiki/Q184199","display_name":"Automation","level":2,"score":0.525233268737793},{"id":"https://openalex.org/C2777267654","wikidata":"https://www.wikidata.org/wiki/Q3519023","display_name":"Test (biology)","level":2,"score":0.5071902275085449},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.4683246910572052},{"id":"https://openalex.org/C136764020","wikidata":"https://www.wikidata.org/wiki/Q466","display_name":"World Wide Web","level":1,"score":0.45839038491249084},{"id":"https://openalex.org/C49774154","wikidata":"https://www.wikidata.org/wiki/Q131765","display_name":"Multimedia","level":1,"score":0.44076448678970337},{"id":"https://openalex.org/C118643609","wikidata":"https://www.wikidata.org/wiki/Q189210","display_name":"Web application","level":2,"score":0.41884246468544006},{"id":"https://openalex.org/C35578498","wikidata":"https://www.wikidata.org/wiki/Q193424","display_name":"Web service","level":2,"score":0.41622394323349},{"id":"https://openalex.org/C529173508","wikidata":"https://www.wikidata.org/wiki/Q638608","display_name":"Software development","level":3,"score":0.2557729482650757},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.23732003569602966},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.12297669053077698},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.11558592319488525},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.11447027325630188},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.11156576871871948},{"id":"https://openalex.org/C56461940","wikidata":"https://www.wikidata.org/wiki/Q970687","display_name":"Eye tracking","level":2,"score":0.0},{"id":"https://openalex.org/C151730666","wikidata":"https://www.wikidata.org/wiki/Q7205","display_name":"Paleontology","level":1,"score":0.0},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C15744967","wikidata":"https://www.wikidata.org/wiki/Q9418","display_name":"Psychology","level":0,"score":0.0},{"id":"https://openalex.org/C78519656","wikidata":"https://www.wikidata.org/wiki/Q101333","display_name":"Mechanical engineering","level":1,"score":0.0},{"id":"https://openalex.org/C77805123","wikidata":"https://www.wikidata.org/wiki/Q161272","display_name":"Social psychology","level":1,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1109/fie.2017.8190589","is_oa":false,"landing_page_url":"https://doi.org/10.1109/fie.2017.8190589","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2017 IEEE Frontiers in Education Conference (FIE)","raw_type":"proceedings-article"},{"id":"pmh:oai:arXiv.org:1809.00580","is_oa":true,"landing_page_url":"http://arxiv.org/abs/1809.00580","pdf_url":"https://arxiv.org/pdf/1809.00580","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"}],"best_oa_location":{"id":"pmh:oai:arXiv.org:1809.00580","is_oa":true,"landing_page_url":"http://arxiv.org/abs/1809.00580","pdf_url":"https://arxiv.org/pdf/1809.00580","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"},"sustainable_development_goals":[{"id":"https://metadata.un.org/sdg/9","display_name":"Industry, innovation and infrastructure","score":0.5899999737739563}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":18,"referenced_works":["https://openalex.org/W2823260","https://openalex.org/W1573741924","https://openalex.org/W1856796825","https://openalex.org/W1968139639","https://openalex.org/W1970912021","https://openalex.org/W2037595410","https://openalex.org/W2082751146","https://openalex.org/W2101567935","https://openalex.org/W2121855876","https://openalex.org/W2125920815","https://openalex.org/W2165558212","https://openalex.org/W2241046636","https://openalex.org/W2578923838","https://openalex.org/W3004602269","https://openalex.org/W6600093317","https://openalex.org/W6634234396","https://openalex.org/W6732244297","https://openalex.org/W6987581129"],"related_works":["https://openalex.org/W2368605798","https://openalex.org/W2518037665","https://openalex.org/W2348524959","https://openalex.org/W2477036161","https://openalex.org/W2368049389","https://openalex.org/W2384861574","https://openalex.org/W4294565801","https://openalex.org/W2170801710","https://openalex.org/W2952704802","https://openalex.org/W76474628"],"abstract_inverted_index":{"Teaching":[0],"programming":[1,32],"using":[2],"Massive":[3],"Open":[4],"Online":[5],"Courses":[6],"(MOOCs)":[7],"is":[8,69,82],"gaining":[9],"popularity":[10],"due":[11],"to":[12,29,83,95,99,108,128,149,210],"their":[13,158,176,214],"scalability":[14],"and":[15,42,92,119,146,163,166,226],"efficiency":[16],"of":[17,117,221],"knowledge":[18],"distribution.":[19],"However,":[20],"participating":[21],"in":[22,34,90,161,184],"these":[23,110],"courses":[24],"usually":[25],"means":[26],"fully":[27],"committing":[28],"the":[30,35,76,79,135,170,193,204,219],"supplied":[31],"environment":[33],"browser.":[36],"While":[37],"this":[38,182],"allows":[39],"a":[40,114,125,185],"consistent":[41],"controllable":[43],"setup,":[44],"learners":[45],"do":[46],"not":[47],"gain":[48],"experience":[49],"with":[50,102,188],"actual":[51],"development":[52,152,198],"tools,":[53],"such":[54],"as":[55],"local":[56],"code":[57],"editors,":[58],"testing":[59],"frameworks,":[60],"issue":[61],"trackers":[62],"or":[63],"continuous":[64],"integration":[65],"(CI)":[66],"services,":[67],"which":[68],"critical":[70],"for":[71,78,213],"subsequent":[72],"real-world":[73],"projects.":[74],"Furthermore,":[75],"tests":[77,212],"functionality":[80],"that":[81,139,203],"be":[84,96],"developed":[85,122],"are":[86],"oftentimes":[87],"already":[88],"available":[89],"MOOCs":[91],"simply":[93],"need":[94],"executed,":[97],"leading":[98],"less":[100],"involvement":[101],"developing":[103],"appropriate":[104],"tests.":[105],"In":[106],"order":[107],"tackle":[109],"issues":[111],"while":[112],"maintaining":[113],"high":[115],"degree":[116],"automation":[118,137],"scalability,":[120],"we":[121],"Prof.":[123,132],"CI,":[124],"novel":[126],"approach":[127,183],"conducting":[129],"online":[130],"exercises.":[131],"CI":[133,144,171],"leverages":[134],"existing":[136],"infrastructure":[138],"developers":[140],"use":[141],"daily,":[142],"i.e.":[143],"services":[145],"Github":[147,162],"workflows,":[148],"teach":[150],"test-driven":[151],"(TDD)":[153],"practices.":[154],"Participants":[155],"work":[156],"on":[157,195],"own":[159],"repositories":[160],"receive":[164],"feedback":[165],"new":[167],"challenges":[168],"from":[169],"server":[172],"when":[173],"they":[174],"push":[175],"code.":[177,215],"We":[178,216],"have":[179],"successfully":[180],"applied":[181],"pilot":[186],"project":[187],"30":[189],"undergraduate":[190],"students":[191],"learning":[192],"Ruby":[194],"Rails":[196],"web":[197],"framework.":[199],"Our":[200],"evaluation":[201],"shows":[202],"exercise":[205],"effectively":[206],"increased":[207],"students'":[208,224],"motivation":[209],"write":[211],"also":[217],"present":[218],"results":[220],"participant":[222],"surveys,":[223],"experiences":[225],"teachers'":[227],"observations.":[228]},"counts_by_year":[{"year":2024,"cited_by_count":2},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":3},{"year":2020,"cited_by_count":2},{"year":2019,"cited_by_count":1},{"year":2018,"cited_by_count":4}],"updated_date":"2026-08-26T07:47:46.906454","created_date":"2025-10-10T00:00:00"}
