Skip to main content

Tag: problem solving

การใช้กระบวนการออกแบบเชิงวิศวกรรมเพื่อเสริมสร้างความคิดสร้างสรรค์และทักษะการแก้ปัญหา ตอนที่ 3

3. ทักษะการแก้ปัญหา (Problem Solving Skills)

การดำเนินชีวิตในปัจจุบันผู้เรียนต่างต้องประสบกับสิ่งต่างๆ มากมาย ซึ่งสิ่งที่พบเจอเหล่านี้บางครั้งอาจเป็นปัญหาหรืออุปสรรคที่ต้องดำเนินการแก้ไขเพื่อให้การดำเนินชีวิตหรือ การทางานสามารถดำเนินไปได้อย่างเรียบร้อยและมีประสิทธิภาพ ดังนั้นในการดำเนินการเพื่อแก้ไขจึงเป็นสิ่งที่จำเป็นต้องใช้ทักษะในการแก้ปัญหา ที่จะสามารถนำไปประยุกต์ใช้ในการแก้ปัญหาต่างๆ

ทักษะการแก้ปัญหานี้ได้มีผู้ที่นิยามความหมายไว้มากมาย เช่น

  • สำนักงานเลขาธิการสภาการศึกษา (2550 ) ได้ให้ความหมายของทักษะการแก้ปัญหาว่าหมายถึง การใช้ประสบการณ์ที่ค้นพบด้วยตนเองที่เกิดจากการสังเกต การเก็บข้อมูล การวิเคราะห์ข้อมูล การตีความ และการสรุปความเพื่อนำไปสู่การแก้ปัญหาอย่างมีเหตุผล
  • มัณฑรา ธรรมบุศย์ (2551) กล่าวว่าทักษะในการแก้ปัญหาเป็นความสามารถในการรู้จักขอความช่วยเหลือจากผู้อื่นในยามจำเป็น รู้จักพัฒนาและประเมินทางเลือกในการแก้ปัญหา สามารถหาทางแก้ปัญหาและวางแผนแก้ปัญหา ได้อย่างถูกต้อง

จากที่กล่าวมาข้างต้น ทักษะการแก้ปัญหา จึงเป็นความสามารถในการคิดและลงมือปฏิบัติ ซึ่งจำเป็นต้องมีการนำองค์ความรู้และทักษะต่างๆมาใช่ร่วมกันเพื่อที่จะส่งผลให้สามารถแก้ไขปัญหาหรือสนองความต้องการในแต่ละสถานการณ์ได้อย่างเหมาะสม โดยทักษะการแก้ปัญหานี้อาจแสดงออกในรูปแบบของการกระบวนการแก้ปัญหา โดยที่ผู้สอนสามารถออกแบบการจัดการเรียนการสอนโดยการกำหนดสถานการณ์จำลองหรือนำข้อมูลจากสถานการณ์จริงมาให้ผู้เรียนได้ฝึกปฏิบัติ โดยอาจเป็นการสอนในรูปแบบของการเรียนรู้โดยใช้โครงงานเป็นฐาน (Project-based Learning : PBL) หรือการเรียนรู้โดยใช้ปัญหาเป็นหลัก(Problem – based Learning : PBL) โดยในแต่ละขั้นตอนของกระบวนการแก้ปัญหา มีดังนี้

ขั้นที่ 1 การทาความเข้าใจในปัญหา
ขั้นที่ 2 การนิยามและรวบรวมข้อมูลที่เกี่ยวข้องกับปัญหา
ขั้นที่ 3 การนาเสนอทางเลือกหรือแนวทางในการแก้ปัญหา
ขั้นที่ 4 ตัดสินใจเลือกแนวทางการแก้ปัญหาที่เหมาะสม
ขั้นที่ 5 การลงมือปฏิบัติการแก้ปัญหาและตรวจสอบวิธีการแก้ปัญหา

จากขั้นตอนของกระบวนการแก้ปัญหาข้างต้นจะพบว่าขั้นตอนต่างๆ นั้นมีความสอดคล้องกับขั้นตอนของกระบวนการออกแบบเชิงวิศวกรรม ซึ่งเป็นขั้นตอนที่จะสามารถนำมาใช้ในการแก้ปัญหาในสถานการณ์ต่างๆ นอกจากนี้ยังเป็นกระบวนการที่จะช่วยฝึกทักษะการแก้ปัญหาโดยการใช้สถานการณ์ปัญหาเป็นตัวกระตุ้นให้ผู้เรียนใฝ่หาความรู้เพื่อหาแนวทางแก้ไข ได้ฝึกทักษะการคิด ได้ลงมือปฏิบัติ ช่วยให้ผู้เรียนฝึกการตัดสินใจ อีกทั้งยังเป็นการส่งเสริมให้ผู้เรียนเกิดการเรียนรู้ด้วยตนเอง และสามารถนำทักษะจากการเรียนมาประยุกต์ใช้ในการแก้ปัญหาในชีวิตประจำวันได้

