व्यवसाय से जुड़े लोगों की ज़रूरतें पूरी करना?


27

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

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

या

“इस बारे में चिंता मत करो कि यह अभी कैसे दिखाई देगा (नंबर 1 हैंग हो जाता है)। बस हमें उन सभी डेटा की एक सूची दें जो आप प्रत्येक चीज के बारे में चाहते हैं जो कार्यक्रम को ट्रैक करता है। इसलिए "ग्राहक" के लिए आप सूची दे सकते हैं: नाम, पता, फोन नंबर, ऑर्डर आदि। यह एक आदर्श डेटाबेस संरचना नहीं है, लेकिन हम इससे कुछ काम कर सकते हैं और इस बात का अंदाजा लगा सकते हैं कि आप क्या देख रहे हैं?

क्या इन वैकल्पिक तरीकों में से कोई भी व्यवसाय के लोगों को इस बात पर ध्यान केंद्रित करने के लिए मिलता है कि वे क्या चाहते हैं? क्या ऐसे विकल्प हैं जो आपने कार्रवाई में देखे हैं?


18
मैं हमेशा संगठित अपराध से विश्लेषकों की आवश्यकताओं को पूरा करने के बारे में सोचता था। "क्या आप मुझे बताने जा रहे हैं कि किसके पास अकाउंटिंग डेटा तक पहुंच होनी चाहिए, या क्या मुझे लगता है कि हफ़्ता मोटा हो जाएगा?"
डेविड थॉर्नले

7
"सत्य भ्रम से जल्द ही त्रुटि से बाहर आ जाएगा।" (सर फ्रांसिस बेकन, जैसा कि फ्रेड ब्रूक्स द्वारा उद्धृत किया गया है) उन्हें बताएं / दिखाएं कि आपको क्या लगता है कि वे विशिष्ट शब्दों में चाहते हैं, भले ही आप आधार से दूर हों। वे आपको सही करेंगे। जब तक आप समझ में नहीं आते हैं तब तक कुछ समय दें।

जवाबों:


22

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

