സോഫ്റ്റ്‌വെയർ എഞ്ചിനീയറിങ്

(സോഫ്റ്റ്‌വെയർ എൻജിനീയറിങ്ങ് എന്ന താളിൽ നിന്നും തിരിച്ചുവിട്ടതു പ്രകാരം)

ക്രമാനുഗതമായി അടുക്കും ചിട്ടയോടും സോഫ്റ്റ്‌വെയർ നിർമ്മിക്കുന്ന പ്രക്രിയ ആണ് സോഫ്റ്റ്‌വെയർ എഞ്ചിനീയറിങ്ങ്‌. കേവലം നിർമ്മാണത്തിലുപരിയായി അതിന്റെ പ്രവർത്തനവും ക്ഷമതയും വിലയിരുത്തുകയും, ആ സോഫ്റ്റ്‌വെയർ ടെസ്റ്റു ചെയ്യുകയും പിന്നീട് അതിന്റെ മെയിന്റനൻസും ആയിട്ടു നീളുന്ന ഒരു പ്രക്രിയ കൂടി ആണ് സോഫ്റ്റ്‌വെയർ എഞ്ചിനീയറിങ്ങ്‌. സോഫ്റ്റ്‌വെയറിന്റെ വികസനത്തിനായുള്ള എഞ്ചിനീയറിംഗ് സമീപനങ്ങളുടെ ചിട്ടയായ പ്രയോഗമാണ്.[1][2][3]

പുതിയ എയർബസ് A380 യിൽ പേപ്പറുകൾ ഇല്ലാതെകോക്പിറ്റ് ഉപയോഗിക്കാൻ പറ്റുന്നതരം സോഫ്റ്റ്വെയറുകൾ ഉപയോഗിച്ചിട്ടുണ്ട്. ഈ പ്ലെയിൻ സോഫ്റ്റ്‌വേർ ധാരാളം കോഡുകൾ ഉപയോഗിക്കുന്നു.

കമ്പ്യൂട്ടർ സോഫ്റ്റ്‌വെയർ രൂപകൽപ്പന ചെയ്യുന്നതിനും വികസിപ്പിക്കുന്നതിനും പരിപാലിക്കുന്നതിനും പരിശോധിക്കുന്നതിനും വിലയിരുത്തുന്നതിനും സോഫ്റ്റ്‌വെയർ എഞ്ചിനീയറിംഗിന്റെ തത്വങ്ങൾ പ്രയോഗിക്കുന്ന ഒരു വ്യക്തിയാണ് സോഫ്റ്റ്‌വെയർ എഞ്ചിനീയർ. പ്രോഗ്രാമർ എന്ന പദം ചിലപ്പോൾ ഒരു പര്യായമായി ഉപയോഗിക്കാറുണ്ട്, എന്നാൽ എഞ്ചിനീയറിംഗ് വിദ്യാഭ്യാസത്തിന്റെയോ കഴിവുകളുടെയോ അർത്ഥങ്ങൾ ഇതിന് ഇല്ലായിരിക്കാം.

സോഫ്റ്റ്‌വെയർ ലൈഫ് സൈക്കിൾ പ്രക്രിയയുടെ തന്നെ നിർവചനം, നടപ്പാക്കൽ, വിലയിരുത്തൽ, അളവ്, മാനേജ്മെന്റ്, മാറ്റം, മെച്ചപ്പെടുത്തൽ എന്നിവ ഉൾപ്പെടുന്ന സോഫ്റ്റ്‌വെയർ വികസന പ്രക്രിയകളിൽ എഞ്ചിനീയറിംഗ് ടെക്നിക്കുകൾ ഉപയോഗിക്കുന്നു[1][4]. ഇത് സോഫ്‌റ്റ്‌വെയർ കോൺഫിഗറേഷൻ മാനേജ്‌മെന്റ്[1][4]വളരെയധികം ഉപയോഗിക്കുന്നു, ഇത് കോൺഫിഗറേഷനിലെ മാറ്റങ്ങൾ സിസ്റ്റമാറ്റിക്കായി നിയന്ത്രിക്കുകയും സിസ്റ്റം ലൈഫ് സൈക്കിളിലുടനീളം കോൺഫിഗറേഷന്റെയും കോഡിന്റെയും ആർജ്ജവം കണ്ടെത്തുകയും നിലനിർത്തുകയും ചെയ്യുന്നു. സോഫ്റ്റ്വെയർ പതിപ്പുകൾ ആധുനികമായ പ്രോസ്സസുകൾ ഉപയോഗിക്കുന്നു.