อ่านต่อ ตอนที่ 4  กระบวนการออกแบบเชิงวิศวกรรมจะช่วยให้เกิดความคิดสร้างสรรค์และทักษะการแก้ปัญหาได้อย่างไร….

บทความโดย นางสาวสุธิดา การีมี

การใช้กระบวนการออกแบบเชิงวิศวกรรมเพื่อเสริมสร้างความคิดสร้างสรรค์และทักษะการแก้ปัญหา ตอนที่ 1

การใช้กระบวนการออกแบบเชิงวิศวกรรมเพื่อเสริมสร้างความคิดสร้างสรรค์และทักษะการแก้ปัญหา
(The use of Engineering Design Process to enhance creativity and problem solving skills.)

เยาวชนไทยในยุคปัจจุบันนั้น ยังขาดการฝึกฝนทักษะทางด้านการคิด ไม่ว่าจะเป็นการคิดสร้างสรรค์เพื่อแก้ปัญหา การคิดสังเคราะห์จากสถานการณ์ปัญหาที่พบเจอ โดยทักษะการคิดดังกล่าวนี้หากผู้เรียนได้รับการฝึกฝนจะช่วยให้ผู้เรียนสามารถคิดค้นหาวิธีการหรือแนวทางที่หลากหลายภายใต้กรอบเงื่อนไขของสถานการณ์ปัญหาที่พบเจอและสามารถ นำแนวทางหรือวิธีการนั้นมาใช้ในการแก้ปัญหาหรือสนองความต้องการในชีวิตประจาวัน ซึ่งสาเหตุประการหนึ่งของการที่ผู้เรียนขาด การฝึกทักษะในการคิดก็คือการจัดการเรียนรู้ในบางรูปแบบที่ไม่ได้เน้นให้ผู้เรียนฝึกทักษะ การคิดสร้างสรรค์และคิดสังเคราะห์เพื่อนำไปสู่ทักษะการแก้ปัญหา โดยการจัดการเรียนรู้ในรูปแบบที่ไม่ได้เน้นให้ผู้เรียนฝึกทักษะการคิดนี้ส่งผลให้ผู้เรียนไม่เกิดแรงกระตุ้น ในการคิด ไม่สามารถคิดค้นประดิษฐ์สิ่งใหม่ๆ หรือสามารถคิดหาวิธีการมาเพื่อแก้ปัญหาหรือสนองความต้องการ

ดังนั้น การจัดการเรียนรู้รูปแบบหนึ่งที่จะช่วยส่งเสริมให้ผู้เรียนเกิดทักษะในการคิดสร้างสรรค์และทักษะการแก้ปัญหา คือการจัดการเรียนรู้ให้กับผู้เรียนตามแนวทางสะเต็มศึกษา โดยจะดำเนินการตามกระบวนการออกแบบเชิงวิศวกรรมที่เน้นให้ผู้เรียนเรียนรู้ผ่านกระบวนการคิดสร้างสรรค์ การคิดเชิงสังเคราะห์ และการลงมือปฏิบัติเพื่อแก้ปัญหาหรือสนองความต้องการอย่างเป็นขั้นตอน ซึ่งแต่ละขั้นตอนของกระบวนการออกแบบเชิงวิศวกรรมนั้นจะช่วยให้ผู้เรียนฝึกการคิดสร้างสรรค์ และการคิดเชิงสังเคราะห์จากสถานการณ์ที่พบเห็นเพื่อทำการรวบรวมและกลั่นกรองข้อมูลจนได้ข้อมูลที่สามารถนำไปใช้ประโยชน์ ตลอดจนมีการถ่ายทอดความคิดเพื่ออธิบายและสื่อสารแนวคิดให้ผู้อื่นเข้าใจ โดยแนวคิดเหล่านี้จะเป็นสิ่งที่นำเสนอความคิดสร้างสรรค์และทักษะการแก้ปัญหาของผู้เรียนแต่ละบุคคล นอกจากนี้การใช้กระบวนการออกแบบเชิงวิศวกรรมในการดำเนินการยังมีการใช้องค์ความรู้จากศาสตร์หลายๆ ด้าน เช่น ความรู้ทางด้านวิทยาศาสตร์ และความรู้ทางด้านคณิตศาสตร์ เพื่อนำมาใช้ประกอบในแต่ละขั้นตอนของกระบวนการแก้ปัญหาหรือสนองความต้องการจนได้เป็นสิ่งของเครื่องใช้หรือวิธีการ และในบางครั้งสิ่งของเครื่องใช้หรือวิธีการเหล่านี้สามารถพัฒนาไปใช้ประโยชน์ในเชิงพาณิชย์ได้อีกด้วย