कई सबक जो मैंने सीखा है:

  • अलग-अलग हितधारक विभिन्न स्तरों पर अमूर्तता के बारे में सोचते हैं।

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

    दुर्भाग्य से, आपको बस सभी व्यक्तियों को व्यक्तियों के रूप में जानना होगा और समझना होगा कि वे कैसे सोचते हैं, सीखते हैं कि वे जो कुछ कहते हैं, उसकी व्याख्या कैसे करें, और यहां तक ​​कि यह भी तय करें कि क्या उपेक्षा करना है।

  • विभाजन और जीत

    यदि आप कुछ नहीं करना चाहते हैं, तो इसे समिति को भेजें।

    समितियों से मत मिलना। जितना हो सके उन मीटिंग्स को छोटा रखें। YMMV, लेकिन मेरे अनुभव में, आदर्श आकार 3-4 लोग हैं (खुले सत्रों के लिए) और बंद सत्रों के लिए 2-3 लोग (यानी जब आपको किसी विशिष्ट प्रश्न के उत्तर की आवश्यकता होती है)।

    मैं ऐसे लोगों के साथ मिलने की कोशिश करता हूं जिनके व्यवसाय में समान कार्य हैं। वहाँ वास्तव में बहुत कम हासिल करने के लिए और बीन काउंटर के साथ कमरे में विपणन लोगों को उछालने से बहुत कम है। उन लोगों की तलाश करें जो एक विषय के विशेषज्ञ हैं और उन्हें उस विषय के बारे में बात करने के लिए मिलता है।

  • बिना तैयारी के एक बैठक उद्देश्य के बिना एक बैठक है।

    अन्य उत्तर / टिप्पणियों के एक जोड़े ने पुआल-मैन तकनीक का संदर्भ दिया है, जो उन परेशान लोगों के लिए एक उत्कृष्ट है जिसे आप बस किसी भी उत्तर को प्राप्त करने के लिए प्रतीत नहीं कर सकते हैं। लेकिन स्ट्रॉ-मेन पर बहुत ज्यादा भरोसा न करें , वरना लोगों को लगने लगेगा कि आप उन्हें रेलरोड कर रहे हैं। आपको लोगों को धीरे-धीरे सही दिशा में ले जाना है और उन्हें खुद को बारीकियों के साथ आने देना है, ताकि उन्हें ऐसा लगे कि वे उन्हें पसंद करते हैं (और एक मायने में वे उन्हें खुद करते हैं)।

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

    एक बार उस बिंदु पर, मैंने इसे उच्च-स्तरीय निर्माणों के साथ काम करने के लिए सबसे प्रभावी पाया है, जैसे कि उपयोग मामले, जो हर किसी के लिए सहमत होने की प्रवृत्ति रखते हैं, लेकिन विशिष्ट प्रश्न पूछना अभी भी महत्वपूर्ण है। यदि आप "आप अपने ग्राहकों को बिल कैसे देते हैं?" , आप बहुत लंबी बैठक के लिए हैं। सवाल है कि पूछो मतलब एक प्रक्रिया के बजाय get-बार में प्रक्रिया बाहर belting: लाइन आइटम क्या हैं? उनकी गणना कैसे की जाती है? वे कितनी बार बदलते हैं? बिक्री या अनुबंध कितने प्रकार के होते हैं? वे कहां से छपते हैं? तुम्हें नया तरीका मिल गया है।

    यदि आप एक कदम याद करते हैं, तो आमतौर पर कोई आपको बताएगा। यदि कोई शिकायत नहीं करता है, तो अपने आप को पीठ पर एक पॅट दें, क्योंकि आपने अभी प्रक्रिया की पुष्टि की है।

  • ऑफ-टॉपिक चर्चाओं को टाल दें

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

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

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

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

  • आपको एक एजेंडा चाहिए

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

    वहाँ बिल्कुल स्पष्ट विचार के बिना वहाँ मत चलो यह क्या है कि आप कवर करना चाहते हैं और कब । उसके बिना, आपके पास अपनी प्रगति का मूल्यांकन करने का कोई तरीका नहीं है, और उपयोगकर्ता हमेशा लंबे समय तक चलने के लिए आपसे नफरत करेंगे (यह मानते हुए कि वे पहले से ही अन्य कारणों से आपसे नफरत नहीं करते हैं)।

  • यह नकली

    यदि आप एक नकली उपकरण के रूप में PowerPoint या Visio का उपयोग करते हैं, आप इसके बारे में इस मुद्दे से पीड़ित होने जा रहे हैं बहुत पॉलिश । यह लगभग उपयोगकर्ता इंटरफेस की एक अनजान घाटी है; लोगों नैपकिन चित्र के साथ सहज महसूस (या कंप्यूटर जनित चित्र कि नैपकिन ड्राइंग, की तरह एक उपकरण का उपयोग कर की तरह दिखाई देगा Balsamiq या Sketchflow ), क्योंकि वे जानते हैं कि यह असली बात नहीं है - इसी कारण लोग कार्टून चरित्रों देखने में सक्षम हैं। लेकिन जितना अधिक यह वास्तविक यूआई की तरह दिखना शुरू होता है, उतने ही अधिक लोग इसे चुनना चाहते हैं और उस पर पंजा मारेंगे, और जितना अधिक समय वे उन विवरणों के बारे में बहस करने में बिताएंगे जो अंततः महत्वहीन हैं।

    इसलिए आवश्यकताओं की अपनी समझ ( प्रारंभिक विश्लेषण चरणों के बाद ) का परीक्षण करने के लिए निश्चित रूप से मॉक अप करें - वे बहुत ही त्वरित और विस्तृत प्रतिक्रिया प्राप्त करने का एक शानदार तरीका हैं - लेकिन उन्हें लो-फाई रखें और तब तक मजाक न करें जब तक आप ' पुनः सुनिश्चित करें कि आप अपने उपयोगकर्ताओं के साथ आँख-से-आँख देख रहे हैं।

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

  • धैर्य रखें।

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

    जब तक आप कुछ छोटे CRUD ऐप विकसित नहीं कर रहे हैं (तब किस स्थिति में क्यों आवश्यकताओं से परेशान हैं?) तो आप एक बैठक में, या दो, या पांच की जरूरत है सब कुछ पाने की उम्मीद न करें। आप बहुत कुछ सुन रहे हैं, और बहुत कुछ बोल रहे हैं, और अपने आप को बहुत दोहरा रहे हैं। जो एक भयानक बात नहीं है, तुम मन हो; यह उन लोगों के साथ कुछ तालमेल बनाने का मौका है जो अनिवार्य रूप से आपके सुपुर्दगी पर हस्ताक्षर करने जा रहे हैं।

  • अपनी तकनीक को बदलने या सुधारने से डरो मत।

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

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

  • अपने कान को जमीन पर रखें।

    आवश्यकताओं के विश्लेषण के लिए मैंने जो भी संकेत और युक्तियां पढ़ी हैं, उनमें से यह संभवतः सबसे अधिक अनदेखी की गई है। मुझे ईमानदारी से लगता है कि मैंने निर्धारित बैठकों की तुलना में अधिक गरमागरम और कभी-कभी दुर्घटनाग्रस्त वाटर-कूलर वार्तालापों को सीखा है।

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

  • अंत में, लाइनों के बीच पढ़ें

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

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


