คำตอบ คือไม่ใช่ครับ XP เมื่อพูดถึงการพัฒนาซอฟต์แวร์ จะนึกถึงความสำเร็จ นึกถึงความเร็วในการพัฒนา และคุณภาพของซอฟต์แวร์ เพราะฉะนั้น XP ในตรงนี้ก็เป็นกระบวนการ วิธีการการพัฒนาซอฟต์แวร์อีกแบบหนึ่งที่จะนำเสนอ ดังนั้น XP จึงย่อมาจาก extreme programming
XP เป็นกระบวนการที่มีลำดับขั้นตอนเช่นเดียวกัน ดังนี้
1. Collecting user stories เป็นการเก็บรวบรวมเรื่องราวความต้องการของลูกค้า จริง ๆ แล้วการทำแบบอื่นๆ ก็เน้นแบบนี้เช่นกัน แต่กระบวนการรวดเร็วกว่า ใช้กระดาษโน้ตแผ่นเล็ก ๆ ให้ผู้ใช้ระบบเขียนความต้องการ โดยไม่มีการพูดคุยด้านเทคโนโลยี หรือฐานข้อมูล หรืออัลกอริทึ่ม เป็นการพูดคุยกันระหว่างโปรแกรมเมอร์กับผู้ใช้โดยตรง โดยไม่ผ่านนักวิเคราะห์ระบบ เมื่อโปรแกรมเมอร์ ทราบความต้องการแล้วรวบรวมจำนวน stories นำมากำหนดวันแล้วเสร็จในงานนั้น ๆ เพื่อกำหนดวันส่งมอบต่อไป
2. Create Spike Solution เป็นการนำเอา user stories มาหากระบวนการแก้ปัญหาด้วยวิธีการทางการเขียนโปรแกรม โดยเน้นการเขียนโปรแกรมแบบง่าย ๆ ไม่ต้องซับซ้อน ถ้าแก้ปัญหาคนเดียวไม่ได้ แนะนำให้ใช้วิธีการ Pair Programming เพื่อลดความเสี่ยงที่เกิดขึ้น
3. Release Planning เป็นการวางแผนการดำเนินงานทั้งหมดจนแล้วเสร็จ กระทั่งส่งมอบงานให้ผู้ใช้ วิธีการคือให้นำ user stories ทั้งหมดนำมาให้ทีมโปรแกรมเมอร์พิจารณางานแล้วเสร็จ โดยพิจารณาตาม story แต่ละ story แล้วบวก ลบ 20 % จะได้วันแล้วเสร็จ
4. Iteration Planning ขั้นตอนนี้เป็นการทำซ้ำแล้วซ้ำอีก เพราะ XP ใช้วิธีการส่งมอบงานไปเรื่อย ๆ เมื่องานก้าวหน้าแต่ละ story แล้วทดสอบระบบเมื่อผ่านเรียบร้อย จึงส่งมอบงานและนำ story ใหม่มาทำอีก แต่งานเดิมทดสอบไม่ผ่านต้องทำซ้ำ ให้ดูภาพประกอบ
ที่มา : www.extremeprogramming.org
5. Development หมายถึงขั้นตอนการพัฒนาระบบเป็นการเขียนชุดคำสั่ง แต่ XP Model จะมีกระบวนการย่อยเพิ่มขึ้น เช่น มีการ Stand up meeting เป็นการพูดคุยกันก่อนการทำงานในแต่ละวันเพื่อหาปัญหาและวิธีแก้ปัญหา และนอกจากนี้ยังนำเอาวิธีการที่เรียกว่า Pair Programming มาใช้ในการพัฒนาด้วย
6. Acceptance Tests เป็นกระบวนการทดสอบจากผู้ใช้ ที่ผู้ใช้ได้กำหนดความต้องการเอาไว้ ว่าถูกต้องตรงกันหรือไม่ มีคุณภาพหรือไม่ กระบวนการตรวจสอบคุณภาพก็อยู่ในกระบวนการนี้ด้วย โดยจะต้องมีทีมตรวจสอบคุณภาพมาจากภายนอกด้วย แต่ต้องทำงานอย่างใกล้ชิดกับทีมพัฒนาโปรเจ็คนี้ด้วย
7. Small Releases การส่งมอบงานไปทีละขั้น ทีละฟังก์ชันเป็นเรื่องภาพลักษณ์ทางธุรกิจที่ดี ทำให้ผู้ใช้มองเห็นความก้าวหน้าของโปรเจ็ค เห็นความน่าเชื่อถือทีมพัฒนา และเมื่อเจอปัญหาอีกจะได้เร่งแก้ไขแต่เนิ่น ๆ
ไม่มีความคิดเห็น:
แสดงความคิดเห็น