ಶುಕ್ರವಾರ, ಮೇ 9, 2014

ಪರ್‌ಫಾರ್ಮೆನ್ಸ್ ಇಂಜಿನಿಯರಿಂಗ್

ಟಿ. ಜಿ. ಶ್ರೀನಿಧಿ

ಯಾವುದೇ ತಂತ್ರಾಂಶದ ಉದ್ದೇಶವೇನು ಎಂದು ಕೇಳಿದರೆ "ಆ ತಂತ್ರಾಂಶವನ್ನು ಯಾವ ಕೆಲಸಕ್ಕೆಂದು ತಯಾರಿಸಲಾಗಿದೆಯೋ ಆ ಕೆಲಸವನ್ನು ಮಾಡುವುದು" ಎನ್ನಬಹುದೆ?

ಈ ಪ್ರಶ್ನೆಗೆ ಉತ್ತರವಾಗಿ "ಹೌದು ಮತ್ತು ಇಲ್ಲ" ಎಂದು ಹೇಳಬಹುದು. "ಹೌದು" ಏಕೆಂದರೆ ತಂತ್ರಾಂಶವನ್ನು ಯಾವ ಕೆಲಸಕ್ಕೆಂದು ತಯಾರಿಸಲಾಗಿದೆಯೋ ಆ ಕೆಲಸವನ್ನು ಮಾಡುವುದು ಅದರ ಮುಖ್ಯ ಉದ್ದೇಶ. "ಇಲ್ಲ" ಏಕೆಂದರೆ ತಂತ್ರಾಂಶದ ಉದ್ದೇಶ ಇಷ್ಟು ಮಾತ್ರವೇ ಅಲ್ಲ.

ಹಾಗಾದರೆ ತಂತ್ರಾಂಶಗಳು ಇನ್ನೇನೆಲ್ಲ ಮಾಡಬೇಕು?

ಒಂದು ಉದಾಹರಣೆ ನೋಡೋಣ. ನಿಮ್ಮ ಖಾತೆಯಲ್ಲಿ ಹಣವಿದೆಯೋ ಇಲ್ಲವೋ ಪರಿಶೀಲಿಸಿ, ನೀವು ಕೇಳಿದಷ್ಟು ಹಣ ಇದ್ದರೆ ಅದನ್ನು ನಿಮಗೆ ಕೊಟ್ಟು ನಿಮ್ಮ ಖಾತೆಯಿಂದ ಅಷ್ಟು ಮೊತ್ತವನ್ನು ಕಳೆಯುವುದು ಬ್ಯಾಂಕಿನ ಎಟಿಎಂನಲ್ಲಿರುವ ತಂತ್ರಾಂಶದ ಕೆಲಸ ನಿಜ. ಆದರೆ ಇದಿಷ್ಟು ಕೆಲಸವನ್ನು ಮುಗಿಸಲು ಆ ತಂತ್ರಾಂಶ ಮೂವತ್ತು ಸೆಕೆಂಡಿನ ಬದಲು ಮೂವತ್ತು ನಿಮಿಷ ತೆಗೆದುಕೊಂಡರೆ? ನಿಮ್ಮ ಪಿನ್ ಸಂಖ್ಯೆ ತಪ್ಪು ಎಂದು ಹೇಳಲು ಐದು ನಿಮಿಷ ಕಾಯಿಸಿದರೆ?

ಮೂವತ್ತು ಸೆಕೆಂಡೋ ಮೂವತ್ತು ನಿಮಿಷವೋ, ಅದು ಮಾಡಬೇಕಾದ ಕೆಲಸ ಮಾಡುತ್ತಿದೆಯಲ್ಲ ಎನ್ನಲು ಸಾಧ್ಯವೇ?

ಖಂಡಿತಾ ಇಲ್ಲ. ತಂತ್ರಾಂಶ ಯಾವ ಕೆಲಸಕ್ಕೆಂದು ತಯಾರಾಗಿದೆಯೋ ಆ ಕೆಲಸವನ್ನು ಮಾಡುವಷ್ಟೇ ಮುಖ್ಯವಾದದ್ದು ಆ ಕೆಲಸವನ್ನು ಸಮರ್ಥವಾಗಿ ನಿಭಾಯಿಸುವುದು.ಎಟಿಎಂನಿಂದ ಹಣ ತೆಗೆಯಲು ಮೂವತ್ತು ನಿಮಿಷ ಕಾಯುವ ಗ್ರಾಹಕನಿಗಿಂತ ಮೂವತ್ತು ಸೆಕೆಂಡುಗಳಲ್ಲಿ ದುಡ್ಡು ಪಡೆದುಕೊಳ್ಳುವ ಗ್ರಾಹಕನ ಸಂತೋಷವೇ ದೊಡ್ಡದು ತಾನೆ?

