2009-01-27 19 views
8

वर्तमान में, हम हमारे सी # WinForms परियोजना के लिए निम्न संस्करण नंबर योजना का उपयोग कर रहे:।आप एक चुस्त परियोजना में संस्करण संख्या कैसे करते हैं? ।।

"मेजर रिलीज" "माइनर रिलीज" "पुनरावृत्ति संख्या" "बिल्ड कि पुनरावृत्ति के भीतर संख्या"

हम केवल संस्करण संख्या को देखकर पुनरावृत्ति संख्या और उस संख्या के भीतर निर्माण संख्या की पहचान करने में सक्षम होना चाहता था।

अतीत में, हमने कुछ ऐसा किया था: "मेजर रिलीज"। "मामूली रिलीज"। "अनुक्रमिक बिल्ड संख्या 1.0 से"। उदाहरण के लिए, "4.0.648" का मतलब 1.0 के बाद से 648 बिल्ड थे - लेकिन यह जानकारी काफी बेकार और अचूक है, इसलिए हम पुनरावृत्तियों को प्रतिबिंबित करने और पुनरावृत्तियों के भीतर निर्माण करने के लिए बदल गए हैं।

इसलिए इस नए चुस्त संस्करण संख्या पर विचार करते हुए, अब हमें समस्या है जहां एक अलग उत्पाद समूह हमारी परियोजना के लिए उनके पुनरावृत्ति में परिवर्तन करना चाहेगा। इस उदाहरण में, संस्करण संख्या समझ में नहीं आती है, क्योंकि उनके पुनरावृत्ति और निर्माण संख्या मेल नहीं खाते हैं। उदाहरण के लिए, मेरे प्रोजेक्ट का आखिरी निर्माण 1.0.5.1 था जो पुनरावृत्ति के पहले निर्माण को इंगित करता है। अब यह अन्य प्रोजेक्ट जिसमें तीसरे पुनरावृत्ति में मेरी परियोजना में बदलाव करना और पुनर्निर्माण करना चाहते हैं।

मुझे इस स्थिति का सामना कैसे करना चाहिए? आप अपने चुस्त परियोजना में संस्करण संख्या कैसे करते हैं?

+1

Agile डेवलपर्स के पास संस्करण संख्याएं नहीं हैं। यह दस्तावेज़ीकरण की smacks। – cletus

+1

वे संस्करण संख्या के रूप में रिलीज ट्रैक कैसे करेंगे? – simgineer

उत्तर

5

मैं फुर्तीली परियोजनाओं के पुनरावृत्ति को ट्रैक करता हूं, सॉफ्टवेयर प्रोजेक्ट्स 'पुनरावृत्ति नहीं। यदि एक देर से स्टार्टर साइड प्रोजेक्ट किसी अन्य प्रोजेक्ट के बाद जुड़ता है तो यह वर्तमान फुर्ती प्रोजेक्ट पुनरावृत्ति के साथ मिल जाएगा, और कोई गलत संरेखण नहीं होगा।

डोमेन के भीतर किसी प्रोजेक्ट के साथ बातचीत करने के लिए फुर्तीली परियोजना के डोमेन के बाहर तकनीकी परियोजना के लिए यह संभव नहीं होना चाहिए। यह प्रक्रिया की पीएम विफलता होगी और सभी मामलों में उन्मूलन किया जाना चाहिए जहां शाखा कोडिंग के साथ एक साझा कोड आधार उपयोग किया जा रहा है, ताकि परियोजना पूर्ण होने के बाद एक सफाई कदम के रूप में ट्रंक में पैच किया जा सके।

+0

अच्छा, स्पष्ट और बिंदु पर। +1 – EricSchaefer

3

मैं Major.Minor.Build.Revision पसंद करते हैं जहां Build - सार्वजनिक रिलीज की संख्या, Revision - स्रोत संस्करण सिस्टम से एक संशोधन

2

मैं टीम के विकास की प्रक्रिया से निर्माण और जारी प्रक्रिया को अलग करना पसंद करते हैं, तो मैं शायद ही जोड़ना होगा पुनरावृत्ति, स्प्रिंट या संस्करण के समान। आपका मामला एक अच्छा उदाहरण है कि कैसे मिश्रित दोनों चीजें प्रबंधित करना आसान नहीं है। क्या होगा यदि आप परियोजना के मध्य में कार्यप्रणाली बदलते हैं (जो भी कारण हो)?

आपके प्रश्न का उत्तर देते हुए, हम दो साल तक स्क्रम का उपयोग कर रहे हैं और हमारा संस्करण प्रारूप क्लासिक मेजर.इनर.अपग्रेड.बिल्ड (हम केवल बगफिक्स पर अपग्रेड का उपयोग करते हैं)। अंत में बिल्ड नंबर का उपयोग करना अनिवार्य नहीं है, क्योंकि आपको केवल उसी संस्करण से अलग-अलग पैकेजों को असंबद्ध करने की आवश्यकता है, लेकिन आप किसी अन्य प्रतीक का उपयोग कर सकते हैं जो किसी प्रकार के निजी संस्करण का प्रतिनिधित्व करता है।

5

व्यक्तिगत रूप से, मुझे लगता है कि रिलीज संस्करण जिसे मैंने सबसे अच्छा पसंद किया है, पूरी तरह से major.minor सामानों को पूरी तरह से दूर करना है। मुझे लगता है कि यह आंतरिक अनुप्रयोगों के लिए केवल वास्तव में व्यवहार्य है, लेकिन इसके लिए, यह जीवन को बहुत आसान बनाता है।

आमतौर पर, यदि आप आंतरिक रूप से सामना करने वाले अनुप्रयोगों का विकास कर रहे हैं, तो मैंने देखा है कि व्यवसाय वास्तव में इस बात की परवाह नहीं करता कि वे किस बड़े/छोटे संस्करण का उपयोग कर रहे हैं। इसके बजाए, वे जानना चाहते हैं कि) अगली रिलीज कब होगी और बी) क्या हो रहा है या बाहर - और यह इसके बारे में है। इस तथ्य को रखने की कोशिश कर रहे हैं कि आप FOO-4.34.0.1-a और BAR-3.19.4.1 पर काम कर रहे हैं जब कोई भी परवाह नहीं करता है केवल संचार को जटिल करता है।

एक पूर्व समूह में, हमारे पास वास्तव में प्रोजेक्ट किकऑफ के अलावा अन्य प्रमुख रिलीज़ नहीं थे। प्रत्येक रिलीज पहले के रूप में 'प्रमुख' के रूप में था।

नतीजतन, मुझे लगता है कि उन्होंने समझदारी की बात की और इसके बजाय व्यवसाय को PROJECT_RELEASENUM के रूप में सूचित किया। PROJECT_RELEASENUM_PATCHNUM के रूप में पैच के साथ, जब भी हम '1' द्वारा बढ़ाए गए रिलीज संख्या को '1' द्वारा बढ़ाया जाता है, जो '1' द्वारा भी बढ़ाया जाता है।

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

संबंधित मुद्दे