The  Spiral  Model
จัดทำโดยนายพินิจ    สุขศรีพนา521121042
Spiral  Model  คือ  Software  Development  Process  ที่ถูกพัฒนาขึ้นโดยเอาจุดแข็งของ  Development  Model  อื่นที่ดีอยู่แล้วมาประยุกต์  (waterfall  model)  และเพิ่มเติมส่วนของการวิเคราะห์  และตีค่าความเสี่ยงที่เกิดเพื่อจะได้ทราบว่าจุดใดมีความเสี่ยงมากน้อยขนาดไหน  จะได้หาวิธีลดความเสี่ยง  ซึ่งความเสี่ยงเป็นสาเหตุ  ที่ทำให้การพัฒนาไม่ประสบความสำเร็จ  การวิเคราะห์หรือต้นเหตุของความเสี่ยง  ก็เพื่อที่จะหาวิธีการที่จะทำให้เกิดความเสี่ยงน้อยที่สุด  รวมถึงวิธีการแก้ไขเมื่อเกิดเหตุการณ์ที่ไม่คาดคิดเกิดขึ้น  ถ้าความเสี่ยงน้อยลง  ก็ทำให้  Cost  หรือ ต้นทุนที่ใช้ก็จะลดลงตามไปด้วย
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  จึงถูกพันกับความเสี่ยงและความเป็นไปได้ที่เกิดขึ้น  ตลอดจนหาแนวทางแก้ไขเมื่อเกิดข้อผิดพลาด
    เนื่องจากใน  Waterfall  model  สามารถ  ส่งผลลัพธ์ที่ได้ป้อนกลับไปยังขั้นตอนก่อนหน้านั้นโดยที่ไม่ต้องมีการแก้ไขทุกขั้นตอนใหม่หมด  แต่  Waterfall  Model  ยังไม่มีส่วนไปจะมีความสำเร็จที่เป็นไปได้มาน้อยขนาดไหน  ฉะนั้น  การใช้  Waterfall  Model  ในแต่ละขั้นตอนจะเกิดการ  Feedback  บ่อยครั้ง  Spiral  Model  จึงถูกพันกับความเสี่ยงและความเป็นไปได้ที่เกิดขึ้น  ตลอดจนหาแนวทางแก้ไขเมื่อเกิดข้อผิดพลาด
