Waterfall Model ใน SDLC คืออะไร ข้อดีและข้อเสีย

แบบจำลองน้ำตกคืออะไร?

น้ำตกจำลอง เป็นแบบจำลองต่อเนื่องที่แบ่งการพัฒนาซอฟต์แวร์ออกเป็นระยะที่กำหนดไว้ล่วงหน้า แต่ละเฟสจะต้องทำให้เสร็จสิ้นก่อนจึงจะสามารถเริ่มเฟสถัดไปได้โดยไม่มีการทับซ้อนกันระหว่างเฟส แต่ละระยะได้รับการออกแบบสำหรับการดำเนินกิจกรรมเฉพาะในระหว่างระยะ SDLC เปิดตัวในปี 1970 โดย Winston Royce

อธิบายโมเดลน้ำตกใน SDLC
อธิบายโมเดลน้ำตกใน SDLC

 

ระยะต่างๆ ของแบบจำลองน้ำตกในวิศวกรรมซอฟต์แวร์

ต่อไปนี้เป็นขั้นตอนต่าง ๆ ของโมเดลน้ำตก:

ขั้นตอนต่างๆ กิจกรรมที่ทำในแต่ละขั้นตอน
ขั้นตอนการรวบรวมความต้องการ
  • ในระหว่างขั้นตอนนี้ ข้อกำหนดโดยละเอียดของระบบซอฟต์แวร์ที่จะพัฒนาจะถูกรวบรวมจากไคลเอนต์
ขั้นตอนการออกแบบ
  • วางแผนภาษาการเขียนโปรแกรมเป็นต้น Java, PHP, .สุทธิ
  • หรือฐานข้อมูลเช่น Oracle, MySQLฯลฯ
  • หรือรายละเอียดทางเทคนิคระดับสูงอื่นๆ ของโครงการ
เวทีที่สร้างขึ้น หลังจากขั้นตอนการออกแบบ ก็จะเป็นขั้นตอนที่สร้างขึ้นซึ่งไม่มีอะไรนอกจากการเขียนโค้ดซอฟต์แวร์
ขั้นตอนการทดสอบ ในขั้นตอนนี้ คุณจะทดสอบซอฟต์แวร์เพื่อตรวจสอบว่าถูกสร้างขึ้นตามข้อกำหนดที่ลูกค้ากำหนด
ขั้นตอนการปรับใช้ ปรับใช้แอปพลิเคชันในสภาพแวดล้อมที่เกี่ยวข้อง
ขั้นตอนการบำรุงรักษา เมื่อระบบของคุณพร้อมใช้งานแล้ว คุณอาจต้องเปลี่ยนรหัสตามคำขอของลูกค้าในภายหลัง

เมื่อใดจึงควรใช้ SDLC Waterfall Model

วิธีการน้ำตกสามารถใช้ได้เมื่อ:

  • ข้อกำหนดไม่ได้เปลี่ยนแปลงบ่อยนัก
  • แอปพลิเคชันไม่ซับซ้อนและใหญ่
  • โครงการนี้สั้น
  • ความต้องการมีความชัดเจน
  • สภาพแวดล้อมมีเสถียรภาพ
  • เทคโนโลยีและเครื่องมือที่ใช้ไม่ไดนามิกและมีเสถียรภาพ
  • มีทรัพยากรพร้อมและได้รับการฝึกอบรม

ข้อดีและข้อเสียของแบบจำลองน้ำตก

นี่คือข้อดียอดนิยมของโมเดล Waterfall ค่ะ วิศวกรรมซอฟต์แวร์ มีข้อเสียบางประการ:

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