आप स्प्रिंट के दौरान कितनी बार जारी करते हैं। केवल स्प्रिंट के अंत में या हर बार एक सुविधा तैयार है। और आप बगफिक्स रिलीज़ को कैसे संभालेंगे?
आप स्प्रिंट के दौरान कितनी बार जारी करते हैं। केवल स्प्रिंट के अंत में या हर बार एक सुविधा तैयार है। और आप बगफिक्स रिलीज़ को कैसे संभालेंगे?
जवाबों:
TL; DR: जब भी उचित हो रिलीज करें
जब भी कोई रिलीज़ करने में मूल्य होता है हम रिलीज़ करते हैं। कभी-कभी इसका मतलब है कि एकल फीचर या बगफिक्स के पूरा होने के बाद रिलीज करना। कभी-कभी इसका मतलब है कि सुविधाओं और / या बगफिक्स का संग्रह जारी करना।
इसका मतलब यह नहीं है कि हम अक्सर "आपात स्थिति" है कि तेजी से रिलीज की आवश्यकता है। इसका मतलब है कि हमने रिलीज़ को आसान बनाने के लिए कड़ी मेहनत की है। हमारे कोड को हर बिल्ड के साथ परीक्षण, टैग और पैक किया गया है। हम स्वचालित स्वीकृति परीक्षणों का उपयोग करते हैं और परिणामस्वरूप हमने उस कोड में विश्वास की एक उच्च मात्रा विकसित की है जो इसे परीक्षण करता है। चूँकि हमारे पैकेज तुरंत एक स्थानीय यम रेपो के माध्यम से उपलब्ध होते हैं, इसलिए एक रिलीज तैनात करना तुच्छ है।
के दौरान कभी नहीं। जो एक "स्प्रिंट" के मूल आधार का उल्लंघन करता है। आप तब तक दौड़ते हैं जब तक आप वह नहीं कर लेते जो आपने पूरा किया। आपके समाप्त होने के बाद, यह वास्तव में हो गया है और वास्तव में काम करता है। फिर आप इसे जारी कर सकते हैं।
रिलीज एक अलग तरह का स्प्रिंट हो सकता है, जहां चीजें रिलीज के लिए पैक की जाती हैं।
बगफिक्स रिलीज सिर्फ छोटे स्प्रिंट हो सकते हैं। एक ही लंबाई वाले स्प्रिंट का नियमित शेड्यूल न होना कई लोगों द्वारा एक बुरा विचार माना जाता है। इसलिए, सामान्य नियम यह है कि बग फिक्स केवल उच्च प्राथमिकता वाला काम है जो अगले के दौरान होता है स्प्रिंट के ।
यदि यह एक आपात स्थिति है, तो आपको बहुत सी चीजें चल रही हैं - समर्थन और विकास - और आपको संगठन को बदलने पर विचार करना चाहिए ताकि कम चीजें चल रही हों।
अगर टीम जिस काम के लिए प्रतिबद्ध है, वह स्प्रिंट के भीतर कई रिलीज करने के लिए अनुकूल है, तो इसे जितनी बार चाहें उतनी बार रिलीज करें।
वही दोष-मुक्त रिलीज के लिए सच है - अगर यह उन्हें रिलीज करने के लिए समझ में आता है, तो ऐसा करें।
पिछली फुर्तीली नौकरी मैंने हर स्प्रिंट जारी की थी; प्रत्येक दूसरे गुरुवार (दो सप्ताह के स्प्रिंट) पर कोड जमे हुए थे, और फिर उत्पाद को पैक किया गया था और हमारे ग्राहकों के साथ काम करने के लिए एक यूएटी सर्वर पर प्रकाशित किया गया था। यह उत्पाद के प्रारंभिक विकास के दौरान था; एक परिपक्व उत्पाद, विशेष रूप से एक वितरण योग्य कार्यक्रम और एक वेब ऐप के लिए नहीं, आप शायद अपने उपयोगकर्ताओं को हर दो से तीन सप्ताह में अपग्रेड करने के साथ बोझ नहीं बनाना चाहेंगे।
वस्तुतः हमारे सभी रिलीज में कहानी के अंक और दोष (बग) का मिश्रण शामिल था। दोषों को "गैर-आदर्श घंटे" के रूप में गिना जाता है; एक कार्यदिवस में 5 आदर्श घंटे हैं, जिसका अर्थ है नए बिंदु के काम का सिर-डाउन कोडिंग। दिन में तीन से चार घंटे बैठकें, चर्चाएं, डिजाइन, कभी-कभी "स्पाइक्स" (केंद्रित अनुसंधान / प्रमाण-अवधारणा विकास), और दोष कार्य होते हैं; सामान जो एक बेहतर उत्पाद में योगदान देता है और प्रक्रिया का एक आवश्यक हिस्सा है, लेकिन बस पूरी टीम के पूरे स्प्रिंट को नहीं उठा सकता है। जब हमने केवल दोष-विमोचन किया था, तब आईपीएम के रूप में बैकलॉग में कोई कहानी-बिंदु उपलब्ध नहीं था; फिर हमने बस एक क्यूए स्प्रिंट निर्धारित किया, जहां हमें "जितने दोष आप मार सकते हैं, उतने" करने का निर्देश दिया गया था। क्योंकि जाने के लिए तैयार होने की आवश्यकता नहीं है, हमेशा PO की गलती है (और PO ग्राहकों के लिए काम करता है), हम बस एक अनुबंध परिवर्तन नोटिस जारी कर सकते हैं और हमारे पास जो भी था उसके साथ काम कर सकते हैं। बेशक, एक बार वास्तविक कहानी का काम खत्म हो गया था और हम "वारंटी" विकास में थे, दोष सभी थे।
एक अच्छी तरह से प्रबंधित फुर्तीली परियोजना में, आवश्यकताओं से बाहर चलना कभी नहीं होना चाहिए; बैकलॉग में हमेशा एक स्प्रिंट के लायक काम होना चाहिए जो चुनने के लिए तैयार हो। लेकिन, कभी-कभी पीओ को उत्पादन की आवश्यकताएं पूरी हो जाती हैं; आवश्यकताओं की गुणवत्ता या कहानी के टकराव से संबंधित कारणों के लिए कभी-कभी बीए / परीक्षक विकास बैकलॉग के लिए कहानियों की रिहाई को रोकते हैं; कभी-कभी एक टीम तय करती है कि उन्हें एक कहानी पर "पंट" करना है जो अच्छी तरह से परिभाषित या अच्छी तरह से अनुमानित नहीं थी, और ऐसा कुछ नहीं है जो आसानी से शेष चक्रों को उठा सकता है। संक्षेप में, एजाइल में भी, गंदगी होती है।
रिलीज से आपका क्या मतलब है? यदि आप PSP का मतलब है - शायद shippable उत्पाद आपके पास दो विकल्प हैं:
लेवल 2 और लेवल 3 के बीच मुख्य अंतर यह है कि लेवल 2 में आपको स्प्रिंट के अंत में अंतिम पीएसपी बनाने के लिए कुछ प्रयास करने होंगे, लेकिन लेवल 3 में आप कुछ पैसे और प्रयास शुरू में अपने टूल और कॉन्फ़िगरेशन में डालते हैं और आपने PSP तैयार किया है स्वचालित रूप से हर समय = इसमें कोई मैनुअल प्रयास शामिल नहीं है। पूरी तरह से स्तर 3 प्राप्त करना दुर्लभ है।
स्क्रम में बिल्कुल कोई नियम नहीं है कि नई सुविधाओं को कब तैनात किया जा सकता है। प्रत्येक टीम को "किए गए परिभाषा" की आवश्यकता होती है, जिसमें हमेशा परीक्षण के बारे में कुछ मानदंड शामिल होने चाहिए। एक बार एक विशेषता "हो जाने" के बाद, यह वास्तविक दुनिया के लिए तैयार है और यदि कोई अन्य निर्भरता या स्थितियां नहीं हैं, जिन्हें तैनात करने से पहले पूरा करने की आवश्यकता है, तो स्प्रिंट के अंत की प्रतीक्षा करने का कोई कारण नहीं है इसे तैनात करें।
जिसका कोई भी मतलब नहीं है कि इसे स्प्रिंट समीक्षा / योजना बैठक में प्रस्तुत नहीं किया गया है। अवधारणा यह है कि टीम ने जो कुछ भी पूरा किया है, वह पीओ (और अन्य ग्राहक एसएमई) को दिखाया गया है ताकि वे इसे विकसित होने वाली प्रणाली की अपनी बढ़ती समझ में शामिल कर सकें।
कुछ हफ़्ते के बाद हमें एक अच्छा समाधान मिला जो हमारी ज़रूरतों को पूरा करता है। हम जब चाहें तब रिलीज करने का फैसला करते हैं। हम यह कैसे करते हैं:
बस। हम git और maven को CI सिस्टम के रूप में उपयोग करते हैं और हमारे पास एक अच्छा परीक्षण कवरेज है। ऐसा कौन सा कारण है जो हम इस तरह कर सकते हैं।
एक सवाल का जवाब देना जो लगभग 2 साल पुराना है, थोड़ा बेमानी हो सकता है, लेकिन उम्मीद है कि इस सवाल पर आने वाले अन्य लोगों के लिए मूल्य जोड़ने के लिए मैं एक 2cent या तो जोड़ना चाहूंगा। :)
प्रश्न का उत्तर देने के लिए: आपको अधिमानतः उस स्प्रिंट के अंत में स्प्रिंट में क्या प्रतिबद्ध था, जारी करना चाहिए। ऐसा करने से घोटाले के अन्य सभी हिस्सों / प्रक्रियाओं / दिशानिर्देशों के साथ संबंध स्थापित हो जाता है जो सही समय पर सर्वोत्तम व्यावसायिक मूल्य प्राप्त करने के लिए तैयार है।
लेकिन आपात स्थिति, बग, अप्रत्याशित घटनाएं आदि आपके हाथ को प्रभावित कर सकती हैं, जो कि "रिलीज प्लानिंग" की अवधारणा के काम आ सकती है। "रिलीज़ प्लानिंग" से मेरा मतलब जलप्रपात-प्रकार-नियोजन नहीं है, बल्कि अपेक्षाओं का नियोजन है जो उत्पाद के बैकलॉग और कहानियों की प्राथमिकता का प्रबंधन करने में मदद कर सकता है।
लेकिन शायद डेविड के सवाल पर टिप्पणी सबसे अच्छी बात है। स्क्रम हमेशा सही उत्तर नहीं होता है।