2008-12-05 18 views
6

उपयोगकर्ता की कहानी को लागू करने के लिए आवश्यक समय का अनुमान लगाते हैं? यदि ऐसा कुछ है जो आपने पहले किया था, यह जानने से पहले कि यह कितना समय लगेगा। लेकिन इसके बारे में क्या है यदि यह आपके लिए बिल्कुल नया है? "आश्चर्य" के लिए आप कितना समय आरक्षित करते हैं?उपयोगकर्ता की कहानी के लिए समय अनुमान

+2

मैं विषय से हटकर के रूप में इस सवाल को बंद करने, क्योंकि यह प्रोग्रामिंग के बारे में नहीं है मतदान कर रहा हूँ के लिए धन्यवाद। –

उत्तर

6

इस के लिए एक महान तकनीक कहानी को कुछ हद तक छोटे कार्यों में तोड़ना है, और का अनुमान एक दूसरे की तुलना में (बिल्कुल के बजाय) का अनुमान लगाएं। तो आप कह सकते हैं:

  • काम के लिए एक 2 इकाइयों (मनमाना)
  • टास्क बी के बारे में 2 बार के रूप में काम के लिए एक (4 इकाइयों)
  • टास्क सी के बारे में आधे जटिल हो गया है के रूप में जटिल है ले जाएगा (1 इकाई)

हम पूर्ण जटिलता की तुलना में सापेक्ष जटिलता का अनुमान लगाने में बेहतर हैं। फिर आप वास्तव में कार्यों में से एक निष्पादित करते हैं, और यह पता लगाते हैं कि 1 इकाई को लागू करने के लिए आपको "वास्तविक समय" कितना लगता है - अब आप सभी कार्यों की गणना कर सकते हैं। आप अपने अनुमानों को अद्यतन करते रहते हैं कि आप कैसे प्रगति करते हैं।

यह तकनीक Agile Estimating and Planning से माइक कोह्न द्वारा है, जो इस विषय पर एक महान पुस्तक है।

+0

+1 क्या आप "अपने अनुमान अपडेट करना जारी रखते हैं", या आप इकाई/रीयलटाइम अनुपात को अपडेट करते हैं? – philant

+0

@ फिलिप: अच्छा भेद। मेरा मतलब अनुपात को अद्यतन करना था। – orip

2

फुर्तीली विकास के एक्सपी स्कूल में, वे वकील करते हैं कि आप वास्तविक समय में नहीं बल्कि मनमानी इकाइयों में अनुमान लगाएंगे। (वे "गमी भालू" का उपयोग करते हैं लेकिन आप जो कुछ भी उपयोग कर सकते हैं)। आप उस उपयोगकर्ता की कहानी को लागू करने के लिए कितनी इकाइयों को ले लेंगे, इस बारे में अपना सर्वश्रेष्ठ अनुमान असाइन करें।

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

अंगूठे का एक अच्छा नियम जब अनुमान लगाना कठिन होता है, तो अपने सबसे आसान कार्यों में से एक लेना और 1 के मूल्य पर आवंटित करना है। उस के संबंध में एक-दूसरे की उपयोगकर्ता कहानी का मूल्यांकन करें, और अपना सर्वश्रेष्ठ अनुमान। अगर कुछ बहुत जटिल है, या स्पष्ट रूप से पर्याप्त रूप से परिभाषित नहीं किया गया है, तो आपको इसे वास्तव में बड़ी संख्या देने के लिए मजबूर होना होगा।

एक अन्य महत्वपूर्ण अवधारणा यह है कि आपको प्रत्येक उपयोगकर्ता की कहानी के प्रत्येक बार पुनरावृत्ति का मूल्यांकन करना होगा। जैसे-जैसे आपकी कहानियां बेहतर परिभाषित होती हैं, और जैसे ही आपके वेग का अनुमान बढ़ता है, आपको अपनी कहानियों पर अधिक सटीक समय मिलेंगे।

आश्चर्य के रूप में, यह वास्तव में उपयोगकर्ता कहानियों के आकलन पर सहन नहीं करता है ... क्योंकि आपके पास आश्चर्य का प्रतिनिधित्व करने के लिए उपयोगकर्ता कहानियां नहीं हैं।

0

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

उन मूल्यों के लिए नीचे या नीचे दिए गए तरीकों के लिए डेवलपर या व्यक्ति इनपुट के साथ पूछें कि उन्हें लगता है कि यह औसत की तुलना में इतना लंबा या बहुत छोटा समय लेगा। एक व्यक्ति के विरोध में टीम से एक आम सहमति के साथ आने का मतलब है कि हर कोई कार्य पर अपना ले लेता है।

यह एक पुस्तक है जिसे मैंने फुर्तीली तकनीक पर पढ़ा है और लेखक को इसके साथ श्रेय देने के लिए भूल गया है।

2

स्टीव McConnel में "Software estimation - demystifiying the black art" यह बेहतर रहा होगा की तुलना में कहा: "। गणना करता है, तो बिल्कुल भी संभव कंप्यूट जब आप गणना नहीं कर सकते एक अंतिम उपाय के रूप में अकेले निर्णय का प्रयोग करें ।।"

Chapter 7 - Count, Compute, Judge (पीडीएफ)।

(मुझे इस की याद दिलाता है :)

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