4
+1 मैं प्रोग्रामर एसई पर देखा है सबसे अधिक आकर्षक जवाब में से एक होने के लिए!
मॉर्गन हेरलॉकर

19

यदि आप उनमें से कुछ नहीं प्राप्त कर सकते हैं, तो कुछ लिखें और इसे अनुमोदित करें। गैर-तकनीकी लोगों के लिए यह बहुत आसान है कि 'नहीं, मुझे यह पसंद नहीं है' की तुलना में 'यह है कि आपको यह कैसे करना चाहिए।'

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

अगर कोई ऐसी चीज है, जिस पर आप एक या दूसरे रास्ते पर जा सकते हैं, तो दोनों विकल्प ऑनलाइन होंगे और निर्णय लेने वाले को विकल्प चुन सकते हैं। जब तक वे करते हैं उन्हें अकेला मत छोड़ो।

प्रोटोटाइप के लिए, स्क्रीन मॉक-अप करें, और बताएं कि इसके बजाय चीजें कैसे काम करेंगी। फिर से, कुछ देखने से उन्हें यह देखने में मदद मिलती है कि क्या चल रहा है। मीटिंग्स के लिए नए स्क्रीन मॉक-अप लें और उत्तर प्राप्त करें।

अतीत में, मैंने वास्तव में फायरबग को खोला है और बदले में जोड़ा है कि ग्राहक ने उनके सामने सही अनुरोध किया था ताकि वे देख सकें कि यह कैसा दिखेगा। उन्होंने अपनी प्रतिक्रिया दी, मैंने एक स्क्रीन शॉट लिया फिर परिवर्तनों को लागू किया। वे वास्तव में यह देखना पसंद कर रहे थे कि परिवर्तन कैसा दिखेगा, और मुझे यह पसंद आया b / c यह तेज़ था और मुझे उस बैठक में अपना उत्तर मिला ... अगले नहीं।


2
+1। स्ट्रोमैन तकनीक अक्सर उपयोगकर्ताओं को यह सोचने का एकमात्र तरीका है कि वे क्या करते हैं - उनका काम उनके लिए इतना स्वचालित है कि उनके बारे में सोचना वास्तव में कठिन है।
डेवई

मैं ईमानदारी से सोचता हूं कि कोई भी (प्रोग्रामर सहित) आवश्यकताओं को "नहीं, मुझे पसंद नहीं है" के रूप में आसान दे सकता है। मुझे "मुझे यह चाहिए" के बजाय यह "बदला" चाहिए। मुझे लगता है कि यह एक बार में पूरी परियोजना के बारे में सोचने की कोशिश करने के बजाय तात्कालिक कार्य पर ध्यान केंद्रित करने में मदद करता है
अर्लज़

