🌐ความหมายของผังงาน (Flowchart)
• ผังงาน คือ การเขียนอธิบายขั้นตอนวิธีการทำงานในลักษณะของ รูปภาพ
• ผังงาน คือ แผนภาพที่มีการใช้สัญลักษณ์รูปภาพและลูกศรที่แสดงถึงขั้นตอนการทำงานของโปรแกรมหรือระบบทีละขั้นตอน รวมไปถึงการไหลของข้อมูลตั้งแต่แรก จนได้ผลลัพธ์ตามที่ต้องการ
• ผังงาน เป็นเครื่องมือหนึ่งของการออกแบบโปรแกรมที่เป็นที่นิยมใช้ เนื่องจากมีการใช้สัญลักษณ์ในลักษณะของรูปภาพ ทำให้สามารถเห็นลำดับขั้นตอนวิธีการทำงานได้ชัดเจนกว่าการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความ
ผังงาน เป็นการอธิบายลำดับวิธีการทำงาน โดยใช้สัญลักษณ์ที่มีรูปร่างต่าง ๆ โดยมีความหมายที่ตกลงกัน ควบคู่ไปกับการกำหนดทิศทางด้วยเส้นที่มีลูกศร เพื่อแสดงการไหลของข้อมูลหรือลำดับการทำงาน โดยมีตำแหน่งเริ่มของวิธีการเพียงตำแหน่งเดียวและตำแหน่งสิ้นสุดการทำงานเพียงจุดเดียวเช่นกัน ซึ่งผังงานสามารถจำแนกได้เป็น 2 ประเภท คือ
1. ผังงานระบบ (System Flow chat)
เป็นผังงานที่แสดงถึงขั้นตอนการทำงานภายในระบบหนึ่ง ๆ โดยจะแสดงถึงความเกี่ยวข้องของส่วนที่สำคัญต่าง ๆ ในระบบนั้น เช่น เอกสารเบื้องต้น หรือสื่อบันทึกข้อมูลที่ใช้อยู่เป็นอะไร และผ่านไปยังหน่วยงานใด มีกิจกรรมอะไรในหน่วยงานนั้น แล้วจะส่งต่อไปหน่วยงานใด เป็นต้น ดังนั้นผังงานระบบอาจเกี่ยวข้องกับคน วัสดุ และเครื่องจักร ซึ่งแต่ละจุดจะประกอบไปด้วย การนำข้อมูลเข้า วิธีการประมวลผลและการแสดงผลลัพธ์ (Input – Process – Output) ว่ามาจากที่ใดอย่างกว้าง ๆ โดยจะไม่บอกรายละเอียดของการปฏิบัติมากนัก จึงไม่สามารถเขียนโปรแกรมจากผังงานระบบได้
2. ผังงานโปรแกรม(Program Flow chat) หรือเรียกสั้น ๆ ว่า ผังงาน
ผัง งานประเภทนี้แสดงถึงขั้นตอนของคำสั่งที่ใช้ในโปรแกรม ผังงานนี้อาจสร้างจากผังงานระบบโดยผู้เขียนผังงานจะดึงเอาแต่ละจุดที่เกี่ยว ข้องการทำงานของเครื่องคอมพิวเตอร์ที่ปรากฏในผังงานระบบมาเขียน เพื่อให้ทราบว่าถ้าจะใช้คอมพิวเตอร์ทำงานในจุดนั้นเพื่อให้ได้ผลลัพธ์ที่ตาม ต้องการ ควรที่จะมีขั้นตอนคำสั่งอย่างไร และจะได้นำมาเขียนโปรแกรมคอมพิวเตอร์ทำงานต่อไป
⛽หลักเกณฑ์ในการวิเคราะห์งาน
การวิเคราะห์งานหรือการวิเคราะห์ปัญหา นับว่าเป็นหัวใจสำคัญของการเขียนโปรแกรมหรือชุดคำสั่งต่าง ๆ เพื่อสั่งให้คอมพิวเตอร์ทำงาน การวิเคราะห์งานเป็นการศึกษาถึงลักษณะและรายละเอียดของปัญหาเกี่ยวกับงานที่ ต้องการเขียนโปรแกรมเข้าเครื่องคอมพิวเตอร์นำมาศึกษาวิเคราะห์และตีความ เพื่อช่วยให้เข้าใจง่ายนั้นได้ดียิ่งขึ้นเช่น ต้องการให้เครื่องคอมพิวเตอร์ทำงานอะไร ลักษณะผลลัพธ์ที่ต้องการแสดง วิธีการประมวลผลที่ต้องใช้ และข้อมูลที่จะต้องป้อนเข้าไป
⚓หลักการจัดสัญลักษณ์และทิศทางของผังงาน
การเขียนผังงานอาจจะเขียนลงในกระดาษที่มีแบบฟอร์มมาตรฐานที่เรียกว่า Flowchart Worksheet ซึ่งจะช่วยให้เขียนผังงานได้สะดวกขึ้น ประหยัดเนื้อที่ ง่ายต่อการติดตามจุดต่อและดูเรียบร้อย หรือจะใช้กระดาษธรรมดาเขียนก็ได้ การเขียนรูปหรือสัญลักษณ์ต่าง ๆ ในผังงานระบบ จะใช้ Flowchart Template ซึ่งเป็นแผ่นพลาสติกที่มีช่องเจาะเป็นรูปสัญลักษณ์ต่าง ๆ ของผังงานเข้าช่วยก็ได้ ปัจจุบันมีโปรแกรมคอมพิวเตอร์ที่ใช้เขียนผังงานระบบที่มีความสวยงามและเป็น มาตรฐานมากยิ่งขึ้น ซึ่งผังงานเป็นการสื่อสารที่ต้องการให้ผู้อื่นสามารถรับรู้และเข้าใจการ วิเคราะห์แก้ปัญหาตรงกัน เหมาะสำหรับการนำผังงานกลับมาแก้ไขปรับปรุงในภายหลัง โดยมีหลักการจัดสัญลักษณ์และทิศทางของข้อมูลในผังงาน ดังนี้
1. ผังงานต้องชัดเจน และดูง่าย
2. ต้องมีจัดเริ่มต้นและจุดสิ้นสุดเพียงอย่างละจุดเท่านั้น
3. ทิศทางของการทำงานต้องมีทิศทางจากด้านบนลงสู่ด้านล่าง หรือจากทางด้านซ้ายเดินทางไปทางด้านขวาเท่านั้น
4. สัญลักษณ์ที่ต้องมีการทดสอบในทางตรรกะ ต้องมีคำตอบที่ถูกต้องที่สามารถทำให้โปรแกรมดำเนินต่อไปได้
5. ลูกศรแต่ละเส้นที่บ่งบอกทิศทาง ต้องไม่ตัดหรือทับเส้นทางกัน
6. ผังงานที่มีขั้นตอนการคำนวณประมวลผลควรให้อยู่หน้าเดียวกัน จนจบการคำนวณนั้น ๆ หากหลีกเลี่ยงไม่ได้ เพราะผังงานมีความซับซ้อนมากหรือมีขั้นตอนการทำงานที่อยู่ในตำแหน่งที่ห่างกันมาก ควรใช้สัญลักษณ์เพื่อเชื่อมโยงให้เข้าใจได้ง่ายขึ้น
7. คำอธิบายในกรอบภาพ ควรเขียนเชิงสัญลักษณ์ที่สั้นและเข้าใจง่าย
8. ผังงานที่ดีควรจัดเป็นระเบียบ สะอาด และเขียนเลขหน้ากำกับ ชื่อผู้เขียน วันที่เขียน เพื่อจะได้ไม่สับสน หากเกิดการสลับหน้าของผังงานและการปรับปรุง (Update) ผังงานในภายหลัง
วิธีการเขียนผังงานที่ดี
• ทุกผังงานต้องมีจุดเริ่มต้นและจุดสิ้นสุดเพียงอย่างละหนึ่งแห่งเท่านั้น
• ทุกแผนภาพต้องมีลูกศรแสดงทิศทางเข้าออก
• ใช้สัญลักษณ์ตามที่กำหนดไว้
• สัญลักษณ์จุดเริ่มต้นมีเฉพาะลูกศรชี้ทิศทางออก
• สัญลักษณ์จุดสิ้นสุดมีเฉพาะลูกศรชี้ทิศทางเข้า
• สัญลักษณ์การตัดสินใจมีลูกศรชี้เข้า 1 ทิศทาง และชี้ออก 2 ทิศทาง คือ กรณีที่ผลที่ได้จากการตัดสินใจเป็นจริง หรือ เป็นเท็จ
• ใช้ลูกศรแสดงทิศทางการไหลของข้อมูลจากบนลงล่างหรือซ้ายไปขวา
• คำอธิบายในภาพควรสั้นกระทัดรัด และเข้าใจได้ง่าย
• ไม่ควรโยงเส้นเชื่อมผังงานที่อยู่ไกลมาก ๆ ควรใช้สัญลักษณ์จุดเชื่อมต่อแทน
• เส้นของลูกศรที่ใช้บอกทิศทางของลำดับขั้นตอนวิธีการทำงาน ไม่ควรเขียนตัดกันหรือทับกัน
• ผังงานควรมีการทดสอบความถูกต้องของการทำงานก่อนนำไปเขียนโปรแกรม
ประโยชน์ของผังงาน
1. ทำให้มองเห็นรูปแบบของงานได้ทั้งหมด โดยใช้เวลาไม่มาก
2. การเขียนผังงานเป็นสากลสามารถนำไปเขียนโปรแกรมได้ทุกภาษา
3. สามารถตรวจสอบข้อผิดพลาดของโปรแกรมได้อย่างรวดเร็ว
4. หากมีการพัฒนาระบบงานในลำดับต่อไป สามารถทำได้อย่างรวดเร็ว โดยศึกษาจากผังงาน จะสามารถศึกษาได้อย่างรวดเร็ว และเข้าใจง่ายกว่าการศึกษาจากโปรแกรม
ข้อจำกัดของผังงาน
ผู้เขียนโปรแกรมบางคนไม่นิยมการเขียนผังงานระบบก่อนที่จะเขียนโปรแกรมเพราะเสียเวลาในการเขียนเป็นรูปภาพหรือสัญลักษณ์ต่าง ๆ นอกจากนี้ยังมีเหตุผลอื่น ๆ ได้แก่
1. ผังงานเป็นการสื่อความหมายระหว่างบุคคลต่อบุคคล มากกว่าที่จะสื่อความหมายระหว่างบุคคลกับเครื่อง เพราะผังงานไม่ขึ้นอยู่กับภาษาคอมพิวเตอร์ภาษาใดภาษาหนึ่ง ทำให้เครื่องไม่สามารถรับและเข้าใจว่าในผังงานนั้นต้องการให้ทำอะไร
2. บางครั้งเมื่อพิจารณาจากผังงาน จะไม่สามารถทราบได้ว่า ขั้นตอนการทำงานใดสำคัญกว่ากัน เพราะทุก ๆ ขั้นตอนจะใช้รูปภาพหรือสัญลักษณ์ในลักษณะเดียวกัน
3. การเขียนผังงานเป็นการสิ้นเปลือง เพราะจะต้องใช้กระดาษและอุปกรณ์อื่น ๆ ประกอบการเขียนภาพ บางครั้งการเขียนผังงานอาจจะต้องใช้กระดาษมากกว่า 1 แผ่นทั้ง ๆ ที่การอธิบายงานเดียวกันจะใช้เนื้อที่เพียง 3-4 บรรทัดเท่านั้น
4. ผังงานจะมีขนาดใหญ่ ถ้าโปรแกรมที่พัฒนาเป็นงานใหญ่ ทำให้ผังงานแลดูเทอะทะไม่คล่องตัว และถ้ามีการปรับเปลี่ยนผังงานจะทำได้ยาก บางครั้งอาจจะต้องเขียนผังงานขึ้นใหม่
5. ในผังงานจะบอกขั้นตอนการปฏิบัติงานว่าเป็นลำดับอย่างไร ปฏิบัติงานอะไร แต่จะไม่ระบุให้ทราบว่าทำไมจึงต้องเป็นลำดับและต้องปฏิบัติงานอย่างนั้น
6. ในภาษาคอมพิวเตอร์ที่ใช้กันในปัจจุบัน เช่น ภาษาไพทอน ภาษาจาวาสคริป ภาษาจาวา ภาษาพีเฮชพี ผังงานไม่สามารถแทนลักษณะคำสั่งในภาษาได้ชัดเจน ตรงไปตรงมา
👻กิจกรรม 1.2 เบื้องต้นกับ Flow Chart
1. ผังงาน Flow Chart นักเรียนจะให้ความหมายของคำนี้ว่าอย่างไร
2. ผังงานที่ได้นักเรียนได้เรียนรู้หรือได้หาความรู้เพิ่มเติมมา สามารถแบ่งออกได้เป็นกี่ประเภท อะไรบ้าง
3. ผังงานที่ดีควรมีลักษณะอย่างไรบ้าง
4. ประโยชน์ของผังงานมีอะไรบ้าง
5. ข้อจำกัดของผังงานมีอะไรบ้าง