एक फुर्तीली परियोजना पर ग्राहक / डेवलपर संस्कृति के साथ व्यवहार करना


11

फुर्तीले के दस में से एक है ...

अनुबंध बातचीत पर ग्राहक सहयोग

... एक और है ...

व्यक्तियों और प्रक्रियाओं और उपकरणों पर बातचीत

लेकिन जिस तरह से मैं इसे देखता हूं, कम से कम जब यह ग्राहक के साथ बातचीत करने की बात आती है, तो एक मौलिक समस्या होती है:

कैसे एक सॉफ्टवेयर इंजीनियर सोचता है कि ग्राहक कैसे अलग है

यह थोड़ा सामान्यीकरण हो सकता है, हाँ। बेशक, वहाँ रहे हैं व्यापार डोमेन ये कुछ और हालांकि अब तक के बीच हैं, जहां इस जरूरी सच नहीं है ---। कई डोमेन में हालांकि, विशिष्ट ग्राहक है:

  1. दैनिक परिचालन चिंताओं में रुचि - कम दूरी की रणनीति ... जरूरी नहीं कि रणनीति;
  2. तात्कालिक समाधान के साथ केवल संबंधित;
  3. व्यावहारिक विचारक, अमूर्त विचारक नहीं;
  4. भविष्य की चिंताओं को हल करने के तरीके पर विचार करने की तुलना में "काम पाने में" अधिक रुचि।

दूसरी ओर, आदर्श में , सॉफ्टवेयर इंजीनियर जो चुस्त अभ्यास करते हैं:

  1. जो लोग गुणवत्ता के बारे में सोचते हैं;
  2. ऐसे व्यक्ति जो सराहना करते हैं कि कैसे थोड़ा सा अग्रिम काम लाइन के प्रयास में एक टन बचा सकता है;
  3. अनुभवी, विश्लेषणात्मक विचारक।

तो एक संस्कृति विसंगति प्रतीत होती है जो "ग्राहक सहयोग" को बाधित करती है।

इसे संबोधित करने का सबसे अच्छा तरीका क्या है?


1
संचालक कंडीशनिंग आकार देने - en.wikipedia.org/wiki/Shaping_%28psychology%29 - संकेत: यदि आप उन्हें डोनट देने से पहले क्लिकर का उपयोग करते हैं तो यह बहुत स्पष्ट है।
jfrankcarr

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

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

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

@ शाल्सबेरी - मुझे लगता है कि सवाल उन सबसेट के लिए बंद किया जा सकता है। यह नहीं है कि यह कैसे चरणबद्ध है। मैंने इसे सभी डेवलपर्स के रूप में पढ़ा जो चुस्त अभ्यास करते हैं और अधिकांश ग्राहक बुरे हैं।
सॉयलेंटग्रे

जवाबों:


27

कई डोमेन में हालांकि, विशिष्ट ग्राहक है:

  • दैनिक परिचालन चिंताओं में रुचि - कम दूरी की रणनीति ... रणनीति नहीं;
  • केवल तत्काल समाधान से संबंधित;
  • आम तौर पर एक आयामी, गैर-अमूर्त विचारक;
  • स्थायी रूप से, गुणवत्ता समाधान के साथ आने के विपरीत "काम पूरा करने" में दिलचस्पी है।

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

तो जवाब है - शायद ही आश्चर्य की बात - संचार

आपको एक दूसरे को शिक्षित करने के लिए, एक दूसरे को शिक्षित करने के लिए, एक दूसरे को देखने के बिंदु को कम से कम बुनियादी स्तर पर समझने के लिए, बहुत कुछ संवाद करने की आवश्यकता है। आपको उन्हें संभावित विकल्पों के छोटे और दीर्घकालिक परिणामों की व्याख्या करने की आवश्यकता है। और आपको उनकी समझ में आने वाली भाषा का उपयोग करने की आवश्यकता है

  • यदि आप कहते हैं "यह एक हैक होगा, जो कोड को कम पठनीय और एक्स्टेंसिबल बनाता है" , वे कहते हैं, "हाँ, जो भी हो"
  • यदि आप कहते हैं, "यह एक अल्पकालिक फिक्स होगा, जो विकास और रखरखाव को अधिक महंगा बना देगा, और बग को शुरू करने के जोखिम को बढ़ाएगा" , वे कहते हैं "एक हा, चलो विचार करें"
  • और यदि आप कहते हैं "इस समाधान में आपको $ 100 का खर्च आएगा, लेकिन $ 500 का तकनीकी ऋण प्रस्तुत करता है, जिसे आप जल्द या बाद में ब्याज के साथ वापस भुगतान करने के लिए बाध्य होते हैं; ओटीओएच इस अन्य समाधान की कीमत आपको $ 400 है और कोई तकनीकी ऋण नहीं छोड़ता है; चाहते हैं " , वे कहते हैं " अब हम बात कर रहे हैं!

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

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

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


