วันจันทร์ที่ 17 กันยายน พ.ศ. 2561

แนวคิดเชิงคำนวณ

แนวคิดเชิงคำนวณ
                  แนวคิดเชิงคำนวณ (computational) ไม่ใช่การคิดเหมือนหุ่นยนต์หรือการเขียนโปรแกรมโดยผู้เชียวชาญแต่เป็นทักษะที่มุ่งเน้นการคิดเชิงตรรกะ คือ สามารถอธิบายการคิดเชิงคำนวณอย่างเป็นระบบหรือเป็นการแก้ไขปัญหาอย่างเป็นระบบเพื่อให้ได้มาซึ่งวิธีการแก้ไขปัญหาที่ทั้งมนุษย์และคอมพิวเตอร์สามารถเข้าใจร่วมกันได้
แนวคิดเชิงคำนวณ
1. แนวคิดการย่อย(Decomposition) แนวคิดการย่อย เช่น แตกปัญหากระบวนการออกเป็นส่วนย่อยเพื่อให้จัดการปัญหาได้ง่ายขึ้น
2.แนวคิดการจดจำรูปแบบ(Pattern Recognition) แนวคิดการจดจำรูปแบบ เพื่อดูความเหมือน ความแตกต่างของรูปแบบการเปลี่ยนแปลง ทำให้ทราบแนวโน้มเพื่อทำนายไปข้างหน้าได้
3.แนวคิดเชิงนามธรรม(Abstraction) แนวคิดเชิงนามธรรม เป็นทักษะสำคัญที่มุ่งเน้นความสำคัญของปัญหา โดยไม่สนใจรายละเอีียดที่ไม่จำเป็น และต่อยอดให้เกิดแบบจำลองหรือสูตร
4.แนวคิดการออกแบบขั้นตอน(Algorithm Design) แนวคิดการออกแบบขั้นตอนในการแก้ปัญหา ทำให้ทราบว่าจะต้องทำอะไรก่อนอะไรหลัง
แนวคิดเชิงคำนวณประกอบด้วยลำดับการใช้ทักษะย่อย 4 ทักษะ ดังนี้
1. แนวคิดการย่อย(Decomposition) แตกปัญหากระบวนการออกเป็นส่วนย่อยเพื่อให้จัดการปัญหาได้ง่ายขึ้น ทักษะนี้เทียบเท่ากับการคิดวิเคราะห์
2.แนวคิดการจดจำรูปแบบ(Pattern Recognition) กำหนดแบบแผนจากปัญหาต่างๆ จากปัญหาที่มีรูปแบบที่หลากหลายโดยปัญหาต่างๆ  มักมีรูปแบบที่คล้ายคลึงกัน กล่าวคือหากเราเข้าใจปัญหา จะพบว่าปัญหาที่แตกต่างกัน สมารถใช้วิธีการในการแก้ปัญหาแบบเดียวกันได้ ทักษะนี้เทียบเท่ากับการคิดวิเคราะห์แบบเชื่อมโยง
3.แนวคิดเชิงนามธรรม(Abstraction) การหาแนวคิดเชิงนามธรรมหรือการนิยาม เพื่อหาแนวคิดรวบยอดของแต่ละปัญหาย่อย เป็นการมุ่งเน้นความสำคัญของปัญหาโดยไม่สนใจรายละเอียดที่ไม่จำเป็น เพื่อให้สามารถเข้าใจถึงแก่นแท้ของปัญหา ทักษะนี้เทียบเท่ากับการคิดสังเคราะห์ จนได้มาซึ่งแบบจำลอง(Model) เช่น แบบจำลองต่างๆ แบบจำลองคณิตศาสตร์ ในรูปของสมการหรือสูตร เป็นต้น
4.แนวคิดการออกแบบขั้นตอน(Algorithm Design) ออกแบบลำดับขั้นตอนการแก้ปัญหาด้วยการคิดเชิงอัลกอริทึม เป็นความคิดพื้นฐานในการสร้างชุดของลำดับขั้นตอนวิธีง่ายๆ ที่ทุกคนสามารถนำไปใช้ในการแก้ปัญหาที่มีลักษณะแบบเดียวกันได้

ขั้นตอนการดำเนินงาน

ขั้นตอนการดำเนินงาน (process) เป็นการดำเนินการตอบสนองข้อมูลที่รับเข้า หรือดำเนินการตอบสนองเงื่อนไขสภาวะใดๆ ที่เกอดขึ้น ไม่ว่าขั้นตอนการดำเนินงานนั้นจะกระทำโดยบุคคล หน่วยงาน หุ่นยนต์ เครื่องจักร หรือเครื่องคอมพิวเตอร์ก็ตาม
          แหล่งจัดเก็บข้อมูล (data store) เป็นแหล่งเก็บเเละบันทึกข้อมูล เปรียบสเหมือนคลังข้อมูล (เทีบยเท่ากับไฟล์ข้อมูล และฐานข้อมูล) โดยอธิบายรายละเอียด คือสี่เหลี่ยมเปิดหนึ่งข้าง แบ่งออกเป็น 2 ส่วน ได้เเก่ ส่วนที่ 1 ทางด้านซ้ายใช้ตัวรหัสของ data store โดยอาจจะเป็นหมายเลขลำดับหรือตัวอักษรได้ เช่น D1 D2 เป็นต้น สำหรับส่วนที่ 2 ทางด้านขวา ใช้แสดงชื่อ Data store หรือชื่อไฟล์
          ตัวแทนข้อมูล (external agents) หมายถึง บุคคลหน่วยงานในองค์กร องค์กรอื่นๆ หรือระบบงานอื่นๆ ที่อยู่ภายนอกขอบเขตของระบบ แต่มีความสัมพันธ์กับระบบโดยมีการส่งข้อมูลเข้าสู่ระบบเพื่อดำเนินงาน เเละรับข้อมูลที่ผ่านการดำเนินงานเรียบร้อยเเล้วจากระบบ สัญลักษณ์ที่ใช้อธิบาย คือ สี่เหลี่ยมจัตุรัสหรือสี่เหลี่ยมผืนผ้า ภายในจะต้องแสดงชื่อตัวแทนข้อมูล โดยสามารถทำซ้ำได้ด้วยการใช้เครื่องหมาย \ (black slash) ตรงมุมล่างซ้าย
         เส้นทางการไหลของข้อมูล (Data flow) เป็นการสื่อสารระหว่างขั้นตอนการทำงานต่างๆ เเละสภาพเเวดล้อมภายนอก หรือภายในระบบ โดยเเสดงถึงข้อมูลที่นำเข้าเเละส่งออกไป ในเเเต่ละขั้นตอนใช้ในการเเสดงถึงการบันทึกข้อมูล การลบข้อมูล และการแก้ไขข้อมูลต่างๆ สัญลักษณ์ ที่ใช้อธิบายเส้นทางการไหลของข้อมูล คือ เส้นตรงที่ประกอบด้วยหัวลูกศรเพื่อบอกทิศทางการเดินทางหรือการไหลของข้อมูล