ತಂತ್ರಾಂಶ ತನ್ನ ಕೆಲಸವನ್ನು ನಿರ್ವಹಿಸುವ ಸಾಮರ್ಥ್ಯ, ಅಂದರೆ 'ಪರ್‌ಫಾರ್ಮೆನ್ಸ್'ಗೆ ಪ್ರಾಮುಖ್ಯ ಸಿಗುವುದೇ ಈ ಕಾರಣದಿಂದಾಗಿ.

ತನ್ನ ಕೆಲಸವನ್ನು ಸರಿಯಾಗಿ, ಸಮರ್ಥವಾಗಿ ನಿರ್ವಹಿಸುವಂತಹ ತಂತ್ರಾಂಶವನ್ನು ರೂಪಿಸಲು ಪರ್‌ಫಾರ್ಮೆನ್ಸ್ ಇಂಜಿನಿಯರಿಂಗ್ ನಮಗೆ ನೆರವಾಗುತ್ತದೆ. ತಂತ್ರಾಂಶ ಬಳಕೆದಾರರ ಅಗತ್ಯಗಳನ್ನು ಪೂರೈಸುವುದರ ಜೊತೆಗೆ ಉನ್ನತ ಮಟ್ಟದ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನೂ ಹೊಂದಿರಬೇಕು, ಮಾಡುವ ಕೆಲಸವನ್ನು ಆದಷ್ಟೂ ಬೇಗನೆ - ತಪ್ಪುಗಳಿಗೆ ಆಸ್ಪದವಿಲ್ಲದಂತೆ ಮಾಡಿ ಮುಗಿಸಬೇಕು ಎನ್ನುವುದು ಪರ್‌ಫಾರ್ಮೆನ್ಸ್ ಇಂಜಿನಿಯರಿಂಗ್ ಪರಿಕಲ್ಪನೆಯ ಆಶಯ.

ತಂತ್ರಾಂಶದ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಹೆಚ್ಚಿಸುವ ಕೆಲಸ ತಂತ್ರಾಂಶ ಅಭಿವೃದ್ಧಿಯ ಪ್ರತಿ ಹಂತದಲ್ಲೂ ಆಗಬೇಕಾಗುತ್ತದೆ. ತಂತ್ರಾಂಶ ಯಾವ ಹೆಜ್ಜೆಯಲ್ಲಿ ಏನು ಕೆಲಸ ಮಾಡಬೇಕು ಎಂದು ತೀರ್ಮಾನವಾಗುವ ಸಂದರ್ಭದಲ್ಲೇ ಆ ಕೆಲಸಕ್ಕೆ ಎಷ್ಟು ಸಮಯ ತೆಗೆದುಕೊಳ್ಳಬಹುದು ಎನ್ನುವುದನ್ನೂ ಅಂದಾಜಿಸಿಕೊಳ್ಳುವುದು ಒಳ್ಳೆಯದು. ಬಳಕೆದಾರರಿಂದ ತಪ್ಪುಗಳಾದ ಸಂದರ್ಭದಲ್ಲಿ (ಉದಾ: ಎಟಿಎಂನಲ್ಲಿ ತಪ್ಪು ಪಿನ್ ನಮೂದಿಸುವಿಕೆ) ತಕ್ಷಣವೇ ಅವರಿಗೆ ಆ ಬಗ್ಗೆ ಮಾಹಿತಿ ನೀಡುವುದು ಒಂದು ಭಾಗವಾದರೆ ಸರಿಯಾಗಿ ಕೆಲಸನಿರ್ವಹಿಸುವಾಗಲೂ ನಿರ್ದಿಷ್ಟ ಕಾಲಮಿತಿಗಳನ್ನು ಅಳವಡಿಸಿಕೊಳ್ಳುವುದು ಇನ್ನೊಂದು ಭಾಗ. ಇವೆಲ್ಲ ನಿಬಂಧನೆಗಳಿಗೆ ಅನುಗುಣವಾಗಿ ತಂತ್ರಾಂಶ ಕೆಲಸಮಾಡಬೇಕಾದರೆ, ಸಹಜವಾಗಿಯೇ, ತಂತ್ರಾಂಶ ರಚನೆಯಲ್ಲಿ ನಾವು ಎಲ್ಲ ಎಚ್ಚರಿಕೆಯನ್ನೂ ವಹಿಸಬೇಕಾಗುತ್ತದೆ.



