ಶುಕ್ರವಾರ, ಜನವರಿ 10, 2014

ಸಾಫ್ಟ್‌ವೇರ್ ಇಂಜಿನಿಯರಿಂಗ್

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

ಎರಡು ಸಂಖ್ಯೆಗಳನ್ನು ಕೂಡುವುದಕ್ಕೋ ಅವುಗಳ ಪೈಕಿ ದೊಡ್ಡ ಸಂಖ್ಯೆಯನ್ನು ಗುರುತಿಸುವುದಕ್ಕೋ ಪ್ರೋಗ್ರಾಮ್, ಅಂದರೆ ಕ್ರಮವಿಧಿ ಬರೆಯುವುದು ಸುಲಭದ ಕೆಲಸ. ಕೊಂಚ ತರಬೇತಿಯೊಡನೆ ಇಷ್ಟು ಕೆಲಸವನ್ನು ಯಾರು ಬೇಕಿದ್ದರೂ ಮಾಡಬಹುದು.

ಆದರೆ ಎಲ್ಲ ಕ್ರಮವಿಧಿಗಳೂ ಇಷ್ಟು ಸರಳವಾಗಿರುವುದಿಲ್ಲ. ಬ್ಯಾಂಕಿನ ಹಣಕಾಸು ವ್ಯವಹಾರಗಳನ್ನು ನಿರ್ವಹಿಸುವಾಗ, ಕಚೇರಿಯಲ್ಲಿ ಸಂಬಳ ವಿತರಿಸುವಾಗ, ಆಸ್ಪತ್ರೆಯಲ್ಲಿ ವೈದ್ಯಕೀಯ ಯಂತ್ರೋಪಕರಣಗಳನ್ನು ನಿರ್ವಹಿಸುವಾಗ, ವಿಮಾನ ಹಾರಾಟವನ್ನು ನಿಯಂತ್ರಿಸುವಾಗೆಲ್ಲ ಬಹಳ ಸಂಕೀರ್ಣವಾದ ತಂತ್ರಾಂಶಗಳು ಬಳಕೆಯಾಗುತ್ತವೆ.

ಆ ತಂತ್ರಾಂಶಗಳಲ್ಲಿ ಬಹಳ ದೊಡ್ಡ ಸಂಖ್ಯೆಯ ಕ್ರಮವಿಧಿಗಳು ಅಲ್ಪಸ್ವಲ್ಪ ತಪ್ಪಿಗೂ ಜಾಗವಿಲ್ಲದಂತೆ ಒಟ್ಟಾಗಿ ಕೆಲಸಮಾಡಬೇಕಾದ್ದು ಅನಿವಾರ್ಯ. ವಿಮಾನ ಹಾರಾಟದ ಸಂದರ್ಭದಲ್ಲಿ ಅದನ್ನು ನಿಯಂತ್ರಿಸುವ ತಂತ್ರಾಂಶವೇನಾದರೂ ತಪ್ಪುಮಾಡಿದರೆ ಪರಿಣಾಮ ಏನಾಗಬಹುದು?

ಸಾಫ್ಟ್‌ವೇರ್ ಡೆವೆಲಪ್‌ಮೆಂಟ್ (ತಂತ್ರಾಂಶ ಅಭಿವೃದ್ಧಿ) ಕೆಲಸ ಮಹತ್ವ ಪಡೆದುಕೊಳ್ಳುವುದು ಇದೇ ಕಾರಣಕ್ಕಾಗಿ. ತಂತ್ರಾಂಶ ಅಭಿವೃದ್ಧಿಯೆಂದರೆ ಕ್ರಮವಿಧಿ ರಚನೆಯಷ್ಟೇ ಅಲ್ಲ ಎನ್ನುವುದೂ ಇದರಿಂದಾಗಿಯೇ.

'ಸಾಫ್ಟ್‌ವೇರ್ ಇಂಜಿನಿಯರಿಂಗ್'ನ ಪರಿಕಲ್ಪನೆ ಹುಟ್ಟುವುದೇ ಇಲ್ಲಿ.
ಇದು ತಂತ್ರಾಂಶ ಅಭಿವೃದ್ಧಿಯನ್ನು ಪ್ರೋಗ್ರಾಮಿಂಗ್‌ಗಷ್ಟೇ ಸೀಮಿತವಾಗಿ ನೋಡದೆ ಅದನ್ನೊಂದು ಕ್ರಮಬದ್ಧ ಪ್ರಕ್ರಿಯೆಯಾಗಿ ರೂಪಿಸಲು ನೆರವಾಗುತ್ತದೆ.

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

