Agile Development

From binaryoption
Jump to navigation Jump to search
Баннер1
    1. Agile Development

Agile Development (சுறுசுறுப்பான மேம்பாடு) என்பது மென்பொருள் மேம்பாட்டு அணுகுமுறைகளில் ஒரு முக்கியமான முறையாகும். இது திட்டங்களை சிறிய, சுழற்சி முறையில் உருவாக்கும் முறையை வலியுறுத்துகிறது. பாரம்பரிய நீர்வீழ்ச்சி (Waterfall) மாதிரியைப் போலன்றி, Agile அணுகுமுறை மாற்றங்களுக்கு ஏற்ப தகவமைத்துக் கொள்ளும் திறனைக் கொண்டுள்ளது. பைனரி ஆப்ஷன்ஸ் சந்தையில் விரைவாக முடிவெடுக்க வேண்டிய சூழலைப் போன்றே, Agile மேம்பாடும் வேகமான மாற்றங்களுக்கு முக்கியத்துவம் கொடுக்கிறது. இந்த கட்டுரை Agile Development-ன் அடிப்படைகள், கோட்பாடுகள், முறைகள், கருவிகள் மற்றும் அதன் பயன்பாடுகளை விரிவாக விளக்குகிறது.

Agile-ன் தோற்றம் மற்றும் பின்னணி

1990-களின் பிற்பகுதியில், மென்பொருள் மேம்பாட்டுத் துறையில் பல சிக்கல்கள் இருந்தன. திட்டங்கள் சரியான நேரத்தில் முடிவடையாமல், வாடிக்கையாளர்களின் தேவைகளைப் பூர்த்தி செய்யாமல் தோல்வியடைந்தன. இதற்கு காரணம், திட்டமிடல் மற்றும் தேவைகளை முன்கூட்டியே முழுமையாக வரையறுப்பதில் இருந்த குறைபாடுகளே. இந்தச் சிக்கல்களைத் தீர்க்கும் முயற்சியாக, Agile Manifesto 2001-ல் உருவாக்கப்பட்டது. கென்ட் பெக், மைக் கோஹ்லர், ஸ்காட் மின்சன், ஆண்ட்ரூ ஹன்ட் மற்றும் ராபர்ட் மார்ட்டின் ஆகிய 17 மென்பொருள் உருவாக்குநர்கள் இணைந்து இந்த அறிக்கையை வெளியிட்டனர்.

Agile Manifesto-வின் நான்கு முக்கிய மதிப்புகள்

Agile Manifesto நான்கு முக்கிய மதிப்புகளை அடிப்படையாகக் கொண்டது:

  • தனிநபர்களும் தொடர்புகளும் செயல்முறைகள் மற்றும் கருவிகளை விட முக்கியம்.
  • செயல்படும் மென்பொருள் விரிவான ஆவணங்களை விட முக்கியம்.
  • வாடிக்கையாளர் ஒத்துழைப்பு ஒப்பந்தப் பேச்சுவார்த்தைகளை விட முக்கியம்.
  • மாற்றங்களுக்கு ஏற்ப பதிலளித்தல் ஒரு திட்டத்தைப் பின்பற்றுவதை விட முக்கியம்.

இந்த மதிப்புகள் Agile Development-ன் தத்துவத்தை விளக்குகின்றன.

Agile கோட்பாடுகள்

Agile Manifesto-வுடன், 12 முக்கிய கோட்பாடுகளும் இணைக்கப்பட்டுள்ளன. அவை:

