சாப்ட்வேர் டெஸ்டிங் என்பதைப் பார்ப்பதற்கு முன்னர் ‘டெஸ்டிங்’ என்றால் என்ன என்று பார்த்து விடுவோம். ‘டெஸ்டிங்’ என்றால் என்ன? சோதிப்பது, ஆய்ந்து பார்ப்பது என்று சொல்லலாம். சோதிப்பது என்றால் எதைச் சோதிப்பது? பள்ளிக்கூடத்தில் ‘டெஸ்ட்’ (தேர்வு) என்று வைக்கிறார்கள். அங்கே என்ன சோதிக்கிறார்கள்? ஆசிரியர் கற்றுக்கொடுத்த பாடம் முழுவதும் மாணவர்களைப் போய்ச் சேர்ந்திருக்கிறதா என்று சோதிக்கிறார்கள். அந்தச் சோதனைக்கு மொத்தம் நூறு மதிப்பெண் வைத்துக்கொள்கிறார்கள். அதில் நூற்றுக்கு மாணவர்கள் எவ்வளவு மதிப்பெண் வாங்குகிறார்களோ அந்த அளவு சோதனை (டெஸ்ட்) வெற்றி என்று சொல்கிறார்கள். அப்படித் தானே!
அதாவது, மாணவர்கள் நூறு சதவீதம் படித்திருக்க வேண்டும் என்று ஆசிரியர் எதிர்பார்க்கிறார். அந்த எதிர்பார்ப்பை மாணவர்கள் எந்த அளவு நிறைவேற்றுகிறார்கள் என்பதைப் பொறுத்து 60, 70, 80 என மதிப்பெண்கள் கொடுக்கிறார். எனவே டெஸ்டிங்கின் வெற்றி, தோல்வி என்பது எந்த அளவு எதிர்பார்ப்பை நிறைவு செய்கிறோம் என்பதைப் பொறுத்து அமைகிறது. 100க்கு 100 எடுத்தால் வெற்றி!
இதே போல் தான் சாப்ட்வேர் டெஸ்டிங் என்பதும்! நீங்கள் ஒரு கணினி நிறுவனம் நடத்திக்கொண்டிருக்கிறீர்கள் என்று வைத்துக் கொள்வோம். உங்களிடம் ஒரு ஒரு வாடிக்கையாளர், “கணியம்.காம் போலவே எனக்கு ஒரு இணையத்தளம் வேண்டும்” என்று கேட்கிறார் என்று வைத்துக்கொள்ளுங்கள். நீங்களும் உடனடியாக உங்கள் நிறுவன ஊழியர்களை வைத்து இணையத்தளத்தை வடிவமைக்கத் தொடங்கி விடுவீர்கள். இந்த இணையத்தளம் வாடிக்கையாளர் கேட்ட எல்லாச் செயல்பாடுகளையும் நிறைவு செய்கிறதா – என்று வாடிக்கையாளரிடம் மென்பொருளை ஒப்படைப்பதற்கு முன்பு நன்றாகச் சோதிப்பது தான் சாப்ட்வேர் டெஸ்டிங்! வாடிக்கையாளர் விரும்பிய எல்லாவற்றையும் நிறைவு செய்தால் டெஸ்டிங் வெற்றி! இல்லையெனில் தோல்வி! அவ்வளவு தான்!
மேல் உள்ள எடுத்துக்காட்டில் நாம் ஓர் இணையத்தளத்தை எடுத்துக் கொண்டோம். பொதுவாக, சாப்ட்வேர் என்பது இணையத்தளம் மட்டுமல்லாது பயர்பாக்ஸ் போல நிறுவி இயங்கும் மென்பொருளாகவோ, அலைபேசிகளில் இயங்கும் ‘ஆப்’ செயலியாகவோ எனப் பல வகைகளில் இருக்கலாம். இவற்றில் எதுவாக இருந்தாலும், அந்த மென்பொருள் எந்த நோக்கத்திற்காக உருவாக்கப்பட்டதோ அந்த நோக்கத்தை நிறைவு செய்கிறதா என்று பார்ப்பது தான் சாப்ட்வேர் டெஸ்டிங் ஆகும்.
நாம் உருவாக்கி ஒப்படைத்த மென்பொருளில், வாடிக்கையாளர் கேட்ட எல்லாச் செயல்பாடுகளும் எதிர்பார்த்தபடி இயங்கினால், வாடிக்கையாளர் ‘நல்ல மென்பொருள்’, ‘தரமான மென்பொருள்’ என்று மற்றவர்களிடம் பரிந்துரைப்பார். தரமான மென்பொருள் மூலம் வாடிக்கையாளரும் வளர்வார். நம்முடைய வியாபாரமும் வளரும்! இப்படி ‘தரமான மென்பொருளை’ உருவாக்குவதற்குப் பயன்படுத்தும் உத்தி தான் ‘சாப்ட்வேர் டெஸ்டிங்’ ஆகும்.
சரி! ‘தரம்’ என்றால் என்ன? இரண்டாயிரம் ரூபாய்க்கு அலைபேசி வாங்குபவரும் தரமான அலைபேசி என்கிறார்! இருபதாயிரம் கொடுத்து வாங்குபவரும் தரமான அலைபேசி என்கிறார். அப்படியென்றால் ‘தரம்’ என்பதை எப்படி அளவிடுவது? தரமான மென்பொருள் என்று எப்படி வரையறுப்பது? தரம் என்பதன் அளவுகோல் விலையா? வெளித்தோற்றமா? வேறு எதுவுமா? அடுத்த பதிவில் பார்ப்போம்.