SDLC क्या है ?- इसके Phases, advantages and disadvantages | SDLC in hindi

एक सॉफ्टवेयर या प्रोग्राम कंप्यूटर का महत्वपूर्ण भाग होता है यह किसी विशेष काम करने के लिए बनाया जाता है सॉफ्टवेयर को इस्तेमाल करना सरल है लेकिन उसके निर्माण की प्रक्रिया उतनी ही जटिल भी है. जब किसी सॉफ्टवेयर को बनाया जाता है तो वो कुछ phases से गुजारा जाता है. आज हम इस पोस्ट में software engineering सब्जेक्ट के टॉपिक SDLC in hindi – SDLC यानी system development life cycle in hindi के बारे में विस्तार से जानेंगे और SDLC के phases के बारे में अध्यन करेंगे।

What is SDLC in hindi (SDLC क्या है?)

SDLC ka fullform “ Software development life cycle” होता है. SDLC वह प्रक्रिया है जिसके अंतर्गत किसी भी सॉफ्टवेर को Design, Develop या Test किया जाता है. इस प्रक्रिया में सॉफ्टवेयर को बनाने से लेकर टेस्ट करने और अंत में Maintenance या मार्केटिंग स्टेज तक जिस भी प्रणाली का इस्तेमाल किया जाता है उसे ही Software development life cycle (SDLC) कहा जाता है।

SDLC का लक्ष्य बेहतर सॉफ्टवेयर तैयार करना है जो ग्राहकों की उम्मीदों पे खरा उतरे और उनके बजट के हिसाब से भी हो, एक स्टार्टअप या किसी भी उद्योग के लिए SDLC की प्रक्रिया का अध्यन करना बहुत जरुरी होता है क्योंकि SDLC के अंतर्गत एक सॉफ्टवेयर या प्रोडक्ट की वो सारे गुण देखे जाते हैं जो की एक सॉफ्टवेयर में ज़रूर होने चाहिए. इससे सॉफ्टवेयर या प्रोडक्ट के बारे में वो सारे पैमाने पता किये जा सकते है जैसे की प्रोडक्ट की Cost, Design,Testing या  Maintenance आदि।

SDLC-in-hindi
System Development life cycle

पहले से ही पता किया जाता है की इसके बाद प्रोडक्ट का फाइनल बजट क्या होगा ? design कैसा होगा ? और फिर सॉफ्टवेयर को बनाने के लिए सुचारु ढंग से काम शुरू किया जाता है।

जरूर पढ़े – क्रिप्टोग्राफ़ी क्या है ? ये कैसे हमारी privacy को सुरक्षित करती है ?

Phases of SDLC in Hindi :

किसी भी सोफ्टवेयर को बनाने से पहले नीचे दी गयी इन सभी phases से सॉफ्टवेयर को गुजारना पड़ता है यह मुख्यता सात प्रकार के होते है।

1. Requirements Analysis / Defining requirements :

यह SDLC का पहला स्टेज है जिसमें मीटिंग क्लाइंट और सर्विस प्रोवाइडर के बीच मे होती है इसमें सबसे पहले क्लाइंट की requirement समझी जाती है की क्लाइंट क्या चाहता है उसकी क्या मांग है उस सॉफ्टवेयर की डिमांड कितनी है उसका स्कोप कितना है उसकी कॉस्ट कितनी हो सकती है इसमें छोटी से छोटी जानकारी सर्वे या किसी भी माध्यम से ग्राहक से ली जाती है. ताकि यूजर को वही दिया जाए जो वह चाहता है.

ग्राहक की आवश्यकता अनुसार SRS (system requirement specification) डॉक्यूमेंट बना लिया जाता है. उसकी सारी आवश्यकता SRS डॉक्यूमेंट में एकत्रित करली जाती है। सॉफ्टवेयर को ग्राहक के ज़रूरत के अनुरूप बनाया जा सके और किसी को बाद में सॉफ्टवेयर का use करने मे कोई परेशानी का सामना ना करना पड़े ! इन सब बातों का ख्याल इसी स्टेज में रखा जाता है।

2. Planning (योजना बनाना ) :