1. வாடிக்கையாளர்களுக்கு விரைவில், அடிக்கடி மதிப்புமிக்க மென்பொருளை வழங்குவதே முதன்மையான குறிக்கோள். 2. தேவைகளில் ஏற்படும் மாற்றங்களை வரவேற்கிறோம், ஏனெனில் அவை வணிகத்திற்கு போட்டித்தன்மையை அளிக்கின்றன. 3. செயல்படும் மென்பொருளை குறுகிய கால இடைவெளியில் (ஒன்று முதல் இரண்டு மாதங்கள்) வழங்க வேண்டும். 4. வணிகம் சார்ந்தவர்களையும், உருவாக்குநர்களையும் தினமும் ஒன்றாக வேலை செய்ய வைக்க வேண்டும். 5. ஊக்கமளிக்கும் நபர்களைச் சுற்றி திட்டங்களை உருவாக்க வேண்டும். அவர்களுக்கு தேவையான சூழலையும், ஆதரவையும் வழங்க வேண்டும். 6. தகவல்களை பரிமாறிக் கொள்ள நேரடியான மற்றும் திறமையான வழிமுறைகளை பயன்படுத்த வேண்டும். 7. செயல்படும் மென்பொருள்தான் முன்னேற்றத்திற்கான முக்கிய அளவீடு. 8. Agile செயல்முறைகள் நிலையான வேகத்தில் மேம்பாட்டை ஊக்குவிக்கின்றன. 9. தொழில்நுட்ப சிறப்பை ஊக்குவிப்பதன் மூலம் சுறுசுறுப்பான தன்மை அதிகரிக்கிறது. 10. எளிமை என்பது தேவையற்ற வேலைகளை குறைப்பதற்கான கலை. 11. சிறந்த கட்டமைப்புகள், தேவைகள் மற்றும் வடிவமைப்புகள் சுய- ஒழுங்கமைக்கப்பட்ட குழுக்களிலிருந்து வெளிப்படுகின்றன. 12. குழு தொடர்ந்து தனது செயல்திறனை மேம்படுத்த வேண்டும், அவ்வப்போது பிரதிபலித்து அதற்கேற்ப மாற்றங்களைச் செய்ய வேண்டும்.

Agile முறைகள்

Agile Development-ல் பல முறைகள் உள்ளன, அவற்றில் சில முக்கியமானவை கீழே கொடுக்கப்பட்டுள்ளன:

  • Scrum (Scrum): இது மிகவும் பிரபலமான Agile முறையாகும். இது திட்டத்தை சிறிய பகுதிகளாக (Sprints) பிரித்து, ஒவ்வொரு Sprint-ன் முடிவிலும் செயல்படும் மென்பொருளை வழங்குகிறது. Scrum-ல் Product Owner, Scrum Master, Development Team ஆகிய மூன்று முக்கிய பங்குதாரர்கள் உள்ளனர். இது கான்பன் முறையை விட கட்டமைக்கப்பட்ட அணுகுமுறையாகும்.
  • Kanban (Kanban): இது ஒரு காட்சி முறை. இது பணிகளை காட்சிப்படுத்தவும், வேலையின் ஓட்டத்தை நிர்வகிக்கவும் உதவுகிறது. Kanban-ல் WIP (Work in Progress) வரம்புகள் பயன்படுத்தப்படுகின்றன, இது ஒரே நேரத்தில் செய்யப்படும் வேலைகளின் எண்ணிக்கையை கட்டுப்படுத்துகிறது. இது லீீன் உற்பத்தி கொள்கைகளை அடிப்படையாகக் கொண்டது.
  • Extreme Programming (XP) (Extreme Programming): இது மென்பொருள் தரத்தை மேம்படுத்துவதில் கவனம் செலுத்துகிறது. XP-ல் ஜோடி நிரலாக்கம், சோதனை-உந்துதல் மேம்பாடு, தொடர்ச்சியான ஒருங்கிணைப்பு போன்ற நடைமுறைகள் பயன்படுத்தப்படுகின்றன. இது டெஸ்ட்-டிரைவன் டெவலப்மென்ட் (TDD) அணுகுமுறையை வலியுறுத்துகிறது.
  • Lean Software Development (Lean Software Development): இது கழிவுகளை குறைப்பதிலும், வாடிக்கையாளர்களுக்கு மதிப்பை வழங்குவதிலும் கவனம் செலுத்துகிறது. Lean-ல் ஏழு முக்கிய கொள்கைகள் உள்ளன: கழிவுகளை நீக்குதல், கற்றலை மேம்படுத்துதல், விரைவில் வழங்குதல், குழுக்களை அதிகாரம் செய்தல், தொழில்நுட்ப சிறப்பை மேம்படுத்துதல், முழுமையை மதித்தல், மற்றும் தொடர்ந்து மேம்படுத்துதல். இது தொழில்நுட்ப பகுப்பாய்வு மூலம் மேம்படுத்தப்படுகிறது.
  • Feature-Driven Development (FDD) (Feature-Driven Development): இது வாடிக்கையாளர் தேவைக்கேற்ப அம்சங்களை உருவாக்குவதில் கவனம் செலுத்துகிறது. FDD-ல் ஐந்து முக்கிய செயல்முறைகள் உள்ளன: மாதிரியாக்கம், உருவாக்கம், திட்டமிடல், வடிவமைப்பு மற்றும் உருவாக்குதல்.
