วันจันทร์ที่ 31 สิงหาคม พ.ศ. 2563

การแก้ปัญหาคอมพิวเตอร์

 คอมพิวเตอร์กับการแก้ปัญหา 

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

    
กระบวนการในการแก้ปัญหา  ซึ่งประกอบด้วย ขั้นตอน ดังนี้

 

 1. การวิเคราะห์และกำหนดรายละเอียดของปัญหา

          การวิเคราะห์และกำหนดรายละเอียดของปัญหา (State the problem) ขั้นตอนนี้เป็นขั้นตอนแรกสุดก่อนที่จะลงมือแก้ปัญหา แต่ผู้แก้ปัญหามักจะมองข้ามความสำคัญของขั้นตอนนี้อยู่เสมอ จุดประสงค์ของขั้นตอนนี้ คือการทำความเข้าใจกับปัญหาเพื่อแยกให้ออกว่าข้อมูลที่กำหนดมาในปัญหาหรือเงื่อนไขของปัญหาคืออะไร และสิ่งที่ต้องการคืออะไร อีกทั้งวิธีการที่ใช้ประมวลผล ในการวิเคราะห์ปัญหาใด กล่าวโดยสรุปมีองค์ประกอบในการวิเคราะห์ ดังนี้

1.1  การระบุข้อมูลเข้า  ได้แก่ การพิจารณาข้อมูลและเงื่อนไขที่กำหนดมาในปัญหา

1.2  การระบุข้อมูลออก  ได้แก่ การพิจารณาเป้าหมายหรือสิ่งที่ต้องหาคำตอบ

1.3  การกำหนดวิธีประมวลผล  ได้แก่ การพิจารณาขั้นตอนวิธีหาคำตอบหรือข้อมูลออก


  2. การเลือกเครื่องมือและออกแบบขั้นตอนวิธี

              การเลือกเครื่องมือและออกแบบขั้นตอนวิธี (Tools and Algorithm development) ขั้นตอนนี้เป็นขั้นตอนของการวางแผนในการแก้ปัญหาอย่างละเอียดถี่ถ้วน หลังจากที่เราทำความเข้าใจกับปัญหา พิจารณาข้อมูลและเงื่อนไขที่มีอยู่ และสิ่งที่ต้องการหาในขั้นตอนที่ แล้ว เราสามารถคาดคะเนวิธีการที่จะใช้ในการแก้ปัญหา ขั้นตอนนี้จำเป็นต้องอาศัยประสบการณ์ของผู้แก้ปัญหาเป็นหลัก หากผู้แก้ปัญหาเคยพบกับปัญหาทำนองนี้มาแล้วก็สามารถดำเนินการตามแนวทางที่เคยปฏิบัติมา

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

              อีกสิ่งหนึ่งที่สำคัญในการแก้ปัญหา คือยุทธวิธีที่ใช้ในการแก้ปัญหาหรือที่เราเรียกว่า 

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

 

  3. การดำเนินการแก้ปัญหา

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

 

  4. การตรวจสอบและปรับปรุง

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

              ขั้นตอนทั้ง ขั้นตอนดังกล่าวข้างต้น เป็นเสมือนขั้นบันได (stair) ที่ทำให้มนุษย์สามารถประสบความสำเร็จในการแก้ปัญหาต่างๆ ได้ รวมทั้งการเขียนหรือพัฒนาโปรแกรมคอมพิวเตอร์เพื่อแก้ปัญหาก็ต้องใช้กระบวนการตามขั้นตอนทั้ง นี้เช่นกัน                         

อ้างอิงแหล่งที่มา

วันอาทิตย์ที่ 30 สิงหาคม พ.ศ. 2563

การสรุปผลและการเผยแพร่ผลงาน

 

                          การสรุปผลและการเผยแพร่ผลงาน

