𝗦𝗼𝗳𝘁𝘄𝗮𝗿𝗲 𝗗𝗲𝘃𝗲𝗹𝗼𝗽𝗺𝗲𝗻𝘁: 𝗙𝗿𝗼𝗺 𝗜𝗱𝗲𝗮 𝘁𝗼 𝗣𝗿𝗼𝗱𝘂𝗰𝘁 -> மென்பொருள் மேம்பாடு: யோசனையிலிருந்து தயாரிப்பு வரை

மென்பொருளை உருவாக்குவதில் கோடிங் (Coding) மட்டுமே ஒரு பகுதி அல்ல. ஒரு கட்டமைக்கப்பட்ட செயல்முறை ஒரு எளிய யோசனையைச் செயல்படும் தயாரிப்பாக மாற்றுகிறது. இந்தச் செயல்முறையே மென்பொருள் மேம்பாட்டு வாழ்க்கைச் சுழற்சி (Software Development Life Cycle) ஆகும்.

ஒரு சிறந்த செயல்முறை உங்களுக்குப் பின்வருவனவற்றிற்கு உதவுகிறது:

  • திட்டங்களைச் சரியான நேரத்தில் முடித்து வழங்க
  • மேம்பாட்டுச் செலவுகளைக் குறைக்க
  • மென்பொருளின் தரத்தை மேம்படுத்த
  • பிழைகள் (bugs) மற்றும் பாதுகாப்பு அபாயங்களைக் குறைக்க

இந்தச் செயல்முறையின் நிலைகள் இதோ:

  1. தேவைகளைச் சேகரித்தல் (Requirement Gathering) முதலில் நீங்கள் பிரச்சனையைப் புரிந்துகொள்ள வேண்டும். வணிக இலக்குகள் மற்றும் பயனர்களின் தேவைகளைக் கண்டறிய பங்குதாரர்களுடன் (stakeholders) பேச வேண்டும். உங்கள் பணி வரம்பை (scope) முன்கூட்டியே அறிந்துகொள்வது பின்னாளில் ஏற்படும் தவறுகளைத் தவிர்க்க உதவும்.

  2. திட்டமிடல் (Planning) ஒரு வழிகாட்டியை (roadmap) உருவாக்குங்கள். மைல்கற்கள் (milestones), காலக்கெடு மற்றும் வளங்களை வரையறுக்கவும். உங்கள் தொழில்நுட்பத் தொகுப்பை (technology stack) தேர்ந்தெடுக்கவும். ஒரு திட்டம் உங்கள் வரைபடமாக (blueprint) செயல்படுகிறது.

  3. UI/UX வடிவமைப்பு (Design) பயனர்கள் உங்கள் தயாரிப்பைச் சில நொடிகளிலேயே மதிப்பிடுகிறார்கள். வடிவமைப்பாளர்கள் வயர்ஃபிரேம்கள் (wireframes) மற்றும் முன்மாதிரிகளை (prototypes) உருவாக்குகிறார்கள். எளிதான வழிசெலுத்தல் (navigation) மற்றும் தடையற்ற அனுபவத்தில் கவனம் செலுத்துங்கள்.

  4. மேம்பாடு (Development) இங்குதான் கோடிங் செய்யப்படுகிறது.

  • Frontend: பயனர்கள் பார்க்கும் மற்றும் பயன்படுத்தும் பகுதி.
  • Backend: லாஜிக் (logic), தரவுத்தளங்கள் (databases) மற்றும் சேவையகங்கள் (servers). குழுக்கள் இணைந்து செயல்பட Git போன்ற கருவிகளைப் பயன்படுத்துகின்றன.
  1. சோதனை செய்தல் (Testing) பயனர்கள் கண்டறிவதற்கு முன்பே சோதனைகள் பிழைகளைக் கண்டறியும். பல்வேறு முறைகளைப் பயன்படுத்தவும்:
  • செயல்பாட்டு சோதனை (Functional testing)
  • செயல்திறன் சோதனை (Performance testing)
  • பாதுகாப்பு சோதனை (Security testing)
  1. பயன்பாட்டிற்கு வெளியிடுதல் (Deployment) மென்பொருளைப் பயனர்களுக்கு வெளியிடுங்கள். இதில் சேவையகங்கள் மற்றும் தரவுத்தளங்களை அமைப்பது அடங்கும். இந்த நிலையை பாதுகாப்பானதாக மாற்ற பல குழுக்கள் தானியங்கி முறைகளை (automation) பயன்படுத்துகின்றன.

  2. பராமரிப்பு (Maintenance) மென்பொருள் வெளியீட்டுடன் வேலை முடிந்துவிடுவதில்லை. பிழைகளைச் சரிசெய்ய வேண்டும், வேகத்தை மேம்படுத்த வேண்டும் மற்றும் கருத்துகளின் (feedback) அடிப்படையில் புதிய அம்சங்களைச் சேர்க்க வேண்டும்.

நெகிழ்வுத்தன்மைக்கு Agile மற்றும் நிலையான தேவைகளுக்கு Waterfall ஆகியவை பொதுவான முறைகளாகும்.

சிறந்த மென்பொருளை உருவாக்குவதற்கு வெறும் கோடிங் மட்டும் போதாது. அதற்குத் திட்டமிடல், வடிவமைப்பு, சோதனை மற்றும் குழுப்பணி தேவை.

Source: https://dev.to/asif_foysal_682ed1f242ce4/software-development-process-from-idea-to-successful-product-bp2

Optional learning community: https://t.me/GyaanSetuAi