Please enable JavaScript.
Coggle requires JavaScript to display documents.
การออกแบบชั้นตอนการทำงานของโปรแกรม(อัลกอริทีม) - Coggle Diagram
การออกแบบชั้นตอนการทำงานของโปรแกรม(อัลกอริทีม)
การออกแบบโดยใช้ภาษาษรรชาติ (Natura Language)l
องค์ประกอบสำคัญในการออกแบบ
การประมวลผลภาษาธรรมชาติ (NLP): การทำให้คอมพิวเตอร์เข้าใจโครงสร้างและความหมายของประโยค [1, 2]
การเข้าใจภาษาธรรมชาติ (NLU): การตีความ "เจตนา" (Intent) และ "บริบท" (Context) ของผู้ใช้ [2, 4]
การสร้างภาษาธรรมชาติ (NLG): การให้ระบบตอบโต้กลับเป็นภาษาที่อ่านง่ายและเป็นธรรมชาติ [2,
หลักการออกแบบที่ดี
เน้นบทสนทนา (Conversational UI): ออกแบบให้มีความลื่นไหลเหมือนการคุยกับมนุษย์ ไม่ใช่แค่การตอบคำถามสั้นๆ [3, 5]
จัดการกับความกำกวม: ระบบต้องสามารถถามซ้ำเพื่อยืนยันความถูกต้องหากประโยคของผู้ใช้มีความหมายได้หลายอย่าง [4, 6]
จดจำบริบท: สามารถอ้างอิงข้อมูลจากประโยคก่อนหน้าได้เพื่อให้การสนทนาต่อเนื่อง [2, 5]
ความเป็นมนุษย์ (Persona): การกำหนดบุคลิกภาพให้ระบบ เพื่อสร้างความเชื่อมั่นและประสบการณ์ที่ดีแก่ผู้ใช้งาน [3, 6]
การออกแบบโดยใช้ภาษาธรรมชาติ (Natural Language Design หรือ NLD) คือแนวคิดการสร้างระบบที่ช่วยให้มนุษย์สามารถสื่อสารกับคอมพิวเตอร์ผ่านภาษาที่ใช้ในชีวิตประจำวันได้โดยตรง แทนที่จะต้องใช้รหัสหรือชุดคำสั่งทางเทคนิค
ตัวอย่างการใช้งานในปัจจุบัน
Virtual Assistants: ตัวอย่างเช่น Siri, Alexa หรือ Google Assistant [1, 3]
Chatbots: ระบบบริการลูกค้าอัตโนมัติบนเว็บไซต์และโซเชียลมีเดีย [2, 5]
Generative AI: ตัวอย่างเช่น ChatGPT หรือ Gemini ที่สามารถรับคำสั่ง (Prompt) เพื่อเขียนบทความหรือสร้างภาพ [3, 4]
การออกแบบโดยใช้ผังงาน (Flowchart)
เห็นภาพรวม: ช่วยให้เข้าใจกระบวนการที่ซับซ้อนได้ง่ายขึ้น.
วางแผนและสื่อสาร: เป็นเครื่องมือในการวางแผนและสื่อสารขั้นตอนการทำงานไปยังผู้อื่นได้ดี.
ตรวจสอบและแก้ไข: ง่ายต่อการหาข้อผิดพลาดและแก้ไขปรับปรุง.
เป็นสากล: ไม่ขึ้นกับภาษาโปรแกรมใดภาษาหนึ่ง ทำให้เข้าใจได้ทุกที่.
ประโยชน์ของการใช้ผังงาน
การออกแบบด้วยผังงานจึงเป็นเครื่องมือพื้นฐานสำคัญในการคิดวิเคราะห์และออกแบบระบบต่างๆ ก่อนจะลงมือปฏิบัติจริง.
ผังงานระบบ (System Flowchart): แสดงภาพรวมการทำงานของระบบทั้งหมด รวมถึงส่วนงานต่างๆ และการไหลของเอกสารหรือข้อมูล.
ผังงานโปรแกรม (Program Flowchart): แสดงขั้นตอนคำสั่งที่ละเอียดสำหรับโปรแกรมคอมพิวเตอร์โดยเฉพาะ เพื่อนำไปเขียนโค้ด.
ประเภทของผังงาน
หลักการสำคัญในการเขียนผังงาน
มีจุดเริ่มต้นและจุดสิ้นสุด: ทุกผังงานต้องมีเสมอ โดยใช้สัญลักษณ์วงรี.
ใช้สัญลักษณ์มาตรฐาน: เลือกใช้สัญลักษณ์รูปทรงต่างๆ แทนคำสั่งหรือการดำเนินการแต่ละขั้นตอน เช่น สี่เหลี่ยมผืนผ้าแทนการประมวลผล, สี่เหลี่ยมขนมเปียกปูนแทนการตัดสินใจ.
ใช้ลูกศรบอกทิศทาง: เชื่อมโยงสัญลักษณ์เพื่อแสดงลำดับการทำงานจากบนลงล่าง หรือซ้ายไปขวา.
เขียนข้อความสั้นๆ: อธิบายการทำงานในแต่ละสัญลักษณ์ให้กระชับ ชัดเจน และเข้าใจง่าย.
ความเป็นระเบียบ: ผังงานที่ดีควรสะอาด เป็นระเบียบ ไม่ซับซ้อน หลีกเลี่ยงการโยงเส้นตัดกันมากเกินไป.
การออกแบบโดยใช้ผังงาน (Flowchart) คือ การใช้สัญลักษณ์และลูกศรแสดงลำดับขั้นตอนการทำงานอย่างเป็นระบบ เพื่อให้เข้าใจกระบวนการได้ง่าย เห็นภาพรวมชัดเจน ช่วยในการวางแผน ออกแบบโปรแกรม หรือแก้ไขปัญหา โดยต้องมีจุดเริ่มต้นและจุดสิ้นสุดเสมอ และใช้สัญลักษณ์มาตรฐานแทนการดำเนินการต่างๆ เช่น การเริ่มต้น/สิ้นสุด, การรับข้อมูล, การประมวลผล, และการตัดสินใจ
การออกแบบโดยใช้รหัสจำลอง (Pseudo Code)
องค์ประกอบสำคัญในการออกแบบ
การประมวลผลภาษาธรรมชาติ (NLP): การทำให้คอมพิวเตอร์เข้าใจโครงสร้างและความหมายของประโยค [1, 2]
การเข้าใจภาษาธรรมชาติ (NLU): การตีความ "เจตนา" (Intent) และ "บริบท" (Context) ของผู้ใช้ [2, 4]
การสร้างภาษาธรรมชาติ (NLG): การให้ระบบตอบโต้กลับเป็นภาษาที่อ่านง่ายและเป็นธรรมชาติ
หลักการออกแบบที่ดี
เน้นบทสนทนา (Conversational UI): ออกแบบให้มีความลื่นไหลเหมือนการคุยกับมนุษย์ ไม่ใช่แค่การตอบคำถามสั้นๆ [3, 5]
จัดการกับความกำกวม: ระบบต้องสามารถถามซ้ำเพื่อยืนยันความถูกต้องหากประโยคของผู้ใช้มีความหมายได้หลายอย่าง [4, 6]
จดจำบริบท: สามารถอ้างอิงข้อมูลจากประโยคก่อนหน้าได้เพื่อให้การสนทนาต่อเนื่อง [2, 5]
ความเป็นมนุษย์ (Persona): การกำหนดบุคลิกภาพให้ระบบ เพื่อสร้างความเชื่อมั่นและประสบการณ์ที่ดีแก่ผู้ใช้งาน [3, 6]
การออกแบบโดยใช้ รหัสจำลอง (Pseudo Code) คือการอธิบายลำดับขั้นตอนการทำงานของโปรแกรม (Algorithm) ด้วยถ้อยคำภาษาที่มนุษย์เข้าใจง่าย (มักเป็นภาษาอังกฤษหรือภาษาไทย) โดยมีโครงสร้างเลียนแบบคำสั่งคอมพิวเตอร์แต่ไม่ขึ้นกับภาษาใดภาษาหนึ่งโดยเฉพาะ มีวัตถุประสงค์เพื่อให้ผู้ออกแบบสามารถโฟกัสที่ ตรรกะ (Logic) ได้เต็มที่โดยไม่ต้องกังวลเรื่องไวยากรณ์ (Syntax) ที่ซับซ้อนของภาษาโปรแกรมจริง