1. การนำเสนอโครงงาน

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

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

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

          3. การแสดงผลงานโครงงานด้วยโปสเตอร์
              โปสเตอร์โครงงานที่ดีควรมีลักษณะ ดังนี้
              1. มีข้อมูลที่กระชับและชัดเจน 
              2 .มีหลักการทางวิทยาศาสตร์และเทคโนโลยีที่สำคัญ
              3. แสดงให้เห็นสิ่งที่ค้นพบหรือสิ่งที่พัฒนา 
              4. แสดงกระบวนการ / วิธีการ ที่พัฒนา 
              5. ใช้ภาษาเข้าใจง่าย 
              6. เรียงเรื่องให้อ่านตามได้เข้าใจ 
              7. ตัวหนังสืออ่านได้ชัดเจน
              8. ทำงานประณีต เรียบร้อย ไม่มีคำผิดเลย 
              9. จัดส่วนประกอบต่าง ๆ ได้เหมาะสม ไม่แน่นเกินไป
             10. นำเสนอได้น่าสนใจ 
             11. มีภาพและงานกราฟิกประกอบ ทำให้ข้อมูลชัดเจนขึ้น 
             12. ใช้สีสันที่สมดุล 
             13. มีหลักฐานอ้างอิง

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

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

          6. การฝึกพูด 
              - ฝึกพูดก่อนวันพูดจริง 
              - จำประเด็นสำคัญที่จะพูด 
              - ฝึกพูดให้เป็นธรรมชาติ 
              - ฝึกพูดให้ชัดเจน 
              - รู้จังหวะเน้น 
              - ไม่พูดเร็ว

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

          8. สื่อนำเสนอที่ดี
              -มีตัวหนังสือน้อย 
              -มีเฉพาะประเด็นสำคัญ 
              -ตัวหนังสือมีขนาดโตพอที่ผู้ชมอ่านได้ 
              -ใช้ตัวอักษรสีเข้ม เช่น สีดำ สีน้ำเงินเข้ม
              -ออกแบบการนำเสนอให้เรียบง่าย 
              -ไม่พูดโดยการอ่านจากสิ่งที่เขียน

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

2. การประเมินผลโครงงานคอมพิวเตอร์
              เกณฑ์ในการให้คะแนนก็แล้วแต่อาจารย์ผู้สอนจะเห็นสมควร แต่ควรให้ความสำคัญกับการจัดทำเค้าโครงงาน ผลงาน และรายงานในอัตราส่วนที่ใกล้เคียงกัน เพราะทุกส่วนล้วนมีความสำคัญต่อการพัฒนาโครงงานที่ดีและมีคุณภาพ ตัวอย่างการพิจารณาแบ่งคะแนนจากคะแนนเต็ม100 % ได้แก่

 

              การประเมินโครงงานควรเป็นการประเมินตามสภาพจริง เพื่อค้นหาความสามารถและความก้าวหน้าในการเรียนรู้ที่แท้จริงของผู้เรียน ซึ่งกรอบแนวทางการประเมินได้แก่ 
              1. ประเมินอะไร
                 1.1 ผลผลิต / ผลงาน / ชิ้นงาน
                 1.2 กระบวนการเรียนรู้
                 1.3 กระบวนการทำงาน
                 1.4 การแสดงออกถึงความรู้ ความคิด ความสามารถ ทักษะ คุณธรรม จริยธรรม และค่านิยม
              2. ประเมินเมื่อใด
                 2.1 การคัดเลือกหัวข้อจนถึงการนำเสนอผลงาน
                 2.2 ตามสภาพจริง
              3. ประเมินจากอะไร
                 3.1 ผลงาน
                 3.2 การทดสอบ
                 3.3 บันทึกต่างๆ
                 3.4 แฟ้มสะสมผลงาน
                 3.5 การตรงต่อเวลาของการส่งงาน
                 3.6 หลักฐานหรือร่องรอยอื่น 
              4. ประเมินโดยใคร
                 4.1 ผู้สอน
                 4.2 ผู้เรียน
                 4.3 เพื่อนร่วมชั้นเรียน
                 4.4 ผู้ปกครอง
                 4.5 ผู้เกี่ยวข้องอื่นๆ
              5. ประเมินโดยวิธีใด
                 5.1 ตรวจผลงาน
                 5.2 ตรวจรายงาน
                 5.3 ทดสอบ
                 5.4 นำเสนอผลงาน
                 5.5 นิทรรศการ
                 5.6 สังเกต
                 5.7 สัมภาษณ์
              การปฏิบัติงานเป็นกระบวนการเรียนรู้ที่ให้ผู้เรียนได้ลงมือปฏิบัติจริง ซึ่งต้องจัดให้มีการประเมิน การปฏิบัติงานของผู้เรียนตลอดเวลา ขณะที่ปฏิบัติกิจกรรมตามขั้นตอนต่างๆ และนำผลเหล่านั้นมาพัฒนา ปรับปรุง การปฏิบัติงานให้ดีขึ้นเรื่อยๆ โดยควรให้ผู้เรียนได้มีทำการจดบันทึกตลอดจนใช้แฟ้มสะสมผลงานตลอดเวลาด้วย

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


