{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,24]],"date-time":"2026-03-24T03:37:54Z","timestamp":1774323474880,"version":"3.50.1"},"reference-count":39,"publisher":"Springer Science and Business Media LLC","issue":"2","license":[{"start":{"date-parts":[[2022,2,10]],"date-time":"2022-02-10T00:00:00Z","timestamp":1644451200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2022,2,10]],"date-time":"2022-02-10T00:00:00Z","timestamp":1644451200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"funder":[{"DOI":"10.13039\/501100001809","name":"National Natural Science Foundation of China","doi-asserted-by":"publisher","award":["61872167"],"award-info":[{"award-number":["61872167"]}],"id":[{"id":"10.13039\/501100001809","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["SN COMPUT. SCI."],"published-print":{"date-parts":[[2022,3]]},"DOI":"10.1007\/s42979-022-01034-y","type":"journal-article","created":{"date-parts":[[2022,2,10]],"date-time":"2022-02-10T12:02:55Z","timestamp":1644494575000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":3,"title":["TAFFIES: Tailored Automated Feedback Framework for Developing Integrated and Extensible Feedback Systems"],"prefix":"10.1007","volume":"3","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-1543-0148","authenticated-orcid":false,"given":"Matthew","family":"Pike","sequence":"first","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0001-5743-1010","authenticated-orcid":false,"given":"Boon Giin","family":"Lee","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0003-0877-4353","authenticated-orcid":false,"given":"Dave","family":"Towey","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2022,2,10]]},"reference":[{"key":"1034_CR1","unstructured":"Gill A, Irwin D, Towey D, Walker J, Zhang Y. Reacting to the coronavirus: a case study of science and engineering education switching to online learning in a Sino-foreign higher education institution. In: 2020 International conference on open and innovative education (ICOIE 2020), Hong Kong, China; 2020. p. 385\u2013404."},{"key":"1034_CR2","unstructured":"Gill A, Irwin D, Towey D, Walker J, Zhang Y. Reflections post-lockdown: science and engineering education switching to online learning. Int J Mob Learn Organ (N.D.) (to appear)"},{"issue":"4","key":"1034_CR3","doi-asserted-by":"publisher","first-page":"271","DOI":"10.1007\/s42979-021-00663-z","volume":"2","author":"T Wang","year":"2021","unstructured":"Wang T, Towey D, Ng RY-K, Gill AS. Towards post-pandemic transformative teaching and learning: case studies of microlearning implementations in two post-secondary educational institutions. SN Comput Sci. 2021;2(4):271.","journal-title":"SN Comput Sci"},{"key":"1034_CR4","unstructured":"Jenkins T. On the difficulty of learning to program. In: Proceedings of the 3rd annual conference of the LTSN Centre for information and computer sciences, vol. 4.  Loughborough, UK: LTSN-ICS; 2002. p. 53\u20138."},{"key":"1034_CR5","doi-asserted-by":"crossref","unstructured":"Tan P-H, Ting C-Y, Ling S-W. Learning difficulties in programming courses: undergraduates\u2019 perspective and perception. In: 2009 International conference on computer technology and development. Kota Kinabalu, Malaysia: IEEE; 2009. p. 42\u201346.","DOI":"10.1109\/ICCTD.2009.188"},{"issue":"2","key":"1034_CR6","doi-asserted-by":"publisher","first-page":"137","DOI":"10.1076\/csed.13.2.137.14200","volume":"13","author":"A Robins","year":"2003","unstructured":"Robins A, Rountree J, Rountree N. Learning and teaching programming: a review and discussion. Comput Sci Educ. 2003;13(2):137\u201372.","journal-title":"Comput Sci Educ"},{"issue":"1","key":"1034_CR7","doi-asserted-by":"publisher","first-page":"153","DOI":"10.3102\/0034654307313795","volume":"78","author":"VJ Shute","year":"2008","unstructured":"Shute VJ. Focus on formative feedback. Rev Educ Res. 2008;78(1):153\u201389.","journal-title":"Rev Educ Res"},{"issue":"1","key":"1034_CR8","doi-asserted-by":"publisher","first-page":"102","DOI":"10.1080\/02602938.2013.795518","volume":"39","author":"D Nicol","year":"2014","unstructured":"Nicol D, Thomson A, Breslin C. Rethinking feedback practices in higher education: a peer review perspective. Assess Eval High Educ. 2014;39(1):102\u201322.","journal-title":"Assess Eval High Educ"},{"key":"1034_CR9","doi-asserted-by":"crossref","unstructured":"Towey D, Zhao K. Developing an automated coding tutorial OER. In: 2017 IEEE 6th international conference on teaching, assessment, and learning for engineering (TALE). Hong Kong, China: IEEE; 2017. p. 233\u2013238.","DOI":"10.1109\/TALE.2017.8252339"},{"key":"1034_CR10","doi-asserted-by":"crossref","unstructured":"Singh R, Gulwani S, Solar-Lezama A. Automated feedback generation for introductory programming assignments. In: Proceedings of the 34th ACM SIGPLAN conference on programming language design and implementation. New York, NY, USA: Association for Computing Machinery; 2013. p. 15\u201326.","DOI":"10.1145\/2491956.2462195"},{"key":"1034_CR11","doi-asserted-by":"crossref","unstructured":"Odekirk-Hash E, Zachary JL. Automated feedback on programs means students need less help from teachers. In: Proceedings of the thirty-second SIGCSE technical symposium on computer science education. New York, NY, USA: Association for Computing Machinery; 2001. p. 55\u20139.","DOI":"10.1145\/364447.364537"},{"issue":"2","key":"1034_CR12","doi-asserted-by":"publisher","first-page":"83","DOI":"10.1080\/08993400500150747","volume":"15","author":"KM Ala-Mutka","year":"2005","unstructured":"Ala-Mutka KM. A survey of automated assessment approaches for programming assignments. Comput Sci Educ. 2005;15(2):83\u2013102.","journal-title":"Comput Sci Educ"},{"key":"1034_CR13","doi-asserted-by":"crossref","unstructured":"Keuning H, Jeuring J, Heeren B. Towards a systematic review of automated feedback generation for programming exercises. In: Proceedings of the 2016 ACM conference on innovation and technology in computer science education. New York, NY, USA: Association for Computing Machinery; 2016. p. 41\u201346. https:\/\/dl.acm.org\/doi\/10.1145\/2899415.2899422","DOI":"10.1145\/2899415.2899422"},{"key":"1034_CR14","doi-asserted-by":"crossref","unstructured":"Gusukuma L, Bart AC, Kafura D. Pedal: an infrastructure for automated feedback systems. In: Proceedings of the 51st ACM technical symposium on computer science education. New York, NY, USA: Association for Computing Machinery; 2020. p. 1061\u20131067. https:\/\/dl.acm.org\/doi\/abs\/10.1145\/3328778.3366913","DOI":"10.1145\/3328778.3366913"},{"key":"1034_CR15","doi-asserted-by":"crossref","unstructured":"Blau H, Moss JEB. Frenchpress gives students automated feedback on Java program flaws. In: Proceedings of the 2015 ACM conference on innovation and technology in computer science education. New York, NY, USA: Association for Computing Machinery; 2015. p. 15\u201320. https:\/\/dl.acm.org\/doi\/10.1145\/2729094.2742622","DOI":"10.1145\/2729094.2742622"},{"key":"1034_CR16","doi-asserted-by":"crossref","unstructured":"Head A, Glassman E, Soares G, Suzuki R, Figueredo L, D\u2019Antoni L, Hartmann B. Writing reusable code feedback at scale with mixed-initiative program synthesis. In: Proceedings of the fourth ACM conference on learning at scale. New York, NY, USA: Association for Computing Machinery; 2017. p. 89\u201398. https:\/\/dl.acm.org\/doi\/10.1145\/3051457.3051467.","DOI":"10.1145\/3051457.3051467"},{"issue":"3","key":"1034_CR17","doi-asserted-by":"publisher","first-page":"67","DOI":"10.1145\/1026487.1008016","volume":"36","author":"M Blumenstein","year":"2004","unstructured":"Blumenstein M, Green S, Nguyen A, Muthukkumarasamy V. An experimental analysis of game: a generic automated marking environment. ACM SIGCSE Bull. 2004;36(3):67\u201371.","journal-title":"ACM SIGCSE Bull"},{"key":"1034_CR18","doi-asserted-by":"crossref","unstructured":"Adams MD. Aristotle: a flexible open-source software toolkit for semi-automated marking of programming assignments. In: 2017 IEEE Pacific rim conference on communications, computers and signal processing (PACRIM). Victoria, BC, Canada: IEEE; 2017. p. 1\u20136. https:\/\/ieeexplore.ieee.org\/document\/8121888","DOI":"10.1109\/PACRIM.2017.8121888"},{"key":"1034_CR19","volume-title":"Agile and iterative development: a manager\u2019s guide","author":"C Larman","year":"2004","unstructured":"Larman C. Agile and iterative development: a manager\u2019s guide. Boston: Addison-Wesley Professional; 2004."},{"key":"1034_CR20","doi-asserted-by":"crossref","unstructured":"Towey D, Reisman S, Chan H, Demartini C, Tovar E, Margaria T. OER: six perspectives on global misconceptions and challenges. In: 2019 IEEE international conference on engineering, technology and education (TALE). Yogyakarta, Indonesia: IEEE; 2019. p. 889\u2013895.","DOI":"10.1109\/TALE48000.2019.9225943"},{"issue":"3","key":"1034_CR21","doi-asserted-by":"publisher","first-page":"589","DOI":"10.1016\/j.infsof.2008.08.002","volume":"51","author":"S Thomas","year":"2009","unstructured":"Thomas S, Williams L, Xie T. On automated prepared statement generation to remove SQL injection vulnerabilities. Inf Softw Technol. 2009;51(3):589\u201398.","journal-title":"Inf Softw Technol"},{"issue":"9","key":"1034_CR22","doi-asserted-by":"publisher","first-page":"43","DOI":"10.1109\/MC.2005.314","volume":"38","author":"D Janzen","year":"2005","unstructured":"Janzen D, Saiedian H. Test-driven development concepts, taxonomy, and future direction. Computer. 2005;38(9):43\u201350.","journal-title":"Computer"},{"key":"1034_CR23","volume-title":"Test-driven development: by example","author":"K Beck","year":"2003","unstructured":"Beck K. Test-driven development: by example. Boston, USA: Addison-Wesley Professional; 2003."},{"issue":"4","key":"1034_CR24","doi-asserted-by":"publisher","first-page":"366","DOI":"10.1145\/267580.267590","volume":"29","author":"H Zhu","year":"1997","unstructured":"Zhu H, Hall PA, May JH. Software unit test coverage and adequacy. ACM Comput Surv (CSUR). 1997;29(4):366\u2013427.","journal-title":"ACM Comput Surv (CSUR)"},{"issue":"5","key":"1034_CR25","doi-asserted-by":"publisher","first-page":"30","DOI":"10.1109\/MS.2005.129","volume":"22","author":"B Boehm","year":"2005","unstructured":"Boehm B, Turner R. Management challenges to implementing agile processes in traditional development organizations. IEEE Softw. 2005;22(5):30\u20139.","journal-title":"IEEE Softw"},{"key":"1034_CR26","unstructured":"Beck K, Beedle M, Van\u00a0Bennekum A, Cockburn A, Cunningham W, Fowler M, Grenning J, Highsmith J, Hunt A, Jeffries R et al. Manifesto for agile software development; 2001."},{"issue":"4","key":"1034_CR27","doi-asserted-by":"publisher","first-page":"471","DOI":"10.1007\/s10734-012-9558-8","volume":"65","author":"Y Feng","year":"2013","unstructured":"Feng Y. University of Nottingham Ningbo China and Xi\u2019an Jiaotong-Liverpool University: globalization of higher education in China. High Educ. 2013;65(4):471\u201385.","journal-title":"High Educ"},{"key":"1034_CR28","doi-asserted-by":"crossref","unstructured":"Mok KH, Jiang J. Massification of higher education: challenges for admissions and graduate employment in China. In: Managing international connectivity. Diversity of Learning and Changing Labour Markets. Singapore: Springer; 2017. p. 219\u201343.","DOI":"10.1007\/978-981-10-1736-0_13"},{"key":"1034_CR29","unstructured":"Towey D. Open and flexible learning as an alternative in mainland Chinese higher education. In: Emerging modes and approaches in open and flexible education, pp. 12\u201326. The Open University of Hong Kong Press, Hong Kong, China; 2014."},{"issue":"1","key":"1034_CR30","doi-asserted-by":"publisher","first-page":"131","DOI":"10.1145\/309844.310075","volume":"28","author":"A Eisenberg","year":"1999","unstructured":"Eisenberg A, Melton J. SQL: 1999, formerly known as SQL3. ACM Sigmod Rec. 1999;28(1):131\u20138.","journal-title":"ACM Sigmod Rec"},{"key":"1034_CR31","unstructured":"Hickson I, Hyatt D. HTML5. W3C (2008). http:\/\/www.w3.org\/html\/wg\/html5\/. Accessed Dec 2021."},{"key":"1034_CR32","unstructured":"W3C: CSS 2.1 Specification. http:\/\/www.w3.org\/TR\/CSS2\/. Accessed Dec 2021."},{"key":"1034_CR33","unstructured":"Pike M, Lee B-G, Towey D. The robots will rule: improving coursework marking and feedback through an automated system. In: Proceedings of the 2021 international conference on open and innovative education (ICOIE 2021), Hong Kong, China; 2021. p. 268\u201377."},{"key":"1034_CR34","doi-asserted-by":"crossref","unstructured":"Lakhani KR, Von\u00a0Hippel E. How open source software works: \u201cfree\u201d user-to-user assistance. In: Produktentwicklung Mit Virtuellen Communities. Jersey City, USA: Springer; 2004. p. 303\u201339.","DOI":"10.1007\/978-3-322-84540-5_13"},{"key":"1034_CR35","volume-title":"Flask web development: developing web applications with Python","author":"M Grinberg","year":"2018","unstructured":"Grinberg M. Flask web development: developing web applications with Python. Newton: O\u2019Reilly Media, Inc.; 2018."},{"issue":"2","key":"1034_CR36","first-page":"54","volume":"6","author":"FA Aslam","year":"2015","unstructured":"Aslam FA, Mohammed HN, Mohd JM, Gulamgaus MA, Lok P. Efficient way of web development using python and flask. Int J Adv Res Comput Sci. 2015;6(2):54\u20137.","journal-title":"Int J Adv Res Comput Sci"},{"key":"1034_CR37","doi-asserted-by":"crossref","unstructured":"Shafranovich Y. Common format and MIME type for comma-separated values (CSV) files. RFC 4180, October (2005). https:\/\/tools.ietf.org\/html\/rfc4180. Accessed Dec 2021.","DOI":"10.17487\/rfc4180"},{"key":"1034_CR38","doi-asserted-by":"publisher","first-page":"1665","DOI":"10.1016\/j.proeng.2015.01.541","volume":"100","author":"F \u0160pa\u010dek","year":"2015","unstructured":"\u0160pa\u010dek F, Sohlich R, Dul\u00edk T. Docker as platform for assignments evaluation. Procedia Eng. 2015;100:1665\u201371.","journal-title":"Procedia Eng"},{"key":"1034_CR39","doi-asserted-by":"crossref","unstructured":"Dyb\u00e5 T, Dings\u00f8yr T, Moe NB. Agile project management. In: Software project management in a changing world, Chap. 11. Jersey City, USA: Springer; 2014. p. 277\u2013300.","DOI":"10.1007\/978-3-642-55035-5_11"}],"container-title":["SN Computer Science"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s42979-022-01034-y.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s42979-022-01034-y\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s42979-022-01034-y.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,4,9]],"date-time":"2025-04-09T11:03:39Z","timestamp":1744196619000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s42979-022-01034-y"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022,2,10]]},"references-count":39,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2022,3]]}},"alternative-id":["1034"],"URL":"https:\/\/doi.org\/10.1007\/s42979-022-01034-y","relation":{},"ISSN":["2662-995X","2661-8907"],"issn-type":[{"value":"2662-995X","type":"print"},{"value":"2661-8907","type":"electronic"}],"subject":[],"published":{"date-parts":[[2022,2,10]]},"assertion":[{"value":"30 October 2021","order":1,"name":"received","label":"Received","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"13 January 2022","order":2,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"10 February 2022","order":3,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}},{"order":1,"name":"Ethics","group":{"name":"EthicsHeading","label":"Declarations"}},{"value":"The authors declare that they have no conflict of interest.","order":2,"name":"Ethics","group":{"name":"EthicsHeading","label":"Conflict of Interest"}}],"article-number":"159"}}