1.  กระบวนการออกแบบเชิงวิศวกรรม (Engineering Design Process)

กระบวนการออกแบบเชิงวิศวกรรม เป็นขั้นตอนที่นำมาใช้ในดำเนินการเพื่อแก้ปัญหาหรือสนองความต้องการ ซึ่งกระบวนการออกแบบเชิงวิศวกรรมนี้จะเริ่มจากการระบุปัญหาที่พบแล้วกำหนดเป็นปัญหาที่ต้องการแก้ไข จากนั้นจึงทำการค้นหาแนวคิดที่เกี่ยวข้องและทำการวิเคราะห์เพื่อเลือกวิธีการที่เหมาะสมสำหรับการแก้ไข เมื่อได้วิธีการที่เหมาะสมแล้วจึงทำการวางแผนและพัฒนาสิ่งของเครื่องใช้หรือวิธีการ เมื่อสร้างชิ้นงานหรือวิธีการเรียบร้อยแล้วจึงนำไปทดสอบ หากมีข้อบกพร่องก็ให้ทำการปรับปรุงแก้ไขเพื่อให้สิ่งของเครื่องใช้หรือวิธีการนั้นสามารถใช้แก้ไขปัญหาหรือสนองความต้องการได้ ส่วนในตอนสุดท้ายจะดำเนินการประเมินผลว่าสิ่งของเครื่องใช้หรือวิธีการนั้นจะสามารถใช้แก้ปัญหาหรือสนองความต้องการได้ตามที่กำหนดไว้หรือไม่ ดังนั้น กระบวนการออกแบบเชิงวิศวกรรมจึงประกอบด้วย 6 ขั้นตอน ดังนี้

 ขั้นที่ 1 ระบุปัญหา (Problem Identification) เป็นขั้นตอนที่ผู้แก้ปัญหาทำความเข้าใจในสิ่งที่เป็นปัญหาในชีวิตประจำวันที่พบเจอ ซึ่งสามารถใช้ทักษะการตั้งคำถามด้วยหลัก 5W 1H เมื่อเกิดสถานการณ์ปัญหาหรือความต้องการ ซึ่งคำถามจากหลัก 5W1H ประกอบด้วย

  • Who เป็นการตั้งคำถามเกี่ยวกับบุคคลที่เกี่ยวข้องกับปัญหาหรือความต้องการ
  • What เป็นการตั้งคำถามว่าปัญหาหรือความต้องการจากสถานการณ์นั้นๆ คืออะไร
  • When เป็นการตั้งคำถามปัญหาหรือความต้องการของสถานการณ์นั้นจะเกิดขึ้นเมื่อใด
  • Where เป็นการตั้งคำถามปัญหาหรือความต้องการของสถานการณ์นั้นจะเกิดขึ้นที่ไหน
  • Why เป็นการตั้งคำถามเพื่อวิเคราะห์สาเหตุว่าทาไมถึงเกิดปัญหาหรือความต้องการ
  • How เป็นการตั้งคำถามเพื่อวิเคราะห์ถึงแนวทางหรือวิธีการแก้ปัญหานั้นจะสามารถทาได้ด้วยวิธีการอย่างไร

  ขั้นที่ 2 รวบรวมข้อมูลและแนวคิดที่เกี่ยวข้องกับปัญหา (Related Information Search) ในขั้นตอนนี้จะเป็นการรวบรวมข้อมูลที่เกี่ยวข้องกับปัญหาหรือความต้องการ และแนวทางการแก้ปัญหาหรือสนองความต้องการตามที่กำหนดไว้ในขั้นที่ 1 เพื่อหาวิธีการที่หลากหลายสำหรับใช้ในการแก้ปัญหาหรือสนองความต้องการ โดยการค้นหาและรวบรวมข้อมูลจากแหล่งข้อมูลต่างๆ เช่น สอบถามจากผู้รู้ สืบค้นหรือสำรวจจากสื่อและแหล่งเรียนรู้ต่างๆ ซึ่งการค้นหาแนวคิดที่เกี่ยวข้องกับปัญหานี้จะเป็นการศึกษาองค์รู้จากทั้งวิทยาศาสตร์ คณิตศาสตร์ รวมทั้งศาสตร์อื่นๆ ที่เกี่ยวข้อง จากนั้นนำข้อมูลที่รวบรวมได้มาวิเคราะห์และสรุปเป็นสารสนเทศและวิธีการแก้ปัญหาหรือสนองความต้องการ โดยวิธีการแก้ปัญหาหรือสนองความต้องการอาจมีได้มากกว่า 1 วิธี จากนั้นจึงพิจารณาและเลือกวิธีการแก้ปัญหาหรือสนองความต้องการที่เหมาะสมและสอดคล้องกับปัญหาหรือความต้องการ ในประเด็นต่างๆ เช่น ข้อดี ข้อเสีย ความสอดคล้องและการนาไปใช้ได้จริงของวิธีการแต่ละวิธี ดังนั้นวิธีการที่จะถูกพิจารณาคัดเลือกจะอยู่ภายใต้กรอบของปัญหาหรือความต้องการมาเป็นข้อมูลประกอบการตัดสินใจเลือก

 ขั้นที่ 3 ออกแบบวิธีการแก้ปัญหา (Solution Design) เป็นขั้นตอนของการออกแบบชิ้นงานหรือวิธีการโดยการประยุกต์ใช้ข้อมูลที่ได้จากการรวบรวมในขั้นที่ 2 ซึ่งขั้นตอนนี้จะช่วยสื่อสารแนวคิดของการแก้ปัญหาให้ผู้อื่นเข้าใจโดยผ่านวิธีการต่างๆ เช่น การร่างภาพ การอธิบาย เป็นต้น

