วิศวกรรมการปล่อยคืออะไร?

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

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

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

อีกส่วนที่เป็นไปได้ของวิศวกรรมการปล่อยกำลังเตรียมแอปพลิเคชันสำหรับการแจกจ่ายให้กับลูกค้า เมื่อโปรแกรมได้รับการรวบรวมเป็นไบนารีวิธีการในการติดตั้งโปรแกรมบนคอมพิวเตอร์ของผู้ใช้ปลายทางได้รับการพัฒนาและสำรวจ สิ่งนี้อาจเกี่ยวข้องกับการเขียนโปรแกรมการติดตั้งหรือทดสอบโปรแกรมในสถานการณ์ต่าง ๆ หากมีการถ่ายทอดสดเพื่อให้แน่ใจว่าทำงานได้ตามข้อกำหนด ในบางครั้ง Release engineering เกี่ยวข้องกับการติดตั้งโปรแกรมหลายครั้งในหลาย ๆ ระบบเพื่อให้แน่ใจว่ามีการจัดการการกำหนดค่าหรือข้อผิดพลาดที่แตกต่างกันในวิธีที่เหมาะสม