പദോല്പത്തിതിരുത്തുക

സോഫ്റ്റ്‌വേർ എഞ്ചിനീയറിങ്ങ് (software engineering) എന്ന പദം ആദ്യമായി അവതരിപ്പിക്കപ്പെട്ടത് 1968 ലെ നാറ്റോ (NATO) സോഫ്റ്റ്‍വെയർ എഞ്ചിനീയറിങ്ങ് കോൺഫറൻസിലാണ്. ഇത് അന്നത്തെ സോഫ്റ്റ്‍വെയർ പ്രതിസന്ധിയെ സൂചിപ്പിക്കുന്നതിനായിട്ടായിരുന്നു ഉപയോഗിച്ചത്. [5][6] അതിനു ശേഷം ഈ പദം ഒരു പ്രൊഫഷൻ ആയും ഒരു പഠനമേഖലയുമായി മാറുകയായിരുന്നു. എഞ്ചിനീയറിങ്ങിന്റെ മറ്റു ശാഖകളെ അപേക്ഷിച്ച് ഈ ശാഖ ഇപ്പോഴും ഏറെ മുന്നോട്ട് പോകാനുണ്ട്. കൂടാതെ എന്താണ് സോഫ്റ്റ്‍വെയർ എഞ്ചിനീയറിങ്ങിന്റെ നിർവചനം എന്നതിന്റെ കാര്യത്തിൽ ഇന്നും തർക്കങ്ങൾ നില നിൽക്കുന്നു. പക്ഷേ, സോഫ്റ്റ്‍വെയർ ഡെവലപ്‌മെന്റിലുണ്ടായ പുരോഗതികൾ ഈ ശാഖയെ വളരെയധികം പരിപോഷിപ്പിച്ചിട്ടുണ്ട്. [7][8] പുതിയ കമ്പ്യൂട്ടർ യുഗത്തിൽ ഈ എഞ്ചിനീയറിംങ് ശാഖയിൽ ധാരാളം ജോലി സാധ്യതകൾ ഉണ്ട്. [9]

ചരിത്രംതിരുത്തുക

1960-കളിൽ തുടങ്ങി, സോഫ്‌റ്റ്‌വെയർ എഞ്ചിനീയറിംഗ് പ്രത്യേക ശാഖയായി പ്രവർത്തിക്കുന്നു. കൂടാതെ, സോഫ്റ്റ്‌വെയർ എഞ്ചിനീയറിംഗിന്റെ വികസനം ഒരു പോരാട്ടമാണ്. സോഫ്‌റ്റ്‌വെയർ എഞ്ചിനീയർമാർക്ക് നിരവധി പ്രശ്‌നങ്ങളുണ്ടാക്കിയ ഹാർഡ്‌വെയറുമായി പൊരുത്തപ്പെടുക എന്നത് വലിയ ബുദ്ധിമുട്ടായിരുന്നു. പ്രശ്‌നങ്ങളിൽ പെട്ടതും, ബഡ്ജറ്റിന് മുകളിലുള്ളതുമായ, സമയപരിധി കഴിഞ്ഞ, വിപുലമായ ഡീ-ബഗ്ഗിംഗും മെയിന്റനൻസും ആവശ്യമായ സോഫ്‌റ്റ്‌വെയർ ഉൾപ്പെടുന്നു, കൂടാതെ ഉപഭോക്താക്കളുടെ ആവശ്യങ്ങൾ വിജയകരമായി നിറവേറ്റാത്തതോ ഒരിക്കലും പൂർത്തിയാകാത്തതോ ആണ്. 1968-ൽ നാറ്റോ ആദ്യത്തെ സോഫ്‌റ്റ്‌വെയർ എഞ്ചിനീയറിംഗ് കോൺഫറൻസ് നടത്തി, അവിടെ സോഫ്‌റ്റ്‌വെയറുമായി ബന്ധപ്പെട്ട പ്രശ്‌നങ്ങൾ പരിഹരിക്കപ്പെട്ടു: സോഫ്‌റ്റ്‌വെയർ വികസിപ്പിക്കുന്നതിനുള്ള മാർഗ്ഗനിർദ്ദേശങ്ങളും മികച്ച രീതികളും നടപ്പിലാക്കി.

