Extreme programming

Extreme programming (XP) เป็นระเบียบวิธีการพัฒนาซอฟต์แวร์ที่เป็นหนึ่งในระเบียบวิธีที่เป็นที่รู้จักมากที่สุดในกลุ่มวิธีการพัฒนาซอฟต์แวร์แบบเอจายล์ (Agile software development)  XP เป็นระเบียบวิธีที่มีจุดเด่นในแนวทางปฏิบัติที่นำไปสู่ความสำเร็จทางด้านคุณภาพของซอฟต์แวร์ในโครงพัฒนาขนาดเล็ก โดยความสำเร็จนี้มาจากรูปแบบของ XP เองซึ่งมุ่งเน้นการมีส่วนร่วมอย่างเข้มข้นของลูกค้าที่ประจำอยู่ในโครงการ (On-site customers) มากกว่าการวิเคราะห์ความต้องการเพื่อทำเอกสารกำหนดความต้องการไว้ล่วงหน้า อีกทั้งการพุ่งเป้าไปที่การทดสอบโปรแกรม และการลดขั้นตอนการออกแบบให้น้อยลง

Extreme programming เป็นระเบียบวิธีการชนิดเบา (lightweight methodology) ในการพัฒนาซอฟต์แวร์  ของกลุ่มระเบียบวิธีเอจายล์ ที่กระชับและคล่องแคล่ว มุ่งเน้นการปฏิบัติการไปที่การเขียนโปรแกรม (Coding), การสื่อสาร (communication), การตอบกลับ (feedback), ความเรียบง่าย (simplicity) และ การแก้ปัญหา (problem solving) นอกจากนี้ XP ยังสนับสนุนการปฏิบัติการที่ดีที่สุดทางวิศวกรรม (best engineering practices) และยังรองรับการเปลี่ยนแปลงความต้องการ (requirements) อย่างรวดเร็วและกระชั้นชิดจากการโต้ตอบกับลูกค้าที่ประจำในโครงการได้อย่างรวดเร็วเช่นเดียวกัน เมื่อเทียบกับระเบียบวิธีการแบบสกรัม (Scrum) ซึ่งเป็นที่นิยมที่สุดของกลุ่มระเบียบวิธีการแบบเอจายล์แล้ว XP จะพุ่งเป้าไปที่การปฏิบัติการ (practices) ในขณะที่สกรัมจะเน้นที่การบริหารโครงการมากกว่า

ค่านิยมหลัก (Core Value)

การสื่อสาร (Communication)

ความเรียบง่าย (Simplicity)

การตอบกลับ (Feedback)

ความกล้า (Courage)

หลักการ (12 XP Principles)

ขั้นตอน (8 XP Activities)

อ้างอิง

ดูเพิ่ม
 เอจายล์ (การพัฒนาซอฟต์แวร์)
 สกรัม
 Agile Unified Process

การเขียนโปรแกรม
กระบวนการพัฒนาซอฟต์แวร์
การพัฒนาซอฟต์แวร์แบบเอจายล์