More Related Content
Similar to The spiral model
Similar to The spiral model (20)
The spiral model
- 3. Spiral Model คือ Software Development Process ที่ถูกพัฒนาขึ้นโดยเอาจุดแข็งของ Development Model อื่นที่ดีอยู่แล้วมาประยุกต์ (waterfall model) และเพิ่มเติมส่วนของการวิเคราะห์ และตีค่าความเสี่ยงที่เกิดเพื่อจะได้ทราบว่าจุดใดมีความเสี่ยงมากน้อยขนาดไหน จะได้หาวิธีลดความเสี่ยง ซึ่งความเสี่ยงเป็นสาเหตุ ที่ทำให้การพัฒนาไม่ประสบความสำเร็จ การวิเคราะห์หรือต้นเหตุของความเสี่ยง ก็เพื่อที่จะหาวิธีการที่จะทำให้เกิดความเสี่ยงน้อยที่สุด รวมถึงวิธีการแก้ไขเมื่อเกิดเหตุการณ์ที่ไม่คาดคิดเกิดขึ้น ถ้าความเสี่ยงน้อยลง ก็ทำให้ Cost หรือ ต้นทุนที่ใช้ก็จะลดลงตามไปด้วย
- 4. Development Process ของ SpiralModel พัฒนาโดย Boehmในค.ศ 1988 แบบจำลองบันไดเวียนเป็นแบบจำลองที่รวมกระบวนการทำซ้ำของการสร้างต้นแบบ เข้ากับ Linearsequentialmodel โดยมีการพัฒนาอย่างรวดเร็ว ถูกพัฒนามาจากโครงสร้างพื้นฐานของ Waterfall Model ที่มีการแบ่งแยกขั้นตอนเช่น Concept Of Operation phase, Software Requirements phase, Design phase, Coding phase, Integration phase, Implement phase เป็นต้น เนื่องจากใน Waterfall model สามารถ ส่งผลลัพธ์ที่ได้ป้อมกลับไปยังขั้นตอนก่อนหน้านั้นโดยที่ไม่ต้องมีการแก้ไขทุกขั้นตอนใหม่หมด แต่ Waterfall Model ยังไม่มีส่วนไปจะมีความสำเร็จที่เป็นไปได้มาน้อยขนาดไหน ฉะนั้น การใช้ Waterfall Model ในแต่ละขั้นตอนจะเกิดการ Feedback บ่อยครั้ง Spiral Model จึงถูกพันกับความเสี่ยงและความเป็นไปได้ที่เกิดขึ้น ตลอดจนหาแนวทางแก้ไขเมื่อเกิดข้อผิดพลาด
- 5. เนื่องจากใน Waterfall model สามารถ ส่งผลลัพธ์ที่ได้ป้อนกลับไปยังขั้นตอนก่อนหน้านั้นโดยที่ไม่ต้องมีการแก้ไขทุกขั้นตอนใหม่หมด แต่ Waterfall Model ยังไม่มีส่วนไปจะมีความสำเร็จที่เป็นไปได้มาน้อยขนาดไหน ฉะนั้น การใช้ Waterfall Model ในแต่ละขั้นตอนจะเกิดการ Feedback บ่อยครั้ง Spiral Model จึงถูกพันกับความเสี่ยงและความเป็นไปได้ที่เกิดขึ้น ตลอดจนหาแนวทางแก้ไขเมื่อเกิดข้อผิดพลาด
- 6. TheSpiralModel แบบจำลองบันไดเวียน แบ่งออกได้เป็นส่วนย่อยๆ โดยปกติจะแบ่งเป็น 3 ส่วน หรือ 6 ส่วนงานเช่น 1.การติดต่อสื่อสารกันระหว่างผู้ใช้ และผู้พัฒนาระบบ(Customer Communication) 2.การวางแผน(Planning) 3.การวิเคราะห์ความเสี่ยง (Risk Analysis) 4.วิศวกรรม (Engineering) 5.การสร้างและนำไปใช้ (Construction and Release) 6.การประเมินผลจากผู้ใช้ (Customer Evaluation)
- 8. TheSpiralModel (cont.) แต่ละรอบของการทำซ้ำ วิเคราะห์ความเสี่ยง -พัฒนาต้นแบบสำหรับตรวจสอบความเป็นไปได้และความต้องการ -เมื่อพบความเสี่ยงผู้จัดการโครงการจะต้องตัดสินใจทีจะกำจัดหรือลดความเสี่ยง - ปัญหาของการใช้แบบจำลองบันไดเวียน ในการพัฒนาซอฟต์แวร์ คือการโน้มน้าวให้ผู้ใช้ระบบเห็นชอบกับวิธีการที่เป็นกระบวนทำซ้ำแบบมีวิวัฒนาการ -ความสำเร็จของการใช้ แบบจำลองบันไดเวียน ผู้พัฒนาจะต้องมีความ เชี่ยวชาญในด้านการประเมินผลความเสี่ยง
- 9. Evolutionary or Spiral Model เป็น model ที่ใช้ความเสี่ยงเป็นเครื่องตัดสินใจว่าจะกระทำอะไรต่อไป (risk-driven)ขั้นตอนในแต่ละรอบ -วิเคราะห์เป้าหมาย แนวทางเลือกต่างๆ เงื่อนไขต่างๆ -วิเคราะห์ความเสี่ยง -พยายามลดความเสี่ยงนั้น เช่น ทำ ต้นแบบ(Prototype )เพื่อทดสอบ -พัฒนา product นำ product ให้ลูกค้าทดสอบ
- 10. ข้อดีเปรียบเทียบกับ Software Development Process Model อื่น ๆ - ถ้าใน Project มีความเสี่ยงต่ำในด้านของส่วนติดต่อผู้ใช้(User Interface ) หรือ ประสิทธิภาพ(performance ) และมีความเสี่ยงสูงในแง่ของงบประมาน (Budget)และระยะเวลามันจะเหมือนกับเป็น Waterfall Modelหรือเรียกว่า รูปแบบน้ำตก - ถ้าความต้องการ Software มีค่าค่อนข้างคงที่ คือไม่มีการเปลี่ยนแปลงบ่อย จะเหมือนกับเป็น Two – leg Model - ถ้าใน Project มีความเสี่ยงต่ำในแง่ของ Budget แต่มีความเสี่ยงสูงในแง่ของ User Interface ว่าจะไม่ตรงกับความต้องการจะเหมือนกับเป็น Evaluation Model หรือรุ่นประเมินผล ถ้าสามารถเปลี่ยนจาก โปรแกรมประยุกต์(Application ) ไปเป็น Software หรือ Code ได้ จะเหมือนกับเป็น Transform Model
- 12. สรุปข้อดีของ Spiral Model ได้ดังนี้ - สนับสนุน กานนำ Software กลับมาใช้อย่างเต็มตัว - ในแต่ละ Cycle มีขั้นตอนประมวลผลที่สิ้นสุดภายใน Cycle เดียว - การวางแผนเพื่อกำหนดทางเดินของ Software Process ในรอบต่อไป - เนื่องจากการพัฒนาอยู่บนพื้นฐานของวัตถุประสงค์ที่ตั้งไว้ทำให้ ผลลัพธ์ของ Software Product ตรงกับความ - แก้ไขข้อผิดพลาดที่จะเกิดขึ้นตั้งแต่เนิ่น ๆ - มีความเป็นอิสระต่อกันทางด้านการพัฒนาและการแก้ไข
- 13. ข้อเสีย เนื่องจาก Spiral Model ทุก Cycle ของการพัฒนามีการวิเคราะห์และตีค่า ถ้าการวิเคราะห์เกิดผิดพลาด จะทำให้ Software Produce ที่ออกมาผิดพลาดทำให้เกิดค่าใช้จ่ายที่เพิ่มขึ้น