आमतौर पर आपके बॉस को बेवकूफ कहना एक बुरा विचार है, इसलिए मेरे सुझाव मैट्रिक्स को समझने और चर्चा करने से शुरू होते हैं, बजाय उन्हें खारिज करने के।
कुछ लोग जिन्हें वास्तव में बेवकूफ नहीं माना जाता है, उन्होंने मैट्रिक्स का उपयोग किया है जो कोड की लाइनों पर आधारित थे। फ्रेड ब्रूक्स, बैरी बोहम, कैपर्स जोन्स, वॉट्स हम्फ्रीज, माइकल फगन और स्टीव मैककोनेल सभी ने उनका इस्तेमाल किया। आपने शायद उनका उपयोग किया है, भले ही किसी सहकर्मी से कहने के लिए, यह भगवान मॉड्यूल 4000 लाइनें हैं, इसे छोटे वर्गों में विभाजित करने की आवश्यकता है।
इस प्रश्न से संबंधित एक स्रोत से विशिष्ट डेटा है जिसका हममें से कई लोग सम्मान करते हैं।
http://www.codinghorror.com/blog/2006/07/diseconomies-of-scale-and-lines-of-code.html
http://www.codinghorror.com/blog/2005/08/are-all-programming-languages-the-same.html
http://discuss.joelonsoftware.com/default.asp?joel.3.286106.22
मुझे संदेह है कि प्रोग्रामर प्रति घंटे कोड की लाइन का सबसे अच्छा उपयोग यह दिखाने के लिए है कि परियोजना के जीवन पर, यह मूल्य बहुत अधिक शुरू हो जाएगा, लेकिन जैसा कि दोष पाए जाते हैं और तय किए जाते हैं, समस्याओं को हल करने के लिए कोड की नई लाइनें जोड़ी जाएंगी मूल अनुमानों का हिस्सा नहीं थे, और नकल को खत्म करने और दक्षता में सुधार करने के लिए हटाए गए कोड की लाइनें दिखाती हैं कि एलओसी / घंटा उत्पादकता के अलावा अन्य चीजों को इंगित करता है।
- जब कोड तेजी से लिखा जाता है, मैला होता है, फूला हुआ होता है, और बिना किसी प्रयास के रिफैक्टरिंग होता है, तो स्पष्ट दक्षता अपने उच्चतम स्तर पर होगी। यहां नैतिक यह होगा कि आप जो मापते हैं उसके लिए आपको सावधान रहना चाहिए।
- किसी विशेष डेवलपर के लिए, यदि वे इस सप्ताह उच्च मात्रा में कोड जोड़ रहे हैं या छू रहे हैं, तो अगले सप्ताह कोड की समीक्षा, परीक्षण, डिबग, और rework के संदर्भ में भुगतान करने के लिए एक तकनीकी ऋण हो सकता है।
- कुछ डेवलपर्स दूसरों की तुलना में आउटपुट के अधिक सुसंगत दर पर काम करेंगे। यह पाया जा सकता है कि वे अच्छी उपयोगकर्ता कहानियां प्राप्त करने में सबसे अधिक समय बिताते हैं, बहुत जल्दी घूमते हैं और संबंधित इकाई परीक्षण करते हैं और फिर बारी-बारी से कोड बनाते हैं जो केवल उपयोगकर्ता कहानियों पर केंद्रित होता है। यहाँ ले जाना यह है कि विधायी डेवलपर्स के पास शायद जल्दी बारी होगी, कॉम्पैक्ट कोड लिखेंगे, और कम rework होगा क्योंकि वे कोड को शुरू करने से पहले समस्या और समाधान को अच्छी तरह से समझते हैं। यह उचित लगता है कि वे कम कोड करेंगे क्योंकि वे कोड के बाद ही सोचते हैं कि वे पहले और बाद में इसके बजाय।
- जब कोड को उसके दोष घनत्व के लिए मूल्यांकन किया जाता है, तो यह वर्दी से कम पाया जाएगा। कुछ कोड अधिकांश परेशानी और दोषों के लिए जिम्मेदार होंगे। यह पुनर्लेखन के लिए एक उम्मीदवार होगा। जब ऐसा होता है, तो यह सबसे महंगा कोड बन जाएगा क्योंकि इसके द्वारा उच्च स्तर की पुनरावृत्ति होती है। इसमें कोड काउंट (जोड़े गए, हटाए गए, संशोधित किए गए,) की उच्चतम सकल लाइनें होंगी, जैसा कि CVS या SVN जैसे उपकरण से रिपोर्ट किया जा सकता है, लेकिन प्रति घंटे कोड की सबसे कम शुद्ध लाइनें निवेशित होती हैं। यह अंत में सबसे जटिल समस्या या सबसे जटिल समाधान को लागू करने वाले कोड का संयोजन हो सकता है।
भले ही कोड की लाइनों में प्रोग्रामर उत्पादकता पर बहस कैसे निकले, आप पाएंगे कि आपको अधिक मैन पॉवर की आवश्यकता है जो आप खर्च कर सकते हैं और सिस्टम कभी भी समय पर पूरा नहीं होगा। आप वास्तविक उपकरण मैट्रिक्स नहीं हैं। वे बेहतर कार्यप्रणाली का उपयोग करते हैं, सबसे अच्छा डेवलपर्स जिसे आप किराए पर ले सकते हैं या प्रशिक्षित कर सकते हैं, और गुंजाइश और जोखिम का नियंत्रण (संभवत: फुर्तीली विधियों के साथ)।