TheSpiralModelแบบจำลองบันไดเวียน แบ่งออกได้เป็นส่วนย่อยๆ โดยปกติจะแบ่งเป็น 3 ส่วน หรือ 6 ส่วนงานเช่น1.การติดต่อสื่อสารกันระหว่างผู้ใช้ และผู้พัฒนาระบบ(Customer   Communication)2.การวางแผน(Planning)3.การวิเคราะห์ความเสี่ยง (Risk   Analysis)4.วิศวกรรม (Engineering)5.การสร้างและนำไปใช้ (Construction   and   Release)6.การประเมินผลจากผู้ใช้ (Customer   Evaluation)
Evolutionary  or  Spiral Model
TheSpiralModel (cont.)แต่ละรอบของการทำซ้ำวิเคราะห์ความเสี่ยง-พัฒนาต้นแบบสำหรับตรวจสอบความเป็นไปได้และความต้องการ-เมื่อพบความเสี่ยงผู้จัดการโครงการจะต้องตัดสินใจทีจะกำจัดหรือลดความเสี่ยง          - ปัญหาของการใช้แบบจำลองบันไดเวียน ในการพัฒนาซอฟต์แวร์ คือการโน้มน้าวให้ผู้ใช้ระบบเห็นชอบกับวิธีการที่เป็นกระบวนทำซ้ำแบบมีวิวัฒนาการ   -ความสำเร็จของการใช้ แบบจำลองบันไดเวียน  ผู้พัฒนาจะต้องมีความ    เชี่ยวชาญในด้านการประเมินผลความเสี่ยง  
Evolutionary  or  Spiral  Modelเป็น model ที่ใช้ความเสี่ยงเป็นเครื่องตัดสินใจว่าจะกระทำอะไรต่อไป (risk-driven)ขั้นตอนในแต่ละรอบ-วิเคราะห์เป้าหมาย  แนวทางเลือกต่างๆ  เงื่อนไขต่างๆ-วิเคราะห์ความเสี่ยง-พยายามลดความเสี่ยงนั้น เช่น ทำ ต้นแบบ(Prototype )เพื่อทดสอบ-พัฒนา productนำ product ให้ลูกค้าทดสอบ
ข้อดีเปรียบเทียบกับ  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
ถ้าสามารถเปลี่ยนจาก  โปรแกรมประยุกต์(Application ) ไปเป็น  Software  หรือ  Code  ได้  จะเหมือนกับเป็น  Transform  Model-ถ้ามีความเสี่ยงในหลายปัจจัยข้างต้น  Spiral  Model  จะช่วยให้เสี่ยงน้อย  คือมีความเหมาะสมที่สุดในแต่ละปัจจัย
สรุปข้อดีของ  Spiral  Model  ได้ดังนี้         -  สนับสนุน  กานนำ  Software  กลับมาใช้อย่างเต็มตัว -  ในแต่ละ  Cycle  มีขั้นตอนประมวลผลที่สิ้นสุดภายใน  Cycle  เดียว -  การวางแผนเพื่อกำหนดทางเดินของ  Software  Process  ในรอบต่อไป -  เนื่องจากการพัฒนาอยู่บนพื้นฐานของวัตถุประสงค์ที่ตั้งไว้ทำให้   ผลลัพธ์ของ  Software  Product  ตรงกับความ -  แก้ไขข้อผิดพลาดที่จะเกิดขึ้นตั้งแต่เนิ่น ๆ -  มีความเป็นอิสระต่อกันทางด้านการพัฒนาและการแก้ไข
ข้อเสียเนื่องจาก  Spiral  Model  ทุก  Cycle  ของการพัฒนามีการวิเคราะห์และตีค่า  ถ้าการวิเคราะห์เกิดผิดพลาด  จะทำให้  Software  Produce  ที่ออกมาผิดพลาดทำให้เกิดค่าใช้จ่ายที่เพิ่มขึ้น
จบแล้วจ้า

The spiral model

  • 1.
  • 2.
    จัดทำโดยนายพินิจ สุขศรีพนา521121042
  • 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)
  • 7.
    Evolutionary or Spiral Model
  • 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
  • 11.
    ถ้าสามารถเปลี่ยนจาก โปรแกรมประยุกต์(Application) ไปเป็น Software หรือ Code ได้ จะเหมือนกับเป็น Transform Model-ถ้ามีความเสี่ยงในหลายปัจจัยข้างต้น Spiral Model จะช่วยให้เสี่ยงน้อย คือมีความเหมาะสมที่สุดในแต่ละปัจจัย
  • 12.
    สรุปข้อดีของ Spiral Model ได้ดังนี้ - สนับสนุน กานนำ Software กลับมาใช้อย่างเต็มตัว - ในแต่ละ Cycle มีขั้นตอนประมวลผลที่สิ้นสุดภายใน Cycle เดียว - การวางแผนเพื่อกำหนดทางเดินของ Software Process ในรอบต่อไป - เนื่องจากการพัฒนาอยู่บนพื้นฐานของวัตถุประสงค์ที่ตั้งไว้ทำให้ ผลลัพธ์ของ Software Product ตรงกับความ - แก้ไขข้อผิดพลาดที่จะเกิดขึ้นตั้งแต่เนิ่น ๆ - มีความเป็นอิสระต่อกันทางด้านการพัฒนาและการแก้ไข
  • 13.
    ข้อเสียเนื่องจาก Spiral Model ทุก Cycle ของการพัฒนามีการวิเคราะห์และตีค่า ถ้าการวิเคราะห์เกิดผิดพลาด จะทำให้ Software Produce ที่ออกมาผิดพลาดทำให้เกิดค่าใช้จ่ายที่เพิ่มขึ้น
  • 14.