ขั้นตอนการพัฒนาโปรแกรม
1. กำหนดปัญหาและวิเคราะห์ปัญหา (Problem Definition and Problem Analysis)
2. เขียนผังงานและซูโดโค้ด (Pseudocoding)
3. เขียนโปรแกรม (Programming)
4. ทดสอบและแก้ไขโปรแกรม (Program Testing and Debugging)
5. ทำเอกสารและบำรุงรักษาโปรแกรม (Program Documentation and Maintenance)
2. เขียนผังงานและซูโดโค้ด (Pseudocoding)
3. เขียนโปรแกรม (Programming)
4. ทดสอบและแก้ไขโปรแกรม (Program Testing and Debugging)
5. ทำเอกสารและบำรุงรักษาโปรแกรม (Program Documentation and Maintenance)
1. กำหนดปัญหาและวิเคราะห์ปัญหา (Problem Definition and Problem Analysis) ประกอบด้วยขั้นตอนต่างๆ ดังนี้
1.กำหนดวัตถุประสงค์ของงาน เพื่อพิจารณาว่าโปรแกรมต้องทำการประมวลผลอะไรบ้าง
2. พิจารณาข้อมูลนำเข้า เพื่อให้ทราบว่าจะต้องนำข้อมูลอะไรเข้าคอมพิวเตอร์ ข้อมูลมีคุณสมบัติเป็นอย่างไร ตลอดจนถึงลักษณะและรูปแบบของข้อมูลที่จะนำเข้า
3. พิจารณาการประมวลผล เพื่อให้ทราบว่าโปรแกรมมีขั้นตอนการประมวลผลอย่างไรและมีเงื่อนไปการประมวลผลอะไรบ้าง
4. พิจารณาข้อสนเทศนำออก เพื่อให้ทราบว่ามีข้อสนเทศอะไรที่จะแสดง ตลอดจนรูปแบบและสื่อที่จะใช้ในการแสดงผล
2. เขียนผังงานและซูโดโค้ด (Pseudocoding)
หลังจากที่ได้วิเคราะห์ปัญหาแล้ว ขั้นตอนต่อไปจะต้องใช้เครื่องมือช่วยในการออกแบบโปรแกรม ซึ่งยังไม่ได้เขียนเป็นโปรแกรมจริงๆ แต่จะช่วยให้เขียนโปรแกรมได้ง่ายขึ้น และทำให้ผู้อื่นนำโปรแกรมของเราไปพัฒนาต่อได้ง่ายขึ้น และทำให้ผู้อื่นนำโปรแกรมของเราไปพัฒนาได้ง่ายขึ้น โดยเขียนเป็นลำดับขั้นตอนการทำงานของโปรแกรมที่เรียกว่า อัลกอริทึม (Algorithm) ซึ่งจะแสดงขั้นตอนการแก้ปัญหา โดยใช้ประโยคที่ชัดเจน และมีรายละเอียดการทำงานพอสมควรเพียงพอที่จะนำไปเขียนเป็นโปรแกรมให้ทำงานจริง โดยอัลกอริทึมนั้นอาจเขียนให้อยู่ในรูปของรหัสจำลองหรือ ซูโดโค้ด (Pseudo-code) หรือเขียนเป็น ผังงาน (Flowchart) ก็ได้ โดย ซูโดโค้ด จะเป็นคำอธิบายขั้นตอนการทำงานของโปรแกรม เป็นคำย่อไม่มีรูปแบบเฉพาะตัว โดยแต่ละส่วนจะเป็นแนวทางในการเขียนโปรแกรมซึ่งทำให้เขียนโปรแกรมเป็นภาษาต่างๆ ได้ง่ายขึ้น ส่วน ผังงาน จะใช้สัญลักษณ์ต่างๆ แทนการทำงานและทิศทางของโปรแกรม
3. เขียนโปรแกรม (Programming)
การเขียนโปรแกรมจะต้องเขียนตามภาษาที่คอมพิวเตอร์เข้าใจโดยอาจใช้ภาษาระดับสูงหรือระดับต่ำซึ่งสามารถเลือกได้หลายภาษาการเขียนโปรแกรมแต่ละภาษาจะต้องทำตามหลักไวยากรณ์ (Syntax) ที่กำหนดไว้ในภาษานั้น นอกจากนี้ การเลือกใช้ภาษาจะต้องพิจารณาถึงความถนัดของผู้เขียนโปรแกรมด้วย
4. การทดสอบและแก้ไขโปรแกรม (Program Testing and Debugging)
หลังจากเขียนโปรแกรมแล้วจำเป็นต้องทดสอบโปรแกรมเพื่อหาจุดผิดพลาดของโปรแกรมว่ามีหรือไม่ และตรวจสอบจนไม่พบที่ผิดอีก จุดผิดพลาดของโปรแกรมนี้เรียกว่า บัก (Bug) ส่วนการแก้ไขข้อผิดพลาดให้ถูกต้อง เรียกว่า ดีบัก (Debug) โดยทั่วไปแล้วข้อผิดพลาดจากการเขียนโปรแกรมมี 2 ประเภท คือ
4.1 การเขียนคำสั่งไม่ถูกต้องตามหลักการเขียนโปรแกรมภาษานั้นๆ ซึ่งเรียกว่า Syntax Error หรือ Coding Error ข้อผิดพลาดประเภทนี้เรามักพบตอนแปลภาษาโปรแกรมเป็นรหัสภาษาเครื่อง
4.2 ข้อผิดพลาดทางตรรก หรือ Logic Error เป็นข้อผิดพลาดที่โปรแกรมทำงานได้ แต่ผลลัพธ์ออกมาไม่ถูกต้อง
5. ทำเอกสารและบำรุงรักษาโปรแกรม (Program Documentation and Maintenance)
ขั้นตอนนี้ทำให้ผู้ใช้สามารถใช้งานโปรแกรมได้อย่างมีประสิทธิภาพ และสะดวกในการตรวจสอบข้อผิดพลาดโดยเขียนเป็นเอกสารประกอบโปรแกรมขึ้นมา โดยทั่วไปแบ่งออกเป็น 2 ประเภทคือ
5.1 คู่มือการใช้ หรือ User Document หรือ User Guide ซึ่งจะอธิบายการใช้โปรแกรม
5.2 คู่มือโปรแกรมเมอร์ หรือ Program Document หรือ Technical Reference ซึ่งจะอำนวยความสะดวกในการแก้ไขโปรแกรม และพัฒนาโปรแกรมในอนาคต โดยจะมีรายละเอียดต่างๆ เกี่ยวกับโปรแกรม เช่น ชื่อโปรแกรม การรับข้อมูล การพิมพ์ผลลัพธ์ขั้นตอนต่างๆ ในโปรแกรมเป็นต้น
ส่วนการบำรุงรักษาโปรแกรม (Maintenance) เป็นการที่ผู้เขียนโปรแกรมจะต้องคอยตรวจสอบการใช้โปรแกรมจริงเพื่อแก้ไขข้อผิดพลาดซึ่งอาจเกิดขึ้นในภายหลัง รวมทั้งพัฒนาโปรแกรมให้ทันสมัยอยู่เสมอ
1.กำหนดวัตถุประสงค์ของงาน เพื่อพิจารณาว่าโปรแกรมต้องทำการประมวลผลอะไรบ้าง
2. พิจารณาข้อมูลนำเข้า เพื่อให้ทราบว่าจะต้องนำข้อมูลอะไรเข้าคอมพิวเตอร์ ข้อมูลมีคุณสมบัติเป็นอย่างไร ตลอดจนถึงลักษณะและรูปแบบของข้อมูลที่จะนำเข้า
3. พิจารณาการประมวลผล เพื่อให้ทราบว่าโปรแกรมมีขั้นตอนการประมวลผลอย่างไรและมีเงื่อนไปการประมวลผลอะไรบ้าง
4. พิจารณาข้อสนเทศนำออก เพื่อให้ทราบว่ามีข้อสนเทศอะไรที่จะแสดง ตลอดจนรูปแบบและสื่อที่จะใช้ในการแสดงผล
2. เขียนผังงานและซูโดโค้ด (Pseudocoding)
หลังจากที่ได้วิเคราะห์ปัญหาแล้ว ขั้นตอนต่อไปจะต้องใช้เครื่องมือช่วยในการออกแบบโปรแกรม ซึ่งยังไม่ได้เขียนเป็นโปรแกรมจริงๆ แต่จะช่วยให้เขียนโปรแกรมได้ง่ายขึ้น และทำให้ผู้อื่นนำโปรแกรมของเราไปพัฒนาต่อได้ง่ายขึ้น และทำให้ผู้อื่นนำโปรแกรมของเราไปพัฒนาได้ง่ายขึ้น โดยเขียนเป็นลำดับขั้นตอนการทำงานของโปรแกรมที่เรียกว่า อัลกอริทึม (Algorithm) ซึ่งจะแสดงขั้นตอนการแก้ปัญหา โดยใช้ประโยคที่ชัดเจน และมีรายละเอียดการทำงานพอสมควรเพียงพอที่จะนำไปเขียนเป็นโปรแกรมให้ทำงานจริง โดยอัลกอริทึมนั้นอาจเขียนให้อยู่ในรูปของรหัสจำลองหรือ ซูโดโค้ด (Pseudo-code) หรือเขียนเป็น ผังงาน (Flowchart) ก็ได้ โดย ซูโดโค้ด จะเป็นคำอธิบายขั้นตอนการทำงานของโปรแกรม เป็นคำย่อไม่มีรูปแบบเฉพาะตัว โดยแต่ละส่วนจะเป็นแนวทางในการเขียนโปรแกรมซึ่งทำให้เขียนโปรแกรมเป็นภาษาต่างๆ ได้ง่ายขึ้น ส่วน ผังงาน จะใช้สัญลักษณ์ต่างๆ แทนการทำงานและทิศทางของโปรแกรม
3. เขียนโปรแกรม (Programming)
การเขียนโปรแกรมจะต้องเขียนตามภาษาที่คอมพิวเตอร์เข้าใจโดยอาจใช้ภาษาระดับสูงหรือระดับต่ำซึ่งสามารถเลือกได้หลายภาษาการเขียนโปรแกรมแต่ละภาษาจะต้องทำตามหลักไวยากรณ์ (Syntax) ที่กำหนดไว้ในภาษานั้น นอกจากนี้ การเลือกใช้ภาษาจะต้องพิจารณาถึงความถนัดของผู้เขียนโปรแกรมด้วย
4. การทดสอบและแก้ไขโปรแกรม (Program Testing and Debugging)
หลังจากเขียนโปรแกรมแล้วจำเป็นต้องทดสอบโปรแกรมเพื่อหาจุดผิดพลาดของโปรแกรมว่ามีหรือไม่ และตรวจสอบจนไม่พบที่ผิดอีก จุดผิดพลาดของโปรแกรมนี้เรียกว่า บัก (Bug) ส่วนการแก้ไขข้อผิดพลาดให้ถูกต้อง เรียกว่า ดีบัก (Debug) โดยทั่วไปแล้วข้อผิดพลาดจากการเขียนโปรแกรมมี 2 ประเภท คือ
4.1 การเขียนคำสั่งไม่ถูกต้องตามหลักการเขียนโปรแกรมภาษานั้นๆ ซึ่งเรียกว่า Syntax Error หรือ Coding Error ข้อผิดพลาดประเภทนี้เรามักพบตอนแปลภาษาโปรแกรมเป็นรหัสภาษาเครื่อง
4.2 ข้อผิดพลาดทางตรรก หรือ Logic Error เป็นข้อผิดพลาดที่โปรแกรมทำงานได้ แต่ผลลัพธ์ออกมาไม่ถูกต้อง
5. ทำเอกสารและบำรุงรักษาโปรแกรม (Program Documentation and Maintenance)
ขั้นตอนนี้ทำให้ผู้ใช้สามารถใช้งานโปรแกรมได้อย่างมีประสิทธิภาพ และสะดวกในการตรวจสอบข้อผิดพลาดโดยเขียนเป็นเอกสารประกอบโปรแกรมขึ้นมา โดยทั่วไปแบ่งออกเป็น 2 ประเภทคือ
5.1 คู่มือการใช้ หรือ User Document หรือ User Guide ซึ่งจะอธิบายการใช้โปรแกรม
5.2 คู่มือโปรแกรมเมอร์ หรือ Program Document หรือ Technical Reference ซึ่งจะอำนวยความสะดวกในการแก้ไขโปรแกรม และพัฒนาโปรแกรมในอนาคต โดยจะมีรายละเอียดต่างๆ เกี่ยวกับโปรแกรม เช่น ชื่อโปรแกรม การรับข้อมูล การพิมพ์ผลลัพธ์ขั้นตอนต่างๆ ในโปรแกรมเป็นต้น
ส่วนการบำรุงรักษาโปรแกรม (Maintenance) เป็นการที่ผู้เขียนโปรแกรมจะต้องคอยตรวจสอบการใช้โปรแกรมจริงเพื่อแก้ไขข้อผิดพลาดซึ่งอาจเกิดขึ้นในภายหลัง รวมทั้งพัฒนาโปรแกรมให้ทันสมัยอยู่เสมอ