บทที่ 6
หลักการเขียนผังงานระบบ
วัตถุประสงค์เชิงพฤติกรรม (Behavioral Objectives)
หลังจากศึกษาจบบทเรียนนี้แล้ว นักศึกษาจะมีความสามารถดังนี้
(After studying this chapter, you will be able to)

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

 

 

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

ประเภทของผังงาน
โดยทั่วไปผังงานคอมพิวเตอร์แบ่งเป็น 2 ประเภทใหญ่ 

  1. ผังงานระบบ(System  Flowchat)

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

  1. ผังงานโปรแกรม(Program Flowchat) หรือเรียกสั้น ๆ ว่า ผังงาน

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


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

ตัวอย่าง ผังงานระบบและผังงานโปรแกรมของการคำนวณพื้นที่สามเหลี่ยม  100  รูป

ผังงานระบบ                                                                                                                ผังงานโปรแกรม

 

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

ข้อจำกัดของผังงานระบบ
ู้เขียนโปรแกรมบางคนไม่นิยมการเขียนผังงานระบบก่อนที่จะเขียนโปรแกรมเพราะ
เสียเวลาในการเขียนเป็นรูปภาพหรือสัญลักษณ์ต่าง ๆ นอกจากนี้ยังมีเหตุผลอื่น ๆ ได้แก่
1 ผังงานระบบเป็นการสื่อความหมาระหว่างบุคคลต่อบุคคลมากกว่าที่จะสื่อความหมายระหว่างบุคคลกับเครื่อง เพราะผังงานระบบไม่ขึ้นอยู่กับภาษาคอมพิวเตอร์ภาษาใดภาษาหนึ่ง ทำให้เครื่องไม่สามารถรับและเข้าใจว่าในผังงานระบบนั้นต้องการให้ทำอะไร
2 บางครั้งเมื่อพิจารณาจากผังงานระบบ จะไม่สามารถทราบได้ว่า ขั้นตอนการทำงานใดสำคัญกว่ากัน เพราะทุก ๆ ขั้นนอนจะใช้รูปาภพหรือสัญลักษณ์ในลักษณะเดียวกัน
3การเขียนผังงานระบบเป็นการสิ้นเปลือง เพราะจะต้องใช้กระดาษและอุปกรณ์อื่น ๆ ประกอบการเขียนภาพ บางครั้งการเขียนผังงานระบบอาจจะต้องใช้กระดาษมากกว่า 1 แผ่นทั้ง ๆ ที่การอธิบายงานเดียวกันจะใช้เนื้อที่เพียง 3-4 บรรทัดเท่านั้น
4 ผังงานระบบจะมีขนาดใหญ่ ถ้าโปรแกรมที่พัฒนาเป็นงานใหญ่ ทำให้ผังงานระบบแลดูเทอะทะไม่คล่องตัว และถ้ามีการปรับเปลี่ยนผังงานระบบจะทำได้ยาก บางครั้งอาจจะต้องเขียนผังงานขั้นใหม่
5 ในผังงานระบบจะบอกขั้นตอนการปฏิบัติงานว่าเป็นลำดับอย่างไร ปฏิบัติงานอะไรแต่จะไม่ระบุให้ทราบว่าทำไมจึงต้องเป็นลำดับและต้องปฏิบัติงานอย่างนั้น
6 ในภาษาคอมพิวเตอร์ที่ใช้กันในปัจจุบัน เช่น ภาษาซี ผังงานระบบไม่สามารถแทนลักษณะคำสั่งในภาษาได้ชัดเจน ตรงไปตรงมา
สัญลักษณ์ที่ใช้ในการเขียนผังงานระบบ
การเขียนผังงานระบบต้องใช้สัญลักษณ์ต่าง ๆ นำมาเรียงกัน เพื่อแสดงลำดับขั้นตอนการทำงาน โดยมีลูกศรเชื่อมระหว่างภาพต่าง ๆ สัญลักษณ์ที่ใช้ในการเขียนผังงานระบบที่นิยมใช้กันนั้นเป็นสัญลักษณ์ของหน่วยงานสถาบันมาตรฐานแห่งชาติสหรัฐอเมริกา (American National Standard Institute : ANSI) และองค์การมาตรฐานนานาชาติ
(International Standard Organization : ISO)หน่วยงานดังกล่าว ทำหน้าที่รวบรวมและกำหนดสัญลักษณ์มาตรฐานที่จะใช้เขียนผังงานระบบ ดังนี้
ตารางที่ 6.1 แสดงสัญลักษณ์และความหมายของผังงานระบบ