+1 करने के लिए उन्हें "नहीं, मुझे वह पसंद नहीं है" कहने के बजाय "मुझे यह चाहिए"। यदि कोई कंपनी ठीक से नहीं जानती है कि वे क्या चाहते हैं, तो यह वह तरीका है जो मैं कोशिश करता हूं और लेता हूं।
राहेल

11

उन्हें अपने व्यवसाय के बारे में अधिक और अनुप्रयोगों के बारे में कम बात करने के लिए प्राप्त करें। पता करें कि वास्तविक समस्याएं क्या हैं: महीने के अंत की रिपोर्ट में बहुत लंबा समय लगता है, डेटा प्रविष्टि त्रुटियां हैं, वे अपने वर्तमान आवेदन को आगे बढ़ा चुके हैं, कंपनी की वृद्धि हाथ से बाहर हो रही है।

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

देखें कि क्या उनके पास कोई रिपोर्ट है जो वे वर्तमान में उपयोग कर रहे हैं या उपयोग करना चाहते हैं। यदि आप डेटा ठीक से एकत्र नहीं करते हैं तो जाहिर है आप रिपोर्ट नहीं बना सकते। उन्हें कुछ करना होगा जब तक कि यह व्यवसाय की कुछ पंक्ति नहीं है जो उन्होंने अभी तक शुरू नहीं की है।

कई में ये सामान्य धारणाएं होती हैं कि आप प्रोग्रामर हैं, इसलिए आप सभी प्रोग्राम बनाना जानते हैं। ईकामर्स साइटें सभी समान हैं, है ना?

छोटा शुरू करो। दुर्भाग्य से, जब तक आप उनके सामने कुछ प्राप्त नहीं करते हैं, तब तक प्रक्रिया बस पंजीकृत नहीं होती है। यदि आपके पास जाने के लिए कुछ नहीं है, तो बस इसे नकली करें।


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

+1 के लिए "उन्हें अपने व्यवसाय के बारे में और अनुप्रयोगों के बारे में कम बात करने के लिए प्राप्त करें।" यह एक सुनहरा नियम है।
DPD

8

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

विशेष रूप से आपके द्वारा वर्णित परिदृश्य के लिए, यहाँ कुछ और सलाह दी गई है: यह वर्णन करके शुरू करें कि आपके पास क्या उपयोगी होगा, और उन सूचनाओं का वर्णन करने के लिए वाहन प्रदान करें जिनके लिए तकनीकी विशेषज्ञता या ज्ञान की आवश्यकता नहीं है:

  • उपयोगकर्ता कहानियां / उपयोग के मामले उपयोगकर्ताओं से क्या करने की अपेक्षा कर रहे हैं, इसके बारे में विस्तृत जानकारी के लिए पूछें कि इसे करने के लिए उन्हें क्या जानकारी चाहिए और आपको क्या करना चाहिए और उपयोगकर्ताओं से स्वयं इनपुट करने की अपेक्षा कर सकते हैं। एक बार जब आपके पास यह जानकारी हो, तो उनके साथ चलें और सुनिश्चित करें कि सब कुछ कहानियों से ढंका है - ऐसा कुछ भी नहीं होना चाहिए जो एप्लिकेशन में जा रहा हो, जहां आपके पास उपयोगकर्ता को कवर करने वाली कहानियां नहीं हैं।

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

  • बाजार / प्रतिस्पर्धी जानकारी प्रत्येक उपयोगकर्ता कहानी के लिए, हम क्या कर रहे हैं जो हमारे प्रतियोगियों के समान है? विभिन्न? हमारे प्रतियोगी क्या कहानी सुनाते हैं, और क्या हम उद्देश्यपूर्ण रूप से भिन्न होने की नकल / अनुकरण / सुधार / नया करने / करने की कोशिश कर रहे हैं?

  • खुले प्रश्न क्या, आवश्यकताओं और डिजाइन के बारे में जानकारी है, जो आप निश्चित हैं, और एक प्रयोग क्या है? हम यह देखने के लिए विकल्पों की कोशिश करने जा रहे हैं कि कौन सा काम करता है? यदि आप एक से अधिक विकल्प देख रहे हैं, और आपने हमें केवल एक ही बताया है, तो आप किन अन्य पर विचार कर रहे हैं?

