අද ලිපියෙන් විස්තර කරන්න යන්නේ විශේෂයෙන්ම DevOps කෙනෙක් වශයෙන් දැනගත යුතු සාමාන්ය , නමුත් අනිවාර්ය කාරණා කීපයක්. DevOps කෙනෙක්ට විතරක්ම නෙමෙයි ඕනෑම developer කෙනෙක් වුනත් මේ දේවල් දැනගෙන ඉඳීම වටිනවා.
Code quality
මුලින්ම කතා කරන්න යන්නේ කොහොමද Code quality එක හරියටම අපි දැනගන්නේ කියලා. Developer කෙනෙක්ට තමන්ගේ code එක නිවැරදි විදියට වැඩ කරන සහ high quality එකකින් තියෙනවා කියලා කියන්න හැකියාව තිබෙනව්. නමුත් මේ quality එක වෙනස් වෙනස් කාරණා මත depend වෙනවා නිතරම. automotive developer කෙනෙක්ට හිග්හ් quality code එකක් web application developer කෙනෙක්ට quality නොවෙන්න පුළුවන්. කොහොම වුනත් Code quality එක වැදගත් වෙන්නේ මුළු software එකේම quality එක මේ මත depend වෙන නිසයි. “Software Defect Origins and Removal Methods” කියන study එකට අනුව individual programmer කෙනෙක් තමන්ගේ code එකේ bugs සොයාගැනීමට ඇති හැකියාව 50% ටත් වඩා අඩු වෙනවා වගේම විවිධ ආකාරයෙන් testing සිදු කලත් ඒවායේ කාර්යක්ෂමතාව 35% ක් වගේ ප්රමාණයක් වෙනවා. මෙන්න මේ කාරණා නිසා වඩාත් නිවැරදිව Code quality එක දැනගන්නේ කොහොමද කියලා අපි අවධානය යොමු කල යුතු වෙනවා. විශේෂ සාධක 5ක් සැලකිල්ලට ගැනීමෙන් අපට මේ ගැටලුව එහෙම නැත්නම් High Code quality එකක් ගොඩනගා ගත හැකිවෙනවා.
විශ්වසනීයත්වය-Reliability
යම්කිසි කාල සීමාවක් පුරාවට failures වලින් තොරව software එකකට නිසියාකාරයෙන් ක්රියාත්මක වීමට ඇති හැකියාව මෙහිදී අපට දැනගැනීමට හැකිවෙනවා. යම් යම් බිඳවැටීම් සිදුවුවහොත් ඒ පිලිබඳ විස්තර static analysis tool එකක් මගින් දැනගැනීමට හැකියාව තිබෙනවා.
නඩත්තු කිරීමේ හැකියාව – Maintainability
මෙහිදී අදහස් වෙන්නේ කොයිතරම් පහසුවෙන් software එක නඩත්තු කල හැකිද යන කාරණාවයි. නඩත්තු කිරීම් වශයෙන් සැලකිය යුතු කාරණා කිහිපයක්ම අඩංගු වෙනවා.codebase size එක, structure එක සහ එහි සංකීර්ණත්වය,වගේම source code එකෙහි testability එක සහ understandability එකත් මේ අතරට ඇතුලත් වෙනවා. Human reviewers වගේම automations මගින් maintainable codebases එකක් ගොඩනගා ගැනීමට හැකියාව තිබෙනවා.
පරීක්ෂා කිරීමේ හැකියාව- Testability
ඕනෑම software එකක් නිවැරදිව test කිරීමේ හැකියාවක් අනිවාර්යෙන්ම තිබිය යුතු වෙනවා.software components automate කිරීමේ හැකියාව වගේම වෙන් වෙන් වශයෙන් test කිරීමේ හැකියාව තිබිය යුතු වෙනවා. මෙහිදී යම් වෙනසක් එහෙම නැත්නම් වැරදීමක් සොයාගැනීමට කොතරම් test cases ප්රමාණයක් අවශ්ය වෙනවාද යන්න මෙහිදී සැලකිල්ලට ගනු ලබන ප්රධාන කාරණාවක් වෙනවා.
Portability
වෙනස් environments වලදී භාවිතා කිරීමට ඇති හැකියාව මෙහිදී සැලකිල්ලට ගනු ලබන අතර උදාහරණ වශයෙන් වෙනස් platforms වල අදාළ software එක නිවැරදිව ක්රියාත්මක විය යුතු වෙනවා.
නැවත භාවිතා කිරීමේ හැකියාව – Reusability
යම්කිසි task එකක් සඳහා නිර්මාණය කෙරුණු code එක එවැනිම තවත් software එකකට නැවත භාවිතා කිරීමේ හැකියාව තිබිය යුතු වෙනවා. ,මෙමගින් කාලය සහ ශ්රමය ඉතිරි වීම සිදුවෙන අතර code quality එක වැඩිකරගැනීමට හැකියාව ලැබෙනවා.