ตารางที่ 6.1 แสดงสัญลักษณ์และความหมายของผังงานระบบ

สัญลักษณ์

ความหมาย

ตัวอย่างการใช้

คำอธิบาย

แสดงการเริ่มต้น หรือการสิ้นสุดของการเขียนผังงานระบบ (Terminal Interrupt)

1 เริ่มผังงานระบบ
2 จบผังงานระบบ

 

การรับข้อมูลหรือแสดงข้อมูล (Input Output Media)

1 รับ(อ่าน) ค่า A โดยไม่ระบุสื่อที่บันทึกค่า A
2แสดงค่า B โดยไม่ระบุสื่อ

การรับข้อมูลหรือแสดงข้อมูลโดยใช้บัตรเจาะรูเป็นสื่อ(Punch card)

แผนผังลำดับงาน: บัตร: READ A 

รับ (อ่าน)ค่า A ที่บันทึกบนบัตร 1 ใบ

การรับข้อมูลหรือแสดงข้อมูลโดยใช้เทปกระดาษ (Punch Tape)

อ่านค่า ID ที่บันทึกบนเทปกระดาษ

 

การรับข้อมูลหรือ
แสดงข้อมูลโดยใช้
เทปแม่เหล็กเป็นสื่อ
(Magnetic
Tape)

 

 

 

 

สัญลักษณ์

ความหมาย

ตัวอย่างใช้

คำอธิบาย

 

การแสดงข้อมูลหรือผลลัพธ์พิมพ์ทางเครื่องพิมพ์ลงบนกระดาษต่อเนื่อง (Continuous Paper)

แผนผังลำดับงาน: เอกสาร: WRITE A

ให้พิมพ์ค่า A ทางกระดาษต่อเนื่อง

การแสดงผลลัพธ์ทางจอภาพ (Display)

รูปห้าเหลี่ยม: SHOW A

แสดงค่า A ทางจอภาพ

 

 

แสดงผลการประมวลเช่น การคำนวณ หรือการกำหนดค่า

1 คำนวณค่า A บวกค่า B
2 กำหนดให้Sum=
0

เส้นแสดงทิศทางสำคัญของการทำงานตามปลายลูกศร (Flow Line)

 

 

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

หลังจากพิมพ์ค่าA แล้งให้ทำตามที่จุดต่อเนื่องชื่อ ซึ่งอยู่ในหน้าเดียวกัน

แสดงจุดต่อเนื่องที่อยู่คนละหน้า (Off-Page Connector)

หลังจากกำหนดค่า A=3 แล้วให้ไปทำตามจุดต่อเนื่องชื่อ B ซี่งไม่ได้อยุ่หน้าเดียวกัน

การอธิบายส่วนใดส่วนหนึ่งในผังงานระบบเพิ่มเติมหรือเป็นการหมายเหตุ (Annotation or Comment)

ค่า A คือค่าของ AGE

 

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

 

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

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

 

แบบทดสอบและกิจกรรมการฝึกทักษะ
บทที่ 6  หลักการเขียนผังงานระบบ
ตอนที่ 1

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

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

3.  ผลลัพธ์ที่ต้องแสดง หมายถึง อะไร
ตอบ  การวิเคราะห์ลักษณะของงาน  หรือรูปแบบผลลัพธ์ที่ต้องการให้คอมฯแสดงออกมาว่าควรจะมีลักษณะอย่างไร  มีรายละเอียดที่ต้องการให้แสดงในรายงานมากน้อยเพียงใด

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

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

 

คำศัพท์
บทที่ 6  หลักการเขียนผังงานระบบ

System Flowchart

ผังงานระบบ

Program Flowchart

ผังงานโปรแกรม

Process

วิธีการประมวลผล

Varialble

การกำหนดชื่อตัวแปร

Flowchart Worksheet

กระดาษที่มีแบบฟอร์มมาตรฐาน

Work Distribution Chart

แผนภาพการแจกจ่ายงาน

Time Schedule and Time Table

ปฏิทินการปฏิบัติงาน

Network Analysis

การวิเคราะห์ข่ายงาน

Critical Path

การคำนวณระยะเวลาตั้งแต่เริ่มต้นกิจกรรมแรกไปจนเสร็จสิ้นกิจกรรม