สรุปเนื้อหาวิชาที่เรียน
สารบัญ
สมาชิกในห้อง
บทที่5 เรื่องSoftware Process Model Process – เป็นกระบวนการ ลำดับของขั้นตอนต่าง ๆ ในการ ดำเนินงานการพัฒนาและบำรุงรักษาซอฟต์แวร์ - เป็นพื้นฐานที่ใช้พัฒนาระบบ Waterfall Model•เหมาะกับ Project ที่มีขนาดใหญ่
•Waterfall Model แบ่งกระบวนการทำงานออกเป็นขั้นตอนต่าง ๆ ขั้นตอนในแต่ละช่วงจะสืบเนื่องกันไปจากขั้นหนึ่งสู่อีกขั้นหนึ่งตามลำดับเหมือนสายน้ำตก สามารถย้อนกลับไปปรับปรุงขั้นตอนก่อนหน้าได้ตามลำดับ
•ข้อดี Project มีความถูกต้องและตรงตามความต้องการ การควบคุมเป็นอย่างมีประสิทธิภาพ
ข้อเสีย ใช้ระยะเวลานาน RAD (Rapid Application Development) •วิธีการและเครื่องมือที่ทำให้การพัฒนาระบบเร็วขึ้นโดยเฉพาะระบบที่มี user เข้ามาเกี่ยวข้องเป็นส่วนสำคัญ เช่น การนำโปรแกรมเก่ามาเรียบเรียงใหม่ RAD สามารถทำให้โปรแกรมเสร็จเร็ว เวลาทำควรอยู่ใน 60-90 วัน โดยใช้ Tool ต่าง ๆ เช่น Case Tool เน้นที่ Business Requirement โดยเร่งทำ Requirement หลักก่อน
Joint Application Development (JAD)
•เป็นแนวคิดของของบริษัท IBM คือทำอย่างไรให้คนที่เกี่ยวข้องกับ Requirement มาตัดสินใจร่วมกัน โดยทำแบบ Workshop ร่วมกัน
•คนที่จะมาร่วมปรึกษาหารือกันตัดสินใจร่วมกัน ได้แก่
–Euceutive Sponsor - ผู้บริหารระดับสูง เชิญมาเพื่อมีอำนาจในการตัดสินใจ
–Project Manager หรือ Project Leader
–Facilitator เช่น Consultant หรือ ผู้ที่เคยทำ , คนในองค์กรที่มีประสบการณ์
–Recorder / Clerk / Secretary เช่น คนจดรายงาน
–Participants คนที่เกี่ยวข้อง เช่น user ที่เกี่ยวข้อง
–IT Development เช่น โปรแกรมเมอร์ Observers ผู้สังเกตการณ์
V-Process Model
•คล้ายกับ Waterfall Model ข้อดีคือ จะมีการทดสอบ ทำให้สามารถแก้ไขปัญหาที่เกิดขึ้นได้
Prototyping Model การทำ Prototypes มี 2 แบบ 1.Throw – away prototypes ได้แก่ prototypes ที่ทำให้ user มองเห็นภาพของระบบ เช่น หน้าจอ ไม่จำเป็นต้องใช้เครื่องที่ Implement จริง ๆ ทำเสร็จยกเลิกไป โดยส่วนใหญ่ใช้ Desktop ทำ Prototypes
2.Evalutionary Prototypes เป็น Prototypes ใช้ทำงานกับSoftware และเครื่องที่ใช้งานจริง ส่วนมากใช้กับ user ที่อยู่ในหน่วยงานเดียวกัน โปรแกรมอาจเสร็จทีละส่วน แล้วให้ user ทดสอบโดยไม่ต้องรอให้เสร็จทั้งหมด
ข้อดีของการทำ Prototypes •เรียนรู้จาก Software จริง
•ช่วยสื่อสารระหว่าง user กับ Developer เพื่อทำให้ทราบว่างานก้าวหน้าไปถึงไหน
•user มีส่วนร่วมในการทำ
•ทำให้ Requirement ชัดเจน (ใช่หรือไม่ ที่ต้องการ)
•การ Test Prototypes ทำให้ Project สมบูรณ์
•ลดความต้องการ Document-user เห็นแล้วเข้าใจ
•ลดต้นทุนในการ Maintenance - user เคยเห็นแล้ว จะทำให้ลดต้นทุน , ค่าใช้จ่าย ในการ Maintenance ลงเหลือ 10-20 % ส่วนใหญ่ Maintenance ในส่วนของ Error
•ลดข้อจำกัดของ Feature ต่างๆ ในการทำงาน
•ทำให้เห็นผลลัพธ์ว่าเป็นอย่างไร
ข้อเสียของ Prototypes
user เห็น Prototypes เข้าใจว่าเสร็จแล้ว มักต้องการรู้ว่าจะใช้ได้เมื่อไหร่
ไม่มี Security , Response Time
ควบคุมยาก เมื่อเห็นแล้ว user มักจะมีการเปลี่ยนแปลง Requirement
เสียเวลาและค่าใช้จ่ายในการทำ Prototypes
ประสิทธิภาพของจริงกับ Prototype ต่างกันได้ เช่น Prototypes เร็ว ของจริง ช้า , Prototypes ช้าของจริงเร็ว
user กับ Developer ไม่ได้อยู่ที่เดียวกันทำให้ไม่สะดวกในการทำPrototype
รูปแบบของการทำ Prototypes
•Mock – ups ทำหน้าจอให้เห็น แต่ใช้จริงไม่ได้ (ใช้อธิบาย)
•Simulated Interaction จำลองการใช้งานจริง เช่น การกรอกข้อมูล การเรียกใช้ข้อมูล แต่ใช้งานจริงไม่ได้ (วิธีนี้นิยมมาก)
•Partial working Model แบ่งเป็น
–Vertical (ลึก) สามารถใช้งาน Feature บางส่วนได้จริง (ไม่ทั้งหมด) ใช้กับ Simulate
–Horizontal (กว้าง) มี Feature ครบ ทำให้ทราบว่ามี Feature อะไรบ้าง แต่ใช้งานไม่ได้ทั้งหมด (ไม่ลึก) ใช้กับ Mock – up
Incremental Model
Incremental Model คือ การนำ Project ใหญ่มาแบ่งเป็นส่วนๆ และ Implement เป็นส่วนๆ
|
|