ข้ามไปที่เนื้อหาหลัก

The Spiral Model

The  Spiral  Model

                                                Spiral  Model  คือ  Software  Development  Process  ที่ถูกพัฒนาขึ้นโดยเอาจุดแข็งของ  Development  Model  อื่นที่ดีอยู่แล้วมาประยุกต์  (waterfall  model)  และเพิ่มเติมส่วนของการวิเคราะห์  และตีค่าความเสี่ยงที่เกิดเพื่อจะได้ทราบว่าจุดใดมีความเสี่ยงมากน้อยขนาดไหน  จะได้หาวิธีลดความเสี่ยง  ซึ่งความเสี่ยงเป็นสาเหตุ  ที่ทำให้การพัฒนาไม่ประสบความสำเร็จ  การวิเคราะห์หรือต้นเหตุของความเสี่ยง  ก็เพื่อที่จะหาวิธีการที่จะทำให้เกิดความเสี่ยงน้อยที่สุด  รวมถึงวิธีการแก้ไขเมื่อเกิดเหตุการที่ไม่คาดคิดเกิดขึ้น  ถ้าความเสี่ยงน้อยลง  ก็ทำให้  Cost  หรือ ต้นทุนที่ใช้ก็จะลดลงตามไปด้วย

Development  Process  ของ  Spiral  Model
                                                ถูกพัฒนามากจากโครงสร้างพื้นฐานของ  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  จึงถูกพันกับความเสี่ยงและความเป็นไปได้ที่เกิดขึ้น  ตลอดจนหาแนวทางแก้ไขเมื่อเกิดข้อผิดพลาด



โครงสร้างของ Spiral  Model

                                                โครงสร้างของ  Spiral  Model  แสดงในรูปที่  โดย
·         รัศมี  ของวงกลม  จะหมายถึง  Cost  ที่เกิดขึ้นในขบวนการพัฒนา  Software  ถ้าจำนวนของ  Cycle  ที่มากขึ้นก็จะหมายถึง  Cost  ของการพัฒนาก็จะเพิ่มมากขึ้นด้วย
·         มุม  ของวงกลม  หมายถึง
ความก้าวหน้าในการปฏิบัติแต่ละขั้นตอนในแต่ละ  Cycle ได้สำเร็จ
ส่วนต่าง ๆ ในแต่ละ  Cycle  ของ  Spiral  Model  ประกอบด้วย


No
Description

1.Determine  Phase  เป็นส่วนที่ทำหน้าที่กำหนด
-  วัตถุประสงค์  (Objective)  กำหนดผลลัพธ์ที่จะได้รับ
                        -  ทางเลือก  (Alternative)  ที่เป็นไปได้  ของการ  Implement ทางเลือกอาจมีการนำสิ่งที่มีอยู่แล้วมาใช้ใหม่  (Reuse)ทางเลือกในการจัดซื้อ
                        -  เงื่อนไข  (Constraint)  เป็นเงื่อนไขที่เกิดขึ้นในการพัฒนา