แผนภาพบริบท

แผนภาพบริบท (conteext dlagram)

     เป็นแผนภาพกระเเสข้อมูลระดับบนสุดที่เเสดงภาพรวมทั้งหมดของระบบที่มีความสัมพันธ์กับสภาพเเวดล้อมภายนอกระบบ ซึ่งประกอบด้วย กระบวนการเพียงกระบวนการเดียวนั่นคือ ระบบที่ศึกษา บุคคล ระบบภายนอก และการเคลื่อนที่ของข้อมูลจากภายนอกระบบสู่ระบบ

2.3ออกแบบระบบ
       ออกเบบระบบ คือ ขั้นตอนการกำหนดวิธีการแก้ปัญหาต่างๆ จากขั้นตอนการวิเคราะห์ระบบ โดยขั้นตอนนี้จะกำหนดขั้นตอนการทำงานโดยใช้แผนภาพเเสดงลำดับขั้นตอนการทำงาน(flowchart) แผนภาพแสดงความสัมพันธ์ของข้อมูล (Entity Relationship Diagram : ER Diagram) พจนานุกรมข้อมูล (data dictionary) หน้าจอส่วนติดต่อกับผู้ใช้งาน (Graphic User Interface : GUI) เทคโนโลยีต่างๆ ที่นำมาใช้ในกระบวนการแก้ปัญหาต่างๆ ของระบบงาน ลักษณะการเขียนชุดคำสั่ง รวมถึงจัดทำเอกสารการออกแบบระบบ เช่น ลักษณะการจัดเก็บข้อมูลสมาชิก เป็นต้น
2.4 พัฒนาระบบเเละทดสอบระบบ
       พัฒนาระบบ เเละทดสอบระบบ คือ ขั้นตอนการดำเนินงานต่างๆ เพื่อพัฒนาระบบ โดยดำเนินงานตามการออกแบบจากขั้นตอนการออกแบบระบบ เช่น การเขียนชุดคำสั่งต่างๆ เพื่อสร้างซอฟแวร์ การสร้างฐานข้อมูลเพื่อจัดเก็บข้อมูล จัดทำเอกสารพัฒนาระบบ รวมถึงการทดสอบระบบงานว่าสามารถทำได้อย่างถูกต้อง เเละตรงตามตวามต้องการของผู้ใช้งานจากขั้นตินการวิเคราะห์ระบบหรือไม่ โดยทดสอบระบบในสภาพแวดล้อมจำลองและสภาพแวดล้อมจริง เป็นต้น
2.5ติดตั้งระบบ
       ติดตั้งระบบ คือ ขั้นตอนการนำซอฟแวร์เเละระบบงานใหม่ที่เสร็จสมบูรณ์มาติดตั้งในสภาพแวดล้อมการทำงานจริง จัดทำเอกสารการจัดตั้งระบบงานใหม่เเละคู่มือการใช้งาน จัดฝึกอบรมผู้ใช้งาน ดำเนินการใช้ระบบงานใหม่ ประเมินผลการใช้งานระบบงานใหม่ เพื่อหาจุดบกพร่องต่างๆ ซึ่งการใช้งานระบบงานใหม่นั้น ควรใช้งานควบคู่กับระบบงานเดิม (กรณีที่มีระบบงานเดิม) โดยใช้ข้อมูลชุดเดียวกัน เเละเปรียบเทียบผลลัพธ์ว่าตรงกันหรือไม่ หากถูกต้องตรงกันจึงนำระบบงานเดิมออก เเล้วใช้งานระบบใหม่แทนที่
2.6บำรุงรักษาระบบ
       บำรุงรักษาระบบ คือ ขั้นตอนการดูแลระบบต่างๆ เช่น การแก้ไขจุดบกพร่องที่เกิดขึ้นหลังจากการใช้งานในสภาพเเวดล้อมจริง การเพิ่มเติมความสามารถของระบบงาน การปรับเปลี่ยนการทำงานบางประการให้ทันสมัยมากขึ้น เป็นต้น จากขั้นตอนการพัฒนาโครงงานทางเทคโนโลยีสามารถนำเอาหลักแนวคิดเชิงคำนวณเข้าไปประยุกต์ใช้ตั้งเเต่การกำหนดปัญหาหลักฬหญ่ของโครงงาน และเเยกแยะปัญหาย่อย จากนั้นทำการหารูปแบบในการแก้ปัญหาต่างๆ