งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

แบบจำลองกระบวนการซอฟต์แวร์

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "แบบจำลองกระบวนการซอฟต์แวร์"— ใบสำเนางานนำเสนอ:

1 แบบจำลองกระบวนการซอฟต์แวร์
Software Process Model

2 Software Process Model
Softwae Process Model คือ แบบจำลองกระบวนการพัฒนาซอฟต์แวร์ แบ่งเป็น 4 ประเภท ได้แก่ Linear Model Iterative Model Incremental Model Evolutionary Model

3 The Linear Model หรือ Classic Life Cycle , Waterfall Model
จาก Roger s. Pressman . Software Engineering a Practitioner’s Approach

4 Waterfall Model

5 Waterfall Model

6 คุณลักษณะของ Waterfall Model
เป็น Seriesของขั้นตอนการทำงาน คล้ายสายงานการผลิต (Product Line) แต่ละขั้น หน้าที่และProduct ถูกกำหนดอย่างชัดเจน Product ส่วนใหญ่เป็นเอกสาร (Document) Productที่ผลิตในแต่ละขั้นจะเป็นพื้นฐานสำหรับงานขั้นต่อไป สามารถตรวจสอบความถูกต้องของงานในแต่ละขั้นได้

7 ข้อดีของ Waterfall Model
แบ่งงานยากให้เป็นงานที่เล็ก ง่ายต่อการจัดการ มีการกำหนดProductที่ต้องส่งมอบในแต่ละงาน อย่างชัดเจน

8 ข้อจำกัดของ Waterfall Model
ถ้า ค้นพบข้อผิดพลาดของขั้นที่เสร็จสิ้นแล้ว ไม่สามารถแก้ไขได้ การแก้ไขจำเป็นต้องเริ่มรอบ (Iteration) ใหม่ ระหว่างการทำCoding เจอข้อผิดพลาดในงานออกแบบ ในความเป็นจริง หลังการทำงานในแต่ละขั้นควรสามารถย้อนไปแก้ไขความผิดพลาดในขั้นใดใดก็ได้ก่อนหน้า ดังนั้นในทางปฏิบัติ ขั้นตอนการทำงานใน Waterfall จึงไม่เป็นเชิงเส้น (Linear) ข้อเสียหลักคือ ลูกค้าเห็นและทดลองใช้Software ก็ต่อเมื่อถึงขั้นตอนสุดท้าย หากมีบางอย่างที่ไม่ตรงกับความต้องการของลูกค้า การแก้ไขยาก แพง เสียเวลา

9 Waterfall Model Requirement Analysis V & V Design V & V Implementation
Testing V & V Maintenance V & V

10 WHAT ????? V & V

11 Verification การตรวจสอบว่า ระบบทำงานตามที่กำหนดไว้หรือไม่ ?
Are we building the system right ? Boehm

12 Are we building the right system ?
Validation การตรวจสอบว่า ระบบสามารถทำงานตามความต้องการของผู้ใช้หรือไม่ ? Are we building the right system ? Boehm

13 Prototyping Model วิธีการหนึ่งที่ประกันว่าลูกค้าจะได้ในสิ่งที่ต้องการ และอย่างพึงพอใจ Prototype คือระบบที่สมบูรณ์หรือเป็นส่วนหนึ่งของระบบที่ส่งมอบแก่ลูกค้าได้ทดลองใช้ เพื่อให้ลูกค้าติชมตั้งแต่เนิ่นๆ ลูกค้าบอกความพอใจหรือบอกจุดที่ต้องแก้ไข Analyst และ Designer สามารถแสดงคุณสมบัติของระบบแก่ลูกค้าได้ ช่วยลูกค้ารู้ความต้องการที่แท้จริง

14 Prototyping Model

15 Prototyping Model

16 Prototyping Model

17 Specification Development Validation Initial Version Outline Description Intermediate Versions Final Version

18 หลักเกณฑ์การทำ Prototype
Prototype มีเฉพาะ Features ที่สำคัญของระบบ (ละเลยเรื่องNetwork connection, Error Handling) Prototype ต่างกับ ระบบจริง ที่ Performance และ ปริมาณของข้อมูลที่ใช้ ต้นทุนการทำ Prototype ต้องถูก การทำ Prototype หนึ่งครั้งต้องใช้เวลาน้อย

19 Prototyping Model แบ่งเป็น 2 ตระกูลขึ้นอยู่กับการนำPrototypeไปใช้
Throwaway (ดอกไม้ริมทาง) เป็นต้นแบบสำหรับการสร้างระบบจริง การImplementระบบจริงอาจต่างจากImplementationของPrototype Evolutionary (ปั้นมากับมือ) ค่อยๆ ขยายขีดความสามารถของ Prototype จนเป็นระบบที่สมบูรณ์ที่ส่งมอบ วิธีการImplementของระบบจริงกับPrototypeเหมือนกัน

20 หลักเกณฑ์การทำ Throwaway Prototype (ดอกไม้ริมทาง)
จุดหมายการทำ = Specification ที่ชัดเจน เริ่มสร้าง Prototype จากความต้องการที่ไม่ชัดเจน ค่อยๆ เพิ่มความต้องการเข้าไป Prototypeอาจจะ implement ความต้องการที่ชัดเจนอยู่แล้วก็ได้ ตัวอย่าง เขียน Functions ต่างๆที่สำคัญด้วย Lisp เมื่อได้Prototypeสุดท้าย Implement ระบบจริง ด้วย C++

