แบบฝึกหัดบทที่3
การออกแบบและการบริหารฐานข้อมูล
แบบฝึกหัดบทที่3
1: วงจรพัฒนาระบบฐานข้อมูล (DSDLC) ประกอบด้วยกี่ระยะ อะไรบ้าง เเละการ
นำวางเเผน DSDLC มาใช้เพื่อพัฒนาระบบฐานข้อมูลมี่ข้อดีอย่างไร
ตอบ DSDLC ประกอบด้วย 6 ระยะหลัก ดังนี้
1. การศึกษาความต้องการ (Requirement Analysis)
• ศึกษาว่าผู้ใช้งานต้องการข้อมูลอะไร
• วิเคราะห์กระบวนการทำงาน และระบุข้อมูลที่เกี่ยวข้อง
2. การออกแบบแนวความคิด (Conceptual Design)
• ใช้ ER-Diagram ออกแบบความสัมพันธ์ของข้อมูล
• ยังไม่ลงรายละเอียดเชิงเทคนิค
3. การออกแบบตรรกะ (Logical Design)
• แปลงแบบจำลองความคิดให้อยู่ในรูปของตารางตามโครงสร้างฐานข้อมูล เช่น แบบเชิงสัมพันธ์ (Relational)
• นิยามคีย์หลัก คีย์ต่างประเทศ ความสัมพันธ์ต่าง ๆ
4. การออกแบบกายภาพ (Physical Design)
• กำหนดโครงสร้างการจัดเก็บในฐานข้อมูลจริง เช่น ชนิดข้อมูล (Data Type), Index, Partition ฯลฯ
• เลือก DBMS ที่เหมาะสม
5. การนำไปใช้งาน (Implementation and Loading)
• สร้างฐานข้อมูลจริงตามแบบที่ออกแบบ
• ทำการ migrate หรือโหลดข้อมูลเข้าไปในระบบ
6. การบำรุงรักษาและปรับปรุง (Monitoring, Maintenance, and Updating)
• ตรวจสอบประสิทธิภาพของระบบ
• ปรับปรุงหรือแก้ไขหากมีปัญหา หรือเมื่อมีความต้องการใหม่
ข้อดีของการนำ DSDLC มาใช้วางแผนพัฒนาระบบฐานข้อมูล
1. มีขั้นตอนชัดเจน
• ลดความสับสนและการทำงานซ้ำซ้อน
2. ช่วยวิเคราะห์ปัญหาได้ตรงจุด
• รู้ว่าอะไรคือความต้องการจริงของผู้ใช้งาน
3. ทำให้ฐานข้อมูลมีโครงสร้างที่ดี
• ออกแบบถูกต้องตั้งแต่ต้น ลดปัญหาในอนาคต
4. ประหยัดเวลาและค่าใช้จ่ายระยะยาว
• ไม่ต้องกลับมาแก้ไขซ้ำในภายหลัง
5. สามารถตรวจสอบและดูแลได้ง่าย
• เพราะมีเอกสารและโครงสร้างชัดเจนในแต่ละขั้น
6. ส่งเสริมการทำงานเป็นทีม
• เพราะแต่ละคนสามารถเข้าใจระบบผ่านเอกสารและแบบจำลองได้เหมือนกัน
2:การศึกษาเเละกำหนดปัญหาที่ไม่ครบถ้วนหรือไม่ชัดเจน ส่งผลกระทบต่อ
กระบวนการพัฒนาระบบฐานข้อมูลอย่างไร
ตอบ ผลกระทบจากการกำหนดปัญหาไม่ครบถ้วนหรือไม่ชัดเจน
1. ออกแบบฐานข้อมูลไม่ตรงกับความต้องการของผู้ใช้
• หากเข้าใจความต้องการผิด ระบบที่พัฒนาจะตอบโจทย์ผิด ทำให้ใช้งานจริงไม่ได้
• เช่น ข้อมูลบางอย่างหายไป หรือมีข้อมูลที่ไม่จำเป็น
2. โครงสร้างข้อมูลไม่เหมาะสม
• การออกแบบตาราง ความสัมพันธ์ หรือคีย์อาจผิดพลาด ส่งผลให้การจัดเก็บและเรียกข้อมูลไม่ถูกต้องหรือซับซ้อนเกินจำเป็น
3. ต้องเสียเวลาแก้ไขซ้ำในภายหลัง
• เมื่อระบบพัฒนาไปแล้วแต่พบว่าไม่ตรงกับความต้องการจริง จะต้องย้อนกลับไปแก้ ทำให้เสียทั้งเวลาและต้นทุน
4. ส่งผลกระทบต่อการทำงานของระบบอื่น
• ฐานข้อมูลเป็นศูนย์กลางของระบบ หากกำหนดปัญหาผิดพลาด จะส่งผลให้ระบบอื่นที่เชื่อมต่อเกิดข้อผิดพลาดด้วย
5. ทำให้ทีมพัฒนาไม่เข้าใจเป้าหมายร่วมกัน
• การสื่อสารภายในทีมอาจคลาดเคลื่อน เพราะจุดประสงค์ของระบบไม่ชัดเจน
6. ทำให้การทดสอบระบบ (Usability / Performance Test) ไม่ได้ผล
• เนื่องจากระบบที่ทดสอบไม่ตรงกับการใช้งานจริง จึงไม่สามารถตรวจสอบประสิทธิภาพได้อย่างแม่นยำ
3:การวิเคราะห์ความต้องการ(Requirement Analysisป มีความสำคัญต่อ
ความสำเร็จของการพัฒนาระบบบฐานข้อมูลอย่างไร
ตอบ ความสำคัญของการวิเคราะห์ความต้องการ (Requirement Analysis)
1. ทำให้เข้าใจความต้องการของผู้ใช้จริง ๆ
• เป็นการเก็บข้อมูลจากผู้ใช้และผู้มีส่วนได้ส่วนเสีย เพื่อทราบว่า “ต้องการข้อมูลอะไร” และ “ต้องใช้งานระบบอย่างไร”
• ลดความเข้าใจผิดระหว่างนักวิเคราะห์กับผู้ใช้
2. ช่วยกำหนดขอบเขตของระบบ (System Scope)
• รู้ว่าควรทำแค่ไหน ไม่หลุดประเด็น ไม่พัฒนาระบบใหญ่เกินไปหรือเล็กเกินไป
• ทำให้ควบคุมงบประมาณและระยะเวลาได้ดีขึ้น
3. เป็นพื้นฐานของการออกแบบฐานข้อมูล
• ข้อมูลที่เก็บมาจากการวิเคราะห์จะถูกนำไปออกแบบ ER-Diagram, ตารางข้อมูล, ความสัมพันธ์ ฯลฯ
• ถ้าข้อมูลผิดพลาด ทุกขั้นตอนถัดไปจะผิดตาม
4. ช่วยจัดลำดับความสำคัญของฟีเจอร์
• แยกแยะได้ว่าอะไรคือ “ฟีเจอร์หลัก” ที่ต้องมี และอะไรคือ “สิ่งที่อยากได้”
• ทำให้การพัฒนาระบบมีประสิทธิภาพ ไม่เสียเวลาในสิ่งไม่จำเป็น
5. ลดความผิดพลาดและต้นทุนในอนาคต
• การเข้าใจความต้องการอย่างลึกซึ้งตั้งแต่แรก จะลดปัญหาการแก้ไขซ้ำ
• ประหยัดเวลา ค่าใช้จ่าย และแรงงานในระยะยาว
6. ช่วยในการทดสอบและประเมินผล (Testing & Evaluation)
• เราสามารถใช้ Requirement ที่เก็บไว้เป็นเกณฑ์วัดว่าระบบพัฒนาได้ตรงตามที่ผู้ใช้ต้องการหรือไม่
4:การปลี่ยนซอฟต์เเวร์ระบบการจัดการฐานข้อมู,(DBMS) ระหว่างที่กำลังพัฒนา
ระบบฐษนข้อมูล ส่งผลกระทบต่อการพัฒนาระบบฐานข้อมูลระยะใดมากที่สุด เพราะอะไร
ตอบ การเปลี่ยนซอฟต์แวร์ระบบจัดการฐานข้อมูล (DBMS) ระหว่างการพัฒนาระบบฐานข้อมูล
ส่งผลกระทบมากที่สุดในระยะ “การออกแบบกายภาพ” (Physical Design)
เพราะในระยะนี้ นักพัฒนาจะต้องออกแบบระบบให้สอดคล้องกับความสามารถเฉพาะของ DBMS ที่เลือกใช้ เช่น
• โครงสร้างการจัดเก็บข้อมูล
• ประสิทธิภาพของคำสั่ง SQL
• การจัดการดัชนี (Indexing)
• รูปแบบการสำรองข้อมูล (Backup & Recovery)
• ความสามารถด้านความปลอดภัย (Security)
หากเปลี่ยน DBMS จะทำให้ต้องกลับมาแก้ไขใหม่ในหลายจุด เช่น รูปแบบคำสั่ง SQL ที่ใช้ไม่เหมือนกัน (MySQL vs Oracle vs PostgreSQL), การตั้งค่า Performance, หรือแม้แต่ชนิดข้อมูลบางประเภทที่ไม่รองรับเหมือนกัน
นอกจากนี้ยังอาจส่งผลกระทบต่อ ขั้นตอนการนำไปใช้งาน (Implementation) และ การดูแลระบบ (Maintenance) เพราะแต่ละ DBMS มีเครื่องมือและวิธีจัดการต่างกัน
5:ถ้านักศึกษาได้ไปทำงานในตำเเหน่ง DBA อะไรคือบทบาทหน้าที่ที่นักศึกาาต้องรับผิดชอบ
ตอบ 1. ติดตั้งและกำหนดค่าระบบฐานข้อมูล (Installation & Configuration)
• ติดตั้งซอฟต์แวร์ DBMS เช่น MySQL, Oracle, PostgreSQL
• ปรับตั้งค่าระบบให้เหมาะสมกับการใช้งานและฮาร์ดแวร์
2. ดูแลความปลอดภัยของข้อมูล (Security Management)
• กำหนดสิทธิ์การเข้าถึงของผู้ใช้ (User Access Control)
• ป้องกันข้อมูลจากการเข้าถึงโดยไม่ได้รับอนุญาต
3. สำรองและกู้คืนข้อมูล (Backup & Recovery)
• วางแผนและดำเนินการสำรองข้อมูลเป็นประจำ
• เตรียมแผนเผชิญเหตุหากข้อมูลสูญหาย เช่น การกู้คืนข้อมูล
4. ตรวจสอบและปรับปรุงประสิทธิภาพ (Performance Tuning)
• ตรวจสอบความเร็วในการเข้าถึงข้อมูล
• ปรับ Index, Query, และโครงสร้างเพื่อให้ทำงานเร็วขึ้น
5. บำรุงรักษาระบบฐานข้อมูล (Maintenance)
• ตรวจสอบความสมบูรณ์ของฐานข้อมูล
• อัปเดตเวอร์ชันหรือแพตช์เพื่อป้องกันช่องโหว่
6. สนับสนุนการพัฒนาระบบ (Support for Developers)
• ทำงานร่วมกับนักพัฒนาเพื่อออกแบบโครงสร้างข้อมูล
• ให้คำปรึกษาด้าน SQL และประสิทธิภาพ
7. ตรวจสอบการทำงานและจัดทำรายงาน (Monitoring & Reporting)
• ใช้เครื่องมือตรวจสอบการทำงานของฐานข้อมูลตลอดเวลา
• สรุปข้อมูลการใช้งาน ปัญหา และประสิทธิภาพให้ผู้บริหาร
8. วางแผนการขยายระบบ (Scalability & Capacity Planning)
• คาดการณ์การเติบโตของข้อมูลในอนาคต
• วางแผนการขยายระบบเพื่อรองรับการใช้งานเพิ่มขึ้น
6:นักศึกษาคิดว่าวงจรพัฒนาระบบฐานข้อมูล(DSDLC) รยะใดมีความสำคัญมากที่สุด เพราะอะไร
ตอบ มีความสำคัญมากที่สุด เพราะเป็นขั้นตอนเริ่มต้นที่ใช้ในการรวบรวมและทำความเข้าใจความต้องการของผู้ใช้งาน เพื่อให้สามารถออกแบบระบบฐานข้อมูลให้ตรงตามวัตถุประสงค์ได้อย่างถูกต้อง หากในระยะนี้มีข้อผิดพลาด เช่น วิเคราะห์ผิด, ข้อมูลไม่ครบถ้วน หรือสื่อสารกับผู้ใช้ไม่เข้าใจ จะส่งผลให้การออกแบบระบบในขั้นตอนถัดไปคลาดเคลื่อน และอาจทำให้ระบบที่พัฒนาขึ้นมาใช้งานไม่ได้จริง ต้องเสียเวลาและค่าใช้จ่ายในการแก้ไขภายหลัง
นางสาว พิทยาภรณ์ พุฒทอง 1013
นาย ธรณินทร์ แอบมณี 1516
ความคิดเห็น
แสดงความคิดเห็น