研究生: |
李恩萱 Lee, En-Hsuan |
---|---|
論文名稱: |
大學生運算思維與程式設計學習成就研究 College students’ learning performance of computational thinking and programming |
指導教授: | 李忠謀 |
學位類別: |
碩士 Master |
系所名稱: |
資訊工程學系 Department of Computer Science and Information Engineering |
論文出版年: | 2018 |
畢業學年度: | 106 |
語文別: | 中文 |
論文頁數: | 42 |
中文關鍵詞: | 運算思維 、程式設計學習 |
英文關鍵詞: | computational thinking, programming learning |
DOI URL: | http://doi.org/10.6345/THE.NTNU.DCSIE.026.2018.B02 |
論文種類: | 學術論文 |
相關次數: | 點閱:257 下載:60 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
本研究發展一門運算思維與程式設計通識課程,欲探究大學生之學習成就差異。在一學期課程後,分析不同背景學生之運算思維能力、程式設計實作與專題表現,並針對表現不理想的學生進一步討論其學習困難。本研究之對象為選修此通識課程之大學生共計348人,課程共18週,包含運算思維初探3週,程式設計概念培養8週,專題創作5週以及期中測驗2週。資料分析以期中測驗成績、專題成績與問卷為量化資料,課堂觀察與補救教學問答為質性資料。
研究結果發現,期中測驗一的成績對於期中測驗二有極高的預測力,表示課程內容安排合宜且具連貫性。針對學生的表現差異,未曾學習過程式設計相關課程的學生在基礎程式設計概念的表現與有學習經驗的學生並駕齊驅,然而在「重複結構」、「列表應用」及「列表綜合應用」的表現仍較差。理學院和科技與工程學院也在「重複結構」、「列表應用」及「列表綜合應用」表現優於教育學院和文學院。整體而言,學習表現較差的學生皆在學習「重複結構」時遇到困難,連帶影響以「重複結構」為基礎的「列表」及「綜合應用」的表現。
本研究針對程式設計通識課程提出建議,增加基礎「重複結構」的教學時數,以確保學生能在熟悉迴圈運用的情況下,有效學習更進階的內容。另由於部分學院修課人數未達十人,因此難以歸納其學院學生的特性與需求,未來可考慮開設單一學院或科系之專班,以期在通識教育的一般性之下,有更多符合個別差異的空間。
This study developed a course in computational thinking (CT) and programming to explore the differences in learning performance among college students. After an one-semester course, we analyze the performance of students from different backgrounds, and further discuss their learning difficulties for students with poor performance. There are 348 students enrolled in this course. The course consisted of 18 weeks, including 3 weeks of CT exploring, 8 weeks of programming concepts constructing, 5 weeks of project creating and 2 weeks of mid-term testing. The data analysis is based on the programming test grade and questionnaires as quantitative data, and the classroom observation and interviews are qualitative data.
The results show that students with poor performance have encountered difficulties in learning the "repetition structure", which is the basis of "list" and "comprehensive application". Moreover, students major in Science or Technology and Engineering have better learning performance than students major in Education or Liberal Arts. We suggest to increase learning hours of the "repetition structure" to ensure that students can effectively learn advanced content while understanding the use of loops.
一、英文文獻
Aho, A. V. (2012). Computation and Computational Thinking. Computer Journal, 55(7), 832-835. doi:10.1093/comjnl/bxs074
Barr, D., Harrison, J., & Conery, L. (2011). Computational Thinking: A Digital Age Skill for Everyone. Learning & Leading with Technology, 38 (6), 20-23.
Bau, D., Gray, J., Kelleher, C., Sheldon, J., & Turbak, F. (2017). Learnable Programming: Blocks and Beyond. Communications of the ACM, 60(6), 72-80. doi:10.1145/3015455
Bean, N., Weese, J., Feldhausen, R., & Bell, R. S. (2015). Starting from scratch: Developing a pre-service teacher training program in computational thinking. Frontiers in Education Conference (FIE). doi:10.1109/fie.2015.7344237
Blockly Games. (n.d.). Retrieved March 05, 2018, from https://blockly-games.appspot.com/
Brusilovsky, P., Calabrese, E., Hvorecky, J., Kouchnirenko, A. & Miller, P. (1997). Mini-languages: a way to learn programming principles. Education and Information Technologies, 2, 65-83.
Chao, P. (2016). Exploring students computational practice, design and performance of problem-solving through a visual programming environment. Computers & Education, 95, 202-215. doi:10.1016/j.compedu.2016.01.010
Cooper, S., & Dann, W. (2015). Programming: a key component of computational thinking in CS courses for non-majors. ACM Inroads, 6 (1), 50-54.
CSTA, & ISTE. (2011). Operational definition of computational thinking for K-12 education. Available at: http://www.iste.org/docs/ct-documents/computational-thinking-operational-definition-flyer.pdf
Dawson, J. Q., Allen, M., Campbell, A., & Valair, A., (2018). Designing an Introductory Programming Course to Improve Non-Majors Experiences.” Proceedings of the 49th ACM Technical Symposium on Computer Science Education - SIGCSE 18, 21-24., doi:10.1145/3159450.3159548.
Deek, F.P. (1999). The software process: a parallel approach through problem solving and program development. Computer Science Education, 9 (1), 43-70.
Google (2015). Exploring Computational Thinking. Retrieved from https://www.google.com/edu/resources/programs/exploring-computational-thinking/
Grover, S., & Pea, R. (2013). Computational Thinking in K-12: A Review of the State of the Field. Educational Researcher, 42(1), 38–43.
K-12 Computer Science Framework Steering Committee. (2016). K-12 computer science framework.
Kim, B., Kim, T., & Kim, J. (2013). Paper-and-Pencil Programming Strategy toward Computational Thinking for Non-Majors: Design Your Solution. Journal of Educational Computing Research, 49 (4), 437-459. doi:10.2190/ec.49.4.b
Ko, A. J., Myers, B., & Aung, H. (n.d.). Six Learning Barriers in End-User Programming Systems. 2004 IEEE Symposium on Visual Languages - Human Centric Computing, 199-206. doi:10.1109/vlhcc.2004.47
Korkmaz, Ö., Çakir, R., & Özden, M. Y. (2017). A validity and reliability study of the computational thinking scales (CTS). Computers in Human Behavior, 72, 558-569. doi:10.1016/j.chb.2017.01.005
Maloney, J., Resnick, M., Rusk, N., Silverman, B. & Eastmond, E. (2010). The scratch programming language and environment. ACM Transactions on Computing Education, 10 (4)16:1–15
Özden, M.Y. (2015). Computational thinking.
http://myozden.blogspot.com.tr/2015/06/computational-thinking-bilgisayarca.html
Palumbo, D. B. (1990). Programming Language/Problem-Solving Research: A Review of Relevant Issues. Review of Educational Research, 60(1), 65-89. doi:10.2307/1170225
Phillips, P. (2009). Computational Thinking.
Resnick, M., Maloney, J., Monroy-Hernández, A., Rusk, N., Eastmond, E., Brennan, K., & Kafai, Y. (2009). Scratch: programming for all. Communications of the ACM, 52(11), 60-67.
Robins, A., Rountree, J., & Rountree, N. (2003). Learning and teaching programming: a review and discussion. Computer Science Education, 13 (2), 137-172.
Sax, L. J., Lehman, K. J., & Zavala, C. (2017). Examining the Enrollment Growth. Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education - SIGCSE 17, 513–518., doi:10.1145/3017680.3017781.
Scratch - Imagine, Program, Share. (n.d.). Retrieved March 05, 2018, from https://scratch.mit.edu/
Sullivan, D. G. (2013). A data-centric introduction to computer science for non-majors. Proceeding of the 44th ACM technical symposium on Computer science education - SIGCSE 13,71-76. doi:10.1145/2445196.2445222
Wing, J. M. (2006). Computational Thinking. Communications of the ACM, 49(3), 33-35. doi:10.1145/1118178.1118215
Wing, J. M. (2011). Research Notebook: Computational Thinking--What and Why? The Link. The magazine of the Carnegie Mellon University School of Computer Science.
二、中文文獻
林育慈、吳正已 (2016)。運算思維與中小學資訊科技課程。教育脈動,6。取自https://pulse.naer.edu.tw/Home/Content/02287aac-dc26-4ad4-b87e-2881e942dc16?insId=40977899-d342-4f01-94a7-66d446c9d3bb