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