मैं एक बहुत बड़ी इंटरनेट कंपनी में रिलीज मैनेजमेंट टीम पर काम करता हूं। हम उस प्रक्रिया का अनिवार्य रूप से उपयोग करते हैं, जिसे आपने ऊपर उल्लिखित किया है, और हमने उस प्रक्रिया को उद्देश्य से चुना है। हमारे कार्यप्रणाली में, स्टेजिंग उत्पादन में परीक्षण के अंतिम स्तर के लिए एक शाखा तंत्र के रूप में कार्य करता है।
जाहिर है कि आप उत्पादन करने से पहले सभी परीक्षण करना चाहते हैं, लेकिन उपयोगकर्ताओं के बहुत सारे के साथ एक बड़े, जटिल वातावरण में, यह बहुत मुश्किल लक्ष्य है। विशेष रूप से, क्यूए में परीक्षण सॉफ़्टवेयर को पर्याप्त रूप से लोड करना लगभग असंभव है। कार्यात्मक परीक्षण लोड परीक्षण की तुलना में स्वचालित करने के लिए बहुत आसान है। जब आपके पास कई हजारों उपयोगकर्ता आपके सर्वर से टकराते हैं, तो चीजें अजीब और कठिन तरीके से भविष्यवाणी करने में विफल हो जाती हैं।
तो यहाँ हम क्या करते हैं:
- विकास
- निरंतर एकीकरण और स्वचालित परीक्षण शामिल है
- परीक्षण जारी करें
- मेरा समूह स्वयं रिलीज़ का विश्लेषण करता है
- स्थापित लॉग की समीक्षा करना
- परीक्षण रोलबैक
- क्यूए
- उपयोगकर्ता स्वीकृति परीक्षण
यह वह बिंदु है जिस पर हम मचान और उत्पादन के बीच शाखा करते हैं। हम रिलीज के लिए एक ट्रेन मॉडल का उपयोग करते हैं, हर कुछ हफ्तों में एक नई ट्रेन शुरू होती है। यहां तक कि गिने-चुने गाड़ियां स्टेजिंग सर्वर (जो उत्पादन में हैं) पर जाती हैं। विषम संख्या वाली ट्रेनें नहीं होती हैं।
यहां तक कि ट्रेनों के बीच, डेवलपर्स के पास स्टेजिंग सर्वर पर व्यक्तिगत परिवर्तनों को धकेलने की क्षमता होती है ( उन परिवर्तनों के बाद QA द्वारा निश्चित रूप से परीक्षण किया गया है)। यह उन्हें मान्य करने की अनुमति देता है कि उनका सॉफ़्टवेयर वास्तविक उत्पादन वातावरण में अपेक्षित रूप से प्रदर्शन करता है। यह आमतौर पर उन घटकों के लिए आरक्षित होता है जिन्हें उच्च जोखिम माना जाता है, हम हर छोटे टुकड़े को मंचन के लिए धक्का नहीं देते हैं।
फिर, हर कोई समझता है कि जब अगली ट्रेन भी शुरू होगी, तो यह पता चलेगा कि स्टेजिंग सर्वर पर क्या है और उन्हें ट्रेन लाइन में वापस सेट करें। डेवलपर्स या तो यह सुनिश्चित करते हैं कि उनके परिवर्तन ट्रेन में हो गए, या तय करें कि वे अभी तक सामान्य उपयोग के लिए तैयार नहीं हैं, इस स्थिति में उन परिवर्तनों को केवल स्टेजिंग सर्वर पर मिटा दिया जाता है।
संक्षेप में, संक्षिप्त उत्तर (कम से कम हमारे लिए) यह है कि क्यूए में जटिल प्रणालियों का पूरी तरह से परीक्षण करना असंभव है। स्टेजिंग सीमित उत्पादन परीक्षण करने का एक सुरक्षित तरीका प्रदान करता है।
संबंधित नोट पर, यहां एक प्रस्तुति से मेरी स्लाइड्स हैं जो मैंने अभी दी थी कि हमारी रिलीज़ प्रक्रिया कैसे काम करती है।