यह SDLC का दूसरा और बहुत महत्वपूर्ण चरण है इसमें पहली स्टेज के आधार पर senior टीम सॉफ्टवेयर को डेवेलोप करने में विचार करती है की , निर्माण करने में क्या रिस्क है ? costing कॉस्टिंग ज्यादा हाई तो नहीं इसमें कंपनी को फायदा या नुकसान तो नहीं ? सॉफ्टवेयर काम कैसे करेगा ? ग्राहकों के सारे सवालों का अध्यन सॉफ्टवेयर की प्लानिंग के समय करना पड़ता है.

सभी बातों को ध्यान में रखकर सॉफ्टवेयर के पूरे काम करने का मॉडल तैयार किया जाता है इसलिए हर सॉफ्टवेयर को बनाने से पहले उसकी proper planning की जाती है।

3. Designing (स्वरुप ) :

SRS डॉक्यूमेंट के आधार पर इस phase में DDS (Design Document Specification ) डॉक्यूमेंट बनाया जाता है जिसमे सारी लॉजिकल डिटेल होती है की प्रोडक्ट का स्वरुप कैसा होगा इसके बाहर का UI(user interface) कैसा दिखेगा.

DDS डॉक्यूमेंट बाकी टीम मेंबर्स के साथ शेयर कर दिया जाता है. इसमें प्रोडक्ट के layout पे खासा ध्यान रखा जाता है. कई बार SRS डॉक्यूमेंट में ही ग्राहक डेवलपर को बता देता है की यूजर को अपने सॉफ्टवेयर का कैसा डिज़ाइन चाहिए।

ज़रूर पढ़े – Memory Hierarchy क्या है ? सम्पूर्ण जानकारी

4. Coding :

SDLC का सबसे जटिल phase इसी को माना जाता है. क्योकि इसमें प्रोग्रामिंग भाषायों का इस्तेमाल करके कॉडिंग की जाती है. इसमें Developer सॉफ्टवेयर के layout के हिसाब से latest technologies का इस्तेमाल करके सॉफ्टवेयर को डिज़ाइन के हिसाब से ढालने की कोशिश करता है और इसमें सारी फंक्शनालिटी add करता है इस फेज में गलती होने के सबसे ज्यादा chances होते है.

5. Testing ( परीक्षण ) :

इस स्टेज में testing टीम द्वारा पूरे सॉफ्टवेयर की टेस्टिंग की जाती है कि कहीं किसी प्रोग्राम में कोई एरर (error) या बग (bug) तो नहीं है यदि टेस्टिंग टीम को कोई बग या error का पता चलता है तो उसे तुरंत उसी समय फिक्स किया जाता है यह टेस्टिंग फेज एक प्रोडक्ट या सॉफ्टवेयर के लिए बहुत ज्यादा जरूरी होता है.

इसमें देखा जाता है कि सॉफ्टवेयर क्लाइंट के अनुसार काम कर रहा है या नहीं! यदि बिना टेस्टिंग के सॉफ्टवेयर को प्रयोग में लिया जाए तो उसमें जल्दी खराबी आने के चांस ज्यादा बढ़ जाते है यही नहीं बल्कि इसको हैकर द्वारा हैक करने के चांस भी ज्यादा बढ़ जाते हैं. सॉफ्टवेयर को तस्सली से टेस्ट करने के बाद ही ग्राहक को डिलीवर किया जाता है.

6. Deployment (तैनाती ) :

टेस्टिंग के बाद सॉफ्टवेयर पूरी तरह से रिलीज होने के लिए तैयार होता है इसमें सॉफ्टवेयर की सभी तरह से टेस्टिंग की जा चुकी होती है अब सॉफ्टवेयर पूरी तरह से लांच होने के लिए तैयार होता है और सॉफ्टवेयर को लांच किया जाता है!

7. Maintenance (रख – रखाव ) :

यह SDLC का अंतिम phase है! Maintenance एक सॉफ्टवेयर की सफलता के लिए रीड की हड्डी भी मानी जाती है!  सॉफ्टवेयर को रिलीज करने के बाद उसमें टाइम टू टाइम मॉडिफिकेशन या updation करना पड़ता हैजैसा कि play store में एप्लीकेशन की अपडेशन आती रहती है.