3
वाह, आपके पास ऐसे ग्राहक हैं जो वास्तव में तकनीकी ऋण से बचेंगे? मैंने जो भी किया है, उनमें से अधिकांश '$ 100 होगा, हाँ, मैं वही लूंगा।'
सेवंसेकैट

खैर, यह मुश्किल बिट है, है ना? "अच्छा पर्याप्त" क्या है, और जब आपके व्यवसाय उत्पाद / प्रणाली के मध्यम से दीर्घकालिक स्वास्थ्य पर समय बिताने पर विचार करते हैं, तो आपके रिटर्न कहाँ कम होने लगते हैं? मैं तर्क दूंगा कि यह एक पेशेवर के लिए एक कॉल करने के लिए कुछ है।
एरिक स्मिथ

2
@ कर्क, हां, ऐसे ग्राहक हैं जिन्होंने सीखा है कि तकनीकी ऋण का वास्तव में क्या मतलब है (आमतौर पर कठिन तरीका)।
पेटर टॉर्क

2
@ EricSmith, हाँ, यह एक फ़ज़ी फ़ैसला है, जिसमें एक भी सही उत्तर नहीं है। हम डेवलपर्स चीजों के तकनीकी परिणामों को समझते हैं; ग्राहक को बजट और व्यावसायिक सीमाएं पता हैं। आदर्श रूप से, हम बताते हैं कि प्रत्येक सुविधा / कार्य की लागत कितनी है; ग्राहक प्रत्येक के मूल्य और लागत के आधार पर प्राथमिकता देता है। हमेशा एक समझौता होता है जब आपको एक-एक करके सबसे अधिक दबाव वाली समस्याओं को ठीक करते हुए सिस्टम को चालू रखने की आवश्यकता होती है।
पेटर तोर्क

3
मैं इस बात से सहमत हूँ कि आप यहाँ क्या कह रहे हैं हालांकि मैं कंपनी संस्कृतियों में भाग गया हूँ जहाँ उपयोगकर्ताओं ने संवाद करने से इनकार कर दिया है। यह दो तरह से सड़क होना है या यह सफल नहीं होगा। मैं अपनी टिप्पणी में कंडीशनिंग के लिए डोनट्स का उपयोग करने के बारे में केवल आधा मजाक कर रहा था। कभी-कभी आपको भागीदारी पाने के लिए सकारात्मक या नकारात्मक सुदृढीकरण का उपयोग करना पड़ता है।
jfrankcarr

4

आपका ग्राहक खुद को कैसे देखता है:

  • मेरे पास एक परियोजना है जिसे मुझे ASAP करने की आवश्यकता है
  • मुझे पता है कि मेरी व्यावसायिक ज़रूरतें हैं
  • मुझे इस तरह से समस्या को हल करने की आवश्यकता है जो वर्तमान व्यावसायिक प्रथाओं के लिए विघटनकारी नहीं है
  • इसे पूरा करने के लिए मेरे पास एक सीमित बजट है।

दूसरी ओर, वे आपके समूह को इस प्रकार देखते हैं:

  • दोस्तों जो नहीं मिलता है कि वे मेरे बजट से पैसा चूस रहे हैं।
  • हमारे व्यवसाय की जरूरतों को न समझें
  • सब कुछ फिर से डिज़ाइन करना चाहते हैं, भले ही यह व्यवसाय पर इसे कठिन रूप से लागू करने जा रहा हो।
  • सभी के लिए बजट कार्यात्मक और प्रभावी होने पर चतुर चालाक समाधान करना चाहते हैं।