ที่มา : https://sites.google.com/a/moeipit.ac.th/wirapons/karna-senx-laea-phey-phaer-khorng-ngan

การดำเนินงาน

 วิธีการดำเนินงาน


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

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

         3. จัดทำเค้าโครงของโครงงานที่จะทำ ดังนี้
    3.1  ศึกษาค้นคว้าเอกสารอ้างอิงและรวบรวมข้อมูลที่ได้จากผู้ทรงคุณวุฒิ
    3.2  วิเคราะห์ข้อมูล เพื่อกำหนดขอบเขตและลักษณะของโครงการที่จะพัฒนา
    3.3  ออกแบบการพัฒนา มีการกำหนดลักษณะของเครื่องคอมพิวเตอร์ ซอฟต์แวร์และตัวแปลภาษา โปรแกรม และวัสดุต่าง ๆ ที่ต้องใช้
    3.4  กำหนดตารางการปฏิบัติงานของการจัดทำเค้าโครงของโครงงาน ลงมือทำโครงงานและสรุปรายงานโครงงาน โดยกำหนดช่วงเวลาอย่างกว้าง ๆ
    3.5  ทำการพัฒนาโครงงานขั้นต้น เพื่อศึกษาความเป็นไปได้เบื้องต้น โดยอาจจะทำการพัฒนาส่วนย่อย ๆ บางส่วนตามที่ได้ออกแบบไว้แล้ว นำผลจากการศึกษาในช่วงนี้ไปปรับปรุงแผนการทดลองที่ออกแบบไว้ในครั้งแรกให้เหมาะสมมากยิ่งขึ้น
    3.6  เสนอเค้าโครงของโครงงานคอมพิวเตอร์ต่ออาจารย์ที่ปรึกษา เพื่อขอคำแนะนำและปรับปรุงแก้ไข เพื่อให้การวางแผนและดำเนินการทำโครงงานเป็นไปอย่างเหมาะสมเป็นขั้นตอนตั้งแต่เริ่มต้นจนสิ้นสุด

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

การวางแผนและการออกแบบโครงงาน

 

ขั้นตอนการทำโครงงาน

ขั้นตอนการทำโครงงา
            
