कीवर्डहरू -

नेपालमा सफ्टवेयर इन्जिनियरिङ र यसको क्षेत्र

फ्टवेयरको क्षेत्र अथाहा सम्भावना भएको क्षेत्र हो । नेपालमा पनि देश समृद्ध बनाउन सक्ने क्षेत्र हो सफ्टवेयर । सफ्टवेयर इन्जिनियरिङ अध्ययन गर्ने विद्यार्थीहरुले धेरै सम्भावनाहरु बोकेका हुन्छन् । 

नेपालमा सफ्टवेयर इन्जिनियरिङ र यसको क्षेत्र

प्रविधिको प्रयोगले भइरहेका अकल्पनिय परिवर्तनहरुको पछाडी सफ्टवेयरको सबैभन्दा ठुलो भुमिका छ । कुरा गरिरहनु पर्दैन कि, कम्प्युटर, मोवाइल, रोवट जस्ता प्रविधिहरु सफ्टवेयरले नै चल्ने गरेका हुन् । सफ्टवेयरको क्षेत्र अथाहा सम्भावना भएको क्षेत्र हो । नेपालमा पनि देश समृद्ध बनाउन सक्ने क्षेत्र हो सफ्टवेयर । सफ्टवेयर इन्जिनियरिङ अध्ययन गर्ने विद्यार्थीहरुले धेरै सम्भावनाहरु बोकेका हुन्छन् ।


सफ्टवेर इन्जिनियरिङ त्यस्तो क्षेत्र हो जुन नितान्त समग्र सफ्टवेर डेभलपमेन्ट प्रक्रियामा केन्द्रित छ । सफ्टवेर इन्जिनियरहरु त्यस्ता इन्जिनियरहरु हुन् जसले सफ्टवेर सिस्टमहरुको विश्लेषण, डिजाइन, निर्माण, परिक्षण र मेन्टेनेन्स गर्ने कुरामा विशेषज्ञता हासिल गर्नछन् । यस प्रकारका सिस्टमहरुमा त्यस्ता सिस्टमहरु पर्दछन् जसले इलेक्ट्रिकल तथा मेकानिकल डिभाइसहरु, कम्प्युटरमा आधारित कम्युनिकेशन सिस्टमहरु, अन्य इन्जिनियरिङ प्रोडक्ट डिजाइन गर्ने कम्प्युटर सिस्टम, फाइनान्सियल तथा इन्फरमेशन सिस्टमहरुको नियन्त्रण गर्दछ ।

एकजना सफ्टवेर इन्जिनियरको भूमिका कम्प्युटर हार्डवेको डिजाइन गर्ने कुरामा नभइ हार्डवेरको छनोट गर्ने कुरामा उसले महत्वपूर्ण भमिका निर्वाह गर्न सक्दछ । उसको मुख्य काम भनेकै कुनै सिस्टम चलाउन आवश्यक सफ्टवेर कम्पोनेन्टहरुको डिजाइन गर्नु हो ।


एकजना सफ्टवेर इन्जिनियरको भूमिका कम्प्युटर हार्डवेको डिजाइन गर्ने कुरामा नभइ हार्डवेरको छनोट गर्ने कुरामा उसले महत्वपूर्ण भमिका निर्वाह गर्न सक्दछ । उसको मुख्य काम भनेकै कुनै सिस्टम चलाउन आवश्यक सफ्टवेर कम्पोनेन्टहरुको डिजाइन गर्नु हो । यसर्थ, सफ्टवेर इन्जिनियरहरले तल छलफल गरिएका कामहरु गर्ने कुरामा आफूलाई तयार गर्नु आवश्यक छ जुन कम्प्युटरमा आधरित सिस्टमहरुको विकासका लागि महत्वपूर्ण छन् ।


सफ्टवेर इन्जिनियरले गर्नुपर्ने कामहरु
प्रस्तावित कम्प्युटरमा आधारित सिस्टमको प्राविधिक आवश्यकताहरु निर्धारण गर्नको लागि विकास गर्न खोजिएको एप्लिकेशनको एनलाइसिस गर्ने र अरुले रिभ्यु गर्नका लागि यस्ता आवश्यकताहरुलाई सटिक तथा व्यवस्थित डम्युमेन्टमा राख्ने । ग्राहक तथा भावि युजरका प्रतिनिधिहरुबाट स्विकृत भइसकेपछि सिस्टमकको आवश्यकताको डिजाइन, रिभ्यु तथा परीक्षण गर्न र मान्यता पुष्टि गर्न यस्तो डक्युमेन्टले स्फेसिफिकेशनको काम गर्दछ ।

\"\"
कम्प्युटर सिस्टम कन्फिगरेशनको डिजाइन, सफ्टवेरमा लागू गरिने फङ्शनहरुको निर्धारण र आधारभूत हार्डवेर तथा सफ्टवेर कम्पोनेन्टहरुको छनोट । यस्ता निर्णयहरुको उपयुक्त रेकर्ड राख्ने जसले गर्दा अरुले पनि रिभ्यु गर्न सकून् र भावि डिजाइनर तथा लागूकर्ताहरुलाई मार्ग निदेर्शन मिलोस् ।

  • प्रस्तावित सिस्टमले एप्लिकेशन आवश्यकता पूरा गर्छ गदैन भन्नेबारे प्रष्ट हुन प्रस्तावित डिजाइनको ध्यानपूर्वक पर्फर्मेन्स एनलाइसिस गर्नुस् ।
  • सफ्टवेरको आधारभूत डिजाइन गर्ने । जस्तो कि मोडुलहरुमा यसको विभाजन, ती मोडुलहरुबीचका इन्टरफेसहरु र इन्डिभिजुअल प्रोग्रामको संरचनाः सफ्टवेर डिजाइन निर्णयहरुको सटिकरुपमा डक्युमेन्टेशन गर्ने ।
  • सफ्टवेरलाई राम्रो संरचनागत र डक्युमेन्टेड प्रोग्रामको रुपमा लागू गर्ने
  • भइरहेको वा कमर्सियल रेडी मेड सफ्टवेरसँग नयाँ सफ्टवेर समायोजन गर्ने
  • सफ्टवेरसहित कम्प्युटर सिस्टमको व्यवस्थित र तथ्याङ्किय परीक्षण ।
  • अवधारणतग आसयलाई यथावत राख्दै र सम्पूर्ण डक्युमेन्टलाई पूर्ण तथा सटिक हिसाले राख्दै सफ्टवेर सिस्टमलाई परिष्कार तथा सुधार गर्ने ।

सबै इन्जिनियरहरुजस्तै, सफ्टवेर इन्जिनियरहरु पनि सफ्टवेर सलुशन हिस्साको रुपमा प्रयोग, सुरक्षा र भरपर्दोपनका लागि जिम्वेवार हन्छन् ।  उनीहरुले डिजाइन गरेका सिस्टमहरु कस्टमरसामु प्रयोगका लागि पुर्याइसकिएपछि तिनले पूर्णरुपमा काम गर्दछन् भन्ने कुरामा विश्वस्त हुनका लागि सफ्टवेर इन्जिनियरहरुमा बेसिक म्याथम्यटिक्स र साइन्सका साथै अनुशासित परिक्षण र अनुशरणको प्रयोग गर्न सक्षम हुनुपर्छ । मुख्य जोड भनेको कुशल कस्ट इफेक्टिम सफ्टवेर सिस्टमको उत्पादनमा हो जुन समयमा डेलिभर गरिनुका साथै कम लातगमा उत्पादन गर्न सकियोस् ।

सफ्टवेर इन्जिनियरले सिस्टम र यसका डक्युमेन्टेशनहरु एकनास राखुन् भन्ने अपेक्षा गरिन्छ । यसैगरी, अवश्यकताअनुरुप प्रोग्रामले गर्ने कामका लागि हार्डवेर कफिगरेशन उपयक्त छ कि छैन, सिस्टमले सबै रियल टाइम समयसीमा र अन्य आवश्यक पर्फर्मेश्स पूरा गर्न सक्दछ कि छैन भन्ने कुरा पनि सफ्टवेर इन्जिनियरले हेर्नु पर्ने हुन्छ ।

यस कोर्सले सफ्टवेर डेभलपमेन्टको अब्जेक्ट ओरिएन्टेड अप्रोचमा जोड दिन्छ जसलाई इन्डस्ट्रीले वर्तमान र भविष्यको प्रविधिको मुख्य रुपमा स्विकार गरेको छ ।  ठूला स्केलका सिस्टमहरु (दुबै फिजिकल कम्पोनेन्ट्स–हार्डवेर र लजिकल कम्पोनेन्ट्स–सफ्टवेर) को एनलाइसिस, डिजाइन र इम्प्लिमेन्ट गर्न वर्तमान् अप्रोचहरुहरुबारे वृहत शिक्षा प्रदान गर्दछ । यसका साथै हार्डवेर र अपेरिटङ सिस्टमजस्ता कम्प्युटर साइन्सको परम्परागत पक्षहरुको ज्ञान पनि राखिन्छ । प्रभावकारी ह्युमन कम्प्युटर इन्टरएक्सनको डिजाइनमा थप जोड दिन्दै यो कोर्सले बिग डाटा टेक्नोलोजीज, क्लाउड कम्प्युटिङ तथा मल्टिमिडिया, मोबाइल र वेबमा आधारित सिस्टमजस्ता हालै विकास भएका इमर्जिङ ट्रेन्डहरुलाई पनि समेट्दछ ।

कोर्सका उद्देश्यहरु
सफ्टवेर डेभलप्मेन्ट प्रोसेसबारे गहन ज्ञान प्रदान गर्न यो कोर्स डिजाइन गरिएको छ जसले विद्यार्थीलाई धेरै ठूलो स्केलका सफ्टवेर सिस्टमहरुको समस्टिगत डिजाइन, कोडिङ र परिक्षण गर्ने कार्यमा महत्वपूर्ण भूमिकाकर्ताको रुपमा काम गर्ने अुनुमति प्रदान गर्दछ । सफ्टवेर इन्जिनियरिङ प्रोग्राम अध्ययन गर्ने ग्राजुएट्सले सफ्टवेर इन्जिनियरिङ अभ्यास र सिद्धान्तहरुमा विशेषज्ञता हासिल गर्नेछन् । यहाँ विद्यार्थीेले म्याथम्याटिक्स, कम्प्युटर साइन्स र फिजिक्सबारे आधारभूत ज्ञान हासिल गर्नेछन् जसले सफ्टवेर इन्जिनियरिङ विधाको शैक्षिक जग बसाल्दछ ।

\"\"

सफ्टवेर इन्जिनियरिङ प्रोग्रामका ग्राजुएट्सहरुले म्याथम्याटिक्सको प्रायोग गर्न सिक्दछन् जुन सफ्टवेर तथा एप्लिकेशन दृश्टिकोणबाट डिजिटल सिस्टमलाई व्याख्या र विश्लेषण गर्ने आधार हो । उनीहरुले भरपर्दो सफ्टवेर निर्माणका लागि आवश्यक कम्प्युटर साइन्सको क्षेत्रको ठोस ज्ञान प्राप्त गर्दछन् । ठूला तहका प्रोजेक्टमा काम गर्ने सफ्टवेर टिमका लागि आवश्यक भरपूर सिपहरु विद्यार्थीले पाउदछन् ।

विद्यार्थीलाई सफ्टवेर डेभलपमेन्टको प्रोसेसबारे गहन ज्ञान हासिल गर्न सहयोग गर्ने ध्ययका साथ यो कोर्सको डिजाइन गरिउको छ । उनीहरुले भरपर्दो, मेन्टेन गर्न सकिने र सुलभ प्रोडक्टको उत्पादन गर्न इन्जिनियरिङ डिसिप्लेन साइन्स र म्याथम्याटिक्सको प्रयोग गर्नेछन् । यसैगरी, सफ्टवेर डेभलप्मेन्ट प्रोजेक्टहरुको सफलतपूर्वक र निपूर्णरुपमा व्यवस्थापन गर्न आवश्यक म्यानेज्मेन्ट तथा कम्युनिकेशन स्किलहरु सिक्दछन् । ह्युमन कम्प्युटर इन्टरएक्सन, नलेज बस्ड सिस्टम, डाटा बेस सिस्टम र डाटा कम्युनिकेशनको क्षेत्रमा ज्ञान तथा अनुभव हासिल गर्दछन् । यसका साथै  सफ्टवेरिङ पेसाले सामना गर्नुपर्ने सामाजिक, कानुनी र नैतिक मुद्धाहरुको पनि ज्ञान विद्यार्थीले प्राप्तत गर्नेछन् ।

यो करिकुलमले लक्षित विद्यार्थीहरुलाई वर्तमान् सफ्टवेर इन्जिनियरिङ विधाका म्यानेज्मेन्ट सिद्धान्तहरुमा आधारित एनलाइसि, डिजाइन, इम्प्लिमेन्टेशन तथा मेन्टेनेन्स, टेक्निकहरु (अप्रोच तथा नोशन) र टुल्स (सफ्टवेर इन्जिनियरिङ इन्भारोमेन्ट) बारे ज्ञान हासिल गर्न मद्दत गर्नेछ । साथै यो कोर्स को डिजाइन सिस्टम एनलाइसिस, डिजाइन तथा इम्प्लिमेन्टेशनका लागि प्रशस्त उच्च तहको टेक्निकल स्किल उपब्ध गर्ने हिसाबले गरिएको छ जुन अल्ट्रा मोडर्न कम्प्युटर एडेड सफ्टवेर इन्जिनियरिङ टुल्सको म \"\" द्दतले कुशल सफ्टवेर डेभलप गर्न आवश्यक पर्दछ ।

कहा पढ्न पाइन्छ ?

सफ्टवेयर इन्जिनियरिङ कोर्स नेपालमा दुइ वटा कलेजमा मात्र सञ्चालनमा रहेको छ । बालकुमारी ललितपुर स्थित एनसिआइटी र पोखराको गण्डकी कलेजमा यो कोर्स अध्ययन गर्र्न सकिन्छ । कम्प्युटर इन्जिनियरिङ सो सरहको शुल्कमा यो कोर्स अध्ययन गर्न सकिने हुदा यहि क्षेत्रमा करियर विकास गर्न सकिनेहरुको लागि एकदमै राम्रो कोर्स तथा शैक्षिक कार्यक्रमको रुपमा यो स्थापित छ ।