ขั้นที่ 4 วางแผนและดาเนินการแก้ปัญหา (Planning and Development) เป็นขั้นตอนของการวางลำดับขั้นตอนของการสร้างช้นงานหรือวิธีการ จากนั้นจึงลงมือสร้างหรือพัฒนาชิ้นงานหรือวิธีการ เพื่อที่จะนาผลลัพธ์ที่ได้ไปใช้ในการขั้นตอนต่อไป

 ขั้นที่ 5 ทดสอบ ประเมินผล และปรับปรุงแก้ไขวิธีการแก้ปัญหาหรือชิ้นงาน (Testing, Evaluation and Design Improvement) เป็นขั้นตอนของการตรวจสอบและประเมินชิ้นงานวิธีการที่สร้างขึ้นว่า สามารถทางานหรือใช้ในการแก้ปัญหาหรือสนองความต้องการได้หรือไม่ มีข้อบกพร่องอย่างไร และควรปรับปรุงแก้ไขชิ้นงานหรือแบบจาลองวิธีการใน ส่วนใด ควรปรับปรุงแก้ไขอย่างไร แล้วจึงดาเนินการปรับปรุงแก้ไขในส่วนนั้นจนได้ชิ้นงานวิธีการที่สอดคล้องตามรูปแบบที่ออกแบบไว้

ขั้นที่ 6 นำเสนอวิธีการแก้ปัญหา ผลการแก้ปัญหาหรือชิ้นงาน (Presentation) เป็นขั้นตอนของการคิดวิธีการนำเสนอข้อมูลที่เกี่ยวข้องกับชิ้นงานหรือวิธีการที่สร้างขึ้นมาเพื่อแก้ปัญหาหรือสนองความต้องการ

จากที่กล่าวมาข้างต้นเกี่ยวกับกระบวนการออกแบบเชิงวิศวกรรม 6 ขั้นตอนนั้น หากนำมาใช้ในการจัดการเรียนการสอนใน ชั้นเรียนจะสามารถดำเนินการโดยการที่ผู้สอนสามารถพัฒนากิจกรรมการเรียนรู้ โดยนำกระบวนการออกแบบเชิงวิศวกรรมในขั้นที่ 1 ระบุปัญหามาไว้ส่วนของขั้นนำ ซึ่งจะเป็นการกำหนดสถานการณ์ปัญหาให้ผู้เรียน เพื่อที่ผู้เรียนจะได้ทำการวิเคราะห์เพื่อกำหนดปัญหาหรือความต้องการจากสถานการณ์นั้น สำหรับในขั้นที่ 2 ถึงขั้นที่ 6 ของกระบวนการออกแบบเชิงวิศวกรรม อาจจะนำมาไว้ในส่วนของขั้นพัฒนาผู้เรียน ส่วนในขั้นสรุปของการเรียนจะเป็นการสรุปร่วมกันถึงองค์ความรู้ทางด้านวิทยาศาสตร์ คณิตศาสตร์ รวมทั้งศาสตร์อื่นๆ ที่ได้จากการค้นคว้าเพื่อนำมาใช้ในการแก้ปัญหาหรือสนองความต้องการตามกระบวนการออกแบบเชิงวิศวกรรม

สรุปได้ว่า การใช้กระบวนการออกแบบเชิงวิศวกรรมเป็นเครื่องมือช่วยในการจัดการเรียนการสอนเพื่อเสริมสร้างและพัฒนาการเรียนรู้ของเยาวชน จะช่วยให้เยาวชนได้มีการฝึกทักษะในการคิดอย่างเป็นขั้นตอนซึ่งเป็นการต่อยอดความรู้ที่มีอยู่เดิมให้ขยายไปจนเกิดมุมมองใหม่ๆ ในการแก้ปัญหานั้นๆ ได้อย่างครอบคลุมและถูกต้องจนนำไปสู่การพัฒนาผลิตภัณฑ์หรือวิธีการที่มีความสามารถนาไปแข่งขันในเชิงธุรกิจ และเป็นการเพิ่มความสามารถทางปัญญาของเยาวชนไทยซึ่งเป็นกำลังในการพัฒนาประเทศชาติต่อไปในอนาคต