फिर, कुछ सीमाएँ निकालें:

  • कृपया मुझ पर तकनीकी प्रतिबंध न लगाएं । एक व्यवसायी व्यक्ति को आपको "विंडोज़ का उपयोग न करें क्योंकि यह लिनक्स से बेहतर है" नहीं बताया जाना चाहिए। हालांकि, वे "हमारे सभी लक्षित बाजार खिड़कियों का उपयोग करते हैं, हमारे आवेदन सफल होने के लिए खिड़कियों पर चलना होगा" की तर्ज पर निर्देश प्रदान करते हैं।

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

  • नीचे दिए गए फ़ैसलों को लिखें । हालांकि, याद रखें कि ग्राहक जो निर्णय नहीं लेता है, वह उस कागज के लायक नहीं है, जिस पर उसका लिखा हुआ है। "अनुप्रयोग पोर्ट 1521 पर चलेगा" पर हस्ताक्षर करने वाला ग्राहक उतने लायक नहीं है, जितना ग्राहक उस पर हस्ताक्षर करने के लायक नहीं है "आवेदन कस्टम, कॉन्फ़िगरेशन योग्य, पोर्ट पर चलेगा, जिसे तैनात करने पर फ़ायरवॉल और सुरक्षा के लिए विशेष कॉन्फ़िगरेशन की आवश्यकता हो सकती है। "

अपने दृष्टिकोण से, प्रक्रिया को जारी रखने के लिए प्रोत्साहित करने के लिए:

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

  • आपके पास उपलब्ध कराए गए जानकारी के संदर्भ में, आपके द्वारा खोजे गए या आपके द्वारा खोजे गए या आपके द्वारा खोजे गए अतिरिक्त जानकारी के लिए सार्थक संचार प्रदान करें । "हम लिनक्स के साथ जा रहे हैं" शायद खराब लिखित प्रतिक्रिया है, जबकि "हमारे परीक्षण दिखाते हैं कि एप्लिकेशन जब लिनक्स मशीनों पर होस्ट किया जाता है और विंडोज़ पर IE के साथ एक्सेस किया जाता है" तो अधिक उपयुक्त हो सकता है।

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


5

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

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

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

जोड़ा गया: यदि आप उन ग्राहकों से आवश्यकताओं के दस्तावेज के लिए बाध्य करने का प्रयास करते हैं, जिनके पास अपेक्षित विशेषज्ञता नहीं है, तो यह संभावित रूप से एक विशाल लाल झंडा हो सकता है जो आने वाली आपदा का संकेत दे सकता है।


3

UI या डेटा आवश्यकताओं के लिए मत पूछो, कार्यक्षमता आवश्यकताओं के लिए पूछें।

उनसे पूछें कि वे आवेदन क्या करना चाहते हैं। क्या वे आवेदन का उपयोग कैसे करना चाहते हैं, उनके माध्यम से चलो। शुरुआत के लिए इसमें से यूआई, डेटा आदि जैसे विवरण छोड़ दें।

मुझे पता चला है कि अक्सर उपयोगकर्ता यूआई या डेटा के संदर्भ में नहीं जानते हैं कि वे क्या चाहते हैं, लेकिन वे जानते हैं कि वे कार्यक्षमता के रूप में क्या चाहते हैं। उदाहरण के लिए, वे मुझे बताएंगे "मैं लॉगिन करना चाहता हूं और सभी ग्राहक जानकारी देखना चाहता हूं।" स्क्रीन क्या दिखेंगे, या वे कौन सा डेटा चाहते हैं, बस उनसे कार्यक्षमता प्राप्त न करें।

एक बार जब आप ऐसा कर लेते हैं, तो जल्दी मॉकअप करें (मुझे बालसामी पसंद है )। बस मान लें कि UI / डेटा क्या होगा, और इस पर बहुत समय खर्च न करें। फिर उस मॉकअप को ग्राहक के पास वापस ले जाएं। वहां से, वे आपको बता सकते हैं "हमें इन क्षेत्रों की आवश्यकता नहीं है" या "हम वास्तव में फोन की सूची चाहते हैं #s, न कि केवल एक", या "यह एक ड्रॉपडाउन होना चाहिए, न कि एक लिस्टबॉक्स"।

