The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

ขึ้นตอนการเขียนโปรแกรม

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by psevana, 2021-06-21 02:31:22

หลักการเขียนโปรแกรม

ขึ้นตอนการเขียนโปรแกรม

บทที่ 3
ขั้นตอนการเขยี นโปรแกรม

ขัน้ ตอนการเขียนโปรแกรมออกไดเ ปน 7 ข้ันตอนดังนี้

 ขน้ั ตอนการวเิ คราะหป ญ หา (Analysis the Problem)
 ขน้ั ตอนการออกแบบโปรแกรม (Design a Program)
 ขนั้ ตอนการเขยี นโปรแกรมโดยใชภาษาใดภาษาหน่ึง (Coding)
 ขน้ั ตอนการตรวจสอบขอผิดพลาดของโปรแกรม (Testing and Debugging)
 ขั้นตอนการทดสอบความถกู ตอ งของโปรแกรม (Testing and validating)
 ขั้นตอนการทําเอกสารประกอบโปรแกรม (Documentation)
 ข้นั ตอนการบาํ รงุ รกั ษาโปรแกรม (Program Maintenance)

1. การวิเคราะหปญ หา (Analysis the Problem)

3

 สงิ่ ท่ตี อ งพจิ ารณา

 Input ? (พจิ ารณาจาก Output)
 Output? (พจิ ารณาอนั ดับแรก)
 Process (ยงั ไมตอ งสนใจตอนน)้ี

Input Process Output
Input 3 1
2

1. การวิเคราะหปญ หา (Analysis the Problem)

• การวิเคราะหป ญ หา Process
เขยี นขั้นตอนการแกปญหา
วิเคราะหผ ลลพั ธ วเิ คราะห Input

1. การวิเคราะหป ญหา (Analysis the Problem)

 ตวั อยา ง 1 ตองการหาคาคะแนนเฉลย่ี ของนักเรียนในชน้ั
 กาํ หนดวัตถุประสงค : การคํานวณหาคา คะแนนเฉลยี่
 ขอมูลเขา :

 จํานวนนักเรยี นทั้งหมด
 คะแนนของนกั เรียนแตล ะคน

 วิธกี ารประมวลผล : ใชส ูตรในการคาํ นวณ

 คะแนนเฉลีย่ = ผลรวมของคะแนนท้ังหมด
จํานวนนักเรยี นทง้ั หมด

2. การออกแบบโปรแกรม (Design a Program)

 คอมพิวเตอรจ ะมีการทาํ งานตามคําสั่งในโปรแกรม เปน ขนั้ ๆ ไปอยางมีลําดับ
ดังนน้ั จึงตองเขียนคําสงั่ ใหละเอียดชัดเจน และตคี วามไดอ ยา งเดยี วเทา น้ัน ซ่งึ จะ
เรียกลําดับขน้ั ตอนในการสงั่ งานนว้ี า อัลกอรทิ ึม (Algorithm)

 ตวั อยา งของอลั กอรทิ ึมเชน

 อัลกอรทิ ึมการสระผม
 อัลกอรทิ ึมคํานวณ 8 + 10 / 5 - 6 * 3
 อลั กอริทึมคํานวณการหาพืน้ ที่สเ่ี หลีย่ มคางหมู
 อลั กอริทึมการเขยี นและสงจดหมาย

2. การออกแบบโปรแกรม (Design a Program)

 เครือ่ งมือทช่ี ว ยอธบิ ายการทํางาน เพอื่ ชว ยในการเขียนโปรแกรมดงั น้ี

 ผังงาน (Flowchart) : ซ่ึงจะแสดงถงึ ขน้ั ตอนการแกปญหาท่ลี ะขั้นตอนในลกั ษณะ ของ
รูปภาพทาํ ใหสามารถอา น และทาํ ความเขาใจไดง าย

 รหัสจําลอง (Pseudo-code) : จะมีรปู แบบเปนภาษาพูดงา ย ๆ จะเปน ภาษาองั กฤษ
หรอื ภาษาไทยก็ได โดยจะแสดงขน้ั ตอนการแกปญหาเปน ขัน้ ตอนหลกั ๆ แตไ มต อ ง
เจาะเขาไปในรายละเอียดของการทาํ งานในแตล ะสว น

2. การออกแบบโปรแกรม (Design a Program)

 แผนภมู โิ ครงสราง (Structure Charts) : จะมลี ักษณะการแบง งานใหญออกเปน โมดูล
ยอ ย ๆ ซง่ึ เรยี กวา การออกแบบจากบนลงลา ง (Top-Down Design) และแตละโมดูล
ยอยกย็ ังสามารถแตกออกไดอ กี จนถงึ ระดับทล่ี า งสดุ ที่สามารถเขียนโปรแกรมไดอยา ง
งาย

 ฮโิ ปชารต (HIPO Chart : Hierarchy Input/Output Chart) : จะมีการบอกวา ขอ มลู
เขาคืออะไร มโี ปรเซสทําอะไรบาง และมผี ลลพั ธอะไรบาง แตจ ะเหน็ ภาพไดไ มชดั เจน
เทากบั แผนภมู ิโครงสราง

