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