21 หลักเกณฑ์การทำ Evolutionary Prototype (ปั้นมากับมือ)
จุดหมายการทำ = ระบบที่สมบูรณ์ ส่งมอบได้ เริ่มสร้างPrototype จากความต้องการที่ชัดเจน ค่อยๆ เพิ่มความต้องการที่ไม่ชัดเจนเข้าไป ตัวอย่าง เขียน Features ต่างๆที่สำคัญ เมื่อลูกค้าตรวจสอบว่าถูก จึงเพิ่ม Featuresจนได้ระบบสุดท้าย

22 ข้อดีอื่นๆของPrototype
ใช้ Train การใช้Software แก่ผู้ใช้พร้อมกับงาน Development ใช้แสดงความก้าวหน้า และความสำเร็จแก่ Project Manager

23 ข้อเสียของPrototyping Model
การทำPrototypeจะต้องมีบุคลากรที่มีความสามารถด้าน Developmentสูงเพื่อพัฒนา Prototype ได้เร็ว การเปลี่ยนแปลงหรือการเพิ่มRequirementsเพื่อสร้างPrototypeหลายVersionทำให้ได้Software Structure ที่ไม่ดี การผลิตDocumentสำหรับ Prototype ในแต่ละVersion จะเป็นการสิ้นเปลืองงบประมาณ

24 ข้อแนะนำการใช้Prototyping Model
เป็นที่ยอมรับว่าการสร้างSoftwareโดยใช้Prototype จะมีประสิทธิภาพดีกว่าการใช้ Waterfall Modelอย่างเดียว แต่จากข้อเสียด้านบน แนะนำให้ใช้Prototypingเพื่อวิเคราะห์หาRequirementsที่ชัดเจนของลูกค้าและค่อยพัฒนาSoftwareตามขั้นตอนในWaterfall Model

25 เครื่องมือสร้างPrototype
Formal, Mathematical language: LOTOS ทำ Animationได้ แต่ขาด Use Interface Prototype Very High-Level Languages: C++, Java โดยเฉพาะ Smalltalk Logic Programming: Prolog Fourth-Generation Language (4GL): คล้ายdatabase query language เช่น SQL ภาษา Script ทั้งหลาย Tcl/Tk, JavaScript Visual Basic: พัฒนาUIด้วยวิธี Drag and Drop

26 Evolutionary or Spiral Model
Customer Communication Planning Risk Analysis Engineering Construction and Release Customer Evaluation Roger s. Pressman

27 Evolutionary or Spiral Model

28 Evolutionary or Spiral Model

29 Evolutionary or Spiral Model

30 The Spiral Model พัฒนาโดย Boehm ในค.ศ 1988
แบบจำลองบันไดเวียนเป็นแบบจำลองที่รวมกระบวนการทำซ้ำของการสร้างต้นแบบ เข้ากับ Linear sequential model โดยมีการพัฒนาอย่างรวดเร็ว

31 The Spiral Model แบบจำลองบันไดเวียน แบ่งออกได้เป็นส่วนย่อยๆ โดยปกติจะแบ่งเป็น 3 ส่วน หรือ 6 ส่วนงานเช่น การติดต่อสื่อสารกันระหว่างผู้ใช้ และผู้พัฒนาระบบ การวางแผน การวิเคราะห์ความเสี่ยง วิศวกรรม การสร้างและนำไปใช้ การประเมินผลจากผู้ใช้

32 The Spiral Model (cont.)
แต่ละรอบของการทำซ้ำ วิเคราะห์ความเสี่ยง พัฒนาต้นแบบสำหรับตรวจสอบความเป็นไปได้และความต้องการ เมื่อพบความเสี่ยงผู้จัดการโครงการจะต้องตัดสินใจทีจะกำจัดหรือลดความเสี่ยง

33 The Spiral Model (cont.)
ปัญหาของการใช้แบบจำลองบันไดเวียน ในการพัฒนาซอฟต์แวร์ คือการโน้มน้าวให้ผู้ใช้ระบบเห็นชอบกับวิธีการที่เป็นกระบวนทำซ้ำแบบมีวิวัฒนาการ ความสำเร็จของการใช้ แบบจำลองบันไดเวียน ผู้พัฒนาจะต้องมีความเชี่ยวชาญในด้านการประเมินผลความเสี่ยง

34 Evolutionary or Spiral Model
เป็น model ที่ใช้ความเสี่ยงเป็นเครื่องตัดสินใจว่าจะกระทำอะไรต่อไป (risk-driven) ขั้นตอนในแต่ละรอบ วิเคราะห์เป้าหมาย แนวทางเลือกต่างๆ เงื่อนไขต่างๆ วิเคราะห์ความเสี่ยง พยายามลดความเสี่ยงนั้น เช่น ทำ Prototype เพื่อทดสอบ พัฒนา product นำ product ให้ลูกค้าทดสอบ


ดาวน์โหลด ppt แบบจำลองกระบวนการซอฟต์แวร์

งานนำเสนอที่คล้ายกัน


Ads by Google