एक बार जब आपके पास शुरुआती बिंदु होता है तो डेटा और UI को मांस करना बहुत आसान होता है, और मुझे लगता है कि कार्यक्षमता निर्धारित करना सबसे अच्छा प्रारंभिक बिंदु है।


2

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

यदि आपके क्लाइंट को सॉफ़्टवेयर आवश्यकताओं को प्रदान करने के लिए उपयोग नहीं किया जाता है, तो आपकी टीम को उनके लिए आवश्यकताओं का मसौदा तैयार करना चाहिए। कई संशोधनों के माध्यम से जाने की अपेक्षा करें, लेकिन आपको कम से कम एक प्रारंभिक दस्तावेज प्रदान करना चाहिए जिससे यह पता लगाया जा सके कि आप जिस चीज की तलाश कर रहे हैं।

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

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


1

मैं उनसे कहूंगा कि आप प्रोग्राम फीचर को फीचर द्वारा विकसित करेंगे। अगली बैठक तक, 1-2 सप्ताह में कहें कि आप X नंबर की सुविधाओं पर काम करने जा रहे हैं। यह 1, 2, 3 या अधिक हो सकता है।

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

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

पिछले उदाहरण का पुन: उपयोग करते हुए ग्राहक आपको बता सकता है कि यह उपयोगकर्ता के कार्ड को मान्य कर रहा है या जमा कर रहा है, आदि। फिर उन्हें आपके लिए इसे परिभाषित करने के लिए कहें। बहुत सारे सवाल पूछने से डरो मत, यहां तक ​​कि जरूरत पड़ने पर भोले सवाल भी।

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

1-2 सप्ताह में ग्राहक के साथ फिर से मिल कर उन्हें प्रस्तुत करें कि आपने क्या किया है और उस पर अपना इनपुट प्राप्त करें। इसे क्लाइंट को प्रस्तुत करें और यदि कुछ भी बदलने या जोड़ने की आवश्यकता हो तो उनका इनपुट प्राप्त करें।

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


1

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

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

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


1

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


1

मुझे लगता है कि प्रोग्रामर की कल्पना करने की बेहतर क्षमता है कि एक प्रोग्राम बनने से पहले कैसा दिखेगा। इसे दूर करने के लिए पेपर प्रोटोटाइप एक प्रभावी तकनीक हो सकती है । पेपर प्रोटोटाइप निर्माण के लिए अपेक्षाकृत "सस्ते" हैं। एक सरल पेपर प्रोटोटाइप के माध्यम से अपने ग्राहकों को चलते हुए, आप "सही आवश्यकताओं को इकट्ठा करने के लिए आवश्यक केंद्रित तरीके से" सोचने की आवश्यकता को प्रदर्शित करते हैं। और यह ध्यान केंद्रित करने का एक विशिष्ट तरीका देता है: वास्तव में उस एप्लिकेशन का उपयोग करने की कोशिश कर रहा है जो आपके सिर में है!

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


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

इसलिए मैंने तय किया कि पुनरावृत्ति कुंजी है: न्यूनतम व्यवहार्य संस्करण बनाएं और प्रतिक्रिया के आधार पर इसमें सुधार करें। यदि आवश्यकताएं बहुत अस्पष्ट और सामान्य हैं, तो "सबसे सरल, सबसे तेज़ कार्यान्वयन क्या है?" के आधार पर निर्णय लें। (बैरिंग फंडामेंटल सिस्टम डिज़ाइन / आर्किटेक्चर)। जो आप सोचते हैं उसके आधार पर बहुत अधिक वजन न करें "सही है।" यह सिर्फ समय बर्बाद कर देगा क्योंकि संभावना है कि आपकी विचार प्रक्रिया आपके ग्राहकों से अलग है।

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

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

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