การพัฒนาซอฟต์แวร์แบบเอจายล์

**การพัฒนาซอฟต์แวร์แบบเอจายล์** (อังกฤษ: Agile software development) ประกอบด้วยวิธีการต่าง ๆ ในการพัฒนาซอฟต์แวร์ ภายใต้ข้อกำหนดและแนวทางการพัฒนาที่ทีมทำการพัฒนาและร่วมกัน โดยเป็นความร่วมมือภายในทีม ระหว่างทีมแบบข้ามสายงาน และ เป็นการพัฒนาร่วมกับลูกค้า/ผู้ใช้งานปลายทาง เอจายล์เน้นการวางแผนแบบประยุกต์ (Adaptive planning), การพัฒนาแบบก้าวกระโดด (Evolutionary development), การส่งมอบก่อนกำหนด (Early delivery) และ การปรับปรุงอย่างต่อเนื่อง (Continual improvement) โดยสนับสนุนการตอบสนองแบบรวดเร็วและยืดหยุ่นต่อความเปลี่ยนแปลง

คำว่า Agile ได้รับความนิยมจากถ้อยคำแถลง ในปี ค.ศ. 2001 ชื่อ *[https://agilemanifesto.org/iso/th/manifesto.html คำแถลงอุดมการณ์แห่งอไจล์]* (Manifesto for Agile Software Development) โดย Beck, Kent และคณะ ซึ่งหลักการและค่านิยมต่าง ๆ ที่อยู่ในคำแถลงดังกล่าวมีที่มาจากขอบเขตการพัฒนาซอฟต์แวร์ (Software development framwork) ที่หลากหลาย เช่น Scrum และ Kanban

## ความสำคัญของเอจายล์
กระบวนการทำงานแบบเอจายล์จะช่วยให้ทำงานได้เร็วขึ้น ลดการทำงานที่เป็นขั้นตอนและงานด้านเอกสาร มุ่งเน้นเรื่องการสื่อสารกันในทีมให้มากขึ้น ร่วมกันพัฒนาผลิตภัณฑ์ให้เร็วขึ้น แล้วนำผลิตภัณฑ์มาทดสอบ และเก็บผลตอบรับ (Feedback) เพื่อกลับไปแก้ไขปรับปรุง ซึ่งจะทำให้สามารถพัฒนาผลิตภัณฑ์ได้รวดเร็วและตอบโจทย์ผู้ใช้งานมากขึ้น

## คำแถลงอุดมการณ์แห่งอไจล์

### ค่านิยมการพัฒนาซอฟต์แวร์แบบเอจายล์
จากประสบการณ์ร่วมกันของผู้ร่วมลงนาม 17 คนในคำแถลงอุดมการณ์แห่งอไจล์ ในการพัฒนาซอฟต์แวร์และการช่วยเหลือผู้อื่นพัฒนาซอฟต์แวร์ ผู้ลงนามในสิบเจ็ดคนในแถลงการณ์ประกาศว่าพวกเขาให้ความสำคัญ 4 ประการในการพัฒนาซอฟต์แวร์:

#**คนและการมีปฏิสัมพันธ์กัน** มากกว่าการทำตามขั้นตอนและเครื่องมือ
#**ซอฟต์แวร์ที่นำไปใช้งานได้จริง** มากกว่าเอกสารที่ครบถ้วนสมบูรณ์
#**ร่วมมือทำงานกับลูกค้า** มากกว่าการต่อรองให้เป็นไปตามสัญญา
#**การตอบรับกับการเปลี่ยนแปลง** มากกว่าการทำตามแผนที่วางไว้

อธิบายคือ พวกเขาให้ความสำคัญกับทั้งสองอย่าง ใแต่ว่าให้ความสำคัญสิ่งที่เขียนอยู่ด้านซ้าย มากกว่าสิ่งที่เขียนอยู่ด้านขวา

ผู้ลงนามบางคนได้จัดตั้ง พันธมิตร Agile Alliance ซึ่งเป็นองค์กรไม่แสวงหาผลกำไรที่ส่งเสริมการพัฒนาซอฟต์แวร์ตามคุณค่าและหลักการของแถลงการณ์

### หลักการเบื้องหลังคำแถลงอุดมการณ์แห่งอไจล์
คำแถลงอุดมการณ์แห่งอไจล์มีรากฐานจากหลักการ 12 ข้อ ตามที่กล่าวในคำแถลงการ ประกอบด้วย:

# ความสำคัญสูงสุดของพวกเราคือความพึงพอใจของลูกค้าที่มีต่อการส่งมอบซอฟต์แวร์ที่มีคุณค่าต่อลูกค้า ตั้งแต่ต้นอย่างต่อเนื่อง
# ยอมรับการเปลี่ยนแปลงความต้องการของลูกค้าแม้ในช่วงท้ายของการพัฒนาเพราะอไจล์สามารถแปรเอาความเปลี่ยนแปลง มาเป็นความได้เปรียบในการแข่งขันของลูกค้า
# ส่งมอบซอฟต์แวร์ที่ใช้งานได้จริงอย่างสม่ำเสมออาจเป็นทุกสองถึงสามสัปดาห์หรือทุกสองถึงสามเดือนโดยควรทำให้ระยะเวลาระหว่างการส่งมอบนั้นสั้นที่สุดเท่าที่เป็นไปได้
# ตัวแทนจากฝ่ายธุรกิจและนักพัฒนาจะต้องทำงานร่วมกันเป็นประจำทุกวันตลอดโครงการ
# ทำให้แน่ใจว่าสมาชิกโครงการเข้าใจและมีจุดมุ่งหมายของโครงการร่วมกันสร้างสภาวะแวดล้อมและให้การสนับสนุนในสิ่งที่พวกเขาต้องการและให้ความไว้วางใจแก่พวกเขาในการที่จะทำงานให้บรรลุเป้าหมายนั้น
# วิธีที่มีประสิทธิภาพและประสิทธิผลสูงสุดในการถ่ายทอดข้อมูลต่างๆไปสู่ทีมพัฒนาและภายในทีมพัฒนาเองคือการพูดคุยแบบซึ่งหน้า
# ซอฟต์แวร์ที่ใช้งานได้จริงเป็นตัวหลักในการวัดความก้าวหน้าของโครงการ
# กระบวนการอไจล์สนับสนุนให้เกิดการพัฒนาแบบยั่งยืน กล่าวคือผู้สนับสนุนนักพัฒนา และตัวแทนผู้ใช้ ควรจะสามารถรักษาอัตราเร็วในการทำงานร่วมกันให้คงที่ได้ตลอดไป
# การใส่ใจในความเป็นเลิศทางเทคนิคและงานออกแบบที่ดีอย่างต่อเนื่องจะช่วยเพิ่มความเป็นอไจล์
# ความเรียบง่าย หรือศิลปะในการทำงานอย่างพอเพียง นั้นสำคัญยิ่ง
# สถาปัตยกรรมซอฟต์แวร์ ความต้องการของลูกค้า และงานออกแบบที่ดีที่สุด เกิดจากทีมที่บริหารจัดการตัวเองได้
# ทุกช่วงเวลาหนึ่งเป็นประจำ ทีมจะต้องย้อนกลับไปตรองดูสิ่งที่ผ่านมา เพื่อหาทางที่จะพัฒนาความมีประสิทธิผลของทีม แล้วนำสิ่งเหล่านั้นมาปรับปรุงและเปลี่ยนแปลงพฤติกรรมของทีม


## อ้างอิง

หมวดหมู่:กระบวนการพัฒนาซอฟต์แวร์