อ่านต่อ ตอนที่ 2  ความคิดสร้างสรรค์ (Creative Thinking)….

บทความโดย นางสาวสุธิดา การีมี

เริ่มต้นสอนเขียนโปรแกรมง่ายนิดเดียว

       การเขียนโปรแกรมเป็นการเรียนรู้ที่ทำให้ผู้เรียนมีทักษะการคิดวิเคราะห์ และการแก้ปัญหา  (critical thinking and problem solving) ซึ่งเป็นหนึ่งในทักษะที่จำเป็นสำหรับการเรียนรู้ในศตวรรษที่ 21 ทำให้ผู้เรียนมีการคิดแบบมีเหตุผล เป็นระบบ มีความคิดสร้างสรรค์ สามารถนำไปใช้ในการแก้ไขปัญหา การสร้างงานที่ดี  และดำรงชีวิตอยู่ได้ในปัจจุบัน ทั้งเกิดการเรียนรู้แบบยั่งยืนในอนาคต

ทำไมต้องเขียนโปรแกรม

  1. การโปรแกรมเป็นความรู้พื้นฐานในโลกยุคดิจิทัล

ปัจจุบันเรามีโอกาสได้ใช้เทคโนโลยีหรือสื่อดิจิทัลต่างๆ อยู่เสมอ เช่น สมาร์ทโฟน คอมพิวเตอร์ ของเล่น youtube  facebook     สิ่งหนึ่งที่สำคัญคือต้องรู้และทำความเข้าใจว่าจะใช้เทคโนโลยีเหล่านั้นได้อย่างไร  เมื่อนักเรียนได้ฝึกเขียนโปรแกรมจะทำให้เกิดทักษะการใช้ตรรกะ หรือการคิดแบบมีเหตุผลทำให้เข้าใจถึงเบื้องหลังการทำงานของโปรแกรม  และสามารถนำไปประยุกต์ใช้กับการทำงานอื่น หรือสิ่งต่างๆ ได้เป็นอย่างดี   เยาวชนในทุกวันนี้ไม่ควรเป็นเพียงผู้บริโภคเทคโนโลยีเท่านั้น แต่จะต้องเข้าใจและควบคุมเทคโนโลยีได้ เพื่อให้ทันกับโลกเทคโนโลยีที่มีการเปลี่ยนแปลงไปอย่างรวดเร็ว 

ผู้เรียนฝึกการเขียนโปรแกรมจากสื่อในแท็บเล็ต รูปที่ 1 ผู้เรียนฝึกการเขียนโปรแกรมจากสื่อในแท็บเล็ต

  1. พัฒนาการคิดและทำงานเป็นขั้นตอน

การเขียนเป็นการถ่ายทอดความคิดให้ผู้อื่นรับรู้และเข้าใจสิ่งที่ผู้เขียนต้องการจะสื่อหรือเผยแพร่ได้  การเขียนโปรแกรมก็เช่นเดียวกัน เราสามารถเขียนสัญลักษณ์ หรือรหัสคำสั่ง เพื่อบอกผู้อื่นทำงานตามที่ต้องการ  หรือสั่งให้คอมพิวเตอร์ปฏิบัติตามคำสั่ง    การเขียนโปรแกรมที่ดีต้องจะมีการคิดวิเคราะห์ และเขียนขึ้นอย่างชัดเจนเป็นขั้นตอน ให้สามารถนำไปไปปฏิบัติได้อย่างถูกต้องและมีประสิทธิภาพ  ผู้ที่เขียนโปรแกรมอยู่เสมอจะมีทักษะการคิดแบบมีเหตุผล และเป็นขั้นตอน ซึ่งส่งผลไปถึงการตัดสินใจในการทำงานหรือการแก้ปัญหาอื่นๆ ในชีวิตประจำวัน

  1. ฝึกเป็นนักออกแบบและผู้สร้าง

ทุกคนมีความคิดและจินตนาการ แต่มีกี่เรื่อง ที่คิดแล้วสามารถทำให้เกิดขึ้นจริงได้  เพื่อเป็นการปลูกฝังให้เด็กๆ เป็นนักคิดและผู้ริเริ่มที่สามารถนำความคิดไปสู่การสร้างที่แท้จริงได้ ครูควรสนับสนุนให้นักเรียนได้เรียนรู้วิธีการเขียนโปรแกรม   เพราะการเขียนโปรแกรมจะทำให้สามารถคิดหรือสร้างงานได้เอง ทำให้มีความเชื่อมั่นที่จะเป็นนักออกแบบ และผู้สร้าง ซึ่งจะนำไปสู่การทำงานในอนาคต และสามารถสร้างสรรค์นวัตกรรมที่เป็นประโยชน์ต่อตนเอง ครอบครัว ชุมชน และประเทศชาติอย่างแท้จริง

  1. การเขียนโปรแกรมง่ายกว่าที่คิด

