சாப்ட்வேர் டெஸ்டிங் – திட்டமிடல்
வாடிக்கையாளர் தேவைகள் பற்றிப் போதுமான விவரங்களைச் சேர்த்த பிறகு, மென்பொருள் நிறுவனம் செய்ய வேண்டிய அடுத்த வேலை – வேலையைத் திட்டமிடுவது.
திட்டமிடல் என்றால் என்ன?
எளிதான விசயம் தான்!
1) யார் யார் என்னென்ன வேலை செய்வது?
2) எப்போது செய்வது?
3) எப்படிச் செய்வது?
என்று திட்டமிடுவதைத் தான் திட்டமிடல் (‘Planning’) என்று சொல்கிறார்கள்.
இதில் யார் யார் என்னென்ன வேலையைச் செய்வது, என்று திட்டமிடும் போது ஊழியர் ஒவ்வொருவருக்கும் இருக்கும் திறமைகள் என்னென்ன, அவர்களுடைய பலம் என்ன, பலவீனம் என்ன, என்பதைத் தெரிந்து திட்டமிட வேண்டும். இது மட்டுமல்லாது
ஊழியர்களுக்கு ஏதாவது தொழில்நுட்பப் பயிற்சி தேவைப்படுகிறதா, வேலை செய்யத் தேவையான மென்பொருட்கள் அனைத்தும் நிறுவனத்திடம் இருக்கிறதா என்பதையும் சேர்த்துத் திட்டமிட வேண்டும்.
எடுத்துக்காட்டாக, நீங்கள் ‘ஆண்டிராய்டு‘ செயலி ஒன்றைச் சோதிக்கப் போகிறீர்கள் என்றால், அந்தச் செயலியை உருவாக்க,
1) உருவாக்குநர் (டெவலப்பர்) அணிக்குப் போதிய பயிற்சியும் அனுபவமும் உள்ளனவா?
2) டெஸ்டர்களுக்கு அனுபவமும் பயிற்சியும் உள்ளனவா?
அப்படிப் பயிற்சி தேவையெனில் எத்தனை நாட்கள் பயிற்சிக்குத் தேவைப்படும்? அதற்கான பயிற்சியாளர்களை வெளியில் இருந்து அழைத்து வர வேண்டுமா? நிறுவனத்தில் ஏற்கெனவே இருக்கும் பயிற்சியாளர்களும் பயிற்சிகளும் போதுமா?
3) ஆண்டிராய்டு செயலியைச் சோதிக்கத் தேவையான சூழல் நிறுவனத்திடம் உள்ளதா?
4) தானியங்கிச் சோதனை (ஆட்டோமேசன் டெஸ்டிங்) தேவையெனில் அதற்கான திறமையும் அனுபவமும் டெஸ்டர்களுக்கு இருக்கிறதா? ஆட்டோமேசனுக்குத் தேவையான மென்பொருட்கள் ஏற்கெனவே இருக்கின்றனவா?
5) வாடிக்கையாளர் விரும்பும் நேரத்தில், மென்பொருளை உருவாக்கிச் சோதித்து விட முடியுமா? முடியாதா? அப்படி முடியாது என்றால், இப்போதே இன்னும் சில உறுப்பினர்களை அணியில் சேர்த்துக் கொள்ளலாமா? அவர்களுக்கு யார் பயிற்சியளிப்பது?
என்பன முக்கியமான கேள்விகள் ஆகும். இந்தக் கேள்விகளுக்குத் தயாராவதே திட்டமிடல் ஆகும். பொதுவாகத் திட்டமிடலில் நாம் பார்த்த எல்லாக் கேள்விகளுக்கும் சரியான பதிலை அணியின் தலைமைப் பொறுப்பில் இருக்கும் ஒருவரால் தான் சொல்ல முடியும். அவருக்குத் தான் அணி உறுப்பினர்கள் ஒவ்வொருவரின் பலம், பலவீனம், அணிக்குத் தேவைப்படும் பயிற்சிகள் ஆகியன பற்றிய விவரங்கள் தெரியும். எனவே, சாப்ட்வேர் டெவலப்மென்டின் இந்தக் கட்டத்தில் அணித்தலைவர் போதுமான விவரங்களைச் சேர்த்து திட்டமிடல் ஆவணத்தை உருவாக்குவார்.
மேல் சொன்ன விவரங்களுடன், இந்தத் திட்டமிடல் ஆவணத்தில் ‘டெஸ்ட் ஸ்டிராடஜி‘ (சோதனை உத்தி) (Test Strategy) ஏதேனும் இருந்தால் அதுவும் சேர்க்கப்படும். இதென்ன புதிதாக இருக்கிறது? சோதனை திட்டம் புரிகிறது! சோதனை உத்தி என்றால் என்ன என்று கேட்கிறீர்களா? பார்த்து விடுவோம்!
சோதனை திட்டம் என்பது, யார், என்ன, எப்போது, எப்படி வேலை செய்யப் போகிறார்கள் என்று மொத்தத் திட்டப்பணிக்கும் சேர்த்துச் சொல்வது ஆகும்.
சோதனை உத்தி:
ஓர் எடுத்துக்காட்டு பார்ப்போம்! நீங்கள் மட்டைப்பந்து அணிக்குத் (கிரிக்கெட் தான்!) தலைவர் என்று வைத்துக் கொள்ளுங்கள். உங்கள் அணியில் எந்தெந்த வீரர்களுக்குப் பயிற்சி கொடுக்க வேண்டும், யார் யாருக்கு பேட்டிங் பயிற்சி, யார் யாருக்கு பெளலிங் பயிற்சி, எங்கே பயிற்சி எடுக்க வேண்டும், எப்போது எடுக்க வேண்டும் என்பன பற்றியெல்லாம் திட்டமிட்டு ஆவணத்தை உருவாக்கினால் அது திட்ட ஆவணம் ஆகிறது.
அதே நேரத்தில், எதிரணியின் முக்கியமான வீரர் ஒருவரை வீழ்த்த என்ன செய்ய வேண்டும்?, யார் பந்து வீச வேண்டும், மைதானத்தில் எந்தெந்த இடத்தில் யார் யாரை நிறுத்த வேண்டும் என்று முடிவு செய்வது பற்றிப் பேசினால் அதற்குப் பெயர் உத்தி ஆகும். திட்டத்திற்கும் உத்திக்கும் உள்ள வேறுபாடு புரிகிறதா? உத்தி என்பது, ஒரு குறிப்பிட்ட வேலையை எப்படிச் செய்வது என்று பார்ப்பது ஆகும்.
இங்கே நாம் சோதனை உத்தி (‘டெஸ்டிங் ஸ்டிராடஜி‘) பற்றிப் பேசினால் திட்டப்பணியின் முக்கியமான தேவைகளை எல்லாம் எப்படிச் சோதிக்கப் போகிறோம் என்று பார்ப்பது ஆகும். திட்டப்பணியைப் பற்றி நன்கு தெரிந்து வைத்திருக்கும் அணித்தலைவரோ மூத்த உறுப்பினர்களுள் யாரோ ஒருவரோ இந்த ஆவணத்தை உருவாக்குவார்கள்.
சோதனை உத்தி ஆவணத்தில் என்னென்ன இருக்கும்?
இந்த ஆவணத்தில் உத்தியின் நோக்கம் என்ன, அதை எப்படிச் செய்யப் போகிறோம், அதற்குத் தேவைப்படும் சூழல் என்ன (சூழல் என்பது என்னென்ன மென்பொருட்கள் தேவைப்படும், என்னென்ன வன்பொருட்கள் தேவைப்படும் ஆகியன பற்றியது), உத்தியைக் கையாண்டு சோதிக்க எத்தனை நாட்கள் ஆகும் என்பது போன்ற விவரங்கள் அடங்கியிருக்கும்.
இப்போது சோதனைக்கான திட்டமும் கையில் இருக்கிறது, சோதனை உத்திக்கான வழிமுறைகளும் கையில் இருக்கின்றன. அப்படியானால் சோதிக்கத் (டெஸ்டிங்) தொடங்கி விடலாமா? என்று கேட்கிறீர்களா? டெஸ்டிங்கைத் தொடங்குவதற்கு முன்னர் முதன்மையான ஒரு வேலை மீதியிருக்கிறது. அது என்ன? என்று அடுத்த பதிவில் பார்ப்போம்.
– முத்து (muthu@payilagam.com )