"സോഫ്റ്റ്‌വെയർ എഞ്ചിനീയറിംഗ്" എന്ന പദത്തിന്റെ ഉത്ഭവം വിവിധ സ്രോതസ്സുകളിൽ നിന്നാണ്. 1965 ജൂണിലെ കമ്പ്യൂട്ടറുകളുടെയും ഓട്ടോമേഷന്റെയും ലക്കത്തിൽ കമ്പനികൾ വാഗ്ദാനം ചെയ്യുന്ന സേവനങ്ങളുടെ പട്ടികയിൽ "സോഫ്റ്റ്‌വെയർ എഞ്ചിനീയറിംഗ്" എന്ന പദം പ്രത്യക്ഷപ്പെട്ടു, കൂടാതെ 1966 ആഗസ്ത് ലക്കത്തിൽ കമ്മ്യൂണിക്കേഷൻസ് ഓഫ് എസിഎം (വാല്യം 9, നമ്പർ 8) “എസിഎം(ACM)പ്രസിഡന്റ് ആന്റണി എ. ഓട്ടിങ്ങറിന്റെ എസിഎം അംഗത്വത്തിനുള്ള കത്ത്, 1968-ൽ പ്രൊഫസർ ഫ്രെഡറിക് എൽ. ബോവർ നടത്തിയ ഒരു നാറ്റോ കോൺഫറൻസിന്റെ തലക്കെട്ടുമായി ഇത് ബന്ധപ്പെട്ടിരിക്കുന്നു, ഇത് സോഫ്റ്റ്‌വെയർ എഞ്ചിനീയറിംഗിനെക്കുറിച്ചുള്ള ആദ്യ കോൺഫറൻസാണ്.

അവലംബംതിരുത്തുക

  1. 1.0 1.1 1.2 Abran et al. 2004, പുറങ്ങൾ. 1–1
  2. ലുവ പിഴവ് ഘടകം:Citation/CS1-ൽ 4162 വരിയിൽ : attempt to index field 'url_skip' (a nil value)
  3. ലുവ പിഴവ് ഘടകം:Citation/CS1-ൽ 4162 വരിയിൽ : attempt to index field 'url_skip' (a nil value)
  4. 4.0 4.1 ലുവ പിഴവ് ഘടകം:Citation/CS1-ൽ 4162 വരിയിൽ : attempt to index field 'url_skip' (a nil value)
  5. ലുവ പിഴവ് ഘടകം:Citation/CS1-ൽ 4162 വരിയിൽ : attempt to index field 'url_skip' (a nil value)
  6. ലുവ പിഴവ് ഘടകം:Citation/CS1-ൽ 4162 വരിയിൽ : attempt to index field 'url_skip' (a nil value)
  7. The end of software engineering and the start of economic-cooperative gaming
  8. ലുവ പിഴവ് ഘടകം:Citation/CS1-ൽ 4162 വരിയിൽ : attempt to index field 'url_skip' (a nil value)
  9. ലുവ പിഴവ് ഘടകം:Citation/CS1-ൽ 4162 വരിയിൽ : attempt to index field 'url_skip' (a nil value)