ಇಂತಹ ಕ್ರಮಗಳನ್ನೆಲ್ಲ ಕೈಗೊಳ್ಳುವ ಮೂಲಕ ತಂತ್ರಾಂಶದ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಉನ್ನತ ಮಟ್ಟಕ್ಕೆ ಒಯ್ಯುವುದರ ಪರಿಣಾಮ ಬಳಕೆದಾರರ ಸಂತೋಷವಷ್ಟೇ ಅಲ್ಲ. ಉನ್ನತ ಕಾರ್ಯಕ್ಷಮತೆಯ ತಂತ್ರಾಂಶಗಳ ಮೂಲಕ ಬಳಕೆದಾರರ ಉತ್ಪಾದಕತೆಯೂ (ಪ್ರೊಡಕ್ಟಿವಿಟಿ) ಹೆಚ್ಚುತ್ತದೆ. ತಂತ್ರಾಂಶದ ಕಾರ್ಯಕ್ಷಮತೆ ಉತ್ತಮವಾಗಿರುವುದರಿಂದ ಅದರ ಕಾರ್ಯಾಚರಣೆಯಲ್ಲಿ ವೈಫಲ್ಯಗಳು ಕಡಿಮೆಯಾಗುತ್ತವೆ, ತಂತ್ರಾಂಶ ಅಭಿವೃದ್ಧಿಪಡಿಸಿದ ತಂಡ ಆ ತಂತ್ರಾಂಶವನ್ನು ಪದೇಪದೇ ಬದಲಿಸಬೇಕಾದ ಅಗತ್ಯವೂ ತಪ್ಪುತ್ತದೆ. ತಂತ್ರಾಂಶದ ವಿನ್ಯಾಸವನ್ನು ಸಮರ್ಪಕವಾಗಿ ರೂಪಿಸಿರುವುದರಿಂದ ತಂತ್ರಾಂಶದ ಕೊರತೆಗಳನ್ನು ಮರೆಮಾಚಲು ಹೆಚ್ಚು ಸಾಮರ್ಥ್ಯದ ಯಂತ್ರಾಂಶಗಳನ್ನು ಕೊಳ್ಳುವ ಅಗತ್ಯವೂ ಬರುವುದಿಲ್ಲ.

ತಂತ್ರಾಂಶದ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಟೆಸ್ಟಿಂಗ್ ಸಂದರ್ಭದಲ್ಲಿ ಸಮಗ್ರವಾಗಿ ಪರೀಕ್ಷಿಸುವುದು ಇನ್ನೊಂದು ಉತ್ತಮ ಅಭ್ಯಾಸ. ಪರ್‌ಫಾರ್ಮೆನ್ಸ್ ಟೆಸ್ಟಿಂಗ್ ಎಂದು ಕರೆಸಿಕೊಳ್ಳುವ ಈ ಹೆಜ್ಜೆ ವಿವಿಧ ಸನ್ನಿವೇಶಗಳಲ್ಲಿ ತಂತ್ರಾಂಶದ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಗುರುತಿಸಿ ಅಗತ್ಯ ಬದಲಾವಣೆಗಳನ್ನು ಮಾಡಿಕೊಳ್ಳಲು ನೆರವಾಗುತ್ತದೆ.

ಮೇ ೯, ೨೦೧೪ರ ಉದಯವಾಣಿಯಲ್ಲಿ ಪ್ರಕಟವಾದ ಲೇಖನ

1 ಕಾಮೆಂಟ್‌:

Judgmentsinbuletpoints ಹೇಳಿದರು...

ನಿಮ್ಮ ಬ್ಲಾಗ್ನಲ್ಲಿ English to Kannada ಮತ್ತು Kannada to English ಕರಾರು ವಕ್ಕಾದ ವಾಕ್ಯ ರಚನೆ ಸ್ಪಷ್ಟವಾಗಿ ಬರುವಂತೆ ಒಂದು ತಂತ್ರಾಂಶವನ್ನು ಅಳವಡಿಸಿದರೆ ಒಳಿತು ಇದರಿಂದ ಕನ್ನಡಿಗರಾದ ನಮಗೆ ಕೊಂಚ ಸಮಾಧಾನ ಸಿಗಬಹುದು ಅಲ್ಲವೆ? ಇದು ಬಹಳಷ್ಟು ಸರ್ಕಾರಿ ಕಛೇರಿಗಳಿಗೆ ಅನುಕೂಲವಾಗಬಹುದು! ಇಲ್ಲಿ English ಅಥವಾ Kannada ವಾಕ್ಯಗಳನ್ನು Copy paste ಮಾಡುವ ಮತ್ತು ನೇರವಾಗಿ ಬೆರಳಚ್ಚಿಸುವ ಅವಕಾಶ ಇರಬೇಕು.

badge