नमस्कार दोस्तों, आज की इस पोस्ट में हम Layered Technique के बारे में बात करने बाले है जो की Software Engineering का एक हिस्सा है। जिस में हम यह जानेंगे की Layered Technique क्या है और Layered Technique के types कौन – कौन से होते है और इस का Software Engineering में क्या उपयोग है। तो चलिए शुरू करते है और जानते है Layered Technique के बारे में।
What is Layered Technique in Software Engineering in Hindi
Software Engineering तकनीक जो है वह पूरी तरह से एक Layered technique है क्योकि इसमें हमें सॉफ्टवेयर बनाने के लिए कई layers का सामना करना पड़ता है। जब भी हम किसी तरह के सॉफ्टवेयर को बनाते है तो हमें एक – एक करके यानि एक layer के बाद दूसरी layer तक पहुँचना बहुत जरूरी होता है। इस में जो layer होती है वह पूरी तरह से एक दूसरे से जुडी होती है। साथ ही इस में जीतनी भी layer होती है वह अपने से पिछले वाली layer की सभी प्रकार की जरूरतों को पूरा करने का काम भी करती है।
Layered technique, सॉफ्टवेयर इंजीनियरिंग का एक ऐसा architectural पैटर्न है। जो एक तरह से किसी भी प्रकार के Software Systems को कई अलग – अलग प्रकार के लॉजिकल लेयर्स में बाँट देता है। इसको ज्यादा तर लेयर्ड डिज़ाइन या लेयर्ड आर्किटेक्चर इन दोनों नाम से भी जाना जाता है। इसमें जितनी भी लेयर होती है वह सभी किसी न किसी तरह के Specific functionality के लिए जिम्मेदार होती है और यह हमेंशा अपने से ऊपर और नीचे दोनों तरफ की लेयर से ही जुडी या संपर्क करती है। इस में किसी भी सिस्टम को Extended करना या फिर उसे Maintain करना बहुत आशान होता है क्योकि इस ज़िम्मेदारी की बजह से ही Modularity को division से बढ़ावा मिलता है।
Layers of Software Engineering
जैसा की ऊपर डायग्राम में दिखाया गया है की Software Engineering में Layered technology को चार भाग में बाँटा गया है जिन के बारे में निचे दिया गया है।
- A quality focus
- Process
- Method
- Tools
Tools
जब भी हम किसी प्रकार का सॉफ्टवेयर बनाते है तो हमें self-operating system की जरूरत होती है। तो उस समय इस तरह के जो self-operating system को प्रदान करता है उसे ही Software engineering tools कहा जाता है। ये सभी तरह के मेथड्स और processes को support करते है।
यह लेयर सॉफ्टवेयर इंजीनियरिंग में Layered technique की सबसे पहली लेयर होती है जिस में टूल्स का selection किया जाता है। जैसे – automated और semi-automated आदि जैसे tools को चुना जाता है जो projects के लिए framework को तैयार करते है। इसमें अगर किसी टूल द्वारा किसी प्रकार की जानकारी तैयार की गई है तो उस जानकारी का उपयोग दूसरा टूल भी आसानी से कर सकता है क्योकि यह टूल्स integrated होते है।
जैसे कुछ उदहारण दिए हुए है :
- वेबसाइट को डिज़ाइन करने के लिए Microsoft Publisher को select करना।
- Selenium का platforms पर testing करने के लिए उपयोग करना।
- Integrated Development Environment (IDE) का उपयोग एप्लीकेशन बनाने के लिए करना।
Method
यह Layered technique के दूसरे नंबर की लेयर यानि method layer है। जो सॉफ्टवेयर को develop करने के लिए अलग – अलग तरीके प्रदान कराती है। इस में technical knowledge और resources आदि शामिल होते है जो सॉफ्टवेयर development के लिए बहुत जरूरी होते है। यानि इस लेयर में methods को choose किया जाता है।
जैसे कुछ methods यहाँ दिए हुए है :
- Testing and support
- Information gathering
- Analysis
- Program construction
- Modeling
आपको यह हमेशा याद रखना है की टूल्स लेयर में आप लोग उन tools को select करते है जिन टूल्स का आपको उपयोग करना है। लेकिन method layer जो होता है उस में आपको यह तय करना होता है की टूल्स लेयर में आपने जिन टूल्स को चुना है उन का उपयोग कैसे करना है। Method layer की सहायता से ही उन सभी “how-to” सबालो के जवाब दिए जाते है। जो Software development process करते वक्त पूझे जाते है। जिस में ये सभी शामिल होते है जैसे -communication, requirement analysis, design modeling, program construction, testing, और support आदि।
Process
यह Layer, Layered technique के तीसरे नंबर की लेयर है। Process layer सॉफ्टवेयर इंजीनियरिंग की foundation या base layer होती है। ये जो लेयर है वह सभी लेयर्स को साथ जोड़ कर यानि कनेक्ट करके रखती है और साथ ही software development को उसके टाइम ख़तम होने से पहले यानि deadline से पहले ही पूरा करने मदत करती है।
सही मायने में देखा जाए तो यह software development को टाइम पर पूरा करने में मदत करती है। Process layer एक तरह से framework को परिभाषित कराती है, इस Process को इस लिए भी establish किया जाता है। ताकि software engineering technology का प्रभावी वितरण कर सके। इस में वह सभी activities, tasks और processes शामिल होती है जो एक software development के लिए बहुत जरूरी होती है।
इस layer को पाँच भागो में बांटा गया है –
Communication:
इस का होना सॉफ्टवेयर डेवलोपमेन्ट करने के लिए बहुत जरूरी या महत्वपूर्ण होता है। क्योकि Communication की सहायता से ही हम क्लाइंट की Actual Demand के बारे में जान पाते और फिर उस Demand के हिसाब से हम सॉफ्टवेयर डेवलोपमेन्ट को शुरू करते है।
Planning:
इस का उपयोग हम सही मायने में देखे तो इस लिए करते है ताकि हम जो development कर रहे है। उस के लिए एक Map तैयार कर सके जिस की सहायता से हम development की complexity को कम किया जा सके।
Modeling:
इस प्रक्रिया में, developers जो होते है वह एक मॉडल को तैयार करते है। जिस की सहायता से जो client, developers के द्वारा तैयार किए गए product को visualize कर सके और जिस से ज्यादा अच्छी understanding develop हो सके।
Construction:
इस sub-layer में प्रोडक्ट की coding और testing को दर्शाया जाता है।
Deployment:
इसमें जो सॉफ्टवेयर डेवलपर्स की टीम होती है वह क्लिंट को एक सॉफ्टवेयर प्रदान कराती है जिस से क्लाइंट सॉफ्टवेयर की testing, evaluation, और इस पर feedback दे सके। यह पूरी तरह से real सॉफ्टवेयर जैसा ही होता है।
A quality focus
Layered technique की इस layer में सॉफ्टवेयर की लगातार प्रक्रिया में सुधार के जो सिद्धांत है उन को परिभाषित किया जाता है। यह इस integrity ensure करता है, इस का यह मतलब है की यह डेवलपर्स ने जिस software को तैयार किया है उसे अच्छी तरह से सुरक्षित करना ताकि इस का जो डाटा है। उसे सिर्फ authorized लोग ही access कर पाए और कोई दूसरा व्यक्ति उस डाटा को access न कर सके। इसके अलावा यह लेयर maintenance और usability पर भी ध्यान देती है।
The Hindi Study की तरफ से आपका धन्यवाद की आपने इस पोस्ट को पूरा पड़ा। हम आपसे आशा करते है की Layered Technique in Software Engineering in Hindi आपको जरूर पसंद आया होगा। साथ ही आपको इस के माध्यम से कुछ सीखने को मिला होगा। लेकिन फिर भी आपको इस टॉपिक से सम्बंधित कोई भी परेशानी या फिर आपको किसी भी तरह का सुझाब देना हो। जिस के माध्यम से हम इस पोस्ट को ज्यादा बेहतर कर सके तो आप हमें कमेंट करके बता सकते है हम आपकी हर कमेंट का जबाब देंगे।
Can you provide me notes of legacy software in software engineering
हमने Legacy Software in Hindi के बारे मैं आर्टिकल लिख दिया आप चैक कर सकते हो।