{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,8,22]],"date-time":"2025-08-22T05:01:36Z","timestamp":1755838896351,"version":"3.40.3"},"publisher-location":"Cham","reference-count":20,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783030353421"},{"type":"electronic","value":"9783030353438"}],"license":[{"start":{"date-parts":[[2019,1,1]],"date-time":"2019-01-01T00:00:00Z","timestamp":1546300800000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2019]]},"DOI":"10.1007\/978-3-030-35343-8_22","type":"book-chapter","created":{"date-parts":[[2019,11,24]],"date-time":"2019-11-24T19:02:57Z","timestamp":1574622177000},"page":"207-215","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":7,"title":["Improving Programming Education Quality with Automatic Grading System"],"prefix":"10.1007","author":[{"given":"Yun-Zhan","family":"Cai","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Meng-Hsun","family":"Tsai","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2019,11,18]]},"reference":[{"key":"22_CR1","unstructured":"Android_Developers: Espresso. \nhttps:\/\/developer.android.com\/training\/testing\/espresso"},{"key":"22_CR2","unstructured":"Android_Developers: Ui automator. \nhttps:\/\/developer.android.com\/training\/testing\/uiautomator"},{"key":"22_CR3","doi-asserted-by":"crossref","unstructured":"Britton, J., Berglund, T.: Using version control in the classroom. In: Proceeding of the 44th ACM Technical Symposium on Computer Science Education, pp. 753\u2013753. ACM  (2013)","DOI":"10.1145\/2445196.2445486"},{"key":"22_CR4","doi-asserted-by":"publisher","DOI":"10.1007\/978-1-4842-0076-6","volume-title":"Pro GIT","author":"S Chacon","year":"2014","unstructured":"Chacon, S., Straub, B.: Pro GIT. Apress, New York (2014)"},{"issue":"1","key":"22_CR5","doi-asserted-by":"publisher","first-page":"86","DOI":"10.1145\/1227504.1227344","volume":"39","author":"C Clifton","year":"2007","unstructured":"Clifton, C., Kaczmarczyk, L.C., Mrozek, M.: Subverting the fundamentals sequence: using version control to enhance course management. ACM SIGCSE Bull. 39(1), 86\u201390 (2007)","journal-title":"ACM SIGCSE Bull."},{"issue":"10","key":"22_CR6","doi-asserted-by":"publisher","first-page":"15","DOI":"10.1145\/1290958.1290979","volume":"50","author":"MA Cusumano","year":"2007","unstructured":"Cusumano, M.A.: Extreme programming compared with microsoft-style iterative development. Commun. ACM 50(10), 15\u201318 (2007)","journal-title":"Commun. ACM"},{"key":"22_CR7","doi-asserted-by":"crossref","unstructured":"Felt, A.P., Finifter, M., Chin, E., Hanna, S., Wagner, D.: A survey of mobile malware in the wild. In: Proceedings of the 1st ACM Workshop on Security and Privacy in Smartphones and Mobile Devices, pp. 3\u201314. ACM (2011)","DOI":"10.1145\/2046614.2046618"},{"key":"22_CR8","unstructured":"GitHub_Inc.: Github classroom. \nhttps:\/\/github.com\/education\/classroom"},{"key":"22_CR9","unstructured":"GitHub_Inc.: Github developer: webhooks. \nhttps:\/\/developer.github.com\/webhooks\/"},{"issue":"3","key":"22_CR10","first-page":"99","volume":"21","author":"L Glassy","year":"2006","unstructured":"Glassy, L.: Using version control to observe student software development processes. J. Comput. Sci. Coll. 21(3), 99\u2013106 (2006)","journal-title":"J. Comput. Sci. Coll."},{"key":"22_CR11","unstructured":"Google: Implementing continuous delivery with Travis CI and App Engine (2019). \nhttps:\/\/cloud.google.com\/solutions\/continuous-delivery-with-travis-ci"},{"key":"22_CR12","doi-asserted-by":"crossref","unstructured":"Holck, J., J\u00f8rgensen, N.: Continuous integration and quality assurance: a case study of two open source projects. Australas. J. Inf. Syst. 11(1), 45  (2003)","DOI":"10.3127\/ajis.v11i1.145"},{"key":"22_CR13","doi-asserted-by":"crossref","unstructured":"Miller, A.: A hundred days of continuous integration. In: Agile 2008 Conference, pp. 289\u2013293. IEEE (2008)","DOI":"10.1109\/Agile.2008.8"},{"key":"22_CR14","volume-title":"Linux Firewalls: Attack Detection and Response with iptables, psad, and fwsnort","author":"M Rash","year":"2007","unstructured":"Rash, M.: Linux Firewalls: Attack Detection and Response with iptables, psad, and fwsnort. No Starch Press, San Francisco (2007)"},{"key":"22_CR15","unstructured":"Robolectric: Robolectric, \nhttp:\/\/robolectric.org\/"},{"key":"22_CR16","unstructured":"The_JUnit_Team: Junit (2019). \nhttps:\/\/junit.org\/"},{"key":"22_CR17","unstructured":"Travis: Encryption keys. \nhttps:\/\/docs.travis-ci.com\/user\/encryption-keys\/"},{"key":"22_CR18","unstructured":"Travis: Job lifecycle. \nhttps:\/\/docs.travis-ci.com\/user\/job-lifecycle\/"},{"key":"22_CR19","unstructured":"Travis: Travis CI education. \nhttps:\/\/education.travis-ci.com\/"},{"key":"22_CR20","unstructured":"Watters, C., Johnson, P.: Version numbering in single development and test environment (2013)"}],"container-title":["Lecture Notes in Computer Science","Innovative Technologies and Learning"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-35343-8_22","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,12,27]],"date-time":"2019-12-27T01:05:05Z","timestamp":1577408705000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-030-35343-8_22"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019]]},"ISBN":["9783030353421","9783030353438"],"references-count":20,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-35343-8_22","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2019]]},"assertion":[{"value":"18 November 2019","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"ICITL","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Innovative Technologies and Learning","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Troms\u00f8","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Norway","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2019","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2 December 2019","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"5 December 2019","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"icitl2019","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"http:\/\/www.icitl.org\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Open","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"EasyChair","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"189","order":3,"name":"number_of_submissions_sent_for_review","label":"Number of Submissions Sent for Review","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"85","order":4,"name":"number_of_full_papers_accepted","label":"Number of Full Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"4","order":5,"name":"number_of_short_papers_accepted","label":"Number of Short Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"45% - The value is computed by the equation \"Number of Full Papers Accepted \/ Number of Submissions Sent for Review * 100\" and then rounded to a whole number.","order":6,"name":"acceptance_rate_of_full_papers","label":"Acceptance Rate of Full Papers","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"2","order":7,"name":"average_number_of_reviews_per_paper","label":"Average Number of Reviews per Paper","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Under 4","order":8,"name":"average_number_of_papers_per_reviewer","label":"Average Number of Papers per Reviewer","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"No","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}