DevOps โดยความหมายในเชิงปฎิบัติฯ คือ Culture ของการพัฒนาระบบ หรือ แอปพลิเคชั้น ขององค์กรเพื่อตอบสนองความต้องการทางด้าน Business ที่ต้องการที่ต้องการแอฟพลิเคชั้นเพื่อรองรับการใช้งานของลูกค้าได้รวดเร็ว (Time to Market) มีคุณภาพและปรับเปลี่ยนเพื่อรองรับความต้องการที่เปลี่ยนแปลงได้ทันท่วงที การทำ DevOps เลยเป็นแนวทางปฎิบัติเพื่อลดความซับซ้อนในเชิงโครงสร้างของระบบ IT ในการพัฒนาแอปพลิเคชั่นแบบเดิมๆที่ต้องผ่านการประสานงานหลายทอด (SA, Programmer, Architecture, DBA, Network Administrator, Engineer, Security Team etc) ให้ทีมงาน DevOps มองเห็นภาพเดียวกันและทำงานร่วมกันในลักษณะของ Working Group ทำให้การทำงานไม่ซับซ้อนเปิดโอกาสให้มีการดึงศักยภาพของทุกคนมาใช้ได้อย่างเกิดประโยชน์สูงสุด
จากวัตถุประสงค์ข้างต้นการพัฒนาแอปพลิเคชั่นเราจะใช้เครื่องมือเพื่อให้ Working Group ทำงานในกระบวนการพัฒนาแอปพลิเคชั่นได้อย่างมีประสิทธิภาพ โดยใช้แนวคิดแบบ Agile Development โดยใช้กรอบการทำงาน (Framework) แบบ Scrum ซึ่งมี keywork ดังนี้
– เริ่มพัฒนาทีละส่วนในแต่ละรอบ (Spin)โดยเรียงตามความสำคัญ (Priority) ซึ่งเราไม่จำเป็นต้องพัฒนาแอปทุกฟังก์ชั่นพร้อมๆกันทั้งหมดแต่เลือกพัฒนาส่วนที่จำเป็นและมีความสำคัญมากก่อนโดย Product Owner จะเป็นผู้เลือกตามข้อมูลที่ Scrum Master / Working Group เห็นพ้องต้องกัน จากนั้นจึงค่อยวางแผนอย่างต่อเนื่องว่า Spin ถัดไปเราจะ Delivery อะไร
– Change alway welcome การเปลี่ยนแปลงเกิดขึ้นได้ตลอดเวลา Working Group ต้องพร้อมรองรับการเปลี่ยนแปลงทุกเมื่อ
– Fail Fast / Resolve Fast พร้อมที่จะพบปัญหาและข้อผิดพลาดและปรับปรุงแก้ไขปได้อย่างรวดเร็ว
– Focus output not process เน้นที่ผลลัพธ์ในการส่งมอบแอปพลิเคชั่นไม่ใช่กระบวนการ
– Delivery Fast with continuious process เน้นการส่งมอบแอปพลิเคชั่นที่รวดเร็วและต่อเนื่องเพื่อตอบสนอง business need พร้อมทั้งสามารถวางแผนและคาดการ์ณได้ว่าจะได้รับแอปพลิเคชั่นเวอร์ชั่นใหม่เมื่อไหร่ อาทิเช่น New application deployment 2 times per day