1. การคิดและการเลือกหัวข้อโครงงาน  ผู้เรียนจะต้องคิด และเลือกหัวข้อของโครงงานด้วยตนเองว่าอยากจะศึกษาอะไร ทำไมจึงอยากศึกษา หัวเรื่องของโครงงานมักจะได้มาจากปัญหา คำถามหรือความอยากรู้อยากเห็นเกี่ยวกับเรื่องต่างๆ ของผู้เรียนเอง หัวเรื่องของโครงงานควรเฉพาะเจาะจงและชัดเจน เมื่อใครได้อ่านชื่อเรื่องแล้วควรเข้าใจและรู้เรื่องว่าโครงงานนี้ทำจากอะไร การกำหนดหัวเรื่องของโครงงานนั้นมีแหล่งที่จะช่วยกระตุ้นให้เกิดความคิดและความสนใจหลายแหล่งด้วยกัน 1. การคิดและการเลือกหัวข้อโครงงาน  ผู้เรียนจะต้องคิด และเลือกหัวข้อของโครงงานด้วยตนเองว่าอยากจะศึกษาอะไร ทำไมจึงอยากศึกษา หัวเรื่องของโครงงานมักจะได้มาจากปัญหา คำถามหรือความอยากรู้อยากเห็นเกี่ยวกับเรื่องต่างๆ ของผู้เรียนเอง หัวเรื่องของโครงงานควรเฉพาะเจาะจงและชัดเจน เมื่อใครได้อ่านชื่อเรื่องแล้วควรเข้าใจและรู้เรื่องว่าโครงงานนี้ทำจากอะไร การกำหนดหัวเรื่องของโครงงานนั้นมีแหล่งที่จะช่วยกระตุ้นให้เกิดความคิดและความสนใจหลายแหล่งด้วยกัน
2. การวางแผน
             การวางแผนการทำโครงงาน จะรวมถึงการเขียนเค้าโครงของโครงงาน ซึ่งต้องมีการวางแผนไว้ล่วงหน้า เพื่อให้การดำเนินการเป็นไปอย่างรัดกุมและรอบคอบ ไม่สับสน แล้วนำเสนอต่อผู้สอนหรือครูที่ปรึกษาเพื่อขอความเห็นชอบก่อนดำเนินการขั้นต่อไป การเขียนเค้าโครงของโครงงาน โดยทั่วไป เขียนเพื่อแสดงแนวคิด แผนงาน และขั้นตอนการทำโครงงาน ซึ่งควรประกอบด้วยหัวข้อต่อไปนี้
             1. ชื่อโครงงาน ควรเป็นข้อความที่กะทัดรัด ชัดเจน สื่อความหมายได้ตรง
             2.  ชื่อผู้ทำโครงงาน
             3.  ชื่อที่ปรึกษาโครงงาน
             4.  หลักการและเหตุผลของโครงงาน เป็นการอธิบายว่าเหตุใดจึงเลือกทำโครงงานเรื่องนี้ มีความสำคัญอย่างไร มีหลักการหรือทฤษฎีอะไรที่เกี่ยวข้อง เรื่องที่ทำเป็นเรื่องใหม่หรือมีผู้อื่นได้ศึกษาค้นคว้าเรื่องนี้ไว้บ้างแล้ว ถ้ามีได้ผลอย่างไร เรื่องที่ทำได้ขยายเพิ่มเติม ปรับปรุงจากเรื่องที่ผู้อื่นทำไว้อย่างไร หรือเป็นการทำซ้ำเพื่อตรวจสอบผล

 5. จุดมุ่งหมายหรือวัตถุประสงค์ควรมีความเฉพาะเจาะจง และสามารถวัดได้ เป็นการบอกขอบเขตของงานที่จะทำได้ชัดเจนขึ้น
             6. สมมติฐานของการศึกษาค้นคว้า (ถ้ามี) สมมติฐานเป็นคำตอบหรือคำอธิบายที่คาดไว้ล่วงหน้า ซึ่งอาจจะถูกหรือไม่ก็ได้ การเขียนสมมติฐานควรมีเหตุมีผลมีทฤษฎีหรือหลักการรองรับ และที่สำคัญ คือ เป็นข้อความที่มองเห็นแนวทางในการดำเนินการทดสอบได้ นอกจากนี้ควรมีความสัมพันธ์ระหว่างตัวแปรอิสระและตัวแปรตามด้วย
             7. วิธีดำเนินงานและขั้นตอนการดำเนินงาน จะต้องอธิบายว่า จะออกแบบการทดลองอะไรอย่างไร จะเก็บข้อมูลอะไรบ้างรวมทั้งระบุวัสดุอุปกรณ์ที่จำเป็นต้องใช้ มีอะไรบ้าง
             8. แผนปฏิบัติงาน อธิบายเกี่ยวกับกำหนดเวลาตั้งแต่เริ่มต้นจนเสร็จสิ้นการดำเนินงานในแต่ละขั้นตอน
             9. ผลที่คาดว่าจะได้รับ
             10. เอกสารอ้างอิง

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

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

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

ที่มา :https://sites.google.com/site/anichanin18/khwam-hmay/khan-txn-kar-tha-khorng-ngan

การศึกษาและกำหนดขอบเขตของปัญหา

การกำหนดขอบเขตของปัญหา

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

การกำหนดขอบเขตของการวิจัยนั้น ตามปกติจะกำหนดในเรื่องของประชากร กลุ่มตัวอย่าง และตัวแปรที่เกี่ยวข้องกับการวิจัย เช่น สถานที่วิจัย หรือระยะเวลา

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

ตัวอย่าง การเขียนขอบเขตของการวิจัย แบบเขียนเป็นข้อความรวม ๆ หรือเขียนเป็นประโยคย่อย ๆ เช่น

ตัวอย่างที่ 1 งานวิจัยเรื่อง “ทัศนคติและพฤติกรรมการใช้บริการร้านค้าปลีกแบบซุปเปอร์มาร์เก็ตของผู้บริโภคในเขตกรุงเทพมหานคร”  กำหนดขอบเขตการวิจัยดังนี้