आपकी प्राथमिक समस्या यह है कि न तो आप समझ पा रहे हैं कि उन्हें दूसरे पक्ष से क्या चाहिए।


3

ठीक है, सबसे पहले और सबसे महत्वपूर्ण, फुर्तीली आपके प्रोजेक्ट में मौजूद सभी समस्याओं का समाधान नहीं है।

सॉफ्टवेयर इंजीनियर कैसे सोचता है कि ग्राहक कैसे मौलिक रूप से अलग है

हाँ। कभी-कभी यह सच है। यहां तक ​​कि ऐसे मामले भी हैं जहां ग्राहक नहीं जानते कि वे क्या और कैसे चाहते हैं (यानी, आवश्यकताएं स्पष्ट नहीं हैं)। क्या कभी, अगर आप चुस्त हैं तो आपको प्रत्येक स्प्रिंट के बाद परिणाम मिलता है (2 सप्ताह का कहना है) और आपको ग्राहक प्रतिक्रिया प्राप्त करने और यह सुनिश्चित करने का अवसर मिलता है कि सभी एक ही पृष्ठ पर हैं। यह उन मुद्दों को जल्दी पहचानने और ठीक करने में मदद करता है जो आंतरिक रूप से विश्वास बनाने में मदद करेंगे।

एक कहावत भी है, उपयोगकर्ता पागल बच्चों की तरह होते हैं, इसलिए जब वे बंदूक मांग रहे होते हैं और आप जानते हैं कि यह सुरक्षित नहीं है, तो आप उन्हें शांत करने के लिए खिलौना बंदूक देने पर विचार कर सकते हैं

इसे संबोधित करने का सबसे अच्छा तरीका क्या है?

जैसा कि मैंने पहले ही बताया है कि कोई जादू की छड़ी नहीं है जो सभी शोध समस्याओं को हल कर सकती है । आपको अपने ग्राहकों के साथ अधिक जुड़ाव करने की आवश्यकता है ताकि एक दूसरे को क्या करना है, इसके बारे में अच्छी समझ हो। साइट की यात्रा, खुली प्रतिक्रिया आदि को बढ़ावा दें।

सुनिश्चित करें कि आपके उत्पाद के मालिक और हितधारक स्प्रिंट डेमो में शामिल हों और उत्पाद को बेहतर बनाने के लिए बहुमूल्य सुझाव दें


1

यदि आपके पास ग्राहक से खरीदारी नहीं है, तो एजाइल लगभग असंभव हो सकता है।

में खरीदने से मेरा मतलब है कि प्रति सप्ताह या महीने में ग्राहक के प्रतिनिधियों का कुछ ग्वारेंटीस प्रतिशत प्राप्त करना। यह प्रतिशत परियोजना के आधार पर अलग-अलग होगा।

जाहिर है कि उनके पास अपना दिन का काम है, इसलिए यह ग्राहक प्रतिनिधि के लिए नहीं है, यह उनके लिए समय बनाने के लिए उनके प्रबंधन के लिए है।

इसलिए ग्राहक की ओर से प्रबंधन से समझौता करना इस समस्या के लिए महत्वपूर्ण है


बिना किसी विधि के ग्राहक खरीदना लगभग असंभव होगा
रायथल

@ रायथल - वास्तव में, लेकिन यह उस तरह से विशेष रूप से महत्वपूर्ण है जैसा मैं एजाइल के लिए वर्णन करता हूं।
ओज

0

याद रखें कि चुस्त का मतलब यह नहीं है कि ग्राहक दैनिक स्टैंड-अप या फुर्तीले के कुछ अन्य दिन के पहलुओं में शामिल है। चुस्त, ग्राहक के दृष्टिकोण से, संचार के बारे में है। इसका मतलब यह नहीं है कि वे कार्यान्वयन विवरण के बारे में इंजीनियरों के साथ संवाद कर रहे हैं।

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

एजाइल आपको और आपके ग्राहक को उन सवालों के जवाब देने में मदद करता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.