Agile முறைகளின் ஒப்பீடு
முறை முக்கிய கவனம் முக்கிய நடைமுறைகள் பொருத்தமான சூழ்நிலைகள்
Scrum சுழற்சி முறையில் வழங்குதல் Sprints, Daily Scrum, Sprint Review, Sprint Retrospective சிக்கலான திட்டங்கள், வேகமாக மாறிவரும் தேவைகள்
Kanban வேலையின் ஓட்டம் காட்சிப்படுத்துதல், WIP வரம்புகள் பராமரிப்பு திட்டங்கள், நிலையான வேலைப்பளு
XP மென்பொருள் தரம் ஜோடி நிரலாக்கம், TDD, தொடர்ச்சியான ஒருங்கிணைப்பு சிறிய குழுக்கள், அதிக தொழில்நுட்ப ஆபத்து
Lean மதிப்பு வழங்குதல் கழிவுகளை நீக்குதல், கற்றலை மேம்படுத்துதல் பெரிய திட்டங்கள், நிலையான தேவைகள்
FDD அம்சங்களை உருவாக்குதல் மாதிரியாக்கம், உருவாக்கம், திட்டமிடல் வாடிக்கையாளர் சார்ந்த தேவைகள், தெளிவான அம்சங்கள்

Agile கருவிகள்

Agile Development-ஐ ஆதரிக்க பல கருவிகள் உள்ளன. அவற்றில் சில:

  • Jira (Jira): இது ஒரு பிரபலமான திட்ட மேலாண்மை கருவி. இது Scrum மற்றும் Kanban ஆகிய இரண்டு முறைகளையும் ஆதரிக்கிறது.
  • Trello (Trello): இது ஒரு எளிய மற்றும் காட்சிப்படுத்தப்பட்ட பணி மேலாண்மை கருவி. இது Kanban முறையை அடிப்படையாகக் கொண்டது.
  • Asana (Asana): இது குழுப்பணி மற்றும் திட்ட மேலாண்மை கருவி. இது பணிகளை ஒதுக்க, கண்காணிக்க மற்றும் ஒத்துழைக்க உதவுகிறது.
  • Azure DevOps (Azure DevOps): இது மைக்ரோசாஃப்ட் வழங்கும் ஒரு முழுமையான DevOps கருவி. இது பதிப்பு கட்டுப்பாடு, தொடர்ச்சியான ஒருங்கிணைப்பு, சோதனை மற்றும் வெளியீட்டு மேலாண்மை போன்ற அம்சங்களை உள்ளடக்கியது.
  • Slack (Slack): இது குழுத் தகவல்தொடர்பு கருவி. இது குழு உறுப்பினர்களிடையே உடனடி செய்திகளைப் பரிமாறிக் கொள்ள உதவுகிறது.

Agile-ன் நன்மைகள்

Agile Development பல நன்மைகளை வழங்குகிறது:

  • வேகமான வெளியீடு (Time to Market): Agile முறைகள் விரைவாக செயல்படும் மென்பொருளை வழங்க உதவுகின்றன. இது சந்தையில் வேகமாக நுழைவதற்கு உதவுகிறது.
  • உயர்ந்த வாடிக்கையாளர் திருப்தி (Customer Satisfaction): வாடிக்கையாளர்கள் திட்டத்தின் ஆரம்ப கட்டத்திலேயே மென்பொருளைப் பயன்படுத்த முடியும். இது அவர்களின் தேவைகளுக்கு ஏற்ப மென்பொருளை வடிவமைக்க உதவுகிறது.
  • அதிக நெகிழ்வுத்தன்மை (Flexibility): Agile முறைகள் மாற்றங்களுக்கு ஏற்ப தகவமைத்துக் கொள்ளும் திறனைக் கொண்டுள்ளன. இது திட்டத்தின் போக்கில் ஏற்படும் மாற்றங்களை எளிதில் சமாளிக்க உதவுகிறது.
  • மேம்பட்ட குழு ஒத்துழைப்பு (Team Collaboration): Agile முறைகள் குழு உறுப்பினர்களிடையே ஒத்துழைப்பை ஊக்குவிக்கின்றன. இது சிறந்த முடிவுகளை எடுக்க உதவுகிறது.
  • குறைந்த ஆபத்து (Risk Management): Agile முறைகள் திட்டத்தின் ஆபத்துக்களை குறைக்க உதவுகின்றன. ஏனெனில், சிக்கல்கள் ஆரம்பத்திலேயே கண்டறியப்பட்டு தீர்க்கப்படுகின்றன. இது அளவு பகுப்பாய்வு மூலம் உறுதி செய்யப்படுகிறது.