2.Evaluate  Phase  จากทางเลือกทั้งหมดที่กำหนดไว้ใน  Determine  Phase  และเงื่อนไขที่ได้ตั้งไว้  เพื่อทราบว่าจุดใดในขบวนการที่เป็นจุดสำคัญที่ทำการวิเคราะห์หรือ
การประเมินค่าความเสี่ยงอาจทำได้โดยการทำต้นแบบ (Performance  Risk  และ User  Requirement,  การจำลองสถานะการ  (Simulate)  เพื่อหาประสิทธิภาพในการทำต้นแบบ  หรือ  Prototypes  เบื้องต้น  เป็นความพยายามในการแก้ความเสี่ยงที่เกิดในกรณีของ  User  Interface  Risk  และความเสี่ยง  และความ  Interface Control  Risk

3.Develop,  verify  Phase  หลังจากการทำ  Prototype  เพื่อวิเคราะห์หาค่าความเสี่ยงในPhase  ถึงขั้นตอนในการพัฒนา  Software  ให้เป็นไปตามวัตถุประสงค์ที่ว่าความเสี่ยงที่เกิดจาก  User  Interface  หรือ  Performance  ซึ่งเป็นความเสี่ยงที่ไม่

4.Next  Phase  หลังจากที่มีการวิเคราะห์  หรือ  ตีค่าความเสี่ยงและการวางแผนสำหรับ  Cycle  ต่อไปของการพัฒนา  ซึ่งจุดนี้เองทำให้ในขั้นตอนเปรียบเทียบ  Spiral  Model  กับ  Software  Development  Process  Model  อื่น

                        ข้อดี
                        เปรียบเทียบกับ  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
·         ถ้ามีความเสี่ยงในหลายปัจจัยข้างต้น  Spiral  Model  จะช่วยให้เสี่ยงน้อย  คือมีความเหมาะสมที่สุดในแต่ละปัจจัย

สรุปข้อดีของ  Spiral  Model  ได้ดังนี้
1.         สนับสนุน  กานนำ  Software  กลับมาใช้อย่างเต็มตัว
2.         ในแต่ละ  Cycle  มีขั้นตอนประมวลผลที่สิ้นสุดภายใน  Cycle  เดียว
3.         การวางแผนเพื่อกำหนดทางเดินของ  Software  Process  ในรอบต่อไป
4.         เนื่องจากการพัฒนาอยู่บนพื้นฐานของวัตถุประสงค์ที่ตั้งไว้ทำให้   ผลลัพธ์ของ  Software  Product  ตรงกับความ
5.         แก้ไขข้อผิดพลาดที่จะเกิดขึ้นตั้งแต่เนิ่น ๆ
6.         มีความเป็นอิสระต่อกันทางด้านการพัฒนาและการแก้ไข

ข้อเสีย

·         เนื่องจาก  Spiral  Model  ทุก  Cycle  ของการพัฒนามีการวิเคราะห์และตีค่า  ถ้าการวิเคราะห์เกิดผิดพลาด  จะทำให้  Software  Produce  ที่ออกมาผิดพลาดทำให้เกิดค่าใช้จ่ายที่เพิ่มขึ้น


ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

วิธีใช้ Google Form ส่งข้อความเข้า LINE Notify

วิธีใช้ Google Form ส่งข้อความเข้า LINE Notify           ขั้นตอนต่อไปนี้จะข้ามส่วนของรายละเอียดบางอย่างไป ซึ่งก่อนจะทำตรงนี้ควรจะรู้แล้วว่า LINE Notify ใช้ทำอะไร และ Access Token จะเอามาจากไหน แต่จะพยายามอธิบายให้ครอบคลุมที่สุดก็แล้วกัน Update: 2019/06/10 ในท้ายบทความได้เพิ่มคำอธิบายเรื่องการส่งข้อมูลหลายกล่องข้อมูล (คอลั่ม) พร้อมกับ code ที่วนลูปข้อมูลทุกกล่อง เพื่อความสะดวกในการส่งข้อมูลในรูปแบบเดิม สร้าง Google Form วิธีสร้างก็ง่ายแสนง่าย เข้าไปที่  https://docs.google.com/forms  จากนั้น คลิกตรงเครื่องหมาย + ตามภาพ จะได้ form หน้าตาแบบนี้มา แก้ไขตามสะดวกเลย ตัวอย่างเอาแบบนี้แล้วกัน จะลองส่งข้อความคลิกที่รูป “ตา” พิมพ์ข้อความอะไรก็ได้ แล้ว กด Submit โลด กลับไปหน้า Form ของเราใน tab แรก มันก็จะมี RESPONSES เข้ามา เมื่อคลิกดูก็จะพบข้อความที่เราเพิ่งพิมพ์ไปเมื่อตะกี้ ใส่ code ใน Script Editor คลิกที่ จุด 3 จุด ด้านขวาบน แล้วเลือก  <> Script Editor จะพบหน้าเปล่าๆ ที่ไม่คุ้นเคย ตรงนี้แหละที่เราจะมาใส่ code ใ...

คาร์บอนฟุตพริ้นท์ (Carbon Footprint)

คาร์บอนฟุตพริ้นท์ ( Carbon Footprint) คาร์บอนฟุตพริ้นท์ ( Carbon Footprint) คืออะไร ในภาวะโลกร้อนที่นับวันยิ่งทวีความรุนแรงขึ้น ซึ่งสาเหตุที่สำคัญคงหนึไม่พ้นเกิดจากกิจกรรมต่างของมนุษย์เรานั่นเอง ทั้งจากการใช้พลังงาน การทำลายทรัพยากรธรรมชาติเช่น การตัดไม้ทำลายป่า การขนส่ง และการขยายตัวของภาคอุตสาหกรรม และในปัจจุบันเราจะพบว่าในหลาย ๆ ประเทศได้มีความตื่นตัวในเรื่องเกี่ยวกับภาวะโลกร้อนกันมากขึ้น และสิ่งหนึ่งที่ให้ความสนใจก็คือ การที่จะร่วมมือกันผลิตและบริโภคผลิตัณฑ์ที่เป็นมิตรกับสิ่งแวดล้อม โดยมีทั้งการเชิญให้ผู้ผลิตได้เข้าร่วมโครงการเพื่อให้ได้รับเครื่องหมายคาร์บอนฟุตพริ้นท์ และเชิญชวนให้ผู้บริโภคหันมาซื้อผลิตภัณฑ์ที่มีฉลากแสดงข้อมูลคาร์บอนฟุตพริ้นท์อีกด้วย คาร์บอนฟุตพริ้นท์ ( Carbon Footprint, CF) คือ การวัดผลกระทบสิ่งแวดล้อมด้านการเปลี่ยนแปลงภูมิอากาศ ซึ่งเกี่ยวข้องกับปริมาณการปล่อยก๊าซเรือนกระจก ( Greenhouse Gases, GHGs) จากกระบวนการผลิตสินค้าตลอดวัฎจักรชีวิต ( Product Life Cycle) โดยเริ่มตั้งแต่ การจัดหาวัตถุดิบนำไปแปรรูป ผลิต จดจำหน่าย การใช้งาน และการจัดการหลังจากผลิ...

ทำความเข้าใจ LM, NTLM, NTLMv2

ทำความเข้าใจ LM, NTLM, NTLMv2  วันนี้เราจะมาทำความเข้าใจเกี่ยวกับรูปแบบการเก็บ password ของ Windows โดยแต่ก่อนจนถึงปัจจุบันก็มีพัฒนาการมาเรื่อยๆครับ ซึ่งจะเริ่มจาก LM (Lan Manager) hash โดย LM นั้นเป็นรูปแบบดั้งเดิมในการเก็บ password ของ Windows ตั้งแต่ยุค 1980 ซึ่งในช่วงนั้นยังมีจำนวน charset ที่ยังจำกัดอยู่(16-bits characters) ซึ่งทำให้การ crack password นั้นทำได้ง่ายมากโดยดึงจาก SAM database บน Windows หรือว่า NTDS บน Domain Controller (Active Directory) ได้เลย โดยขั้นตอนการเปลี่ยน password อยู่ในรูปแบบ LM hash คือ เปลี่ยนอักษรทั้งหมดเป็นตัวใหญ่ หากตัวอักษรไม่ครบ 14 ตัวอักษรก็จะเติมตัวอักษรทั้งหมดให้เต็มด้วย NULL characters แบ่งเป็น 2 กลุ่ม กลุ่มละ 7 ตัวอักษร สร้าง DES key จาก character 7 ตัวทั้ง 2 กลุ่ม ก็จะได้ DES key 2 ชุด (ชุดละ 64 bit) นำ DES key ไปเข้ารหัส static string “KGS!@#$%” ด้วย DES (ECB) นำ encrypted strings ทั้ง 2 อันมาต่อกัน ก็จะได้เป็น LM Hash เช่น สมมติ password เป็น password password => password000000 PASSWORD000000 PASSWOR...