| ถาม | การวิเคราะห์ความต้องการด้านระบบ (Systems Requirements Analysis) คืออะไร? และทำไมจึงเป็นขั้นตอนที่สำคัญที่สุดในการพัฒนาระบบสารสนเทศ | 
| ตอบ | การวิเคราะห์ความต้องการด้านระบบคือ กระบวนการที่รวบรวม ตีความ และจัดทำเอกสารความต้องการของผู้ใช้งานและระบบ เพื่อให้เข้าใจอย่างถ่องแท้ว่าระบบใหม่ควรทำอะไรได้บ้างและทำงานอย่างไร ขั้นตอนนี้จะช่วยแปลงความต้องการทางธุรกิจที่ไม่เป็นทางการให้กลายเป็นข้อกำหนดที่ชัดเจนและวัดผลได้ การวิเคราะห์ความต้องการถือเป็นขั้นตอนที่สำคัญที่สุดเพราะหากเกิดข้อผิดพลาดในขั้นตอนนี้ จะส่งผลกระทบอย่างรุนแรงต่อขั้นตอนอื่นๆ ตามมา เช่น:
 * ระบบที่พัฒนาไม่ตอบโจทย์: เมื่อระบบสร้างเสร็จแล้วผู้ใช้อาจพบว่าไม่สามารถใช้งานได้จริงตามที่คาดหวัง
 * ต้นทุนและเวลาที่บานปลาย: การแก้ไขข้อผิดพลาดในภายหลังมีค่าใช้จ่ายสูงกว่าและใช้เวลามากกว่าการทำความเข้าใจความต้องการให้ถูกต้องตั้งแต่แรก
 * ความล้มเหลวของโครงการ: โครงการอาจไม่เป็นที่ยอมรับหรือไม่สามารถนำไปใช้ได้จริงในที่สุด
 | 
| ถาม | อธิบายความแตกต่างระหว่างความต้องการเชิงหน้าที่ (Functional Requirements) และความต้องการเชิงไม่เป็นหน้าที่ (Non-functional Requirements) พร้อมยกตัวอย่างประกอบ | 
| ตอบ | ความต้องการทั้งสองประเภทนี้มีความสำคัญต่อการพัฒนาระบบ แต่มีขอบเขตที่ต่างกัน: * ความต้องการเชิงหน้าที่ (Functional Requirements): คือ สิ่งที่ระบบต้องทำได้ หรือฟังก์ชันการทำงานที่ผู้ใช้คาดหวังจากระบบ เป็นการตอบคำถามว่า "ระบบต้องทำอะไรบ้าง?" ตัวอย่าง:
 - ระบบต้องสามารถประมวลผลการชำระเงินออนไลน์ได้
 - ระบบต้องสามารถสร้างใบแจ้งหนี้อัตโนมัติได้
 - ระบบต้องสามารถเข้าสู่ระบบโดยใช้ชื่อผู้ใช้และรหัสผ่านได้
 * ความต้องการเชิงไม่เป็นหน้าที่ (Non-functional Requirements): คือ ข้อกำหนดเกี่ยวกับคุณสมบัติของระบบ ที่จะช่วยให้ระบบทำงานได้อย่างมีประสิทธิภาพ เป็นการตอบคำถามว่า "ระบบควรทำงานอย่างไร?" ตัวอย่าง:
 - ประสิทธิภาพ: ระบบต้องสามารถประมวลผลคำสั่งซื้อได้ 1,000 รายการต่อนาที
 - ความน่าเชื่อถือ: ระบบต้องมีเวลาที่สามารถใช้งานได้ (Uptime) มากกว่า 99.9%
 - ความปลอดภัย: ระบบต้องมีการเข้ารหัสข้อมูลส่วนบุคคลของผู้ใช้
 - การใช้งานง่าย: ส่วนติดต่อผู้ใช้ (UI) ต้องง่ายต่อการเรียนรู้ภายใน 15 นาที
 | 
| ถาม | ยกตัวอย่าง 3 เทคนิคในการรวบรวมความต้องการจากผู้ใช้งาน พร้อมอธิบายข้อดีและข้อจำกัดของแต่ละเทคนิค | 
| ตอบ | การรวบรวมความต้องการเป็นขั้นตอนสำคัญ สามารถใช้ได้หลายเทคนิค: 1.  การสัมภาษณ์ (Interviews):
 - ข้อดี: ช่วยให้ได้ข้อมูลเชิงลึกและรายละเอียดที่เฉพาะเจาะจง สามารถซักถามและทำความเข้าใจปัญหาของผู้ใช้งานได้อย่างแท้จริง
 - ข้อจำกัด: ใช้เวลาและทรัพยากรมาก หากผู้สัมภาษณ์ขาดทักษะ อาจได้ข้อมูลที่ไม่ครบถ้วน หรือผู้ถูกสัมภาษณ์อาจไม่สามารถอธิบายความต้องการที่ซับซ้อนได้
 2.  การสังเกตการณ์ (Observation):
 - ข้อดี: ได้ข้อมูลที่ตรงตามความเป็นจริงที่สุด เพราะได้เห็นการทำงานของผู้ใช้ในสภาพแวดล้อมจริง สามารถค้นพบปัญหาที่ผู้ใช้อาจไม่ทันนึกถึงหรือไม่สามารถอธิบายได้
 - ข้อจำกัด: ผู้สังเกตการณ์อาจทำให้ผู้ถูกสังเกตการณ์ทำงานแตกต่างไปจากปกติ และเทคนิคนี้ใช้ได้เฉพาะกับงานที่มีการดำเนินการทางกายภาพ ไม่เหมาะกับงานที่เกี่ยวกับกระบวนการคิด
 3.  การทำแบบสอบถาม (Questionnaires):
 - ข้อดี: เหมาะสำหรับการรวบรวมข้อมูลจากผู้ใช้จำนวนมากได้อย่างรวดเร็วและประหยัดค่าใช้จ่าย
 - ข้อจำกัด: ไม่สามารถเจาะลึกรายละเอียดได้ หากออกแบบคำถามไม่ดีอาจได้คำตอบที่ไม่เป็นประโยชน์ และไม่มีโอกาสซักถามข้อมูลเพิ่มเติมในเชิงลึก
 |