การที่นักเรียนได้เห็นการทำงาน หรือการเคลื่อนไหวแต่ละคำสั่งตามที่เขียนโปรแกรมไว้ทันที  เป็นสิ่งที่กระตุ้นการเรียนรู้ เพราะจะทำให้รู้ว่าควรจะจัดการอย่างไรเพื่อให้ได้ผลลัพธ์ที่ถูกต้อง  และแน่นอนว่าเครื่องมือที่ใช้ในการเขียนโปรแกรมมีความสำคัญต่อการเรียนรู้  ครูสามารถเลือกใช้ให้เหมาะกับนักเรียน  ซึ่งในปัจจุบันมีสื่อหรือเครื่องมือต่างๆ จำนวนมากที่ช่วยส่งเสริมการเรียนรู้การเขียนโปรแกรม ที่ใช้งานง่าย และมีความสวยงาม ทำให้นักเรียนอยากที่จะเรียนรู้ และเมื่อได้ฝึกฝนบ่อยๆ ทำให้เกิดความชำนาญ จะสามารถเขียนโปรแกรมได้ง่าย รวดเร็ว ได้ผลลัพธ์ที่ถูกต้อง และยังได้เรียนรู้การใช้เทคนิคต่างๆ ที่ช่วยสร้างงานให้มีประสิทธิภาพยิ่งขึ้น 

เห็นมั้ยล่ะว่า  “การเขียนโปรแกรมง่ายนิดเดียว”

 

เริ่มต้นสอนเขียนโปรแกรมกันเถอะ

          เมื่อจะเริ่มต้นสอนเขียนโปรแกรม ครูหลายท่านคงกังวลเพราะคิดว่าการใช้ภาษาคอมพิวเตอร์ในการสอนนั้น ยากเกินกว่านักเรียนของเราจะทำได้  สิ่งหนึ่งที่ครูควรคำนึงถึงนอกจากภาษาคอมพิวเตอร์ที่จะใช้ในการเขียนโปรแกรม คือพิจารณาว่า เมื่อนักเรียนเรียนเขียนโปรแกรมแล้วจะได้ประโยชน์อะไร คำตอบที่แท้จริงหนีไม่พ้นเหตุผลที่ว่า นักเรียนจะได้ฝึกการคิดแบบมีเหตุผล และเป็นขั้นตอนอย่างมีระบบ   ซึ่งภาษาคอมพิวเตอร์เป็นเครื่องมือเพื่อช่วยให้เกิดสิ่งเหล่านั้น  ถ้านักเรียนมีตรรกะแล้วไม่ว่าจะใช้เครื่องมือใดในการเขียนโปรแกรม นักเรียนก็จะสามารถทำได้เป็นอย่างดี   มาเริ่มต้นการฝึกการคิดแบบมีเหตุผล ด้วยกิจกรรมการสอนเขียนโปรแกรมที่ไม่ต้องใช้คอมพิวเตอร์ หรือใช้โปรแกรมสำเร็จอย่างง่ายที่ช่วยในการเรียนรู้การเขียนโปรแกรม ซึ่งมีแนวทางดังนี้    

 

  1. เริ่มต้นสอนเขียนโปรแกรมโดยไม่ต้องใช้คอมพิวเตอร์

          เราสามารถเริ่มต้นสอนเขียนโปรแกรมได้  โดยใช้กิจกรรมที่เปิดโอกาสให้นักเรียนได้ฝึกคิดอย่างมีเหตุผลและทำงานอย่างเป็นขั้นตอน  แล้วมีการแปลงแนวคิดในการทำงานต่างๆ เป็นรหัสคำสั่งที่ชัดเจนและสามารถนำไปปฏิบัติตามได้ ในที่นี้ผู้เขียนขอยกตัวอย่างกิจกรรมอย่างง่ายสำหรับนักเรียน ช่วงชั้น ป.4-ป.6

ซึ่งครูเริ่มการสอนโดยให้สถานการณ์แล้วให้นักเรียนเขียนรหัสคำสั่ง หรือให้รหัสคำสั่งแล้วให้นักเรียนปฏิบัติตามคำสั่ง ดังนี้

ตัวอย่างที่ 1   ครูให้สถานการณ์เป็นแผนที่ แล้วให้นักเรียนเขียนรหัสคำสั่ง ดังนี้

สถานการณ์  นักเรียนช่วยหุ่นยนต์ตามหาเพชร โดยเขียนรหัสคำสั่งเรียงต่อกันตามการสั่งงาน

02