การวิจัยในครั้งนี้กลุ่มของประชากร คือ ผู้บริโภคในเขตกรุงเทพมหานครจำนวน 5,645,834 คน โดยจะทำการเลือกกลุ่มตัวอย่าง จำนวนทั้งสิ้น 625 ตัวอย่าง ซึ่งลักษณะของกลุ่มตัวอย่างคือ ผู้บริโภคเพศชายหรือหญิง อายุตั้งแต่ 17 ปีขึ้นไป และมีรายได้เฉลี่ยต่อเดือนตั้งแต่ 3,000 บาทขึ้นไป โดยต้องเป็นผู้ที่กำลังซื้อสินค้าหรืออยู่ในบริเวณของร้านค้าปลีกแบบซุปเปอร์มาร์เก็ต ระยะเวลาทำการวิจัยตั้งแต่วันที่ 1 กุมภาพันธ์ ถึง 30 มิถุนายน 2543 รวมระยะเวลาทั้งสิ้น 151 วัน

 ตัวอย่างการเขียนขอบเขตการวิจัยแบบแยกหัวข้อกลุ่ม ตัวอย่างและตัวแปร

ตัวอย่างที่ 1  การวิจัยเรื่อง “การศึกษาความมีน้ำใจของครู ความอยากรู้อยากเห็น ความเอื้อเฟื้อ และเพทุบาย ของนักศึกษาปีที่ 1 – 4 วิทยาลัยครูนครปฐม” ได้จำกัดขอบเขตของกลุ่มตัวอย่างและตัวแปรไว้ดังนี้ (นิภา บุณยศรีสวัสดิ์. 2517.)

1. กลุ่มตัวอย่าง ในการศึกษาครั้งนี้กระทำกับกลุ่มตัวอย่างซึ่งเป็นนักศึกษาชั้นปีที่ 1 – 4 ปีการศึกษา 2516 วิทยาลัยครูนครปฐม จำนวน 400 คน เป็นชาย 206 คน หญิง 194 คน และเนื่องจากการรับนักศึกษาเข้าเรียนในระดับชั้นปีที่ 1 มีจำนวนใกล้เคียงกันทุกปี ฉะนั้น นักศึกษาในปีที่ 1 – 4 จึงมีจำนวนใกล้เคียงกัน การสุ่มตัวอย่างจึงสุ่มมาระดับละ 100 คน เท่านั้น

2. ตัวแปรที่ศึกษา

2.1 ตอนหาความสัมพันธ์ มีตัวแปร 4 ตัว คือ

– ความมีน้ำใจของครู

– ความอยากรู้อยากเห็น

– ความเอื้อเฟื้อ

– ความมีเพทุบาย

2.2 ตอนเปรียบเทียบ

ตัวแปรอิสระ

– เพศ (ชาย – หญิง)

– ระดับชั้นเรียน

ตัวแปรตาม

– ความมีน้ำใจของครู

– ความอยากรู้อยากเห็น

– ความเอื้อเฟื้อ

– เพทุบาย

ตัวอย่างที่ 2  วิทยานิพนธ์เรื่อง “ศึกษาการนำเสนอภาพยนตร์โฆษณาโทรทัศน์ของผู้กำกับ สุธน เพ็ชรสุวรรณ”  มีขอบเขตการศึกษาดังนี้ (เขมพัทธ์ พัชรวิชญ์. 2548)

  1. การศึกษาครั้งนี้จะเป็นการศึกษากรณีด้านแนวคิดในการนำเสนอในภาพยนตร์โฆษณาที่กำกับโดยนายสุธน  เพ็ชรสุวรรณ ที่ออกอากาศทางโทรทัศน์ในประเทศไทยเท่านั้น ระหว่างปี พ.ศ. 2536 – พ.ศ. 2547 รวมระยะเวลา 11 ปี
  2. ภาพยนตร์โฆษณาที่คัดเลือกในการศึกษานี้ จะคัดเลือกจากภาพยนตร์โฆษณาที่ได้รับรางวัลในงานการประกวดโฆษณายอดเยี่ยมแห่งประเทศไทย (Top Advertising Contest of Thailand Awards) งานประกวดโฆษณาภาคพื้นเอเชีย (Asia Pacific Advertising Festival) และงานเทศการประกวดโฆษณานานาชาติ เมืองคานส์ ประเทศฝรั่งเศส (Cannes Lions International Advertising) เท่านั้น

การกำหนดขอบเขตของปัญหาที่ชัดเจนและแน่นอน จะช่วยผู้วิจัยได้ดังนี้ (อรุณศรี เตชะเรืองรอง, กลุ่มสาระการเรียนรู้คณิตศาสตร์ โรงเรียนอุตรดิตถ์ จังหวัดอุตรดิตถ์)

1)  วางแผนรวบรวมข้อมูลด้วยวิธีการต่าง ๆ ที่เหมาะสม

