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




