कम्प्युटर उद्योग अस्पष्ट भाषा, कठोर शब्दजाल, र जटिल विचारहरूले भरिएको छ जुन बुझ्न गाह्रो छ र तपाईंको दिमागलाई कम्प्युटेसनल बफरिङको उन्मादमा पठाउन सक्छ।
झरना? स्क्रम? चुस्त?
यदि यी वाक्यांशहरू तपाईंको लागि पूर्ण रूपमा विदेशी छन् भने, चिन्ता नगर्नुहोस्; HashDork टेक geeks को तपाईंको सहयोगी टोली विकास प्रक्रियाको यी महत्त्वपूर्ण चरणहरू बीचको भिन्नताहरू बुझ्न मद्दत गर्न यहाँ छ ताकि तपाईं ज्ञानी बन्न सक्नुहुन्छ।
फुर्तिलो, स्क्रम, र झरना प्रविधिहरू सबै यस ब्लग पोस्टमा कभर गरिनेछ, साथै प्रत्येकले कसरी तपाइँको टोलीलाई समग्र रूपमा मद्दत गर्न सक्छ।
फुर्तिलो साथ सुरु गरौं, र हामी बाँकी सँगै लैजान्छौं।
फुर्ती भनेको के हो?
फुर्तिलो सफ्टवेयर विकासले पुनरावृत्ति, वृद्धिशील दृष्टिकोण पछ्याउँछ। परियोजनाको सुरुवातमा व्यापक तयारी गर्नुको सट्टा, एजाइल प्रविधिहरू समयसँगै आवश्यकताहरू परिवर्तन गर्न लचिलो हुन्छन् र अन्त-प्रयोगकर्ताहरूबाट निरन्तर प्रतिक्रिया प्रवर्द्धन गर्छन्।
क्रस-कार्यात्मक टोलीहरूले समयसँगै उत्पादन पुनरावृत्तिहरूमा काम गर्दछ, र यो काम ब्याकलगमा वर्गीकृत गरिन्छ र व्यापार वा ग्राहक मूल्यको आधारमा प्राथमिकतामा राखिन्छ। प्रत्येक पुनरावृत्तिको उद्देश्य प्रयोगयोग्य उत्पादन सिर्जना गर्नु हो।
नेतृत्वले एजाइल विधिहरूमा सहयोग, जिम्मेवारी, र आमने-सामने सञ्चारलाई बढावा दिन्छ।
व्यापार सरोकारवालाहरू र विकासकर्ताहरूले उत्पादनले उपभोक्ताको माग र कम्पनीको लक्ष्यहरू पूरा गर्दछ भनेर सुनिश्चित गर्न सहयोग गर्नुपर्छ।
"चुपल विकास" वाक्यांशले विभिन्न प्रकारका विधिहरू र फ्रेमवर्कहरूलाई जनाउँछ जुन आदर्श र सिद्धान्तहरूमा उल्लिखित छन्। चपल घोषणा पत्र.
विशेषज्ञहरूले फुर्तिलो सिद्धान्तहरू र मानहरू पालना गर्न र सफ्टवेयर विकासको नजिक जाँदा विशेष वातावरणमा लिने सही कार्यहरू निर्णय गर्न गाइडको रूपमा प्रयोग गर्न सल्लाह दिन्छन्।
सहयोगी र आत्म-संगठन टोली फुर्तिलो सफ्टवेयर विकास समुदायको लागि फोकसको मुख्य क्षेत्रहरू हुन्।
टोलीहरूलाई स्वायत्त रूपमा निर्णय गर्न अनुमति दिइएको छ कि उनीहरूले एक विशेष परियोजनालाई कसरी सम्हाल्छन्, तर यसको मतलब यो होइन कि पर्यवेक्षकहरू अस्तित्वमा छैनन्। फुर्तिलो टोलीहरू यसैले क्रस-कार्यात्मक छन्।
एक चुस्त प्रतिमानमा, प्रबन्धकहरू अझै आवश्यक छन्। उनीहरूले यो सुनिश्चित गर्छन् कि प्रत्येक टोली सदस्यसँग परियोजनाको लागि आवश्यक क्षमताहरू छन् वा प्राप्त गर्छन्।
फुर्तिलो ढाँचामा रहेका प्रबन्धकहरूले टोलीमा उत्कृष्ट प्रदर्शन गर्ने वातावरणलाई बढावा दिएर काम गर्छन्। तर नेतृत्व लिनुको सट्टा, तिनीहरू प्राय: पछाडि सिट लिन्छन् र टोलीलाई उनीहरूले चीजहरू कसरी डेलिभर गर्ने भनेर निर्णय गर्न दिन्छन्।
प्रबन्धकहरू मात्र संलग्न हुन्छन् जब टोलीहरूले सफलता बिना समस्याहरू समाधान गर्न बारम्बार प्रयास गर्छन्।
चुस्त विकास चक्र
फुर्तिलो विकास चक्रका चरणहरू तल सूचीबद्ध छन्। यो याद गर्न महत्त्वपूर्ण छ कि यी चरणहरू क्रमबद्ध रूपमा लिनु हुँदैन किनभने तिनीहरू लचिलो र निरन्तर परिवर्तन हुन्छन्। यी धेरै चरणहरू एकै समयमा हुन्छन्।
- योजना: परियोजना टोलीले एउटा विचार व्यावहारिक र कार्ययोग्य छ भनेर निर्णय गरेपछि, तिनीहरूले सुविधाहरू खोज्न थाल्छन्। यस चरणले प्रत्येक सुविधालाई प्राथमिकता दिने र विचारलाई सानो वर्कपीस (विशेषताहरू) मा विभाजन गरेपछि यसलाई पुनरावृत्तिमा असाइन गर्ने लक्ष्य राख्छ।
- आवश्यकता विश्लेषण: व्यापार आवश्यकताहरू निर्धारण गर्न, यो चरणले प्रबन्धकहरू, सरोकारवालाहरू र प्रयोगकर्ताहरूसँग धेरै छलफलहरू समावेश गर्दछ। उत्पादन कसले प्रयोग गर्नेछ र तिनीहरूले कसरी प्रयोग गर्नेछन् भन्ने विवरणहरू टोलीले सङ्कलन गर्नुपर्छ। यी मापदण्डहरू विशिष्ट, लागू र मात्रात्मक हुनुपर्छ।
- डिजाइन: अघिल्लो चरणमा पाइने आवश्यकताहरू प्रणाली र सफ्टवेयर डिजाइन तयार गर्न प्रयोग गरिन्छ। उत्पादन वा समाधानको उपस्थितिका लागि विचारहरू टोलीद्वारा बनाइनुपर्छ। परीक्षणको लागि रणनीति वा योजना पनि परीक्षण टोलीद्वारा विकसित गरिन्छ।
- कार्यान्वयन, कोडिङ, वा विकास: यस चरणको फोकस सुविधाहरू निर्माण र मूल्याङ्कन गर्ने र पुनरावृत्तिहरू (पुनरावृत्ति र वृद्धिशील विकास दृष्टिकोण [IID] पछ्याउँदै) को तैनाती योजनामा छ। किनभने त्यहाँ कुनै सुविधाहरू प्रदान गरिएन, विकास अवधिको पुनरावृत्ति 0 सुरु हुन्छ। अनुबंध, सेटिङ सेटअप, र कोष जस्ता गतिविधिहरू पूरा गरेर, यो पुनरावृत्तिले भविष्यको विकासको लागि आधार प्रदान गर्दछ।
- परीक्षण: कोड सिर्जना गरिसकेपछि, उत्पादनले वास्तवमै प्रयोगकर्ताका मागहरू र व्यावसायिक उद्देश्यहरू पूरा गर्छ भनी सुनिश्चित गर्न आवश्यकताहरू विरुद्ध परीक्षण गरिन्छ। एकाइ, एकीकरण, प्रणाली, र स्वीकार्यता परीक्षण यस चरणमा गरिन्छ।
- तैनाथ: परीक्षण पछि, उत्पादन ग्राहकहरूलाई पठाइन्छ ताकि तिनीहरूले यसलाई प्रयोग गर्न सकून्। तर आयोजना निर्माण सकिएपछि पनि टुंगिएको छैन । ग्राहकहरूले उत्पादन प्रयोग गर्न थालेपछि थप समस्याहरू सामना गर्न सक्छन्, जसको समाधान खोज्नको लागि परियोजना टोली आवश्यक पर्दछ।
फाइदा
- छिटो, उच्च गुणस्तर वितरण: परियोजनालाई पुनरावृत्ति (व्यवस्थित एकाइहरू) मा विभाजन गरेर, टोलीले उच्च-गुणस्तरको सहयोग, विकास, र परीक्षणमा ध्यान केन्द्रित गर्न सक्षम छ। जब प्रत्येक पुनरावृत्तिको साथ परीक्षण गरिन्छ, समस्याहरू फेला पारिन्छन् र अझ छिटो समाधान गरिन्छ। थप रूपमा, निरन्तर, पछिल्ला संशोधनहरूको साथ, यो उच्च-गुणस्तर सफ्टवेयर थप छिटो आपूर्ति गर्न सकिन्छ।
- परिवर्तन स्वागत छ: यद्यपि योजना चक्र छोटो छ, यो परियोजनाको कुनै पनि बिन्दुमा परिवर्तनहरू स्वीकार गर्न र समायोजन गर्न सरल छ। ब्याकलग जहिले पनि सुधार गर्न सकिन्छ र पुन: प्राथमिकता दिन सकिन्छ, टोलीहरूलाई केही हप्तामा परियोजनामा परिवर्तनहरू गर्न अनुमति दिँदै।
- अन्तिम लक्ष्य थाहा नहुन सक्छ: अन्तिम लक्ष्य स्पष्ट रूपमा परिभाषित नभएको अवस्थामा परियोजनाहरूका लागि फुर्तिलो हुन्छ। परियोजना अगाडि बढ्दै जाँदा, उद्देश्यहरू स्पष्ट हुँदै जानेछन्, र विकासले यी परिवर्तनशील आवश्यकताहरूलाई सजिलैसँग समायोजन गर्न सक्षम हुनेछ।
- निरन्तर सुधार: चपल कार्यक्रमहरूले परियोजनाको सबै चरणहरूमा प्रयोगकर्ता र टोलीको इनपुटलाई बढावा दिन्छ, अर्को पुनरावृत्तिलाई अझ राम्रो बनाउन सिकेको कुराको प्रयोगको लागि अनुमति दिन्छ।
- ग्राहकहरूको राय मूल्यवान छ: ग्राहकहरूका लागि काम पूरा भएको हेर्न, प्रतिक्रिया प्रस्ताव गर्ने र अन्तिम परिणामलाई वास्तवमै प्रभाव पार्ने थुप्रै अवसरहरू छन्। परियोजना टोलीसँग यति घनिष्ट अन्तरक्रिया गरेर, तिनीहरूले स्वामित्वको भावना विकास गर्न सक्छन्।
- बलियो टिमवर्क: फुर्तिलो नियमित सञ्चार र व्यक्तिगत भेटघाटको महत्त्वलाई जोड दिन्छ। टोलीमा काम गर्दा मानिसहरूले जिम्मेवारी लिन र निश्चित परियोजना घटकहरूको स्वामित्व लिन सक्छन्।
बेफाइदा
- टोलीका सदस्यहरू जानकार हुनुपर्छe: फुर्तिलो टोलीहरू प्रायः साना हुन्छन्। तसर्थ, टोलीका सदस्यहरूसँग सीपहरूको विस्तृत दायरा हुनुपर्दछ। थप रूपमा, तिनीहरूले चयन गरिएको एजाइल प्रविधि प्रयोग गरेर बुझ्न र सहज महसुस गर्नुपर्दछ।
- योजना कम सटीक हुन सक्छ: यो कहिलेकाहीं सही डेलिभरी मिति निर्धारण गर्न चुनौतीपूर्ण हुन सक्छ। एजाइल टाइम-बक्स्ड डेलिभरीमा बनाइएको छ, र परियोजना प्रबन्धकहरूले प्राय: कार्यहरूको प्राथमिकताहरूलाई पुन: व्यवस्थित गर्छन्। यसैले, यो सम्भव छ कि केहि डेलिभरेबलहरू जुन प्रारम्भिक रूपमा डेलिभरीको लागि निर्धारित गरिएको थियो समयमै समाप्त हुने छैन। थप रूपमा, थप स्प्रिन्टहरू परियोजना भरि कुनै पनि बिन्दुमा थप्न सकिन्छ, सम्पूर्ण तालिका लम्बाइ।
- कागजातलाई बेवास्ता गर्न सकिन्छ: केही टोलीका सदस्यहरूले विश्वास गर्न सक्छन् कि कागजातहरूमा ध्यान केन्द्रित गर्नु कम महत्त्वपूर्ण छ किनकि Agile घोषणापत्रले पूर्ण कागजातहरू भन्दा माथि काम गर्ने सफ्टवेयरलाई समर्थन गर्दछ। फुर्तिलो टोलीहरूले कागजात र संवादको बीचमा आदर्श सन्तुलन कायम गर्नुपर्दछ, यद्यपि पूर्ण कागजातले आफैंमा परियोजना सफलताको ग्यारेन्टी गर्न सक्दैन।
- अन्तिम आउटपुट धेरै फरक हुन सक्छ: प्रारम्भिक एजाइल परियोजनाको लागि स्पष्ट रणनीति नभएको हुन सक्छ, र त्यसैले समाप्त नतिजा पहिले अनुमान गरिएको भन्दा धेरै परिवर्तन हुन सक्छ। एकदम फरक अन्तिम आउटपुट ग्राहक इनपुट परिवर्तनको आधारमा नयाँ पुनरावृत्तिहरू थप्दा परिणाम हुन सक्छ, किनकि Agile यति अनुकूलनीय छ।
- विकासकर्ताको समय प्रतिबद्धता: विकास टोली प्रभावकारी हुनको लागि परियोजनामा पूर्ण रूपमा प्रतिबद्ध हुनुपर्छ। फुर्तिलो विधि, जुन परम्परागत दृष्टिकोण भन्दा लामो समय लाग्छ, निरन्तर सक्रिय सहभागिता र सहयोग चाहिन्छ। थप रूपमा, यसले विकासकर्ताहरूले पूर्ण परियोजनाको लम्बाइमा प्रतिबद्ध हुनुपर्छ भन्ने संकेत गर्दछ।
झरना के हो?
सफ्टवेयर इन्जिनियरिङ् र आईटी परियोजनाहरूका लागि प्रणालीको विकास जीवन चक्र (SDLC) को सबैभन्दा लोकप्रिय पुनरावृत्तिलाई "झरना दृष्टिकोण" भनेर चिनिन्छ, जसले अनुक्रमिक, रैखिक प्रक्रियालाई पछ्याउँछ।
Gantt चार्ट, बार चार्टको एक रूप जसले प्रत्येक कामको सुरु र अन्त्य मितिहरू देखाउँछ, कहिलेकाहीँ यसलाई योजना बनाउन प्रयोग गरिन्छ।
विकास टोली आठ चरणहरू मध्ये एक समाप्त भएपछि निम्न स्तरमा अगाडि बढ्छ। टोली सम्पूर्ण प्रक्रिया पुन: सुरु नगरी अघिल्लो चरणमा फर्कन असमर्थ छ।
थप रूपमा, टोलीले अर्को स्तरमा जान सक्नु अघि ग्राहकले मूल्याङ्कन र आवश्यकताहरू स्वीकार गर्न आवश्यक पर्दछ।
झरना मोडेल निर्माण र निर्माण क्षेत्रहरूको उच्च संगठित वातावरणमा विकसित गरिएको थियो, जहाँ समायोजन निषेधात्मक रूपमा महँगो वा असम्भव पनि हुन सक्छ।
झरनाको प्रविधिलाई यस्तो नाम दिइएको हो किनभने यो झरना जस्तै तल तिर मात्र एक दिशामा बग्ने उद्देश्य हो। यसको चरणहरूमा विश्लेषण, प्रारम्भ, परीक्षण, डिजाइन, भवन, परिनियोजन, मर्मत, र परीक्षण समावेश छ।
झरना प्रविधिको धेरै फाइदाहरू छन्, कुनै पनि अन्य रणनीति जस्तै। एउटा यो हो कि परियोजना योजना र डिजाइनका चरणहरू अझ राम्रोसँग स्थापित छन्।
झरना सफ्टवेयर विकास प्रयोग गर्दा ग्राहकहरू र विकास टोली थप पङ्क्तिबद्ध छन् जब यो परियोजना डेलिभरेबल को लागी आउँछ। तपाईं सुरुदेखि नै परियोजनाको दायरा बारे सचेत हुनाले, झरना विकासले प्रगतिको अनुगमन गर्न पनि सजिलो बनाउँछ।
झरना प्रक्रियाले विशेषज्ञहरू, विकासकर्ताहरू, विश्लेषकहरू, र परीक्षकहरूलाई परियोजनामा आफ्नो कामहरूमा ध्यान केन्द्रित गर्नको लागि सम्पूर्ण टोलीलाई एक चरणमा जोड दिन प्रयोग गर्दछ।
झरनाका चरणहरू
झरनाको छवटा चरणहरू सबै एक पछि अर्को हुनुपर्दछ:
- जम्मा र भण्डारण आवश्यकताहरू: यस परियोजनाले यस समयमा के माग गर्दछ भन्ने बारे तपाईंले पूर्ण ज्ञान सङ्कलन गर्नुपर्छ। अन्तर्वार्ता, सर्वेक्षण, र सहयोगी ब्रेनस्टर्मिङ सहित यो डाटा सङ्कलन गर्न धेरै प्रविधिहरू छन्। यो चरण समाप्त भएपछि परियोजना आवश्यकताहरू स्पष्ट हुनुपर्छ, र तपाईंको टोलीले आवश्यकता कागजातको प्रतिलिपि प्राप्त गरेको हुनुपर्छ।
- प्रणालीको डिजाइन: प्रणाली पूर्वनिर्धारित विशिष्टताहरू प्रयोग गरेर तपाईंको टोलीद्वारा डिजाइन गरिएको हो। यस चरणमा, कुनै कोडिङ गरिएको छैन, तर टोलीले हार्डवेयर वा प्रोग्रामिङ भाषाको लागि आवश्यकताहरू सेट गर्छ।
- कार्यान्वयन: यो चरणमा कोडिङ समावेश छ। अघिल्लो चरणको डाटा प्रोग्रामरहरू द्वारा प्रयोगयोग्य उत्पादन निर्माण गर्न प्रयोग गरिन्छ। कोड प्रायः सानो टुक्राहरूमा लागू गरिन्छ जुन एक चरणको समापन वा अर्कोको सुरुमा जोडिन्छ।
- परीक्षण: कोड पूरा भएपछि उत्पादन परीक्षण गर्न सुरु गर्न सकिन्छ। कुनै पनि मुद्दाहरू सावधानीपूर्वक फेला पर्छन् र परीक्षकहरू द्वारा रिपोर्ट गरिन्छ। यदि महत्त्वपूर्ण समस्याहरू देखा पर्छन् भने तपाईंको परियोजनालाई पुन: मूल्याङ्कनका लागि पहिलो चरणमा फिर्ता जान आवश्यक हुन सक्छ।
- वितरण / तैनाती: यस बिन्दुमा उत्पादन समाप्त भयो, र तपाईंको टोलीले डिप्लोयमेन्ट वा रिलीजको लागि डेलिभरेबलहरू पेश गर्दछ।
- मर्मत: ग्राहकले उत्पादन प्राप्त गरेको छ र यसलाई प्रयोग गर्दैछ। समस्याहरू समाधान गर्नका लागि देखा पर्दा तपाईंको टोलीले समाधान र अद्यावधिकहरू विकास गर्न आवश्यक हुन सक्छ। फेरि, महत्त्वपूर्ण समस्याहरूले पहिलो चरणमा फिर्ताको लागि कल गर्न सक्छ।
फाइदा
- सञ्चालन र व्यवस्थापन गर्न सरल: झरना दृष्टिकोण प्रयोग गर्न र बुझ्नको लागि सरल छ किनकि प्रत्येक परियोजनालाई समान क्रमबद्ध रूपमा ह्यान्डल गरिएको छ। झरना परियोजना सुरु गर्नु अघि, टोलीलाई कुनै पूर्व विशेषज्ञता वा प्रशिक्षण आवश्यक छैन। झरना दृष्टिकोण धेरै सख्त छ; प्रत्येक चरणमा डेलिभरेबलहरूको सेट र समीक्षा हुन्छ, यसलाई व्यवस्थापन गर्न र मर्मत गर्न सरल बनाउँदै।
- एक राम्रो दस्तावेज विधि आवश्यक छ: झरना पद्धतिद्वारा आवश्यक कागजातहरूले परीक्षण र कोडको पछाडि तर्क स्पष्ट गर्न मद्दत गर्दछ। थप रूपमा, सरोकारवालाहरूले कुनै निश्चित चरण वा भविष्यका कुनै पहलहरूको लागि थप जानकारी चाहन्छन् भने यसले पेपर ट्रेल सिर्जना गर्दछ।
- अनुशासनको कार्यान्वयन: झरना परियोजनाको प्रत्येक चरणको सुरुवात र अन्त्य हुन्छ, यसले सरोकारवालाहरू र ग्राहकहरूलाई प्रगति सञ्चार गर्न सरल बनाउँछ। टोलीले कोड उत्पादन गर्नु अघि आवश्यकताहरू र डिजाइनहरू राखेर समय सीमा हराउने सम्भावना कम गर्न सक्छ।
बेफाइदा
- सटीक आवश्यकताहरू सङ्कलन गर्न गाह्रो हुन सक्छ: उपभोक्ता र सरोकारवालाहरूसँग उनीहरूको आवश्यकताहरू निर्धारण गर्नका लागि कुरा गर्नु झरना परियोजनाको प्रारम्भिक चरणहरू मध्ये एक हो। परियोजनाको यो प्रारम्भिक चरणमा, तिनीहरूको विशेष आवश्यकताहरू पत्ता लगाउन चुनौतीपूर्ण हुन सक्छ। ग्राहकहरूले प्रायः तिनीहरूको आवश्यकताहरू बारे जान्छन् किनभने परियोजनाको विकासको सट्टा तिनीहरूलाई अगाडि व्यक्त गर्नुको सट्टा।
- परिवर्तनहरू समायोजन गर्न गाह्रो छ: एक चरण पूरा गरेपछि चालक दलले काम पुनः सुरु गर्न सक्दैन। यो धेरै गाह्रो र महँगो छ फिर्ता जानुहोस् र मर्मत गर्नुहोस् यदि तिनीहरूले परीक्षण चरणको दौडान आवश्यक प्रक्रियाको क्रममा कार्यक्षमता हराइरहेको थियो भनेर जान्थे।
- सफ्टवेयर यसको नियत मिति पछि प्रदान गरिन्छ: वास्तविक कोडिङ सुरु हुन अघि परियोजनाको दुई देखि चार चरणहरू समाप्त हुनुपर्छ। सरोकारवालाहरूले परिणाम स्वरूप जीवन चक्रमा ढिलो सम्म कार्यात्मक सफ्टवेयर देख्ने छैनन्।
Scrum भनेको के हो?
एजाइललाई अभ्यासमा राख्नको लागि सबैभन्दा मनपर्ने प्रक्रिया ढाँचाहरू मध्ये एक हो स्क्रम, जुन एजाइलको उपसमूह हो।
यो जटिल सफ्टवेयर र उत्पादनहरु को निर्माण को लागी एक पुनरावृत्ति प्रतिमान हो। स्प्रिन्टहरू, जो एक देखि दुई हप्ता चल्ने निश्चित-लम्बाइ पुनरावृत्तिहरू हुन्, टोलीलाई नियमित तालिकामा सफ्टवेयर जारी गर्न सक्षम गर्दछ।
प्रत्येक स्प्रिन्ट पछि अर्को चरणहरू छलफल गर्न सरोकारवालाहरू र टोलीका सदस्यहरू भेला हुन्छन्। Scrum मा भूमिका, जिम्मेवारी, र बैठकहरू स्थिर रहन्छ।
उदाहरणका लागि, स्क्रमले स्प्रिन्ट योजना, दैनिक स्ट्यान्ड-अप, स्प्रिन्ट डेमो, र स्प्रिन्ट रिट्रोस्पेक्टिभलाई प्रत्येक स्प्रिन्ट संरचना प्रदान गर्ने चार संस्कारहरूको रूपमा निर्दिष्ट गर्दछ।
टोलीले प्रत्येक स्प्रिन्टको समयमा प्रगति देखाउन र वृद्धिशील प्रतिक्रिया प्राप्त गर्न कार्य बोर्डहरू वा बर्नडाउन चार्टहरू जस्ता दृश्य कलाकृतिहरू प्रयोग गर्नेछ।
स्क्रममा, टोली र उत्पादन मालिकले प्रणाली कार्यक्षमता पहिचान गर्न र प्राथमिकता दिन सँगै मिलेर काम गर्छन्। तिनीहरूले उत्पादन ब्याकलग सिर्जना गरेर यो प्राप्त गर्छन्, जसमा सफ्टवेयर उत्पादन गर्न आवश्यक सबै कार्यहरू समावेश छन् जुन उद्देश्य अनुसार कार्य गर्दछ।
बग प्याचहरू, गैर-कार्यात्मक आवश्यकताहरू, र सुविधाहरू सबै लाममा समावेश गर्नुपर्छ। क्रस-कार्यात्मक टोलीहरूले निरन्तर स्प्रिन्टहरूमा सफ्टवेयर वृद्धिहरू डेलिभर गर्न अनुमान र साइन अप गर्नुपर्छ, जुन सामान्यतया 30 दिनसम्म रहन्छ, एक पटक उद्देश्यहरू स्थापना भएपछि।
त्यो स्प्रिन्टको लागि ब्याकलग कमिट गरेपछि मात्र टोलीले स्प्रिन्टमा कार्यक्षमता थप्न सक्छ।
अर्को स्प्रिन्ट डेलिभरी, उत्पादन ब्याकलग मूल्याङ्कन गरिन्छ र आवश्यक भएमा, पुन: प्राथमिकता दिइन्छ, र निम्न डेलिभर योग्य सेटलाई निम्न स्प्रिन्टको एक भागको रूपमा छनोट गरिन्छ।
स्क्रम प्रक्रिया
- उत्पादन ब्याकलग: उत्पादन ब्याकलगमा वस्तुहरू अर्डर गर्न, उत्पादन मालिक र स्क्रम टोली भेट्छन् (उत्पादन ब्याकलगमा काम प्रयोगकर्ता कथाहरू र आवश्यकताहरूबाट आउँछ)। उत्पादन ब्याकलग समाप्त गर्न आवश्यक कार्यहरूको सूची भन्दा उत्पादनको लागि सबै इच्छित सुविधाहरूको सूची हो। त्यस पछि, विकास टोलीले प्रत्येक स्प्रिन्टमा कार्यान्वयन गर्न उत्पादन ब्याकलगबाट कार्यहरू चयन गर्दछ।
- स्प्रिन्ट योजना: प्रत्येक स्प्रिन्ट अघि, उत्पादन मालिकले टोलीलाई स्प्रिन्ट योजना बैठकमा ब्याकलगमा शीर्ष वस्तुहरू प्रदान गर्दछ। समूहले त्यसपछि उत्पादन ब्याकलगबाट वस्तुहरू चयन गर्दछ जुन उनीहरूले स्प्रिन्टको समयमा समाप्त गर्न सक्छन् र तिनीहरूलाई स्प्रिन्ट ब्याकलगमा सार्दछ (जुन स्प्रिन्टमा पूरा गर्नका लागि कार्यहरूको सूची हो)।
- ब्याकलगको परिष्करण/सजावट: निम्न स्प्रिन्टको लागि ब्याकलग तयार छ भनी सुनिश्चित गर्न, टोली र उत्पादन मालिक एक स्प्रिन्टको समापनमा भेट्छन्। टोलीले अब सान्दर्भिक नभएका प्रयोगकर्ता कथाहरू खारेज गर्न, नयाँ थप्न, तिनीहरूलाई सम्बोधन गर्नुपर्ने क्रम परिमार्जन गर्न वा प्रयोगकर्ताका कथाहरूलाई साना कार्यहरूमा विभाजन गर्न सक्छ। यस "ग्रुमिङ" बैठकमा, ब्याकलगमा सान्दर्भिक, गहिरो र परियोजनाका लक्ष्यहरूसँग मिल्दोजुल्दो कुराहरू मात्र समावेश छन् भनी सुनिश्चित गरिनेछ।
- हरेक दिन स्क्रम बैठकहरू: डेली स्क्रम भनिने 15 मिनेटको स्ट्यान्ड-अप बैठकमा, प्रत्येक टोली सदस्यले आफ्ना उद्देश्यहरू र उत्पन्न भएका समस्याहरूबारे छलफल गर्छन्। स्प्रिन्ट भरि हरेक दिन, टोलीले दैनिक स्क्रममा भाग लिन्छ, जसले सबैलाई काममा राख्छ।
- स्प्रिन मूल्याङ्कन गर्न बैठकt: टोलीले प्रत्येक स्प्रिन्टको समापनमा स्प्रिन्ट समीक्षा बैठकमा आफ्नो काम प्रस्तुत गर्दछ। रिपोर्ट वा पावरपोइन्ट प्रस्तुतीकरणको सट्टा, यो बैठकले वास्तविक प्रदर्शन समावेश गर्नुपर्छ।
- पूर्ववर्ती स्प्रिन्ट बैठक: टोलीले निम्न स्प्रिन्टमा गर्नुपर्ने कुनै पनि परिमार्जनहरू साथै प्रत्येक स्प्रिन्टको समापनमा स्क्रमले उनीहरूका लागि कत्ति राम्रोसँग काम गरिरहेको छ भनी छलफल गर्छ। टोलीले स्प्रिन्टको सकारात्मक पक्षहरू, नकारात्मक पक्षहरू, र सुधारका लागि क्षेत्रहरू छलफल गर्न सक्छ।
फाइदा
- टोलीबाट थप जिम्मेवारी: के गर्ने र कहिले गर्ने भनेर स्क्रम टोलीलाई निर्देशन दिने कुनै परियोजना प्रबन्धक छैन। प्रत्येक स्प्रिन्टमा समाप्त गर्न सकिने कामको सट्टा सम्पूर्ण टोलीद्वारा निर्णय गरिन्छ। तिनीहरू सबैले सहयोग गर्छन् र एकअर्कालाई हात प्रदान गर्छन्, टोली कार्य बढाउँछन् र प्रत्येक टोली सदस्यमा व्यक्तित्व बढाउँछन्।
- सुधारिएको परियोजना दृश्यता र पारदर्शिता: त्यहाँ कम गलतफहमी र अनिश्चितताहरू छन् किनभने टोलीमा सबैजना आफ्नो जिम्मेवारीहरू बारे सचेत छन् बारम्बार स्ट्यान्ड-अप बैठकहरूको लागि धन्यवाद। टोलीले समस्याहरूलाई नियन्त्रणबाट बाहिर निस्कनु अघि नै समस्याहरू समाधान गर्न सक्छ किनभने मुद्दाहरू पहिले नै देखिएका छन्।
- परिष्कृत लागत कटौती: निरन्तर सञ्चारले टोलीलाई कुनै पनि समस्या वा परिवर्तन हुने बित्तिकै सूचित राख्छ, जसले लागत बचत गर्न र गुणस्तर सुधार गर्न मद्दत गर्दछ। साना सुविधाहरूको भागले निरन्तर प्रतिक्रियाको लागि प्रदान गर्दछ र ठूला त्रुटिहरू समाधान गर्न धेरै महँगो हुनु अघि प्रारम्भिक त्रुटि सुधारको लागि अनुमति दिन्छ।
- परिवर्तनहरू अनुकूलन गर्न सरल: बारम्बार प्रतिक्रिया लूपहरू र छोटो स्प्रिन्टहरू हुँदा परिवर्तनहरू सामना गर्न र अनुकूलन गर्न यो सजिलो छ। दृष्टान्तको रूपमा, यदि टोलीले एउटा स्प्रिन्टको क्रममा ब्रान्ड-नयाँ प्रयोगकर्ता कथा भेट्छ भने, उनीहरूले ब्याकलग रिफाइनमेन्ट बैठकमा निम्न स्प्रिन्टमा त्यो सुविधा द्रुत रूपमा थप्न सक्छन्।
बेफाइदा
- स्कोप क्रिप खतरा: एक निर्धारित समापन मितिको कमीको कारणले, निश्चित स्क्रम परियोजनाहरूले स्कोप क्रिपको सामना गर्न सक्छ। पूरा हुने समयसीमा नभएको खण्डमा सरोकारवालाहरूलाई थप सुविधाहरूको माग जारी राख्न प्रलोभनमा पार्न सकिन्छ।
- खराब स्क्रम मास्टरले सबै कुरालाई पटरीबाट उतार्न सक्छ: एक परियोजना प्रबन्धक एक स्क्रम मास्टर जस्तै छैन। स्क्रम मास्टरले आफूले सुपरिवेक्षण गरिरहेको टोलीलाई विश्वास गर्नुपर्छ र तिनीहरूलाई निर्देशनहरू कहिल्यै दिनु हुँदैन। स्क्रम मास्टरको टोलीमाथि शक्ति छैन। यदि स्क्रम मास्टरले टोली व्यवस्थापन गर्ने प्रयास गर्छ भने परियोजना असफल हुनेछ।
- सटीकता समस्याहरू खराब रूपमा उल्लेख गरिएका कार्यहरूको परिणाम हुन सक्छ: यदि कार्यहरू स्पष्ट रूपमा निर्दिष्ट गरिएको छैन भने, परियोजना खर्च र तालिकाहरू सही हुनेछैनन्। योजना चुनौतीपूर्ण हुन्छ र यदि प्रारम्भिक लक्ष्यहरू परिभाषित गरिएन भने स्प्रिन्टहरू अपेक्षित भन्दा बढी लाग्न सक्छ।
- टोलीको लागि अनुभव र समर्पण आवश्यक छ: टोली सफल हुनको लागि, भूमिका र कर्तव्यहरू स्पष्ट रूपमा परिभाषित हुनुपर्छ। स्क्रम टोलीलाई प्राविधिक सीप भएका टोली सदस्यहरू चाहिन्छ किनभने त्यहाँ कुनै स्पष्ट रूपमा परिभाषित भूमिकाहरू छैनन् (सबैले सबै गर्छन्)। टोलीले दैनिक स्क्रम सत्रहरूमा भाग लिन र परियोजनाको जीवनको लागि सँगै रहन पनि प्रतिबद्ध हुनुपर्छ।
एजाइल बनाम स्क्रम
यद्यपि एजाइल र स्क्रमले एउटै विधि प्रयोग गर्दछ, त्यहाँ दुई बीच केही भिन्नताहरू छन्। एजाइल घोषणापत्रले पुनरावृत्ति विकास मार्फत सफ्टवेयर सिर्जना गर्न सिद्धान्तहरूको एक सेटलाई रूपरेखा दिन्छ।
स्क्रम, अर्कोतर्फ, दिशानिर्देशहरूको सेट हो जुन एजाइल सफ्टवेयर विकास गर्दा पालना गर्नुपर्दछ। फुर्तिलो एउटा अवधारणा हो, जबकि स्क्रम यसलाई व्यवहारमा ल्याउने प्रविधि हो।
स्क्रम एजाइल लागू गर्ने एक विधि हो, त्यसैले तिनीहरू दुबैमा धेरै चीजहरू समान छन्। दुबै दृष्टिकोणहरू पुनरावृत्ति हुन्, प्रारम्भिक र बारम्बार सफ्टवेयर डेलिभरीलाई प्राथमिकता दिनुहोस्, र परिवर्तन स्वीकार गर्नुहोस्। तिनीहरू खुलापन र निरन्तर विकासलाई पनि समर्थन गर्छन्।
एजाइल बनाम झरना
कठोर बनाम लचिलोले झरना प्रक्रिया र एजाइल बीचको भिन्नतालाई उत्कृष्ट वर्णन गर्दछ। जबकि फुर्तिलो तरल छ र लगातार परिवर्तन हुन्छ, झरना एक धेरै कडा, अधिक कठोर विधि हो।
तिनीहरू बीच यी थप भेदहरू निम्नानुसार छन्:
- फुर्तिलोलाई रैखिक दृष्टिकोणको आवश्यकता पर्दैन, जबकि झरना क्रमिक छ।
- झरना परियोजनाहरूमा आवश्यकताहरू प्रायः पूर्वनिर्धारित भए तापनि, तिनीहरू परिवर्तन र फुर्तिलो पहलहरूमा अनुकूलन हुने अपेक्षा गरिन्छ।
- एजाइलको विपरित, झरना परियोजनाहरूले पहिलेको चरणमा पूरा भएको काममा परिमार्जन गर्न अनुमति दिँदैन।
- झरना एक संगठित प्रक्रिया हो जसमा तपाईंले अर्को चरणमा जानु अघि प्रत्येक चरण समाप्त गर्नुपर्छ। जे होस्, Agile एक लचिलो पद्धति हो जसले तपाईंलाई आफ्नो गतिमा परियोजनाको साथ अगाडि बढ्न दिन्छ।
एजाइल बनाम झरना बनाम स्क्रम
- झरनाले यो योजना बनाएपछि चाँडै प्रदान गरिने कुरामा विश्वास बढाउँछ। फुर्तिलो विकास वातावरणको उत्कृष्ट अभ्यासहरूमा निर्भर गर्दछ। यहाँ, नतिजाहरू निरन्तर मूल्याङ्कन गरिएकाले धेरै परियोजना जोखिमहरू राम्रोसँग व्यवस्थापन गर्न सकिन्छ।
- झरनाले टोली र परियोजना एउटै स्थानमा आधारित हुने अनुमान गर्दैन। जबकि स्क्रम र चुस्त कर्मचारीहरूको सह-स्थान चाहिन्छ।
- एजाइलले परियोजना पुन: कार्यलाई कम गर्नमा ध्यान केन्द्रित गर्दछ र परिवर्तनहरूलाई धेरै पहिले समावेश गर्न प्रोत्साहित गर्दछ। झरनाको विपरीत, जसले फरक प्रतिक्रिया दिन्छ, स्क्रमले पनि परिवर्तनहरूको प्रारम्भिक खोजलाई सक्षम बनाउँछ।
- अन्तिम उत्पादनको लागि थप कम्प्याक्ट खाका चुस्त र स्क्रम द्वारा प्रदान गरिएको छ। यसले क्रेतालाई दिएका वाचाहरूसँग समस्या सिर्जना गर्दछ। यसको विपरित, झरना ग्राफिकले ग्राहक र विकासकर्ताहरूलाई समाप्त परिणामको राम्रो छाप दिन्छ।
- यी प्रत्येक प्रविधिहरूसँग तिनीहरूको सिर्जनामा संलग्न कार्यहरू व्यवस्थित गर्न र अनुकरण गर्न उपकरणहरूको सेट छ।
निष्कर्ष
यदि तपाईंले हालसम्म पछ्याउनु भएको छ र वाटरफल, एजाइल र स्क्रम प्रक्रियाहरू बीचको भिन्नताको बारेमा तपाईंको ज्ञानमा विश्वस्त हुनुहुन्छ भने, तपाईंले पहिले नै थाहा पाउनु पर्छ कुन रणनीति तपाईं र तपाईंको टोलीको लागि राम्रो काम गर्नेछ।
झरना प्रविधि, जुन निश्चित दायरा, समय सीमा र बजेट भएका परियोजनाहरूका लागि हो, यदि तपाईंलाई कडा नियमहरू र प्रक्रियाहरू मनपर्छ र तिनीहरूले स्पष्टता ल्याउने फेला पार्छन् भने तपाईंको उत्तम विकल्प हुन सक्छ।
अर्कोतर्फ, यदि स्वतन्त्रता र अनुकूलन क्षमता एजाइलले तपाईंलाई प्रेरणा दिन्छ भने, तपाईंले आफ्नो ध्यान राख्नु पर्ने ठाउँ हुन सक्छ।
यदि तपाइँ लचिलो ढाँचा भित्र थोरै अनुशासन चाहनुहुन्छ भने, स्क्रम जाने बाटो हो।
यद्यपि, तपाईंले काम गरिरहनुभएको परियोजना र तपाईंको अन्तिम नतिजाको प्रकाशमा तपाईंले यी दृष्टिकोणहरूलाई विचार गर्नुपर्छ।
जवाफ छाड्नुस्