Agile-ன் சவால்கள்

Agile Development சில சவால்களையும் கொண்டுள்ளது:

  • ஆரம்ப கட்ட திட்டமிடல் குறைவு (Initial Planning): Agile முறைகள் ஆரம்ப கட்ட திட்டமிடலுக்கு அதிக முக்கியத்துவம் கொடுப்பதில்லை. இது சில நேரங்களில் திட்டத்தின் திசையை இழக்க நேரிடும்.
  • வாடிக்கையாளர் ஈடுபாடு தேவை (Customer Involvement): Agile முறைகளுக்கு வாடிக்கையாளர்களின் தொடர்ச்சியான ஈடுபாடு தேவை. இது சில நேரங்களில் சாத்தியமில்லாமல் போகலாம்.
  • அதிகப்படியான ஆவணப்படுத்தல் சிக்கல் (Documentation Issues): Agile முறைகள் ஆவணப்படுத்தலுக்கு குறைந்த முக்கியத்துவம் கொடுக்கின்றன. இது மென்பொருளைப் பராமரிப்பதில் சிக்கல்களை ஏற்படுத்தலாம்.
  • குழுவின் திறன் தேவை (Team Skills): Agile குழு உறுப்பினர்கள் திறமையானவர்களாகவும், சுய- ஒழுக்கம் உடையவர்களாகவும் இருக்க வேண்டும்.

Agile-ன் பயன்பாடுகள்

Agile Development பல துறைகளில் பயன்படுத்தப்படுகிறது:

  • மென்பொருள் மேம்பாடு (Software Development): இது Agile-ன் முக்கிய பயன்பாட்டுத் துறையாகும்.
  • வலைத்தள மேம்பாடு (Web Development): Agile முறைகள் வலைத்தளங்களை விரைவாகவும், திறமையாகவும் உருவாக்க உதவுகின்றன.
  • மொபைல் பயன்பாட்டு மேம்பாடு (Mobile App Development): Agile முறைகள் மொபைல் பயன்பாடுகளை உருவாக்கவும், புதுப்பிக்கவும் உதவுகின்றன.
  • சந்தைப்படுத்தல் (Marketing): Agile முறைகள் சந்தைப்படுத்தல் பிரச்சாரங்களை திட்டமிடவும், செயல்படுத்தவும் உதவுகின்றன.
  • நிதி (Finance): Agile முறைகள் நிதித் திட்டங்களை நிர்வகிக்கவும், செயல்படுத்தவும் உதவுகின்றன. இது உத்திகள் வகுப்பதில் உதவுகிறது.

முடிவுரை

Agile Development என்பது மென்பொருள் மேம்பாட்டுத் துறையில் ஒரு புரட்சிகரமான அணுகுமுறையாகும். இது வேகமான வெளியீடு, உயர்ந்த வாடிக்கையாளர் திருப்தி, அதிக நெகிழ்வுத்தன்மை மற்றும் மேம்பட்ட குழு ஒத்துழைப்பு போன்ற பல நன்மைகளை வழங்குகிறது. இருப்பினும், Agile Development-ஐ வெற்றிகரமாக செயல்படுத்த, திட்டமிடல், வாடிக்கையாளர் ஈடுபாடு மற்றும் குழுவின் திறன் ஆகியவற்றில் கவனம் செலுத்த வேண்டும். பைனரி ஆப்ஷன்ஸ் வர்த்தகத்தில் துல்லியமான முடிவுகளை எடுக்க வேண்டியது போல, Agile முறைகளும் திட்டத்தை வெற்றிகரமாக முடிக்க துல்லியமான அணுகுமுறையை வலியுறுத்துகிறது.

இப்போது பரிவர்த்தனையை தொடங்குங்கள்

IQ Option-ல் பதிவு செய்யவும் (குறைந்தபட்ச டெபாசிட் $10) Pocket Option-ல் கணக்கு திறக்கவும் (குறைந்தபட்ச டெபாசிட் $5)

எங்கள் சமூகத்தில் சேருங்கள்

எங்கள் Telegram சேனலுக்கு சேர்ந்து @strategybin பெறுங்கள்: ✓ தினசரி பரிவர்த்தனை சமிக்ஞைகள் ✓ சிறப்பு உத்திகள் மற்றும் ஆலோசனைகள் ✓ சந்தை சார்ந்த அறிவிப்புகள் ✓ தொடக்க அடிப்படையிலான கல்வி பொருட்கள்

Баннер