மென்பொருள் உருவாக்கும் விந்தையுலகம் 6: மென்பொருள் திட்டம் நிர்வகிக்க, போர் விமானத்தை தரையிறக்கப் பழகுங்கள்!

Agile/Scrum பற்றி தொடர் கட்டுரை – 6

புதிய உற்பத்திப்பொருட்கள் கண்டுபிடிக்கும் ஒரு குழு எந்த மாதிரி அணுகுமுறை பயன்படுத்தலாம் என்று 1986-ல் டாகெயூச்சி மற்றும் நோனாகா ஒரு ஆய்வுக் கட்டுரை எழுதினர். வாகனம், நகலி மற்றும் அச்சுப்பொறி தயாரிப்பு நிறுவனங்களில் செய்த நேர் ஆய்வுகளின் அடிப்படையில் இதை எழுதினர். வழக்கமாகச் செய்யும் தொடர்நிலை அணுகுமுறைக்குப் பதிலாக Scrum* அணுகுமுறை இம்மாதிரி வேலைக்கு திறம்பட்டதாக இருக்கும் என்பது அவர்கள் பரிந்துரை. ரக்பி (Rugby) கால்பந்தாட்டத்தில் ஏதும் சிறிய தவறினால் ஆட்டம் நின்ற பின் திரும்பத் தொடங்கும் முறையை Scrum என்று சொல்கிறார்கள். ஒருவருக்கொருவர் பந்தைப் போட்டு பிடித்து அணியினர் ஒட்டு மொத்தமாக முன்னேறிச் செல்ல முயற்சிப்பார்கள். வேகமாகச் செல்லவும் முடியும், எதிர் அணியின் ஆட்டம் மற்றும் எஞ்சியுள்ள நேரம் போன்ற தேவைகளுக்குத் தகுந்தாற்போல் அணுகுமுறையை மாற்றிக் கொள்ளவும் முடியும். சுயமாக வேலையைப் பங்கிட்டுச்செய்யும் அணிகளே இம்மாதிரி வேலைக்கு உகந்தவை.

1993-ல் ஜெஃப் சதர்லேண்ட் (Jeff Sutherland) ஈசல் நிறுவனத்தில் Object Studio என்ற புதிய மென்பொருள் செயலி தயாரிக்க முதன்மை பொறியாளராகச் சேர்ந்திருந்தார். இந்த  கட்டுரையால் மன எழுச்சியுற்று திட்டம் நிர்வகிக்க Scrum அணுகுமுறையைச் செயல்படுத்த முயற்சித்தார்.

மற்றொரு ஆராய்ச்சிக் கட்டுரை போர்லாண்ட் நிறுவனத்தின் Quattro Pro செயலி பற்றியது. அதற்கு எட்டு பேர் குழு முப்பத்தோரு மாதங்களில் ஒரு மில்லியன் வரிகள் C++ நிரல் எழுதியது. அதாவது ஒவ்வொரு குழு உறுப்பினரும் வாரத்துக்கு ஆயிரம் வரிகள் எழுதியுள்ளனர். இது நிரல் எழுதுவதில் ஒரு அதிவேக சாதனை. இதில் ஒரு தனிப்பட்ட அம்சம் என்னவென்றால் அந்தக் குழுவின் உறுப்பினர்கள் ஒவ்வொரு நாளும் கூடிப் பேசினர். அனைவரையும் ஒரே அறையில் கொண்டு வருவது முக்கியம். ஏனென்றால் எதுவும் சவாலான பிரச்சினை வந்தால் உடன் சுயமாக வேலையை பங்கிட்டுத் தீர்வு காண இயலும்.

இதன் அடிப்படையில்தான் அவர் தினசரி கூடிநின்று பேசல் ஆரம்பித்தார், “ஈசல் நிறுவனத்தில் ஒரு குறுவோட்டத்தில் (Sprint) வழக்கம்போல நான்கு வாரங்களுக்கான வேலை செய்வதென்று திட்டம் போட்டிருந்தோம். நாங்கள் தினசரி கூடிநின்று பேச ஆரம்பித்தோம். வேலை முழுவதையும் ஒரே வாரத்தில் முடித்து விட்டோம். 400% மேம்பாடு! அந்த முதல் வெள்ளிக் கிழமை கூடிநின்று பேசும்போது குழு உறுப்பினர்கள் ஒருவரையொருவர் பார்த்துக்கொண்டு ‘அபாரம்’ என்றோம். அந்தக் கணத்தில்தான் எனக்கு ஏதோ புதிய பாதையில் நுழைகிறோம் என்று தோன்றியது.”

ஜெஃப் சதர்லேண்ட் அமெரிக்க விமானப்படையில் ஒரு போர் விமானியாக 11 ஆண்டுகள் வேலை செய்தவர். அவர் கூறுகிறார், “மென்பொருள் உருவாக்க திட்டத்தை மட்டும் விவரமாகத் தயார் செய்து விட்டால் போதும், எல்லாம் சொல்லி வைத்தாற்போல் அப்படியே நடக்கும் என்று எதிர்பார்க்கிறார்கள். எப்போதுமே அப்படி நடப்பதில்லை. நேற்று வேலை செய்த நிரல்கூறு இன்று வேலை செய்யாது, குழு உறுப்பினர்கள் உடல்நலக்குறைவு, எழுதும் நிரல் நீங்கள் எதிர்பார்ப்பதை செய்வதில்லை, வன்பொருள் சிக்கல்கள் ஆக ஒவ்வொரு நாளும் ஏதாவது பிரச்சினை வந்து கொண்டே இருக்கும்.

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

இதே போல ஒரு குறுவோட்டத்தில் குழுவின் வேகம், நிரலின் தரம், இந்த வேகம் நெடுநாளைக்கு நிலைத்திருக்கக்கூடியதா, சரியான திசையில் செல்கிறோமா அதாவது கிடக்கும் பணிகளில் சரியானவற்றைத்தான் செய்கிறோமா, இவை யாவற்றையும் ஒரே நேரத்தில் கவனிக்க வேண்டும்.”

இவையெல்லாம் ஒரே நேரத்தில் அணி உறுப்பினர்கள் கவனிக்க எளிதாக இருக்குமாறு எரிந்து குறையும் வரைபடத்தை (Burn down Chart) வடிவமைத்தார்.

Burn_down_chart.png

இது மிக எளிய வளைகோடு, ஆனால் ஒரே நேரத்தில் மேற்கண்ட அனைத்து விஷயங்களைப் பற்றியும் கேள்விகள் எழுப்பும். குறுவோட்டத்தை முடிக்க அணி எடுக்கும் நடவடிக்கைகளின் திறனை தெளிவாகக் காட்டும். நாம் முந்தைய கட்டுரையில் கண்டது போல, பின்னர் வந்த ஆண்டுகளில் தகவெளிமை (Agile) செயல்முறைகளில் Scrum முன்னணி செயல்முறையாக இடம் பெற்றது.

*Scrum-க்கு தமிழாக்கம் ‘மொய்திரள்’ என்று விக்சனரி கூறுகிறது. எனக்கும் இது சரியாகவே படுகிறது. நீங்கள் என்ன நினைக்கிறீர்கள்? கீழே உள்ள கருத்துப்பெட்டியில் உங்கள் பரிந்துரைகளைப் பகிர்ந்து கொள்ளுங்கள்.

நன்றி,
இரா. அசோகன்

 

%d bloggers like this: