การวิเคราะห์ปัญหาสำหรับออกแบบโปรแกรม

Ref:https://sites.google.com/site/thekhnoloyisarsnthekh/kar-wikheraah-payha-sahrab-xxkbaeb-porkaerm

การวิเคราะห์ปัญหาสำหรับออกแบบโปรแกรม

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

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

        

        ขั้นตอนการวิเคราะห์ปัญหา

1. การทำความเข้าใจกับปัญหา
2. การพิจารณาลักษณะของข้อมูลเข้าและข้อมูลออก
3. การทดลองแก้ไขปัญหาด้วยตนเอง
4. การเขียนขั้นตอนวิธีการแก้ปัญหา
5. การทดสอบขั้นตอนวิธีการแก้ปัญหา


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

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

3. การทดลองแก้ไขปัญหาด้วยตนเอง

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

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

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



 

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้