An Automatic Code Generation Tool Using Generative Artificial Intelligence for Element Fill-in-the-Blank Problems in a Java Programming Learning Assistant System
Presently, Java is a fundamental object-oriented programming language that can be mastered by any student in information technology or computer science. To assist both teachers and students, we developed the Java Programming Learning Assistant System (JPLAS). It offers several types of practice prob...
Saved in:
| Published in: | Electronics (Basel) Vol. 14; no. 11; p. 2261 |
|---|---|
| Main Authors: | , , , , , |
| Format: | Journal Article |
| Language: | English |
| Published: |
Basel
MDPI AG
31.05.2025
|
| Subjects: | |
| ISSN: | 2079-9292, 2079-9292 |
| Online Access: | Get full text |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| Abstract | Presently, Java is a fundamental object-oriented programming language that can be mastered by any student in information technology or computer science. To assist both teachers and students, we developed the Java Programming Learning Assistant System (JPLAS). It offers several types of practice problems with different levels and learning goals for step-by-step self-study, where any answer is automatically marked in the system. One challenge for teachers that is addressed with JPLAS is the generation of proper exercise problems that meet learning requirements. We implemented programs for generating new problems from given source codes, as collecting and evaluating suitable codes remains time-consuming. In this paper, we present an automatic code generation tool using generative AI to solve this challenge. Prompt engineering is used to help generate an appropriate source code, and the quality is controlled by optimizing the prompt based on the outputs. For applications in JPLAS, we implement a web application system to automatically generate an element fill-in-the-blank problem (EFP) in JPLAS. For evaluation, we select the element fill-in-the-blank problem (EFP) as the target type in JPLAS and generate several instances using this tool. The results confirm the validity and effectiveness of the proposed method. |
|---|---|
| AbstractList | Presently, Java is a fundamental object-oriented programming language that can be mastered by any student in information technology or computer science. To assist both teachers and students, we developed the Java Programming Learning Assistant System (JPLAS). It offers several types of practice problems with different levels and learning goals for step-by-step self-study, where any answer is automatically marked in the system. One challenge for teachers that is addressed with JPLAS is the generation of proper exercise problems that meet learning requirements. We implemented programs for generating new problems from given source codes, as collecting and evaluating suitable codes remains time-consuming. In this paper, we present an automatic code generation tool using generative AI to solve this challenge. Prompt engineering is used to help generate an appropriate source code, and the quality is controlled by optimizing the prompt based on the outputs. For applications in JPLAS, we implement a web application system to automatically generate an element fill-in-the-blank problem (EFP) in JPLAS. For evaluation, we select the element fill-in-the-blank problem (EFP) as the target type in JPLAS and generate several instances using this tool. The results confirm the validity and effectiveness of the proposed method. |
| Audience | Academic |
| Author | Kao, Wen-Chung Mentari, Mustika Lee, Yi-Fang Funabiki, Nobuo Aung, Soe Thandar Zhu, Zihao |
| Author_xml | – sequence: 1 givenname: Zihao surname: Zhu fullname: Zhu, Zihao – sequence: 2 givenname: Nobuo surname: Funabiki fullname: Funabiki, Nobuo – sequence: 3 givenname: Mustika surname: Mentari fullname: Mentari, Mustika – sequence: 4 givenname: Soe Thandar surname: Aung fullname: Aung, Soe Thandar – sequence: 5 givenname: Wen-Chung surname: Kao fullname: Kao, Wen-Chung – sequence: 6 givenname: Yi-Fang surname: Lee fullname: Lee, Yi-Fang |
| BookMark | eNptUctOAzEMjBBIPL-ASyTOC3nsNpvjUkEBVQKJ9rzKBqcEsgkkKRKfw5-SqghxwD7YHo_HhzlEuz54QOiUknPOJbkABzrH4K1OtKaUsQndQQeMCFlJJtnun34fnaT0QkpIyltODtBX53G3zmFU2Wo8DU-AZ-AhljF4vAjB4WWyfvWLfgDuYrbGaqscvvUZnLMr8BqwCRFfORjBZ3xtnausr_IzVJdO-Vf8EMNQlglbjxW-Ux9qA62iGseN_hxU9JumS8mmrIrG42fKMB6jPaNcgpOfeoSW11eL6U01v5_dTrt5pXkjcjWhlIIBMmGGNnoQhPO6YIPhUg1EmmYghrWDbqERqiZaUKAtgRoUM0QOkh-hs63uWwzva0i5fwnr6MvLnjMqBJsQTgvrfMtaKQe99SbkqHTJJxitLsYYW_CurRtKhCCiHPDtgY4hpQimf4t2VPGzp6Tf-Nf_4x__BjnulIM |
| Cites_doi | 10.1111/bjet.12685 10.18653/v1/2024.acl-long.176 10.15344/2456-4451/2017/116 10.1145/2490822 10.1109/ACCESS.2020.2988510 10.1109/TE.2018.2864133 10.61969/jai.1337500 10.1145/2676723.2677258 10.1080/08886504.1997.10782199 10.1145/1330598.1330691 |
| ContentType | Journal Article |
| Copyright | COPYRIGHT 2025 MDPI AG 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License. |
| Copyright_xml | – notice: COPYRIGHT 2025 MDPI AG – notice: 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License. |
| DBID | AAYXX CITATION 7SP 8FD 8FE 8FG ABUWG AFKRA ARAPS AZQEC BENPR BGLVJ CCPQU DWQXO HCIFZ L7M P5Z P62 PHGZM PHGZT PIMPY PKEHL PQEST PQGLB PQQKQ PQUKI |
| DOI | 10.3390/electronics14112261 |
| DatabaseName | CrossRef Electronics & Communications Abstracts Technology Research Database ProQuest SciTech Collection ProQuest Technology Collection ProQuest Central (Alumni Edition) ProQuest Central UK/Ireland Advanced Technologies & Computer Science Collection ProQuest Central Essentials - QC ProQuest Central Technology Collection ProQuest One Community College ProQuest Central Korea SciTech Premium Collection Advanced Technologies Database with Aerospace Advanced Technologies & Aerospace Database ProQuest Advanced Technologies & Aerospace Collection Proquest Central Premium ProQuest One Academic (New) Publicly Available Content Database ProQuest One Academic Middle East (New) ProQuest One Academic Eastern Edition (DO NOT USE) ProQuest One Applied & Life Sciences ProQuest One Academic (retired) ProQuest One Academic UKI Edition |
| DatabaseTitle | CrossRef Publicly Available Content Database Advanced Technologies & Aerospace Collection Technology Collection Technology Research Database ProQuest One Academic Middle East (New) ProQuest Advanced Technologies & Aerospace Collection ProQuest Central Essentials ProQuest One Academic Eastern Edition Electronics & Communications Abstracts ProQuest Central (Alumni Edition) SciTech Premium Collection ProQuest One Community College ProQuest Technology Collection ProQuest SciTech Collection ProQuest Central Advanced Technologies & Aerospace Database ProQuest One Applied & Life Sciences ProQuest One Academic UKI Edition ProQuest Central Korea ProQuest Central (New) ProQuest One Academic Advanced Technologies Database with Aerospace ProQuest One Academic (New) |
| DatabaseTitleList | CrossRef Publicly Available Content Database |
| Database_xml | – sequence: 1 dbid: PIMPY name: Publicly Available Content Database url: http://search.proquest.com/publiccontent sourceTypes: Aggregation Database |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Engineering Education Computer Science |
| EISSN | 2079-9292 |
| ExternalDocumentID | A845107707 10_3390_electronics14112261 |
| GroupedDBID | 5VS 8FE 8FG AAYXX ADMLS AFFHD AFKRA ALMA_UNASSIGNED_HOLDINGS ARAPS BENPR BGLVJ CCPQU CITATION HCIFZ IAO ITC KQ8 MODMG M~E OK1 P62 PHGZM PHGZT PIMPY PQGLB PROAC 7SP 8FD ABUWG AZQEC DWQXO L7M PKEHL PQEST PQQKQ PQUKI |
| ID | FETCH-LOGICAL-c357t-6111efe062f15cb70334611bf39ab09f5b0f28bc8e57a40c71e180e4ea2f09b93 |
| IEDL.DBID | BENPR |
| ISICitedReferencesCount | 0 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=001505914700001&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 2079-9292 |
| IngestDate | Fri Jul 25 09:29:12 EDT 2025 Tue Nov 04 18:17:47 EST 2025 Sat Nov 29 07:14:19 EST 2025 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | true |
| IsScholarly | true |
| Issue | 11 |
| Language | English |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-c357t-6111efe062f15cb70334611bf39ab09f5b0f28bc8e57a40c71e180e4ea2f09b93 |
| Notes | ObjectType-Article-1 SourceType-Scholarly Journals-1 ObjectType-Feature-2 content type line 14 |
| OpenAccessLink | https://www.proquest.com/docview/3217726031?pq-origsite=%requestingapplication% |
| PQID | 3217726031 |
| PQPubID | 2032404 |
| ParticipantIDs | proquest_journals_3217726031 gale_infotracacademiconefile_A845107707 crossref_primary_10_3390_electronics14112261 |
| PublicationCentury | 2000 |
| PublicationDate | 2025-05-31 |
| PublicationDateYYYYMMDD | 2025-05-31 |
| PublicationDate_xml | – month: 05 year: 2025 text: 2025-05-31 day: 31 |
| PublicationDecade | 2020 |
| PublicationPlace | Basel |
| PublicationPlace_xml | – name: Basel |
| PublicationTitle | Electronics (Basel) |
| PublicationYear | 2025 |
| Publisher | MDPI AG |
| Publisher_xml | – name: MDPI AG |
| References | Olsson (ref_20) 2015; 13 ref_36 ref_13 ref_35 ref_12 ref_34 ref_11 ref_33 Ishihara (ref_2) 2017; 2 ref_10 ref_32 Vaswani (ref_38) 2017; 30 McGill (ref_14) 1997; 29 ref_30 ref_39 ref_16 Lindberg (ref_19) 2019; 50 ref_15 ref_37 Sorva (ref_17) 2013; 13 Chen (ref_22) 2020; 8 ref_25 ref_24 Ansah (ref_23) 2023; 7 ref_21 ref_40 ref_1 Wint (ref_31) 2021; 17 Funabiki (ref_4) 2017; 44 Medeiros (ref_18) 2019; 62 ref_29 Aung (ref_3) 2021; 12 ref_28 ref_27 ref_26 ref_9 ref_8 ref_5 ref_7 ref_6 |
| References_xml | – ident: ref_7 – ident: ref_9 – ident: ref_30 – volume: 44 start-page: 247 year: 2017 ident: ref_4 article-title: A Graph-Based Blank Element Selection Algorithm for Fill-in-Blank Problems in Java Programming Learning Assistant System publication-title: IAENG Int. J. Comput. Sci. – ident: ref_5 – ident: ref_32 – volume: 50 start-page: 1979 year: 2019 ident: ref_19 article-title: Gamifying Programming Education in K–12: A Review of Programming Curricula in Seven Countries and Programming Games publication-title: Br. J. Educ. Technol. doi: 10.1111/bjet.12685 – ident: ref_24 – ident: ref_28 doi: 10.18653/v1/2024.acl-long.176 – ident: ref_26 – ident: ref_34 – ident: ref_11 – volume: 2 start-page: 116 year: 2017 ident: ref_2 article-title: A software architecture for Java programming learning assistant system publication-title: Int. J. Comput. Softw. Eng. doi: 10.15344/2456-4451/2017/116 – ident: ref_39 – ident: ref_40 – ident: ref_37 – ident: ref_1 – ident: ref_35 – volume: 13 start-page: 15 year: 2013 ident: ref_17 article-title: A Review of Generic Program Visualization Systems for Introductory Programming Education publication-title: Acm Trans. Comput. Educ. doi: 10.1145/2490822 – ident: ref_21 – volume: 8 start-page: 75264 year: 2020 ident: ref_22 article-title: Artificial Intelligence in Education: A Review publication-title: IEEE Access doi: 10.1109/ACCESS.2020.2988510 – volume: 62 start-page: 77 year: 2019 ident: ref_18 article-title: A Systematic Literature Review on Teaching and Learning Introductory Programming in Higher Education publication-title: IEEE Trans. Educ. doi: 10.1109/TE.2018.2864133 – volume: 7 start-page: 52 year: 2023 ident: ref_23 article-title: Education in the Era of Generative Artificial Intelligence (AI): Understanding the Potential Benefits of ChatGPT in Promoting Teaching and Learning publication-title: J. AI doi: 10.61969/jai.1337500 – ident: ref_15 doi: 10.1145/2676723.2677258 – volume: 12 start-page: 342 year: 2021 ident: ref_3 article-title: A Proposal of Grammar-Concept Understanding Problem in Java Programming Learning Assistant System publication-title: J. Adv. Inf. Technol. – ident: ref_6 – ident: ref_8 – ident: ref_25 – volume: 29 start-page: 276 year: 1997 ident: ref_14 article-title: A Conceptual Framework for Analyzing Students’ Knowledge of Programming publication-title: J. Res. Comput. Educ. doi: 10.1080/08886504.1997.10782199 – ident: ref_29 – ident: ref_33 – ident: ref_27 – ident: ref_12 – ident: ref_16 doi: 10.1145/1330598.1330691 – ident: ref_10 – volume: 13 start-page: 452 year: 2015 ident: ref_20 article-title: Visualisation and Gamification of E-Learning and Programming Education publication-title: Electron. J. E-Learn. – volume: 30 start-page: 5998 year: 2017 ident: ref_38 article-title: Attention is all you need publication-title: Adv. Neural Inf. Process. Syst. – ident: ref_13 – ident: ref_36 – volume: 17 start-page: 140 year: 2021 ident: ref_31 article-title: A proposal of recommendation function for element fill-in-Blank problems in Java programming learning assistant system publication-title: Int. J. Web Inf. Syst. |
| SSID | ssj0000913830 |
| Score | 2.3205147 |
| Snippet | Presently, Java is a fundamental object-oriented programming language that can be mastered by any student in information technology or computer science. To... |
| SourceID | proquest gale crossref |
| SourceType | Aggregation Database Index Database |
| StartPage | 2261 |
| SubjectTerms | Applications programs Artificial intelligence Chatbots Computational linguistics Computer science Curricula Design Education Embedded systems Gamification Generative artificial intelligence Java Language processing Learning Learning disabilities Methods Motivation Natural language interfaces Object oriented programming Object-oriented languages Personalized learning Problem solving Programming languages Prompt engineering Sciences education Source code Student participation Syntax Teachers Teaching methods Trends Visualization |
| Title | An Automatic Code Generation Tool Using Generative Artificial Intelligence for Element Fill-in-the-Blank Problems in a Java Programming Learning Assistant System |
| URI | https://www.proquest.com/docview/3217726031 |
| Volume | 14 |
| WOSCitedRecordID | wos001505914700001&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVHPJ databaseName: ROAD: Directory of Open Access Scholarly Resources customDbUrl: eissn: 2079-9292 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0000913830 issn: 2079-9292 databaseCode: M~E dateStart: 20120101 isFulltext: true titleUrlDefault: https://road.issn.org providerName: ISSN International Centre – providerCode: PRVPQU databaseName: Advanced Technologies & Aerospace Database customDbUrl: eissn: 2079-9292 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0000913830 issn: 2079-9292 databaseCode: P5Z dateStart: 20120301 isFulltext: true titleUrlDefault: https://search.proquest.com/hightechjournals providerName: ProQuest – providerCode: PRVPQU databaseName: ProQuest Central customDbUrl: eissn: 2079-9292 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0000913830 issn: 2079-9292 databaseCode: BENPR dateStart: 20120301 isFulltext: true titleUrlDefault: https://www.proquest.com/central providerName: ProQuest – providerCode: PRVPQU databaseName: Publicly Available Content Database customDbUrl: eissn: 2079-9292 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0000913830 issn: 2079-9292 databaseCode: PIMPY dateStart: 20120301 isFulltext: true titleUrlDefault: http://search.proquest.com/publiccontent providerName: ProQuest |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwpV1NT9wwEB3B0kM5tJS26raAfKjEhQg7H2vnhBa0q1KVVYSgor1EjuOgVbcJbMIe-S_8U2YSLx8S6qUXHybRJNKMx2Pn5T2ArwPpWxsNYi8XypKEWeRpyS0OmQkKJXPTgjF__pCTibq4iBN34FY7WOWyJraFOq8MnZHvB9g7S580kQ-urj1SjaKvq05CYxXWiKks7MHa4WiSnD6cshDrpQp4RzcU4P5-_1FdphYhNhv-QDxbkl4uzO1qM377v--5AW9cn8mGXWK8gxVbbpJEs4NzbML6EybC93A3LNnwpqlaAld2VOWWdYTUdDM7q6oZa8EFD9aFbX13_BPs-AmxJ8M2mI06VDobT2czb1p62GZ6hzNd_mFJp2BTs2nJNPuuF5pMhBH7S_4d3-slw7yh1hZ9dKTqH-B8PDo7-uY59QbPBJFscE8qhC0sH_iFiEyGlSUI0ZYVQawzHhdRxgtfZUbZSOqQGymsUNyGVvsFj7M4-Ai9sirtJ2BZjl2VzYVUkQ1z3ygliLSmoCTDmmP6sLcMYHrVkXSkuLmheKcvxLsPuxTklKZwM9dGuz8R8GFEhpUOVYiVSkou-7C1DHLq5nadPkb4878vf4HXPqkFt1iDLeg18xu7Da_MopnW8x2XqjuwenI7wjGJfqMtOT5Jft0DcOn6zw |
| linkProvider | ProQuest |
| linkToHtml | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMw1V1Nb9QwEB1VWyTogY8CYqGADyAuRLWdZO0cEFpKV126Xe1hQeUUHMdBqy5J2aSL-Dn8AX4jM_loi1Rx64FLDpPIkZzn8bMzfg_gxUBJ58JB5KVCO7IwCz2juMNLYv1Mq9TWxZifJmo61cfH0WwDfndnYaisssuJdaJOC0t75Ls-cmclyRP57el3j1yj6O9qZ6HRwOLQ_fyBS7byzfg9ft-XUo7253sHXusq4Fk_VBWulYRwmeMDmYnQJoh4P8BYkvmRSXiUhQnPpE6sdqEyAbdKOKG5C5yRGY8SEl_ClL8ZINh1DzZn46PZ5_NdHVLZ1D5v5I18P-K7F242pQiQ3MiB-GsKvHoiqGe30Z3_rV_uwu2WR7NhA_x7sOHybbKgbstVtmHrktLiffg1zNnwrCpqgVq2V6SONYLb9DCbF8WS1cUT59G1q9tu9DXY-JJwKUOaz_abqns2WiyX3iL3kEZ775YmP2GzxqGnZIucGfbBrA2FqAbuG7Xf6tl-ZTguiLpjG41o_AP4eC399RB6eZG7R8CSFFmjS4XSoQtSabUWJMqT0SBCmNk-vO4AE582IiQxLt4IX_EV-OrDKwJVTCmqWhlr2pMW-DIS-4qHOsBMrBRXfdjpQBW3uauMLxD1-N-3n8PNg_nRJJ6Mp4dP4JYkZ-S6rmIHetXqzD2FG3ZdLcrVs3aYMPhy3Qj8AzEWU5E |
| linkToPdf | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMw1V1Nb9QwELWqghAc-ChULBTwAcSFaG0nWTsHhJa2K5ZWqz0UVHEJjjNBK5akbNJF_Bz-Br-OmThpi1Rx64FLDk7kSM6b8dh5fo-x5yOtAOJREuTSAFmYxYHVAvCSubAwOnctGfPjoZ7NzPFxMt9gv_uzMESr7HNim6jzytEe-TDE2lkr8kQeFh0tYr43eXPyPSAHKfrT2ttpeIgcwM8fuHyrX0_38Fu_UGqyf7T7LugcBgIXxrrBdZOUUIAYqULGLkP0hxG2ZUWY2EwkRZyJQpnMGYi1jYTTEqQREIFVhUgyEmLC9H9N4xqTomsefzrb3yG9TRMKL3QUhokYnvva1DLCMkeN5F-T4eVTQjvPTe78zyN0l93uqms-9uFwj21AuUXG1B2JZYvduqC_eJ_9Gpd8fNpUrWwt361y4F6Gmx7mR1W15C2l4qx1DW3fXnWDTy_ImXIs_vm-5-LzyWK5DBZlgMV18HZpy6987n17ar4oueXv7dpSEzHjvlH_ncrtF47RQgU99uGl5B-wD1cyXttss6xKeMh4lmMtCbnUJoYoV84YSVI9BYUWZlo3YK968KQnXpokxSUdYS29BGsD9pIAllLialbW2e78Bb6MJMDSsYkwP2st9IDt9ABLu4xWp-foevTv28_YDYRdejidHTxmNxXZJbdkix222axO4Qm77tbNol49beOFs89XDb8_Pqla9A |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=An+Automatic+Code+Generation+Tool+Using+Generative+Artificial+Intelligence+for+Element+Fill-in-the-Blank+Problems+in+a+Java+Programming+Learning+Assistant+System&rft.jtitle=Electronics+%28Basel%29&rft.au=Zhu%2C+Zihao&rft.au=Funabiki%2C+Nobuo&rft.au=Mentari%2C+Mustika&rft.au=Aung%2C+Soe+Thandar&rft.date=2025-05-31&rft.pub=MDPI+AG&rft.issn=2079-9292&rft.eissn=2079-9292&rft.volume=14&rft.issue=11&rft_id=info:doi/10.3390%2Felectronics14112261&rft.externalDocID=A845107707 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=2079-9292&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=2079-9292&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=2079-9292&client=summon |