कि हम पहले से ही Altergeo geosocial नेटवर्क कितना कर रहे हैं। मैं आपको बताऊंगा कि हम कैसे विकास करते हैं और विकास में काफी प्रभावी रहते हैं, हर समय जोरदार गति बनाए रखते हैं।

मुख्य:
- विकास दल की संख्या 7 लोग हैं;
- स्प्रिंट अवधि - लगभग दो सप्ताह ;
- हर दिन स्टैंडअप;
- संगठनात्मक सामान Acunote, google docs और MindMap में संग्रहीत किया जाता है;
- कोड SVN में संग्रहीत है, एक नई सुविधा एक नई शाखा है, कई डेवलपर्स एक सुविधा पर काम कर रहे हैं;
- परीक्षण - इकाई-परीक्षणों के माध्यम से।
दो साल एक बहुत लंबी मैराथन है, इसलिए सभी को कार्यों को सही ढंग से प्राप्त करना और उनके कार्यान्वयन के ठोस परिणाम देखना महत्वपूर्ण है। ऐसा करने के लिए, हमने छोटी अवधि की एक प्रणाली शुरू की है, लक्ष्यों और उद्देश्यों के बीच अंतर, और बाद के अंतिम विनिर्देश। सबसे छोटा सेट कार्य 2 मिनट का है, सबसे लंबा 3 घंटे का है।
आयोजन
विकास से पहले योजना स्पष्ट बात है। सच है, मैं कुछ कंपनियों को जानता हूं जहां वे इसके विपरीत करते हैं। हमारी योजना प्रत्येक विकास अवधि (स्प्रिंट) की शुरुआत में होती है। हमारे देश में, अगली अवधि के लिए हर दो सप्ताह में एक औसत योजना तैयार की जाती है। जब तक हम वर्तमान लक्ष्यों को पूरा नहीं करते, हम आगे नहीं देखेंगे।
नियोजन का अर्थ रणनीतिक लक्ष्यों को निर्धारित करना है (नेटवर्क के लिए क्या आवश्यक है), जो बदले में विशिष्ट कार्यों (जो क्या है) के लिए प्रयास कर रहे हैं।
लक्ष्य उस सेवा में एक निश्चित बदलाव है जिसे हम बनाना चाहते हैं। उदाहरण के लिए - "दोस्तों की सिफारिश करने के लिए एक तंत्र जोड़ें।" एक कार्य एक लक्ष्य का हिस्सा है जिसे एक टीम में एक व्यक्ति पूरा कर सकता है। उदाहरण के लिए, "मोबाइल साइट पर दोस्तों की सिफारिशों के लिए एक डिज़ाइन बनाएं।"
आदर्श रूप से, उच्च लक्ष्यों के बिना कार्य नहीं होने चाहिए। अभ्यास आदर्श से बहुत अलग है, इसलिए प्रत्येक स्प्रिंट में हमारे पास दो मेटा-कार्य हैं - "अलग-अलग छोटी चीजें" और "परीक्षण", जो कि अयोग्य प्रतीत होते हैं।
हमारे मामले में, नियोजन स्पष्ट रूप से तीन भागों में विभाजित है:
- पूर्ण कार्य;
- लक्ष्य निर्धारित करना;
- कार्यों का संघटन और चर्चा।
1. क्या नहीं किया जाता है?
कुछ कार्य हमेशा अधूरे रह जाते हैं। यदि सब कुछ किया जाता है, तो शायद टीम के लिए कार्य केवल पर्याप्त नहीं हैं। मेरा मानना है कि ऐसे लोग हैं जो 100% सटीकता के साथ स्प्रिंट की योजना बना सकते हैं, लेकिन हम अभी भी नहीं जानते कि कैसे।
विफलता के कारण आमतौर पर निम्नलिखित हैं:
- उद्देश्य संबंधी कठिनाइयों का पता चला (फेसबुक एपीआई पर प्रलेखन पुराना था, भागीदारों ने समय पर एक्सएमएल नहीं भेजा, डिजाइन तीन बार अनुमोदन के लिए गया) और कार्य को पूरा करने के लिए समय नहीं था;
- स्प्रिंट के दौरान, उच्च प्राथमिकता वाले कार्यों को जोड़ा गया था और कार्य स्थगित कर दिया गया था;
- कार्य स्वयं स्प्रिंट प्रक्रिया में जोड़ा गया था और किसी ने अभी तक इसे शुरू नहीं किया है;
- टीम का कोई व्यक्ति बीमार पड़ गया या एक दिन की छुट्टी ले ली - यह भी होता है।
एक अधूरा काम डरावना नहीं है। यह समझना अधिक महत्वपूर्ण है कि ऐसा क्यों नहीं किया गया और स्प्रिंट में विफलता के समग्र प्रतिशत को देखें। यदि केवल 70-80% किया जाता है, तो हम इस सवाल के जवाब की तलाश करते हैं कि क्या हुआ और क्यों हुआ। दूसरी बार इस तरह के एक जाम की जरूरत नहीं है। महत्वपूर्ण: हम दोषी की तलाश नहीं कर रहे हैं, लेकिन समस्या की जड़ है।
अंत में, हमें तीन चीजों को समझना होगा - हम अपने लक्ष्यों के अनुसार क्या करने में कामयाब रहे, हमारे पास क्या नहीं था, शेष लक्ष्यों को काम करने के रूप में लाने के लिए हमें कितना अधिक समय बिताने की आवश्यकता है। संक्षेप में, हम लक्ष्यों के बारे में बात कर रहे हैं - आप अपने सिर में विशिष्ट कार्य रख सकते हैं, लेकिन आमतौर पर इसका कोई मतलब नहीं है।
योजना का यह हिस्सा, उचित संगठन के साथ, एक टीम के बिना किया जाता है - दैनिक स्टैंड-अप से पर्याप्त डेटा है।
2. हम इस स्प्रिंट में क्या करना चाहते हैं?
इस स्तर पर, हम लक्ष्य निर्धारित करने के बारे में बात कर रहे हैं (कार्य नहीं!) स्प्रिंट के लिए। लक्ष्यों को किसी व्यक्ति द्वारा निर्धारित किया जाता है - उत्पाद स्वामी या पीओ (उत्पाद राजनीतिक अधिकारी)। उससे, सामान्य तौर पर, एक चीज की आवश्यकता होती है - यह समझने के लिए कि परियोजना को आगे कैसे विकसित करना चाहिए। वह तीसरे पक्ष (विपणन विभाग, ग्राहक संबंध विभाग, प्रोग्रामर) की आवश्यकताओं और इच्छाओं को इकट्ठा करता है, ध्यान से उन्हें स्थानांतरित करता है, अपने विचारों को जोड़ता है और, परिणामस्वरूप, उन चीजों की एक सूची देता है जिन्हें हम लागू करना चाहते हैं।
हम स्प्रिंट के लिए 4-5 बड़े लक्ष्यों की योजना बनाते हैं। उदाहरण "क्यू अवधारणा के लिए एक मोबाइल साइट को फिर से डिज़ाइन कर रहे हैं," "साइट पर निशानों के लिए स्थानों का चयन करने के लिए एन एल्गोरिथ्म को शुरू करना," "बिचौलियों के बिना वाई धन के माध्यम से भुगतान जोड़ना।"
लक्ष्य को स्पष्ट रूप से तैयार किया जाना चाहिए, यह नियम "{क्रिया} {संज्ञा} {परिवर्धन}" का उपयोग करने की सिफारिश की जाती है - दो सप्ताह के स्प्रिंट के लिए, यह भूल जाएं कि लक्ष्यों की एक जोड़ी तैयार करते समय वास्तव में क्या मतलब था।
इसके अलावा, इस स्तर पर, हम तय करते हैं कि हम कौन से कार्य पिछले स्प्रिंट से वर्तमान में स्थानांतरित नहीं करते हैं, और कौन से बैकलॉग के लिए।

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