ตัวอย่างที่ 2   ครูให้รหัสคำสั่ง แล้วให้นักเรียนใส่คำสั่งแต่ละคำสั่งลงในแผนที่ ที่มีแค่ตำแหน่งของหุ่นยนต์ ดังนี้

สถานการณ์  นักเรียนช่วยหุ่นยนต์ตามเก็บเพชร โดยทำตามรหัสคำสั่งต่อไปนี้

03

จากตัวอย่างที่ 2 ครูอาจถามเพิ่มเติมถึงจำนวนเพชรและตำแหน่งที่เพชรอยู่  นอกจากนี้จะเห็นว่ามีบางคำสังที่ทำงานซ้ำกัน ซึ่งครูอาจกำหนดสัญลักษณ์ () แทนการวนซ้ำ เช่น  ➔(3) หมายถึง การเดินไปทางขวา 3 ครั้ง  

2) เริ่มต้นสอนเขียนโปรแกรมโดยใช้สื่อเรียนรู้ใน code.org

         ปัจจุบันมีเว็บไซต์หรือโปรแกรมอย่างง่ายจำนวนมาก ที่ใช้สำหรับการเรียนรู้และพัฒนาทักษะด้านการเขียนโปรแกรม ซึ่งในที่นี้ผู้เขียนขอแนะนำเว็บไซต์  code.org   ซึ่งเป็นเว็บไซต์ขององค์กรที่ไม่แสวงหากำไร โดยมีวิสัยทัศน์ในการทำงานเพื่อให้นักเรียนทุกคนได้มีโอกาสเรียนด้านวิทยาการคอมพิวเตอร์    ทั้งนี้มีสถาบันต่างๆ ให้ความร่วมมือในการพัฒนาสื่อเรียนรู้การเขียนโปรแกรม และพัฒนาหลักสูตรสำหรับการสอนเขียนโปรแกรมในชั้นเรียนจำนวนมาก    

03.1รูปที่ 2 เว็บไซต์ Cod.org

         สื่อเรียนรู้ใน code.org มีให้เลือกใช้หลากหลายตามระดับชั้น และอายุของผู้เรียน  มีทั้งแบบใช้และไม่ใช้คอมพิวเตอร์  ซึ่งครูสามารถดาวน์โหลดแผนการสอนเพื่อนำไปใช้ในการจัดกิจกรรมได้  สำหรับสื่อที่ใช้คอมพิวเตอร์จะต้องเชื่อมต่ออินเทอร์เน็ต  โดยการเรียนรู้จะมีลักษณะเป็นการฝึกทักษะ ซึ่งมีภารกิจต่างๆ ให้ผู้เรียนได้ฝึกเขียนโปรแกรมตามสถานการณ์ที่กำหนด  โดยเริ่มจากภารกิจง่ายๆ ไปจนถึงภารกิจที่มีความซับซ้อน   ในแต่ละภารกิจจะกำหนดคำสั่งให้เลือกใช้ตามระดับความยากของสถานการณ์ และมีการกำหนดจำนวนคำสั่งที่ใช้ได้สูงสุดในแต่ละภารกิจ  นักเรียนสามารถเลือกทำภารกิจใดก่อนก็ได้  โดยถ้าผ่านภารกิจใดที่แถบด้านบนจะมีสัญลักษณ์เป็นวงกลมสีเขียว ถ้าไม่ผ่านจะมีสัญลักษณะเป็นวงกลมสีเหลือง ถ้ายังไม่ได้ทำจะมีสัญลักษณะเป็นวงกลมสีขาวดังรูป

04รูปที่ 3 แถบภารกิจ

          การเขียนโปรแกรมในแต่ละภารกิจ นักเรียนจะต้องเลือกวางคำสั่งให้ได้ผลลัพธ์ตามสถานการณ์ที่กำหนด หลังจากนั้นสั่งให้โปรแกรมทำงานโดยคลิกปุ่ม05   หากเขียนโปรแกรมถูกต้องจะมีข้อความแสดงว่าผ่าน และแสดงจำนวนคำสั่งที่ใช้ หากเขียนไม่ถูกต้องจะมีข้อความแจ้งเหตุผล เช่น  ใช้คำสั่งไม่ถูกต้อง จำนวนคำสั่งเกินกว่าที่กำหนด 

06รูปที่ 4 การแสดงผลลัพธ์ในแต่ละภาระกิจ

          การเรียนรู้ที่ดีควรเริ่มจากภารกิจที่ง่ายไปจนถึงภารกิจที่มีความซับซ้อน เพื่อให้นักเรียนเกิดความคิดรวบยอดในแต่ละเรื่อง แล้วนำมาประยุกต์ใช้ในการสร้างงานตามจินตนาการ หรืองานตามที่สถานการณ์กำหนด  ซึ่งนักเรียนจะมีโอกาสได้ทำในตอนท้ายของแต่ละกิจกรรม  เมื่อผ่านกิจกรรมแล้วนักเรียนจะได้รับเกียรติบัตรและสามารถแสดงความภาคภูมิใจนี้ผ่านสื่อ เช่น Facebook และ Twitter ได้ หรือจะเก็บไว้กับตัวเองโดยการดาวน์โหลดไว้ในเครื่องคอมพิวเตอร์