2)  รู้ถึงเทคนิคต่างๆ ที่เหมาะสมในการเลือกกลุ่มตัวอย่าง สถิติที่ใช้ในการวิเคราะห์ข้อมูล ตลอดจนการแปลผลการวิจัย

3)  มองเห็นภาพอย่างชัดเจนว่าจะต้องทำอะไรบ้าง

ที่มา:https://rforvcd.wordpress.com/%E0%B8%AB%E0%B8%A5%E0%B8%B1%E0%B8%81%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B8%9E%E0%B8%B7%E0%B9%89%E0%B8%99%E0%B8%90%E0%B8%B2%E0%B8%99%E0%B8%87%E0%B8%B2%E0%B8%99%E0%B8%A7%E0%B8%B4%E0%B8%88%E0%B8%B1%E0%B8%A2/%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B8%81%E0%B8%B3%E0%B8%AB%E0%B8%99%E0%B8%94%E0%B8%82%E0%B8%AD%E0%B8%9A%E0%B9%80%E0%B8%82%E0%B8%95%E0%B8%82%E0%B8%AD%E0%B8%87%E0%B8%9B%E0%B8%B1%E0%B8%8D%E0%B8%AB%E0%B8%B2/

การกำหนดปัญหา

 

การกำหนดปัญหา

ระยะที่ 1 การกำหนดปัญหา

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

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

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

สรุปขั้นตอนของระยะการกำหนดปัญหา

1. รับรู้สภาพของปัญหาที่เกิดขึ้น

2. ค้นหาต้นเหตุของปัญหา รวบรวมปัญหาของระบบงานเดิม

3. ศึกษาความเป็นไปได้ของโครงการพัฒนาระบบ

4. จัดเตรียมทีมงาน และกำหนดเวลาในการทำโครงการ

5. ลงมือดำเนินการ

ที่มา: https://sites.google.com/site/ooid5705110020/wngcr-phathna-rabb-sarsnthes/1-kar-kahnd-payha

การจัดเรียงและค้นหาข้อมูล

การจัดเรียงและค้นหาข้อมูล

  การจัดเรียงหรือเรียงลำดับข้อมูล(Sorting) คือ การจัดเรียงข้อมูลให้เรียงลำดับตามเงื่อนไขที่กำหนดไว้ โดยอาจเรียงจากน้อยไปมาก หรือค่ามากไปน้อยก็ได้ การเรียงลำดับข้อมูลในระบบคอมพิวเตอร์ จะแบ่งเป็น 2 ลักษณะใหญ่ ๆ คือ 


1. การจัดเรียงลำดับข้อมูลภายใน (Internal sorting) 
  • ใช้กับข้อมูลที่มีจำนวนไม่ใหญ่กว่าเนื้อที่ในหน่วยความจำ (main memory)
  • ไม่ต้องใช้หน่วยความจำสำรอง เช่น ดิสก์, เทป เป็นต้น
2. การเรียงลำดับข้อมูลภายนอก (External sorting)
  • ใช้กับข้อมูลที่มีจำนวนใหญ่เกินกว่าที่จะเก็บลงในหน่วยความจำได้หมดภายในครั้งเดียว
  • จะใช้หน่วยความจำภายนอก เช่น  ดิสก์, เทป สำหรับเก็บข้อมูลบางส่วนที่ได้รับการเรียงลำดับข้อมูลแล้ว แล้วจึงค่อยจัดการเรียงลำดับข้อมูลในส่วนต่อไป
ประเภทของการเรียงลำดับข้อมูล

1. Insertion Sort

        การจัดเรียงแบบแทรก คือ การเรียงข้อมูลโดยนำข้อมูลที่จะทำการจัดเรียงนั้นๆ ไปจัดเรียงทีละตัว โดยการแทรกตัวที่จะเรียงไว้ในตำแหน่งที่เหมาะสมของข้อมูลที่มีการจัดเรียงเรียบร้อยแล้ว ณ ตำแหน่งที่ถูกต้อง


ขั้นตอนการทำงาน
  • เปรียบเทียบค่ากับตำแหน่งถัดไปแทน
  • สลับตำแหน่งให้อยู่ในตำแหน่งที่เหมาะสม