โครงสรางโปรแกรม

 การใชโ ครงสรางโปรแกรม ชว ยใหการเขียนโปรแกรมมีประสิทธภิ าพและลด
ขอ ผดิ พลาด ซ่งึ การเขยี นแบบโครงสรางสามารถเขยี นได 2 แบบคือ

 การออกแบบจากบนลงลา ง (Top-Down Design)
 การออกแบบสวนจําเพาะ หรือ โมดูล (Modular design)

 ทฤษฏีโครงสรา ง (Structure Theorem)

 เปน ทฤษฏที ร่ี ะบวุ าโปรแกรมคอมพิวเตอรทุกโปรแกรมสามารถเขียนโดยใชโครงสรา ง
ควบคุมพ้ืนฐาน 3 แบบ อันไดแ ก แบบเรียงลําดับ (Sequence) แบบทางเลอื ก
(Selection) และแบบวนซํ้า (Repetition)

3. การเขียนโปรแกรมโดยใชภ าษาใดภาษาหน่ึง (Coding)

 หลงั จากที่ผานขน้ั ตอนทสี่ องคือการออกแบบโปรแกรมแลว ขัน้ ตอ ไปคอื การเขยี นโปรแกรม
ซ่งึ เปน นาํ อลั กอริทึมท่ีสรา งจากขึน้ ตอนการออกแบบ มาแปลใหเปนโปรแกรมคอมพวิ เตอร
นัน่ เอง ซึ่งในการเขยี นโปรแกรมคอมพวิ เตอรนน้ั สามารถเลือกใชไดห ลายภาษา ตัวอยาง
ของภาษาคอมพิวเตอรไดแก ภาษาเบสกิ (BASIC) ภาษาโคบอล(COBOL) ภาษาปาสคาล
(PASCAL) ภาษาซ(ี C ) ฯลฯ แตล ะภาษาก็จะมีรปู แบบ โครงสรางหรือไวยากรณของภาษา
ที่แตกตา งกนั ออกไป

4. การตรวจสอบขอ ผิดพลาดของโปรแกรม
(Testing and Debugging the Program)

 ขอผิดพลาดท่เี กดิ ขึ้นเราสามารถแบงได 3 ชนดิ ดังนี้

Syntax Error
Run-time Error
Logical Error

4. การตรวจสอบขอผดิ พลาดของโปรแกรม
(Testing and Debugging the Program)

• Syntax Error

▫ เปนขอผิดพลาดจากการใชไ วยากรณข องภาษาทีผ่ ิดหรือ อาจเกิดจากการสะกด
คาํ ผดิ เปน ตน ขอ ผดิ พลาดที่งา ยท่ีสดุ ตอการหาและการแกไ ข

• Run-time Error

เปนขอผิดพลาดท่ีทาํ ใหเ กดิ ความผดิ ปกตทิ างดา นการทํางานของโปรแกรมใน
ระหวางการปฏบิ ัตงิ าน(Execution) โดยทั่วไปมกั เกดิ จากความรูเทา ไมถงึ การณ
เชน การลงโปรแกรมเพื่อใชในการทํางานไมค รบถวน เปน ตน

4. การตรวจสอบขอผิดพลาดของโปรแกรม
(Testing and Debugging the Program)

 Logical Error

เกดิ จากการตีความหมายของปญหาผิดไป เปนขอผดิ พลาดท่ีหาและแกไ ขยากท่สี ดุ
ตอ งทาํ การไลโ ปรแกรมที่ละคาํ สงั่ เพอ่ื หาขอ ผิดพลาดนน้ั

4. การตรวจสอบขอ ผิดพลาดของโปรแกรม
(Testing and Debugging the Program)

 ข้ันตอนการตรวจสอบความผดิ พลาดของโปรแกรมมีดงั น้ี
 ตรวจสอบดวยตนเอง (Self Checking)

 เปน ขนั้ ตอนของการเขยี นและไลโปรแกรมทลี ะบรรทัด

 ตรวจสอบดวยการแปลโปรแกรม (Translating)

 เปน ขั้นตอนทใ่ี หโ ปรแกรมแปลเปนภาษาเคร่อื ง โดยอาศยั ตวั แปลภาษาทเ่ี รยี กวา
คอมไพเลอร ซึง่ ถา พบขอผิดพลาดจะแจงขอความไดแอคนอสติก (Diagnostic
Message) เพอื่ ใหท าํ การแกไขใหถกู ตอ ง แลวจึงคอ ยสั่งใหแปลใหม จนกวาจะ
ถกู ตองแลวสามารถใชงานโปรแกรมได

5. การทดสอบความถูกตอ งของโปรแกรม
(Testing and Validating)

 ขน้ั ตอนการทดสอบความถกู ตองของโปรแกรม สามารถทาํ ไดด งั นี้

 กรณีทีข่ อมลู ถกู ตอง (Valid case)
 การใชขอบเขตและความถกู ตอ งของขอ มลู (Range check and Completeness

check)
 การใชความสมเหตสุ มผล (Consistency Check)
 ขอ มลู ทเ่ี ปนตัวเลขและตัวอกั ษร (Correct No. and Type character check)
 ขอ มลู เปนไปตามขอ กําหนด (Existence Check)

