हम कुछ भी क्यों नहीं कर सकते?


9

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

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

मुद्दों के रूप में मैं जिन चीजों की पहचान कर सकता हूं उनमें शामिल हैं:

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

.... ओफ़्फ़। जब मैं इसे इस तरह वाक्यांश देता हूं, तो यह मेरे विचार से बहुत बुरा लगता है। मुझे लगता है, जैसा कि यह पता चला है, यह मदद के लिए रो रहा है।


5
ग्राहक द्वारा उपयोग और पसंद किए जाने वाले सॉफ़्टवेयर को बाहर करने में कंपनी कितनी अच्छी है? दूसरे शब्दों में, क्या टीम को अच्छे परिणाम मिल रहे हैं, इस तथ्य के बावजूद कि आपको विश्वास नहीं है कि प्रक्रिया तारकीय है?
रॉबर्ट हार्वे

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

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

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

जवाबों:


19

मुझे एक पल के लिए शैतान के वकील की भूमिका निभाने दें:

हाथ में कार्यों की विशिष्टता विरल है ... लीड देव को वह बहुत पसंद है जिसे वह 'प्रोटोटाइप' कहते हैं

लीड देव प्रोटोटाइपिंग के शौकीन हैं क्योंकि स्पेसिफिकेशन विरल हैं। यह शायद एक अच्छी बात है; यह है कि पुनरावृत्तियों की दुकानें कैसे काम करती हैं।

मोडेलर्स से अपेक्षा की जाती है कि वे हमें सटीक तरीके से वांछित कार्यप्रणाली के बारे में सब कुछ बताएं

यह एक पुनरावृत्ति की दुकान में काम नहीं करेगा। पुनरावृत्ति विकास की प्रकृति यह है कि आवश्यकताएं अक्सर अपूर्ण होती हैं। पुनरावृत्तियों वे हैं जो आवश्यकताओं को पूरा करने के लिए आवश्यक हैं।

मैंने पहले टीम में टीडीडी को धकेलने की कोशिश की है, लेकिन यह मेरे लिए नया होने के साथ ही कठिन है

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

अब हमारे पास एक निरंतर एकीकरण सर्वर है, लेकिन इसका उपयोग केवल कई-घंटे प्रतिगमन परीक्षण चलाने के लिए किया जा रहा है।

यह एक छोटी, पुनरावृत्ति की दुकान में उपयुक्त हो सकता है।

जब भी मैं लीड देव के साथ गुणवत्ता का मुद्दा उठाता हूं, मुझे 'ए फीचर टेस्टिंग फ़ीचर ए' के ​​प्रभाव का उत्तर मिलता है, फ़ीचर बी उपयोगकर्ता के लिए बहुत अधिक महत्वपूर्ण है, लेकिन परीक्षण करना बहुत कठिन है, इसलिए हमें फ़ीचर का परीक्षण नहीं करना चाहिए ए'

ऐसा लगता है कि आपकी दुकान में कुछ काफी तंग समय की कमी है; यह पसंद है या नहीं, आप उन बाधाओं से बंधे हैं।

यह भी लगता है कि आप सॉफ्टवेयर उद्योग के एक हिस्से से आए हैं जो चीजों को पहले बाजार तक पहुंचाने के लिए चीजों को "सही तरीके" से करने का महत्व देता है। इसमें कुछ भी गलत नहीं है (यह सराहनीय है, वास्तव में), सिवाय इसके कि सॉफ्टवेयर के बग्गी के टुकड़े के साथ पहला बाजार अक्सर विजेता होता है। यह उचित नहीं है, लेकिन यह है कि यह कैसे है।


मुझे लगता है कि आपको "तकनीकी ऋण" के दृष्टिकोण से इसे अपनाने की आवश्यकता है। हर कंपनी समय का अनुमान लगाती है; तुम्हारा मानना ​​पहले से बहुत अच्छा है, अपने समय में 10% से 20% अधिशेष का निर्माण करना शुरू करें, जो कि रिफैक्टरिंग और प्रशिक्षण के लिए आपके समय के अनुमानों में आता है, और इसे छड़ी बनाते हैं।
रॉबर्ट हार्वे

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

2
@Tom: जब तक आप मोडेलर्स से परीक्षण योग्य विनिर्देशों पर जोर नहीं देते, वे हमेशा आपकी टीम को बता सकते हैं कि वे गलत हैं। यदि वे आपको अपने मॉडल से परिणाम प्राप्त करने के लिए जवाबदेह रखने जा रहे हैं, तो आपको उन्हें परीक्षण योग्य विशिष्टताओं के साथ प्रदान करने के लिए जवाबदेह पकड़ना होगा ताकि आप सफलता की घोषणा कर सकें। प्रत्येक विनिर्देश को इसमें किसी प्रकार "गो, नो गो" टेस्ट का निर्माण करना चाहिए था, ताकि आप और ग्राहक (या मॉडेलर) पारस्परिक रूप से सहमत हो सकें कि परीक्षण पास हुआ, बिना व्याख्या के अधीन।
रॉबर्ट हार्वे

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

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

2

मैं यहां प्रोटोटाइप पर ध्यान केंद्रित करने जा रहा हूं

प्रोटोटाइप के साथ प्रमुख मुद्दा यह है कि वे अवधारणा के प्रमाण के रूप में हैं

हालाँकि यदि आप प्रोटोटाइप पर आगे निर्माण नहीं कर सकते हैं और अंतिम उत्पाद को खरोंच से पुनर्निर्माण करने की आवश्यकता है, तो आपके पास प्रोटोटाइप का निर्माण नहीं हो सकता है और आपने अपना समय बर्बाद कर लिया है

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


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

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

2
फ्रेड ब्रूक्स ने कहा "एक को फेंक दो, वैसे भी तुम लिखोगे", यह आज भी उतना ही सच है जितना 40 साल पहले था।
मटनज़

1

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


1

क्या आपने कंपनी में किसी ऐसे व्यक्ति की पहचान की है जो "ऐसा करता है" यदि ऐसा है, तो इस आदमी पर लट्टू करें और उससे जितना संभव हो सीखें। यदि नहीं, तो अपना समय बिताएं, सीखना शुरू करें और अपने आप बढ़ें (ओपन सोर्स प्रोजेक्ट में शामिल हों या अपना प्रोजेक्ट शुरू करें), और ऐसी जगह की तलाश करें जो आपके विकास को बढ़ावा दे सके।

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


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