2. Shell Sort

        การจัดเรียงแบบเชลล์ เป็นการจัดเรียงที่อาศัยเทคนิคการแบ่งข้อมูลออกเป็นกลุ่มย่อยหลายๆ กลุ่ม แล้วจัดเรียงข้อมูลในกลุ่มย่อยๆนั้น  หลังจากนั้นก็ให้รวมกลุ่มย่อยๆ ให้ใหญ่ขึ้นเรื่อยๆ ขั้นสุดท้ายให้จัดเรียงข้อมูลทั้งหมดนั้นอีกครั้ง


ตัวอย่าง กำหนด Segment เมื่อ K=3


ขั้นตอนการทำงาน
  • โดยทั่วไปการเลือกค่า K ตัวแรกมักจะเลือกใช้ค่าเท่ากับครึ่งหนึ่งของข้อมูล เช่น ข้อมูลมี 10 ตัว K = n/2 = 10/2 = 5
  • เรียงข้อมูลทุกตัวให้เสร็จสิ้น แล้วกำหนดค่า K ใหม่ (โดยทั่วไปจะเป็นครึ่งหนึ่งของค่า K ตัวแรก เช่น K1 = 5; K2 = 5/2 = 2)
  • ถ้า K > 1 ให้ทำซ้ำ จนกระทั่งเหลือข้อมูลกลุ่มเดียว ถ้า K = 1 ให้เรียงลำดับตามปกติ
ตัวอย่างการทำงานในละรอบของ K


3. Selection Sort

        การจัดเรียงแบบเลือก เป็นวิธีการเรียงข้อมูลโดยจะเริ่มต้นค้นหาข้อมูลตัวที่น้อยที่สุดจากข้อมูลที่มีอยู่ทั้งหมด แล้วสลับที่ข้อมูลกับตัวแรก แล้วกลับไปหาข้อมูลตัวที่น้อยที่สุดในกองต่อไปสลับที่กับข้อมูลจนกว่าจะหมดกอง


ขั้นตอนการทำงาน
  • ค้นหาตัวเลขที่มีค่าน้อย/มากที่สุดตั้งแต่ตัวแรกไปจนถึงตัวสุดท้าย
  • สลับตำแหน่งตัวเลขที่มีค่าน้อย/มากที่สุด

4. Heap Sort

        ฮีปเป็นโครงสร้างข้อมูลที่มีลักษระการจัดเก็บข้อมูลแบบไบนารีทรี คือ แต่ละโหนดจะมีโหนดลูกได้ไม่เกิน 2 โหนด และการจัดเก็บข้อมูลจะต้องจัดเก็บให้เต็มทีละชั้นเรียงจากโหนดด้านซ้ายมือไปด้านขวามือเสมอ ฮีปแบ่งเป็น 2 ประเภท คือ
  • Min Heap: ที่โหนดใดๆ ก็ตามภายในฮีป ข้อมูลที่ซับทรีจะต้องมีค่ามากกว่าหรือเท่ากับข้อมูลที่ตัวมันเสมอ(รูทโหนดมีค่าต่ำที่สุด)
  •  Max Heap : ที่โหนดใดๆ ก็ตามภายในฮีป ข้อมูลที่ซับทรีจะต้องมีค่าน้อยกว่าหรือเท่ากับข้อมลูลที่ตัวมันเสมอ (รูทโหนดมคีค่าสูงที่สุด)
ขั้นตอนการทำงาน


5. Bubble Sort 

        การจัดเรียงแบบบับเบิล เป็นการจัดเรียงโดยการเปรียบเทียบค่า 2 ค่าที่ติดกัน ทำต่อเนื่องกันไปเรื่อยๆ 


ขั้นตอนการทำงาน


6. Quick Sort

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

ขั้นตอนการทำงาน
  • มีการเลือกข้อมูลตัวหนึ่งเรียกว่า Pivot ที่ใช้เป็นตัวแบ่งแยกชุดข้อมูลที่เรามีออกเป็นส่วน คือ ข้อมูลที่มีค่าน้อยกว่า Pivot และข้อมูลที่มีค่ามากกว่า Pivot
  • แบ่งข้อมูลไปเรื่อยๆ 
  • เรียงข้อมูลแต่ละส่วนย่อยๆ

        การแบ่งส่วนข้อมูลใช้หลักการ Picking the pivot คือการกำหนดค่าสมมุติที่อยู่ตรงกลาง โดยจะเลือกข้อมูลที่อยู่ตรงกลางของข้อมูลทั้งหมด มาใช้เป็นค่ากึ่งกลาง ดังนั้น ข้อมูลอื่นๆที่มีค่ามากกว่าค่าที่อยู่ตรงกลางจะอยู่กลุ่มทางขวามือ ค่าที่น้อยกว่าจะอยู่กลุ่มทางซ้ายมือ


                                      ถ้าข้อมูล < Pivot แล้ว SortLeft = SortLeft + 1
                                      ถ้าข้อมูล >= Pivot แล้ว SortRight = SortRight - 1
                                      สลับ  Pivot กับข้อมูลตัวที่ SortLeft - 1