07

รูปที่ 5 เกียรติบัตรเมื่อผ่านกิจกรรม

เพื่อช่วยให้ครูสามารถนำสื่อเรียนรู้ใน code.org ไปใช้ในการสอนได้  ผู้เขียนขอแนะนำขั้นตอนในการดำเนินกิจกรรมดังนี้

  1. ครูจัดเตรียมสื่ออุปกรณ์ที่ใช้ในการสอน โดยเลือกสื่อเรียนรู้สำหรับนักเรียน ซึ่งพิจารณาจากอายุของนักเรียนหรือระดับชั้น  หลังจากนั้นจัดเตรียมอุปกรณ์ที่เกี่ยวข้องต่างๆ  เช่น คอมพิวเตอร์  แท็บเล็ต  ลำโพง หูฟัง ระบบอินเทอร์เน็ต  
  2. ครูจุดประกายความคิดในช่วงเริ่มต้นชั่วโมง ให้นักเรียนเห็นถึงประโยชน์และเหตุผลของการเขียนโปรแกรม โดยอาจให้นักเรียนช่วยกันยกตัวอย่างการใช้รหัสคำสั่งหรือโค้ดใช้ชีวิตประจำวัน หรืออาจให้นักเรียนดูวีดิทัศน์ แสดงความเห็นจากผู้ประสบความสำเร็จด้านการเขียนโปรแกรม
  3. ครูให้ link สำหรับการเข้าถึงสื่อใน code.org  โดยให้นักเรียนเริ่มศึกษาและทำภารกิจไปตามลำดับจนผ่านทุกภารกิจ ครูควรกระตุ้นให้นักเรียนทำงานด้วยตนเอง
  4. ครูให้นักเรียนสร้างงานของตนเองตามจินตนาการ หรือครูกำหนดสถานการณ์ เพื่อให้นักเรียนได้นำความรู้ต่างๆ มาประยุกต์ในการสร้างชิ้นงาน
  5. ครูควรให้รางวัลหรือคำชมเชยแก่นักเรียน หลังจากนักเรียนทำภารกิจต่างๆ เสร็จแล้ว ให้อัปโหลดผลงานลง code.org  เพื่อเผยแพร่ผลงานให้ผู้อื่นดู
  6. ครูสรุปความรู้และเชื่อมโยงไปสู่การเขียนโปรแกรมเพื่อสร้างซอฟต์แวร์ต่อไป

 

สรุป

เริ่มต้นง่ายๆ กับการสอนเขียนโปรแกรม ไม่ว่าจะใช้เครื่องคอมพิวเตอร์หรือไม่ใช้ก็ตาม  สิ่งที่นักเรียนจะได้รับคือการฝึกทักษะการคิดแบบมีเหตุผล และเป็นขั้นตอน  ครูสามารถคิดกิจกรรมง่ายๆ เพื่อสร้างการเรียนรู้ หรือใช้บริการจากเว็บไซต์ที่มีสื่อเรียนรู้ด้านการเขียนโปรแกรม เช่น code.org  ที่ช่วยครูผู้สอนในการจัดกิจกรรมต่างๆ   และกระตุ้นให้ผู้เรียนอยากเรียนรู้ด้านการเขียนโปรแกรม ด้วยเครื่องมือสำเร็จแบบง่ายและน่าสนใจ เพื่อเป็นการปูทางให้นักเรียนเกิดความคิดที่จะเป็นนักพัฒนา  สร้างสรรค์ซอฟต์แวร์ หรือนวัตกรรมใหม่ๆ  นอกจากนี้ยังเป็นผู้ที่มีความรู้ความสามารถที่จะใช้และควบคุมเทคโนโลยีได้อย่างถูกต้องมีประสิทธิภาพ รวมทั้งสามารถที่เข้าใจและต่อยอดการใช้งานแบบยั่งยืนในอนาคต 

“ถ้านักเรียนของคุณยังไม่ได้เรียนการเขียนโปรแกรม ควรเริ่มได้แล้ว ณ บัดนี้”

 

.

ยกร่างบทความโดย นางสาวทัศนีย์   กรองทอง
บรรณาธิการโดย คณะบรรณาธิการสาขาวิชาเทคโนโลยี สสวท.

อ้างอิง

https://code.org

http://readwrite.com/2013/05/31/programming-core-skill-21st-century

https://www.quora.com/Why-is-programming-so-important-in-the-modern-world

http://www.tynker.com/blog/articles/ideas-and-tips/four-reasons-why-kids-should-learn-programming/