PART III: INTRODUCTION (ภาค 3: บทนำ)
ใน ภาคนี้ เรามีเป้าหมายที่จะสร้างแนวทางปฏิบัติทางเทคนิคและสถาปัตยกรรมที่จำเป็นในการทำให้เกิดและรักษาการไหลของงานจากฝ่ายพัฒนาไปยังฝ่ายปฏิบัติการอย่างรวดเร็ว โดยไม่ก่อให้เกิดความโกลาหลและการรบกวนต่อสภาพแวดล้อมใน production หรือลูกค้าของเรา ซึ่งหมายความว่าเราจำเป็นต้องลดความเสี่ยงที่เกี่ยวข้องกับการ deploy และ release การเปลี่ยนแปลงต่างๆ ขึ้นสู่ production เราจะทำสิ่งนี้ได้ด้วยการนำชุดแนวทางปฏิบัติทางเทคนิคที่เรียกว่า continuous delivery มาใช้
Continuous delivery ประกอบไปด้วยการสร้างรากฐานของ deployment pipeline อัตโนมัติของเรา การทำให้แน่ใจว่าเรามี automated tests ที่คอยตรวจสอบอย่างต่อเนื่องว่าเราอยู่ในสถานะที่พร้อม deploy ได้ การให้ developers รวมโค้ดของพวกเขาเข้าสู่ trunk branch ทุกวัน และการออกแบบสถาปัตยกรรมของสภาพแวดล้อมและโค้ดเพื่อให้สามารถ release ที่มีความเสี่ยงต่ำได้ ประเด็นหลักในบทเหล่านี้ได้แก่:
• การสร้างรากฐานของ deployment pipeline ของเรา
• การทำให้ automated testing รวดเร็วและเชื่อถือได้
• การเปิดใช้และฝึกปฏิบัติ continuous integration และการทดสอบอย่างสม่ำเสมอ
• การทำให้ release ที่มีความเสี่ยงต่ำเป็นไปโดยอัตโนมัติ และการออกแบบสถาปัตยกรรมเพื่อรองรับ
การนำแนวปฏิบัติเหล่านี้มาใช้จะช่วยลดระยะเวลาในการเข้าถึงสภาพแวดล้อมที่ใกล้เคียง production ช่วยให้เกิดการทดสอบอย่างต่อเนื่องที่ให้ feedback แก่ทุกคนอย่างรวดเร็วเกี่ยวกับงานของพวกเขา ช่วยให้ทีมขนาดเล็กสามารถพัฒนา ทดสอบ และ deploy โค้ดของตนขึ้นสู่ production ได้อย่างปลอดภัยและเป็นอิสระ และทำให้การ deployment และ release สู่ production กลายเป็นส่วนหนึ่งของงานประจำวันตามปกติ
ยิ่งไปกว่านั้น การผสานวัตถุประสงค์ของ QA และ Operations เข้าไปในงานประจำวันของทุกคนจะช่วยลดภาระในการแก้ปัญหาเฉพาะหน้า ความยากลำบาก และงานที่เหนื่อยหน่าย พร้อมทั้งทำให้ผู้คนมีประสิทธิผลมากขึ้นและเพิ่มความสุขในงานที่เราทำ เราไม่เพียงแค่ปรับปรุงผลลัพธ์ให้ดีขึ้นเท่านั้น แต่องค์กรของเรายังสามารถตอบสนองต่อการเปลี่ยนแปลงได้ดีขึ้นและบรรลุภารกิจในการชนะในตลาดได้อีกด้วย