7. Merge Sort

        การเรียงแบบผสาน (Merge Sort ) -- การทำ Merge Sort ใช้หลักการ divide-and-conquer เหมือนกับ Quick Sort มีลักษณะของการแบ่งข้อมูลออกเป็นส่วนๆ แต่กระบวนการเรียงข้อมูลนั้นจะแตกต่างไปจาก Quick sort  Quick sort กระทำการสลับข้อมูลไปพร้อมกับการแบ่งข้อมูลออกเป็นส่วนๆ แต่ merge sort นี้ กระทำการแบ่งข้อมูลออกเป็นส่วนๆก่อน แล้วค่อยเรียงข้อมูลในส่วนย่อย จากนั้นนำเอาข้อมูลส่วนย่อยที่เรียงไว้แล้ว มารวมกันและเรียงไปในเวลาเดียวกัน อัลกอริทึมจะเรียงพร้อมกับผสานข้อมูล เข้าด้วยกันจนกระทั่งข้อมูลทุกตัวรวมกันกลายเป็นข้อมูลเดียวอีกครั้ง 

ขั้นตอนการทำงาน

8. Radix Sort

        การเรียงลำดับแบบฐานเป็นการเรียงลำดับโดยการพิจารณาข้อมูลทีละหลักใช้ข้อมูลกับ Linked List
  1. เริ่มพิจารณาจากหลักที่มีค่าน้อยที่สุดก่อน นั่นคือถ้าข้อมูลเป็นเลขจำนวนเต็มจะพิจารณาหลักหน่วยก่อน
  2. การจัดเรียงจะนำข้อมูลทีละตัว แล้วนำไปเก็บไว้ที่ซึ่งจัดไว้สำหรับค่านั้น เป็นกลุ่มๆ ตามลำดับการเข้ามา
  3. ในแต่ละรอบเมื่อจัดกลุ่มเรียบร้อยแล้ว ให้รวบรวมข้อมูลจากทุกกลุ่มเข้าด้วยกัน โดยเริ่มเรียงจากกลุ่มที่มีค่าน้อยทีสุดก่อนแล้วเรียงไปเรื่อยๆ จนหมดทุกกลุ่ม
  4. ในรอบต่อไปนำข้อมูลทั้งหมดที่ได้จัดเรียงในหลักหน่วยเรียบร้อยแล้วมาพิจารณาจัดเรียงในหลักสิบต่อไป ทำไปเรื่อยๆ จนกระทั่งครบทุกหลัก

9. Bucket Sort

        สมมติว่าเรารู้ว่าขนาดของ array ที่เราต้องจัดเรียงข้อมูลมีขนาดเล็ก และแน่นอน เราอาจเลือกใช  การจัดเรียงแบบกระจาย (distribution sort) มาทำการจัดเรียงข้อมูลให้เราและ Bucket sort ก็เป็นเทคนิควิธีอีก แบบหนึ่งที่ใช้การกระจายของข้อมูลมาเป็นตัวช่วยในการจัดเรียงลองดูภาพตัวอย่างของข้อมูลที่มีอยู่ใน array 

ตัวอย่าง

10. Comb Sort

        เป็น algorithm สำหรับการจัดเรียงข้อมูลที่ปรับปรุงมาจาก bubble sort โดยกำหนดให้การเปรียบเทียบข้อมูลไม่จำเป็นที่จะต้องเป็นข้อมูลที่อยู่ติดกันเสมอไป (gap = 1) กระบวนจะเริ่มด้วยการหา gap ระหว่างข้อมูลซึ่งในทางปฏิบัตินั้นจะให้gap มีค่าเท่ากับขนาด ของ list หารด้วย 1.3 (เรียกว่า shrink factor – เป็นค่าที่ผู้ออกแบบ comb sort กำหนด) การจัดเรียงจะใช้ค่า gap นี้และจะทำการจัดเรียงด้วยการหาค่า gap ใหม่จนกว่า gap จะเท่ากับ 1 ก็ จะยุติการทำงาน