इसी तरह सॉफ्टवेयर की भी अपडेशन टाइम टू टाइम करनी पड़ती है कई बार यूजर की जरूरत के हिसाब से भी सॉफ्टवेयर में मॉडिफिकेशन करनी पड़ती है इसलिए मेंटेनेंस करना बहुत ज्यादा जरूरी हो जाता है बिना सॉफ्टवेयर के मेंटेनेंस के हम मार्केट में ज्यादा टिक नहीं सकते सॉफ्टवेयर में नई-नई फंक्शनैलिटी ऐड करना भी बहुत बड़ी जरुरत बन जाती है! इसलिए मेंटेनेंस करना बहुत ज्यादा जरूरी होता है. जो यूजर को सॉफ्टवेयर का इस्तेमाल करते समय कोई दुविधा का सामना ना करना पड़े

ज़रूर पढ़े – Logic Gates (हिंदी में)- Truth Table और Practical के साथ समझें

Types of SDLC Models in Hindi (SDLC मॉडल्स के प्रकार)

सॉफ्टवेर डेवलपमेंट साइकिल के लिए अलग अलग मॉडल विकसित किये गए है जिनका सॉफ्टवेर विकास प्रक्रिया के दौरान पालन किया जाता है. हर मॉडल सॉफ्टवेयर विकास की प्रक्रिया में सफलता सुनिश्चित करने के लिए अपने चरणों को फॉलो करता है और एक बेहतर सॉफ्टवेर हमें प्रदान करता है. प्रत्येक सॉफ्टवेयर की बनाने की प्रक्रिया के हिस्साब से अलग मॉडल्स बनाये गये है जिनके बारे में हम अगली पोस्ट में बात करेंगे.

नीचे कुछ प्रसिद्ध मॉडल्स दिए गये है जो आपको पता होने चाहिए :

  • Big Bang Model
  • V-Model
  • Spiral Model
  • Waterfall Model
  • Iterative Model
  • Prototype Model
  • Agile Model
  • RAD Model
  • Incremental Model

 Advantage of Software Development lifecycle in hindi

  • यह डेवलपर्स के लिए स्पष्ट दिशानिर्देश स्थापित करता है
  • यहां पर एक सेड्यूल तैयार किया जाता है और प्रोजेक्ट पर चल रहे काम पर नजर रखी जाती है
  • यह बड़े और कंपलेक्स प्रोजेक्ट पर विशेष रूप से नजर रखता है
  • बहुत बढ़िया ढंग से सॉफ्टवेयर की टेस्टिंग होती है|
  • इसके काम करने की क्षमता बहुत फ्लैक्सिबल होती है
  • प्रोजेक्ट पर काम निर्धारित समय तक खत्म किया जाता है
  • इसमें टाइम को बहुत महत्व दिया जाता है
  • एक उत्तम टीमवर्क के मेलजोल के साथ कार्य को पूर्ण किया जाता है

Disadvantage of Software Development life cycle in hindi

कई बार प्रोजेक्ट की लागत में वृद्धि करनी पड़ती है जिससे प्रोजेक्ट की तय की गई लागत से  प्रोजेक्ट को बनाने में ज्यादा पैसा खर्च करना पड़ता है

  1.  कई बार प्रोजेक्ट के अंतिम चरण में कम लचीलापन (फ्लैक्सिबिलिटी)  देखने को मिलती है
  2. दस्तावेज़ीकरण की उच्च मात्रा|
  3. कई बार सॉफ्टवेयर की टेस्टिंग करना कर्मचारियों के लिए बहुत पेचीदा हो जाता है
  4. इसमें ग्राहकों की उच्च भागीदारी ज्यादा अधिक होती है
  5. कभी-कभी सॉफ्टवेयर की मेंटेनेंस करना बहुत मुश्किल हो जाता है.
अंत में (Conclusion) :

मैं आशा करता हूँ की आपको system development life cycle in hindi के बारे में अच्छे से समझ आ गया होगा. हमने Sdlc in hindi को बेहद ही डिटेल में समझाने की कोशिश की है कृपया अपने दोस्तों के साथ ये पोस्ट शेयर करना न भूलें और नीचे कमेंट करके बताये किस टॉपिक पे आपको गहरी जानकारी चाहिए, हम आपके लिए टॉपिक की पूरी जानकारी पेश करेंगे.

1 thought on “SDLC क्या है ?- इसके Phases, advantages and disadvantages | SDLC in hindi”

Leave a Comment