5. การทดสอบความถกู ตองของโปรแกรม
(Testing and Validating)

 ขน้ั ตอนการทดสอบความถกู ตองของโปรแกรม สามารถทําไดด งั น้ี
 กรณีท่ีขอ มูลถกู ตอง (Valid Case) ทดสอบโดยใสขอ มลู ทถ่ี ูกตอ งลงไปในโปรแกรม

เพือ่ ทดสอบผลลพั ธวาตรงกบั ท่ตี อ งการหรือไม

 การใชขอบเขตและความถูกตองของขอ มลู (Range check and
Completeness check) เปน การเชค็ ขอบเขตขอมูล

 การใชค วามสมเหตสุ มผล (Consistency Check) โดยดจู ากผลลัพธที่ไดวา ควร

จะไดตามขอ มลู ท่ีกรอกเขา หรอื ไม

5. การทดสอบความถูกตองของโปรแกรม
(Testing and Validating)

 ขอ มูลทเี่ ปน ตัวเลขและตัวอักษร (Correct No. and Type character
check) ตรวจสอบวาถา เปนฟลดท ี่เปนตวั เลขอยางเดยี ว เชน จํานวนเงิน กค็ วรจะ

ปอ นขอมลู ไดเ ฉพาะตวั เลขเทา นนั้

 ขอมลู เปน ไปตามขอ กาํ หนด (Existence Check) ขอมลู ที่ปอนตอ งเปนไป

ตามทก่ี าํ หนดไวแนน อนแลว เทา นั้น

5. การทดสอบความถูกตองของโปรแกรม
(Testing and Validating)

 ในการทดสอบโปรแกรมนยี้ งั สามารถแบง ไดอีก 2 แบบ

Program Testing

 เปน ทดสอบโปรแกรมแตละโปรแกรมตา งหาก

 System Testing

 เปนการทดสอบโปรแกรม เมอื่ มกี ารรวมโปรแกรมหลาย ๆ โปรแกรมเขาดว ยกัน ซง่ึ
สวนมากจะพบของผดิ พลาดในข้ันตอนนมี้ ากทส่ี ุด เนอื่ งจากโปรแกรมเมอรแตละคน
อาจมีความเขาใจแตกตางกนั

6. การทําเอกสารประกอบโปรแกรม
(Documentation)

 เอกสารประกอบโปรแกรมจะมอี ยู 2 แบบ

 เอกสารประกอบโปรแกรมสําหรับผูใช (User Documentation)
 โปรแกรมนที้ ําอะไร ใชงานในดานไหน
 ขอ มลู เขามลี กั ษณะอยา งไร
 ขอมลู ออกหรือผลลพั ธม ลี ักษณะอยางไร
 การเรยี กใชโปรแกรมทําอยางไร
 คาํ สัง่ หรอื ขอ มูล ท่จี าํ เปนใหโปรแกรมเริ่มทาํ งาน มีอะไรบา ง
 อธบิ ายเกย่ี วกับประสทิ ธภิ าพ และความสามารถของโปรแกรม

6. การทาํ เอกสารประกอบโปรแกรม
(Documentation)

 เอกสารประกอบโปรแกรมสาํ หรบั ผูเ ขียนโปรแกรม (Technical Documentation)
จะแบง ออกไดเปน 2 สวน

 สว นทเ่ี ปน คําอธิบายหรอื หมายเหตใุ นโปรแกรม
 ซง่ึ สวนใหญม ักจะเขียนแทรกอยูในโปรแกรม อธบิ ายการทาํ งานของโปรแกรมเปนสวน


 สว นอธิบายดาน Technical
 ซงึ่ สวนน้มี กั จะทาํ เปน เอกสารแยกตางหากจากโปรแกรม ซึง่ อธิบายในรายละเอยี ดที่
มากขึ้น เชนช่อื โปรแกรมยอ ยตาง ๆ มอี ะไรบา ง แตล ะโปรแกรมยอยทําหนาทอี่ ะไร
และคําอธบิ ายยอ ๆ เกี่ยวกับวตั ถุประสงคของโปรแกรมเปนตน

7. การบาํ รุงรักษาโปรแกรม (Program
Maintenance)

 เม่อื โปรแกรมผานการตรวจสอบตามขน้ั ตอนเรียบรอ ยแลว และถูกทาํ มาใหผ ูใช(user) ไดใช
งาน ในชว งแรกผใู ชอ าจจะยังไมค ุนเคย ก็อาจทาํ ใหเกดิ ปญหาขน้ึ มาบา ง ดังนน้ั จึงตองมผี ู
คอยควบคุมดแู ลและคอยตรวจสอบการทาํ งาน ซ่งึ เมื่อมีการใชง านไปนาน ๆ ก็อาจจะตอ ง
มกี ารปรับปรงุ แกไ ขโปรแกรมใหเหมาะกับเหตุการณ และความตองการของผใู ชท่ี
เปล่ยี นแปลงไป


Click to View FlipBook Version