sooksook-E-learning
एक बार परिवर्तन नियम परिभाषित हो जाने के बाद, मॉड्यूल को सक्षम होना चाहिएस्वचालित रूप से एक प्रयोग करने योग्य XML फ़ाइल उत्पन्न करेंप्लेटफ़ॉर्म में दर्ज या पता लगाए गए डेटा से।
यह कदम केंद्रीय है, क्योंकि यही वह है जो फ़ील्ड जानकारी या व्यावसायिक स्वरूप को रूपांतरित करता हैसंरचित प्रवाह, एक ईआरपी, एक कनेक्टर, एक दस्तावेज़ प्रणाली या किसी अन्य लक्ष्य उपकरण पर प्रेषित होने के लिए तैयार है।
उद्देश्य केवल "XML बनाना" नहीं है, बल्कि XML तैयार करना है:
भरोसेमंद,
आज्ञाकारी,
सुपाठ्य,
सत्यापन योग्य,
पुन: प्रयोज्य
इसलिए स्वचालित पीढ़ी मजबूत और पर्यवेक्षित तर्क पर आधारित होनी चाहिए।
पीढ़ी होनी चाहिएreproductible, कहने का तात्पर्य यह है कि समान स्रोत डेटा के लिए, सिस्टम को हमेशा समान नियमों के अनुसार, समान परिणाम देना चाहिए।
इस का मतलब है कि:
समान फ़ील्ड को समान टैग फ़ीड करना होगा,
हर बार समान व्यावसायिक नियम लागू होने चाहिए,
समान प्रारूप सम्मेलनों का सम्मान किया जाना चाहिए,
समान निर्भरताएँ समान आउटपुट उत्पन्न करने वाली होनी चाहिए।
इससे बचने के लिए इस प्रतिलिपि प्रस्तुत करने योग्यता आवश्यक है:
संरचनात्मक विचलन,
उपयोगकर्ता के आधार पर उपचार में अंतर,
यादृच्छिक त्रुटियाँ,
एक ही विषय से संबंधित दो शिपमेंट के बीच विसंगतियां।
यह लक्ष्य प्रणालियों के साथ आदान-प्रदान को सुरक्षित करना भी संभव बनाता है, जो एक स्थिर और पूर्वानुमानित प्रारूप की अपेक्षा करता है।
व्यवहार में, यह माना जाता है कि XML जेनरेशन इंजन निम्न से काम करता है:
एक परिभाषित मॉडल का,
निश्चित नियम,
प्रलेखित मानचित्रण,
और केंद्रीकृत तर्क।
पीढ़ी होनी चाहिएमिल, सटीक रूप से जानने के लिए:
जब XML जनरेट किया गया था,
किस स्रोत से,
किस उपयोगकर्ता या प्रक्रिया द्वारा,
किस डेटा के साथ,
नियमों के किस संस्करण के अनुसार,
और किस परिणाम के साथ.
पता लगाने की क्षमता कई कारणों से आवश्यक है।
सबसे पहले, यह आपको किसी तृतीय-पक्ष सिस्टम को प्रेषित फ़ाइल को समझाने की अनुमति देता है।
फिर, यह आपको किसी त्रुटि या विसंगति की उत्पत्ति को तुरंत पहचानने की अनुमति देता है।
अंत में, यह ऑडिट, अनुपालन या ऐतिहासिक तर्क में प्रसंस्करण का प्रमाण बनता है।
इसलिए मॉड्यूल को जानकारी रिकॉर्ड करने में सक्षम होना चाहिए जैसे:
स्रोत वस्तु का पहचानकर्ता,
पीढ़ी की तारीख और समय,
पीढ़ी की स्थिति,
प्रयुक्त XML मॉडल का संस्करण,
उपयोगकर्ता या सेवा को ट्रिगर करना,
किए गए चेक का लॉग,
संभावित त्रुटि संदेश,
उत्पन्न फ़ाइल का हैश या संदर्भ।
इस प्रकार, प्रत्येक XML एक ट्रैक की गई वस्तु बन जाती है, न कि तुरंत उत्पन्न होने वाली एक साधारण फ़ाइल।
पीढ़ी होनी चाहिएसुसंगत, अर्थात्, XML की सामग्री बिल्कुल अपेक्षित व्यावसायिक तर्क के अनुरूप होनी चाहिए।
संगति दोनों की चिंता करती है:
फ़ाइल की संरचना,
फ़ील्ड के बीच संबंध,
अच्छे मूल्यों की उपस्थिति,
व्यावसायिक समझ का सम्मान.
उदाहरण के लिए :
उपकरण कोड सही मशीन के अनुरूप होना चाहिए,
आरंभ तिथि अंतिम तिथि से बाद की नहीं होनी चाहिए,
हस्तक्षेप की एक श्रेणी उपचारित वस्तु के प्रकार के अनुरूप होनी चाहिए,
रखरखाव नोटिस असंगत सुरक्षा फ़ील्ड के साथ प्रस्तुत नहीं किया जाना चाहिए,
यदि अपेक्षित है तो घोषित अनुलग्नक वास्तव में मौजूद होना चाहिए।
इसलिए संगति डेटा के बीच एक आंतरिक सत्यापन तर्क लागू करती है, न कि केवल फ़ील्ड की तकनीकी उपस्थिति।
दूसरे शब्दों में, XML कार्यात्मक रूप से गलत होते हुए भी तकनीकी रूप से "अच्छी तरह से गठित" हो सकता है।
मॉड्यूल को इस स्थिति से बचना चाहिए.
पीढ़ी होनी चाहिएचलाया हुआ, कहने का तात्पर्य यह है कि हमें यह करने में सक्षम होना चाहिए:
समझें कि क्या उत्पन्न हुआ था,
सामग्री की जाँच करें,
लागू तर्क को दोबारा पढ़ें,
भेजने से पहले पुष्टि करें कि फ़ाइल अनुपालन योग्य है।
एक स्वचालित प्रणाली जिसे तुरंत नियंत्रित नहीं किया जा सकता वह जोखिम भरी हो जाती है।
इसलिए प्रशासकों, प्रमुख उपयोगकर्ताओं या व्यवसाय प्रबंधकों के लिए सत्यापन तंत्र उपलब्ध कराना आवश्यक है।
नियंत्रण इससे संबंधित हो सकता है:
एक्सएमएल संरचना,
टैग जनरेट किए गए,
इंजेक्ट किए गए मान,
अपेक्षित फ़ील्ड की उपस्थिति,
पत्राचार की निरंतरता,
लक्ष्य स्कीम का अनुपालन.
इससे मानव पर्यवेक्षण क्षमता को बनाए रखते हुए स्वचालन को सुरक्षित करना संभव हो जाता है।
सिस्टम को सक्षम होना चाहिएसत्यापन से पहले या भेजने से पहले XML का पूर्वावलोकन प्रदर्शित करें.
यह अवलोकन आपको इसकी अनुमति देता है:
उत्पन्न संरचना की कल्पना करें,
मुख्य मूल्यों को नियंत्रित करें,
संभावित विसंगतियों की पहचान करें,
उपयोगकर्ता या व्यवस्थापक को आश्वस्त करें,
डिबगिंग की सुविधा प्रदान करें।
सिंहावलोकन कई रूपों में प्रस्तुत किया जा सकता है:
कच्चा XML दृश्य,
इंडेंटेशन के साथ संरचित दृश्य,
सरलीकृत व्यवसाय-उन्मुख दृष्टिकोण,
स्रोत और आउटपुट के बीच तुलना।
यह सिंहावलोकन विशेष रूप से उपयोगी है:
कॉन्फ़िगरेशन चरणों के दौरान,
परीक्षण के दौरान,
संवेदनशील प्रवाह के लिए,
या लक्ष्य प्रणाली द्वारा रिपोर्ट की गई त्रुटि की स्थिति में।
यह उस तंत्र में पारदर्शिता लाता है जो अन्यथा अदृश्य रहेगा।
सिस्टम को सक्षम होना चाहिएडिबग मोड उत्पन्न करेंसटीक रूप से समझने के लिए कि XML का निर्माण कैसे किया गया था।
डिबगिंग केवल डेवलपर्स के लिए नहीं है।
यह कार्यात्मक प्रशासकों, इंटीग्रेटर्स और व्यावसायिक सलाहकारों के लिए भी उपयोगी है।
एक अच्छे डिबग से यह पहचानना संभव होना चाहिए:
कौन सा स्रोत डेटा किस बीकन को खिलाया गया,
कौन सा नियम प्रयोग किया गया,
किन क्षेत्रों को नजरअंदाज किया गया,
क्या परिवर्तन लागू किए गए,
क्या गणनाएँ या संयोजन किए गए,
जहां एक रुकावट दिखाई दी.
उदाहरण के लिए, डिबग संकेत दे सकता है:
"टैग<TPLNR>उपकरण_कोड फ़ील्ड से आपूर्ति की गई",
"अनुपलब्ध अनिवार्य फ़ील्ड: हस्तक्षेप_दिनांक",
"रूपांतरित मूल्य: 'एलिवेटर' → 'ELEV'",
"कोई वैध दस्तावेज़ नहीं होने के कारण अनुलग्नक XML ब्लॉक उत्पन्न नहीं हुआ"।
यह डिबग मोड इसके लिए मौलिक है:
सुधार तेज करो,
कॉन्फ़िगरेशन को विश्वसनीय बनाएं,
विश्लेषण समय कम करें,
इंजन के वास्तविक संचालन का दस्तावेजीकरण करें।
सिस्टम अनिवार्य रूप से होना चाहिएअनिवार्य फ़ील्ड की उपस्थिति और वैधता की जाँच करेंकिसी भी अंतिम पीढ़ी से पहले.
ये आवश्यक फ़ील्ड इस पर निर्भर हो सकते हैं:
फॉर्म का प्रकार,
व्यावसायिक वस्तु का प्रकार,
लक्ष्य प्रणाली का,
व्यावसायिक संदर्भ,
चुने गए कॉन्फ़िगरेशन का.
जाँच केवल इस बात तक सीमित नहीं होनी चाहिए कि कोई फ़ील्ड "मौजूद" है या नहीं।
इसे भी नियंत्रित करना होगा:
कि यह खाली नहीं है,
कि यह सही प्रारूप में है,
इसमें स्वीकार्य मूल्य शामिल है,
कि यह अन्य डेटा के साथ संगत है।
उदाहरण के लिए :
एक तारीख वैध होनी चाहिए,
नामकरण में एक उपकरण पहचानकर्ता मौजूद होना चाहिए,
एक प्रकार का हस्तक्षेप अधिकृत सूची से संबंधित होना चाहिए,
प्राथमिकता चुनी गई श्रेणी के अनुरूप होनी चाहिए।
यह चरण लक्ष्य द्वारा अपूर्ण, गलत या अस्वीकृत XML उत्पन्न करने से बचाता है।
सिस्टम को सक्षम होना चाहिएयदि XML अधूरा या असंगत है तो स्वचालित रूप से अंतिम पीढ़ी या प्रेषण को अवरुद्ध कर दें.
यह अवरोधन आवश्यक सुरक्षा है.
किसी ग़लत फ़ाइल को प्रसारित करने की तुलना में उसे भेजने से रोकना बेहतर है, जो निम्न बनाएगी:
ईआरपी पक्ष पर अस्वीकृति,
एक प्रसंस्करण विसंगति,
ख़राब वस्तु निर्माण,
सिस्टम में विश्वास की कमी.
अवरोध स्पष्ट और समझने योग्य होना चाहिए।
मॉड्यूल को स्पष्ट रूप से इंगित करना चाहिए:
XML क्यों अवरुद्ध है,
कौन से फ़ील्ड गायब हैं,
किन त्रुटियों को सुधारने की आवश्यकता है,
गंभीरता का कौन सा स्तर जुड़ा हुआ है.
उदाहरण के लिए :
"पीढ़ी असंभव: उपकरण निर्दिष्ट नहीं",
"अवरुद्ध भेजना: दिनांक फ़ील्ड गुम है",
"अमान्य XML: अनिवार्य टैग अनुपलब्ध",
"विफल नियंत्रण: हस्तक्षेप का असंगत प्रकार"।
अच्छे ब्लॉकिंग का मतलब सिर्फ मना करना नहीं है।
इसे सुधार का मार्गदर्शन भी करना चाहिए।
इसलिए XML की स्वचालित पीढ़ी के बारे में सोचा जाना चाहिएसंरचित उत्पादन इंजन, और एक साधारण तकनीकी निर्यात के रूप में नहीं।
इसकी अनुमति होनी चाहिए:
नियंत्रण खोए बिना स्वचालित करना,
अनावश्यक रूप से कठोरता के बिना मानकीकरण करना,
विश्वसनीय डेटा संचारित करने के लिए,
उच्च स्तर की गुणवत्ता की गारंटी के लिए।
इस तर्क में, XML बन जाता है:
एक व्यावसायिक वस्तु,
एकीकरण समर्थन,
एक नियंत्रित प्रवाह,
सूचना संरचना का प्रमाण.
प्रक्रिया के अंत में, मॉड्यूल को सक्षम होना चाहिए:
स्रोत डेटा पुनर्प्राप्त करें,
परिभाषित नियम लागू करें,
अपेक्षित XML बनाएँ,
इसकी पूर्णता की जाँच करें,
एक पूर्वावलोकन दिखाओ,
एक विस्तृत डिबग तैयार करें,
यदि आवश्यक हो तो ब्लॉक करें,
फिर केवल अनुपालक फ़ाइल को सत्यापित या प्रसारित करें।