ತಂತ್ರಾಂಶದ ಉದ್ದೇಶವನ್ನು ನಿಖರವಾಗಿ ಗುರುತಿಸಿ ವಿಶ್ಲೇಷಿಸುವುದು (ರಿಕ್ವೈರ್‌ಮೆಂಟ್ಸ್ ಅನಾಲಿಸಿಸ್) ಇಲ್ಲಿನ ಮೊದಲ ಹೆಜ್ಜೆ. ತಂತ್ರಾಂಶದಲ್ಲಿರಬೇಕಾದ ಸೌಲಭ್ಯಗಳು ಹಾಗೂ ಅದು ಕೆಲಸಮಾಡಬೇಕಾದ ವಿಧಾನವನ್ನು ಬಳಕೆದಾರರೊಡನೆ ಚರ್ಚೆಯ ನಂತರ ಈ ಹಂತದಲ್ಲಿ ಅಂತಿಮಗೊಳಿಸಲಾಗುತ್ತದೆ. ಈ ವಿಚಾರವಿನಿಮಯ ಪರಿಣಾಮಕಾರಿಯಾಗಿ ನಡೆದಷ್ಟೂ ಬಳಕೆದಾರ ಹಾಗೂ ತಂತ್ರಜ್ಞರಿಬ್ಬರಲ್ಲೂ ಹೊಸ ತಂತ್ರಾಂಶದ ಕುರಿತು ಸ್ಪಷ್ಟ ಚಿತ್ರಣ ಮೂಡಬಲ್ಲದು.

ತಂತ್ರಾಂಶದ ಉದ್ದೇಶ ಸ್ಪಷ್ಟವಾದ ನಂತರ ಅದನ್ನು ರೂಪಿಸಲು ಅಗತ್ಯವಾದ ವಿನ್ಯಾಸವನ್ನು (ಡಿಸೈನ್) ಸಿದ್ಧಪಡಿಸಲಾಗುತ್ತದೆ. ತಂತ್ರಾಂಶದಲ್ಲಿ ಬಳಕೆಯಾಗುವ ವಿವಿಧ ಕ್ರಮವಿಧಿಗಳು, ಅವುಗಳ ಸ್ವರೂಪ ಹಾಗೂ ತಾಂತ್ರಿಕ ವಿವರಗಳೆಲ್ಲ ಅಂತಿಮಗೊಳ್ಳುವುದು ಈ ಹಂತದಲ್ಲಿ.

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

ಕ್ರಮವಿಧಿ ರಚನೆಯ ನಂತರದ ಹೆಜ್ಜೆ ಅದನ್ನು ಸೂಕ್ತವಾಗಿ ಪರೀಕ್ಷಿಸುವುದು (ಟೆಸ್ಟಿಂಗ್). ಕ್ರಮವಿಧಿಯಲ್ಲಿ ಇರಬಹುದಾದ ತಪ್ಪುಗಳನ್ನು ಸೂಕ್ತ ಸಮಯದಲ್ಲಿ ಪತ್ತೆಹಚ್ಚಿ ಸರಿಪಡಿಸುವಂತೆ ಈ ಹಂತದಲ್ಲಿ ಎಚ್ಚರವಹಿಸಲಾಗುತ್ತದೆ.

ಪ್ರತ್ಯೇಕ ಕ್ರಮವಿಧಿಗಳಷ್ಟೇ ಅಲ್ಲ, ತಂತ್ರಾಂಶವನ್ನು ಬಳಕೆದಾರರಿಗೆ ನೀಡುವ ಮುನ್ನ ಅದರ ಅಂಗವಾದ ಎಲ್ಲ ಕ್ರಮವಿಧಿಗಳ ಒಟ್ಟಾರೆ ಕಾರ್ಯಾಚರಣೆಯನ್ನೂ ಸೂಕ್ತವಾಗಿ ಪರೀಕ್ಷಿಸಲಾಗುತ್ತದೆ. ಸಿದ್ಧವಾಗಿರುವ ತಂತ್ರಾಂಶ ಅಗತ್ಯಗಳಿಗೆ ಅನುಗುಣವಾಗಿದೆಯೋ ಇಲ್ಲವೋ, ಅದರಲ್ಲಿ ಏನಾದರೂ ತಪ್ಪು ಗಳಿವೆಯೇ, ಬೇರೆಬೇರೆ ಪರಿಸ್ಥಿತಿಗಳಲ್ಲಿ ಅದು ಹೇಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ, ಅದರ ಕಾರ್ಯಕ್ಷಮತೆ ಎಷ್ಟಿದೆ ಮುಂತಾದ ವಿಷಯ ಗಳನ್ನೆಲ್ಲ ಈ ಹಂತದಲ್ಲಿ ಪರೀಕ್ಷಿಸಿ ಅಗತ್ಯವಾದ ಬದಲಾವಣೆಗಳನ್ನು ಮಾಡಿಕೊಳ್ಳಲಾಗುತ್ತದೆ. ಹಾಂ, ಅಂತಹ ಪ್ರತಿ ಬದಲಾವಣೆಯ ನಂತರವೂ ಪರೀಕ್ಷೆಯ ಈ ಹಂತ ಪುನರಾವರ್ತನೆಯಾಗುತ್ತದೆ.

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

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

ಕಾಮೆಂಟ್‌ಗಳಿಲ್ಲ:

badge