Featured Post

Ascii Code

මෙහි A අකුර සදහා දහයේ පාදයේ අගය 65 ද a සදහා දහයේ පාදයේ අගය 97 දවේ අනෙක් අක්ෂර අනුපිළිවෙලකට කියවයි.

තොරතුරු පද්ධති(Information system) 2


ව්‍යුහගත පද්ධති විශ්ලේෂණය හා නිර්මාණ ක්‍රමවේදය 

(Structured System Analysis & Design Methodology - SSADM) 

ක්‍රියා නැබුරු ආකාරයට පද්ධතියක් ගොඩනැගීම සදහා භාවිතා කල හැකි සාම්ප්‍රදායික ක්‍රමවේදයක් ලෙස SSADM ක්‍රමය හදුන්වා දිය හැකිය. මෙම ක්‍රමවේදයට අනුව SRS වාර්තාවේ අඩංගු කිසියම් වූ ක්‍රියාවක් ග්‍රෆිකයක් ආකාරයට සැලසුම් කිරීමට ඔබට ඉඩ හසර ලබා දෙයි. මෙම ක්‍රියාවලිය තවදුරටත් පැහැදිලි කලහොත්, මුල් පියවර වශයෙන් පද්ධති විශ්ලේෂණයේදී පද්ධතියේ වූ ප්‍රධාන ක්‍රියාවන් ( High level functions) වියෝජනය කිරීමෙන් සවිස්තරාත්මක ආකාරයකට ඒවා ඉදිරිපත් කරන අතර අනතුරුව මෙම සවිස්තරාත්මක ක්‍රියාවන් දෙවනුව මොඩියුල ආකෘතීන්ට අනුරූපණය කරනු ලබයි. මෙම සමස්ත ක්‍රියාව ටොප් ඩවුන් වියෝජනය (Top-Down decomposition) ලෙස හදුන්වයි. SSADM ක්‍රමය ව්‍යාපෘතියේ ශක්‍යතා අධ්‍යනයේ සිට භෞතික පද්ධතිය නිර්මාණය වීම දක්වා එක අවධියකින් අනිකට ගලා යන ස්වරූපයෙන් සංවිධානය වී පවතියි. එබැවින් මෙය භාවිතයෙන් තොරතුරු පද්ධතියක් නිර්මාණය කිරීම දිය ඇලි ආකෘතියට සම කල හැකිය.  
SSADM හි අරමුණු

අපි මීලගට SSADM ක්‍රමයේ ඇති අරමුණු හදුනා ගැනීමට උත්සහ දරමු. එය අපට මෙම ක්‍රමයේ ඇති වැදගත්කම අවබෝධ කර ගැනීමට උපකාර වෙයි.
  • ව්‍යාපෘතියක කළමනාකරණය හා පාලනය වැඩි දියුණු කිරීම.
  • පුහුණු හා නුපුහුණු කර්ර්ය මණ්ඩලයෙන් උපරිම ප්‍රයෝජන ලබා ගැනීම.
  • තත්වයෙන් උසස් තොරතුරු පද්ධති ගොඩ නැගීම.
  • කාර්යය මණ්ඩලයේ අඩු වීමක් සිදු වුනත් ව්‍යාපෘතිය අඛණ්ඩව කරගෙන යාමට හැකි වීම.
  • ව්‍යාපෘතිය සදහා පරිගණකය ආශ්‍රිත මෘදුකාංග ඉංජිනේරු පද්ධති වැනි පරිගණක පාදක මෙවලම් භාවිතයට ගැනීමට හැකි වීම.
  • ව්‍යාපෘතියට සම්බන්ධ පිරිස අතර මනා සම්බන්ධතාවක් ගොඩනැගීමට හැකි වීම.

මීලගට SSADM ක්‍රමයේ පොදු පියවර හදුනා ගනිමු.


SSADM ක්‍රමයේ පොදු පියවර

  • ශක්‍යතාව පරීක්ෂා කිරීම - ව්‍යාපෘතිය නිර්මාණය කිරීම සදහා වූ ශක්‍යතාව අධ්‍යනය කරනු ලබයි.
  • පවතින පරිසර තත්වයන් ගවේෂණය කිරීම. - වත්මන් ආර්ථික, තාක්ෂණික හා මානව සම්පත් වල ක්‍රියාකාරීත්වයන්, බලපෑම් හා සීමා පිලිබදව අධ්‍යනය කරයි. 
  • විකල්ප ව්‍යාපාර පද්ධති ගොඩ නැගීම - ගැටළු අවම කිරීමට හෝ පවත්නා පද්ධතියක් කාර්යක්ෂම කල හැකි වෙනත් ව්‍යාපාර විධි සොයා බලයි. 
  • අවශ්‍යතා නිර්වචනය කිරීම - අවශ්‍යතා නිවැරදිව හදුනා ගනියි.
  • විකල්ප තාක්ෂණික පද්ධති ගොඩ නැගීම. - ගැටළු අවම කිරීමට හෝ පවත්නා පද්ධතියක් කාර්යක්ෂම කල හැකි වෙනත් තාක්ෂණික ක්‍රම සොයා බලයි.
  • ආර්ථික සැලසුම් නිර්මාණය කිරීම.
  • භෞතික සැලසුම් නිර්මාණය කිරීම.

ඉහත සදහන් වන පොදු පියවර වලට අමතරව SSADM ක්‍රමයේදී ව්‍යුහගත විශ්ලේෂණය (Structured Analysis) හා ව්‍යුහගත නිර්මාණය (Structured Design) ලෙස ප්‍රධාන අවධි දෙකක් හදුනා ගත හැකිය. ව්‍යුහගත විශ්ලේෂණයේදී ක්‍රියා වියෝජනයත් ව්‍යුහගත නිර්මාණයේදී මොඩියුල ආකෘති ගොඩනැගීමත් සිදු කරනු ලබයි.
ව්‍යුහගත විශ්ලේෂණයේදී කලින් සදහන් කල පරිදි සමස්ත පද්ධතිය ඉහල සිට පහලට වියෝජනය සිදු කරන අතර මෙහිදී පද්ධතියේ වූ ක්‍රියා (Functions) පැහැදිලිව එකිනෙකින් නිදහස්ව  හදුනා ගනියි. අනතුරුව මෙම හදුනා ගත් ක්‍රියාවන් රූ සටහන් ලෙස ඉදිරිපත් කිරීමට දත්ත ගැලීම් සටහන් (Data Flow Diagrams - DFD) භාවිතා කරනු ලබයි. මෙම DFD පද්ධතියේ ක්‍රියාකාරීත්වය හා සම්බන්ද අතර එය ව්‍යුහගත විශ්ලේෂණ ක්‍රියාවලියේ අවසන් ඵලය වෙයි. නිවැරදිව සකස් කරන ලද DFD සටහන් මෙම සංවර්ධන ක්‍රමවේදය ගැන අවබෝධයක් නැති සාමාන්‍ය පුද්ගලයෙකුට වුවද හදුනා ගත හැකිය. ව්‍යුහගත නිර්මාණයේදී DFD මගින් දක්වන සියලුම ක්‍රියා මොඩියුල ආකෘති වලට නැතහොත් පද්ධති නිර්මිතය (System Architecture) ගොඩනැංවීම සදහා අනුරූපණය කරයි. මෙසේ සකස් කරගනු ලබන පද්ධති නිර්මිතය පසු අවධියකදී කිසියම් වූ පරිගණක භාෂාවක් යොදා ගනිමින් ක්‍රමලේඛනය කර ගැනීමට ඍජු ලෙසම භාවිතා කල හැකිය.
මීලගට අපි දත්ත ප්‍රවාහ සටහන් / දත්ත ගැලීම් සටහන් (DFD) පිලිබදව සාකච්චා කරමු.


දත්ත ප්‍රවාහ සටහන / දත්ත ගැලීම් සටහන (DFD)



දත්ත ප්‍රවාහ සටහනක්(DFD) යනු කුමක්ද කියා ඔබ මේ වන විටත් හදුනා ගෙන හමාරය. මෙම මාතෘකාව යටතේ දත්ත ප්‍රවාහ සටහන් නිර්මාණය කරගන්නා ආකාරය පිළිබදව සවිතරාත්මකව උදාහරණ සහිතව ඉදිරිපත් කිරීමට මා බලාපොරොත්තු වෙමි. දත්ත ප්‍රවාහ සටහනක් විවිධ වූ අර්ථයන්ගෙන් සමන්විත සංඛේත වලින් නිර්මාණය වී ඇත. මුලින්ම අපි දත්ත ප්‍රවාහ සටහනක පවතින මෙම සංඛේත පිළිවදව අවධානය යොමු කරමු. දත්ත ප්‍රවාහ සටහනක පවතින මුලික සංඛේත කිහිපයක් පහත රූපසටහන් අංක 12 දක්වා ඇත.

රූපසටහන12



දැන් අපි රූපසටහන් අංක 12 දැක්වෙන එක් එක් සංඛේත වෙන් වෙන් වශයෙන් ගෙන ඒවා DFD තුල භාවිත කරන ආකාරය පිළිබදව විමසා බලමු.  


බාහිර වස්තූන් (Externa Entity) 

පද්ධතියේ ක්‍රියාවන්ට බාහිරින් සම්බන්ධ වන දේවල් බාහිර වස්තූන් ලෙස හදුන්වයි. පද්ධතියට දත්ත එක් කිරීමට හෝ පද්ධතියෙන් දත්ත උපයෝගී කිරීමට හෝ එම කාර්යයන් දෙකම සිදු කිරීමට හෝ බාහිර වස්තු පද්ධතිය හා සම්බන්ධ වෙයි. බාහිර වස්තු සංඛේතය හතරැස් කොටුවක් ආකාරයෙන් දැක්වෙයි.  
සැකසුම් (Processes)

දත්ත ප්‍රවාහ සටහනක ආදාන තුලින් ප්‍රතිදාන ලබා දෙනුයේ මෙම සැකසුම් ඒකකයි. ඒවා රවුමක ආකාරයෙන් දැක්වෙයි. සෑම සකසුමකටම කිසියම් වූ ක්‍රියාවක් පවතී. එබැවින් ඒවා නම් කිරීමේදී ඉන් ඉටු කරන කාර්යයට අනුරූප ක්‍රියා පදයකින් හෝ ක්‍රියා නාමයකින් විස්තර කරයි.
දත්ත ප්‍රවාහ (Data Flow)

දත්ත ප්‍රවාහ සටහනක දත්ත වල ගැලීම ඊ තලයකින් නිරූපණය කරයි. මෙහිදී ඊ තලයේ හිස දත්ත ප්‍රවාහ වන දිශාව සංඛේතවත් කරයි. දත්ත ප්‍රවාහ ඊතල ඒවා ප්‍රවාහනය කරන දත්ත වල නමින්ම නම් කෙරෙයි. මේවා ඔස්සේ භෞථික හෝ තාර්කික දත්ත ප්‍රවාහ විය හැකිය.
දත්ත ගබඩා (Data Store)
තොරතුරු පද්ධතිය හා සම්බන්ධ භෞථික හෝ තාර්කික දත්ත ගබඩාවන් ( මතකයේ ඇති දත්ත රටා, ගොනුවක් හෝ දත්ත සමුදායක්) මේ යටතේ නිරූපණය වන අතර එය සමාන්තර රේඛා දෙකකින් දැක්වෙයි. දත්ත ගබඩාවක් සාම විටම කිසියම් වූ සැකසුමක් හා සම්බන්ධ වෙයි. සැකසුම හා දත්ත ගබඩා එකිනෙක සම්බන්ධ වනුයේ දත්ත ප්‍රවාහ වලිනි. මේ අනුව සැකසුමේ සිට දත්ත ගබඩාව දෙසට වන දත්ත ප්‍රවාහ වලින් දත්ත ගබඩාවේ ලියවෙන දත්තයන්ද දත්ත ගබඩාවේ සිට සැකසුම දෙසට වන දත්ත ප්‍රවාහ වලින් දත්ත ගබඩාවෙන් කියවන දත්තයන්ද නිරූපණය කරයි. එසේම සැකසුම් හා දත්ත ගබඩා අතර වූ දත්ත ප්‍රවාහ වලින් ගෙන යන දත්ත විස්තර දත්ත ප්‍රවාහ ඊතල මත සලකුණු නොකරන අතර ඒවා ඇමුණුමක් ලෙස ඉදිරිපත් කරයි.

ප්‍රතිදාන (Output)

පද්ධතියේ සියලු ප්‍රතිදාන ත්‍රපෙසියමක හැඩයෙන් වූ සන්ඛේතයකින් නිරූපණය කරයි.


හොදයි, දැන් අපි කිසියම් වූ තොරතුරු පද්ධතියක් සැලසුම් කිරීමේදී DFD එකක් නිර්මාණය කර ගන්නේ කෙසේදැයි සලකා බලමු. මේ සදහා ඔබට මම මුලින් කියා දුන් Top-Down Decomposition ක්‍රම වේදය නැවත මතක් කර ගැනීමට සිදු වෙයි. ඇත්තෙන්ම Top- Down Decomposition හි සරල අර්ථය වන්නේ සරල වූ සංෂිප්ත අදහසකින් ආරම්භ වී ධුරාවලියක් ඔස්සේ පහලට වඩාත් සවිස්තරාත්මක ලෙස පද්ධතියක් සැලසුම් කිරීමයි. මෙහිදී සෑම ක්‍රියාවක්ම හොදින් විශ්ලේෂණය කර සාර්ථක ලෙස තවත් කුඩා ක්‍රියාකාරී කෘත්‍යමය එකක වලට බෙදා වෙන් කරයි.

හොදයි දැන් මෙය හොදින් වටහා ගැනීමට නැවතත් අපේ හුරුපුරුදු උදාහරණය දෙසට හැරෙමු. ඔබට මතක ඇති සමන් මහතාගේ යෝජිත නිවස. මේ වන විටත් නිමල් මහතා එය සැලසුම් කර හමාර බව ඔබ දනියි. හොදයි, නිමල් මහතා මෙම නිවස සැලසුම් කර ඇති අකාරය ගැන ඔබ මදක් සිතන්න. එය ඔබට Top-Down Decomposition හි අර්ථය ප්‍රයෝගිකව වටහා ගැනීමට උපකාරී වෙයි. මෙහිදී නිමල් මහතා සමන් මහතාගේ අවශ්‍යතාව අනුව සමස්ත නිවස ගැනම ප්‍රධානකොට සිතා බලයි. එම නිවසට බාහිරින් පැමිණෙන දෙරවල්, ජනෙල් ගැන මුලිකව සිතයි. මෙය Top-Down Decomposition සංකල්පයට අනුව සරල වූ සංෂිප්ත අදහසකින් සිදු කරන ඇරබුමට සමානය.   මුලින්ම එය නිමල් මහතාට හැගෙන්නේ සාමාන්‍ය නිවසක් ලෙසයි. දෙවනුව ඔහු මෙම නිවස තව දුරටත් සැලසුම් කර අභ්‍යන්තර සැකසුම ගැනද සැලසුම් කිරීමට විමසා බලයි. එහිදී ඔහු අවශ්‍ය කාමර ඒවායේ පිහිටීම, දොර ජනෙල් වල පිහිටීම, එම අභ්‍යන්තර එකක වල අන්තර්සම්බන්ධතාව ගැන සිතයි. දැන් ඔහු මුල් සැලසුම තව දුරටත් බෙදා සමන් මහතාගේ අවශ්‍යතා අනුව සැලසුම නිර්මාණය කරයි. මෙය Top-Down Decomposition සංකල්පයට අනුව ධුරාවලියක් ඔස්සේ පහලට වඩාත් සවිස්තරාත්මක ලෙස පද්ධතියක් සැලසුම් කිරීමට සම කල හැකිය. මෙය තවදුරටත් වටහා ගැනීමට පහත රූපසටහන් අංක 13 බලන්න.

රූපසටහන 13
ඒ අනුව සැලසුම් කිරීම අවසන් වන විට සම්පූර්ණ නිවසේ ගෘහනිර්මාණ සැලසුම ලැබෙන අතර මෙය පද්ධතියක නිර්මිතයට සම වෙයි. ඒ වගේම සංෂිප්ත සැලැස්මේ තිබු මුලික බාහිර දොරවල් සංඛ්‍යාව අවසන් නිර්මිතයේද සමාන වෙයි. මෙය Top-Down Decomposition ක්‍රමයේ ධුරාවලිය ඔස්සේ පහලට කෘත්‍යමය ඒකක වල පැවතිය යුතු සමබරතාවයට සම කල හැකි වෙයි.  

හොදයි, දැන් අපි ව්‍යුහගත විශ්ලේෂණය යටතේ DFD උදවු කර ගනිමින් පද්ධතියක් සැලසුම් කරන ආකාරය ගැන මදක් විමසා බලමු. මෙය ප්‍රධාන අදියර තුනක් යටතේ සාකච්චා කල හැකිය.
  1. Context Diagram (CD)
  2. Level 0 DFD
  3. Lower Level DFD

දැන් අපි මේ අදියරයන් වෙන වේනම් සාකච්චා කර බලමු.


  1. Context Diagram (CD)

යෝජිත තොරතුරු පද්ධතියේ මුල්ම ලඝු ඉදිරිපත් කිරීම Context Diagram (සන්ධර්භ සටහන) ලෙස හදුන්වයි. මෙය සමස්ත තොරතුරු පද්ධතියේම ප්‍රධාන කාර්යාවලිය පදනම් කර ගනිමින් ඉදිරිපත් කරනු ලබයි. සන්ධර්භ සටහන තුල යෝජිත තොරතුරු පද්ධතියේ සමස්ත ක්‍රියාවලිය තනි සැකසුමකින් (Bubble) ඉදිරිපත් කරන අතර එම සැකසුම තොරතුරු පද්ධතියේ ප්‍රධාන ක්‍රියාවෙන්ම නම් කරනු ලබයි. ඊට අමතරව යෝජිත තොරතුරු පද්ධතිය බාහිර ලෝකය සමග දක්වන සම්බන්ධතාවය පෙන්වීමට එම තොරතුරු පද්ධතියට අදාළ ආදාන හා ප්‍රතිදාන සන්දර්භ සටහනට ඇතුලත් කරනු ලබයි.

මෙය තවදුරටත් අපි සරල උදාහරණයකින් පැහැදිලි කර ගනිමු. මේ සදහා මම කාටත් හුරුපුරුදු සැන්විච් එකක් සාදා ගන්නා ආකාරය සන්ධර්භ සටහනකින් ඉදිරිපත් කරන ආකාරය විස්තර කිරීමට අදහස් කරනවා. මුලින් විස්තර කර පරිදි සන්ධර්භ සටහනේ ඇත්තේ එක සැකසුමක්, පද්ධතියේ ආදාන හා ප්‍රතිදාන පමණි. හොදයි, සැන්විච් එකක් සාදා ගන්නා ක්‍රියාවේදී අපිට එහි ප්‍රදාන සැකසුම "සැන්විච් සෑදීම" ලෙස නම් කර ගත හැකිය. ඊලගට මේ සදහා වැදගත් වන ආදාන මොනවාද? එනම්, පාන්, එළවලු හා චීස් මේ සදහා යොදා ගත හැකිය. පාන් බේකරියෙන් ලබා ගත හැකි අතර එළවලු හා චීස් ශීතකරණය තුල ගබඩා  කර ඇත. සැන්විච් සැදීමේ ප්‍රතිදානය කුමක්ද? ඔව්, අපිට එය හරිම පැහැදිලියි. සැන්විච් සාදන විට ප්‍රතිඵල ලෙස අපිට ලැබෙනුයේ සැන්විච්ම වෙයි. එසේ සකසූ සැන්විච් අපිට පිගානකට එකතු කර ගත හැකිය. හොදයි, දැන් මෙම කරුණු ඇසුරෙන් අපිට සැන්විච් සෑදීම සදහා සන්ධර්භ සටහනක් ඉදිරිපත් කල හැකිය. එය පහත රූපසටහන් අංක 14 දක්වා ඇත.



රූපසටහන් 14

  1. Level 0 DFD

0 මට්ටමේ දත්ත ප්‍රවාහ සටහන සකස් කර ගැනීම SRS වාර්තාවේ අඩංගු ප්‍රධාන සැකසුම් අවශ්‍යතා (Functional Requirements)  පාදක කර ගනිමින් නිර්මාණය කර ගනු ලබයි. යෝජිත පද්ධතියේ සෑම ක්‍රියාවක්ම 0 මට්ටමේ දත්ත ප්‍රවාහ සටහන තුල සැකසුම් සංඛේත යොදා ගනිමින් ඉදිරිපත් කරයි. දත්ත සැකසුම් සදහා දත්ත ආදානයන් හා ප්‍රතිදානයන් දත්ත ප්‍රවාහ වලින් ඉදිරිපත් කරනු ලබයි. 0 මට්ටමේ දත්ත ප්‍රවාහ සටහනේ සිට ඉදිරි මට්ටම් වල දත්ත ප්‍රවාහ සටහන් සදහා බාහිර වස්තූන් ඇතුලත් නොවෙයි.

සන්ධර්භ සටහනේ සිට 0 මට්ටම දත්ත ප්‍රවාහ සටහනට එන විට මුල් සැකසුම උප සැකසුම් වලට බෙදෙන බව ඉහත චේදයේ විස්තර කරන ලදී. එය හරියටම කිවහොත් ටොප් ඩවුන් වියෝජනයට සම කල හැකි වෙයි. විවිධ දත්ත ප්‍රවාහ මට්ටම් වලදී මෙසේ සැකසුම් බෙදී යාම කිසියම් සැකසුමක් තනි ඇල්ගොරිදමයකින් නිරූපණය කල හැකි අවස්ථාව දක්වාම සිදු වෙයි. සාමාන්‍යයෙන් කිසියම් වූ සැකසුමක් තවත් සැකසුම් 3 ත් 7 ත් අතර සංඛ්‍යාවක බෙදී යා හැකිය. කිසියම් මුල් සැකසුමක් බෙදී සෑදුනු සැකසුම් සංඛ්‍යාව 3 ට අඩු වුව හොත් එකම සැකසුම නැවත ඉදිරිපත් වීම (redundant) සිදු විය හැකි අතර බෙදුණු සැකසුම් සංඛ්‍යාව 7 ට වැඩි වුව හොත් තේරුම් ගැනීම අපහසු විය හැකිය.

හොදයි, දැන් නැවතත් අපි සුපුරුදු සැන්විච් සාදන උදාහරණය දෙසට හැරෙමු. මෙහිදී අපි සන්දර්භ සටහනේ දැක්වූ තනි සැකසුම වියෝජනය කිරීමට අපේක්ෂා කරයි. මේ සදහා විශේෂිත ක්‍රියා පිළිවෙතක් නොපවතෙයි. අවශ්‍යතාවය හා සුදුසු දැනුම පවතයි නම් අපිට සැන්විච් සාදා ගැනීම සදහා වූ  0 මට්ටමේ දත්ත ප්‍රවාහ සටහනක් නිර්මාණය කර ගත හැකිය. මෙය නිර්මාණය කිරීම මම මෙසේ ආරම්බ කිරීමට අපේක්ෂා කරමි. මුලින්ම මම සදර්භ සටහනේ වූ ආදාන වෙත අවධානය යොමු කිරීමට කැමතියි. එහි සදහන් ආදානයන් වන්නේ එළවලු, චීස් හා පාන් යනාදියයි. මේවා කෙලින්ම යොදා ගනිමින් අපිට සැන්විච් සෑදිය නොහැකි බව ඔබ කවුරුත් දනියි. එබැවින් ඒවා මෙම පියවරේදී සුදුසු තත්වයට පත් කර ගත යුතුය. එළවලු යොදා ගනිමින් මිශ්‍රණයක් සකස් කර ගත යුතුය. එසේම චීස් සුරා කුඩා කැබලි ලබා ගත යුතුය. පාන් උදුනක තබා කර කර ගත යුතුය. මින් අනතුරුව මේ සියල්ල එකතු කර ගෙන සැන්විච් ආකාරයට සාදා ගත යුතුය. එහි ප්‍රතිඵලයක් ලෙස සන්දර්භ සටහනේ දැක්වූ සැන්විච් ප්‍රතිදානය ලෙස අපිට ලබා ගත හැකි වෙයි. දැන් මම මෙම කරනු උදවු කර ගනිමින් 0 මට්ටමේ දත්ත ප්‍රවාහ සටහන නිර්මාණය කර ගන්නා අතර එය පහත රූපසටහන් අංක 15 දක්වා ඇත.  


රූපසටහන 15  


      3. Lower Level DFD
සන්ධර්භ සටහනේ සිට 0 මට්ටම දත්ත ප්‍රවාහ සටහනට එන විට මුල් සැකසුම උප සැකසුම් වලට බෙදෙන බව ඉහත උදාහරණය මගින් ඔබ අවබෝධ කර ගත්තා. මෙහි ඇතුලත් වන සිද්ධාන්තය වන්නේ ටොප් ඩවුන් වියෝජනය බව දන ඔබ ප්‍රයෝගික වශයෙන් මේ වන විට පැහැදිලි කර ගෙන ඇත. විවිධ දත්ත ප්‍රවාහ මට්ටම් වලදී  මෙසේ සැකසුම් බෙදී යාම කිසියම් සැකසුමක් තනි ඇල්ගොරිදමයකින් නිරූපණය කල හැකි අවස්ථාව දක්වාම සිදු වන බවද ඉහත සදහන් කරන ලදී. ඒ අනුව අපට තවදුරටත් බෙදිය හැකි සැකසුම් පහල මට්ටම් වලදී වියෝජනය කල හැකි වෙයි. 

හොදයි, දැන් අපි සැන්විච් සාදන උදාහරණ වෙත් නැවතත් අවධානය යොමු කර බලමු. මෙහිදී 0 මට්ටමේ දත්ත ප්‍රවාහ සටහනේ අපි සැකසුම් 4 ක් හදුනා ගත් බැව් ඔබට මතක ඇති. දැන් මෙම 0 මට්ටමේ සැකසුම් තවදුරටත් බෙදී යා යුතුද යන්න මෙහිදී සලකා බලා ඒවා පහල මට්ටම් වලට එනම් පළමු මට්ටමේ දත්ත ප්‍රවාහ සටහන් ලෙස නිර්මාණය කිරීම මෙහිදී සිදු කරයි. 0 මට්ටමේ දත්ත ප්‍රවාහ සටහනේ සූරා ගැනීම හා කර කිරීම යන සැකසුම් දෙස මදක් විමසා බලන්න. ඒවා තව දුරටත් බෙදිය යා නොහැකි බව ඔබට පැහැදිලි වෙයි. එනමුදු මිශ්‍රණය සෑදීම හා සකස් කිරීම යන සැකසුම් තව දුරටත් පවතින්නේ ලුහුඩින් බව අපට අවබෝධ වන අතර ඒවා තව දුරත් බෙදා දැක්විය හැකිය. මෙහිදී අපිට මිශ්‍රණය සාදා ගන්නේ කෙසේද? හා සකස් කිරීම සිදු කරන්නේ කෙසේද? යන්න තව දුරටත් පැහැදිලිව ඉදිරිපත් කල හැකි වෙයි. එබැවින් පළමු මට්ටමට අයත් දත්ත ප්‍රවාහ දෙකක් අපිට මෙහිදී නිර්මාණය කල හැකිය.
මුලින්ම මිශ්‍රණය සෑදීම යන සැකසුම වියෝජනය කරමු. එහි ආදාන වන්නේ එළවලුය ප්‍රතිදානය වන්නේ එළවලු මිශ්‍රණයකි. හොදයි, එළවලු වලින් එහි මිශ්‍රණයක් සෑදීමට අපට කපාගැනීම, කුළුබඩු එක් කිරීම හා පිස ගැනීම සිදු කල හැකිය. එය පළමු මට්ටමේ දත්ත ප්‍රවාහ සටහනක් ලෙස පහත රූපසටහන් අංක 16 දක්වා ඇත.
 රූපසටහන 16

ඒ ආකාරයටම එළවලු මිශ්‍රණය, සූරා ගත් චීස් හා කර කර ගත් පාන් යොදා ගනිමින් සැන්විච් සකස් කරන ආකාරය සකස් කිරීම යන සැකසුම වියෝජනය කිරීමෙන් අපට පැහැදිලි කර ගත හැකිය. චීස් ආලේපනය, මිශ්‍රණය තැවරුම ලෙස සකස් කිරීම යන සැකසුම වියෝජනය කළහොත් අපට එය සිදු කරන ආකාරය තවදුරටත් පැහැදිලි කර ගත හැකිය. මෙහිදී චීස් ආලේපනය සදහා කර කරගත් පාන් හා සූරාගත් චීස් යොදා ගන්නා අතර එසේ ලැබෙන චීස් තැවරු පාන් වලට එළවලු මිශ්‍රණය එක් කිරීමෙන් අපට සැන්විච් සාදා ගත හැකිය. එය පහත රූපසටහන් අංක 17 දැක්වෙන පළමු මට්ටමේ දත්ත ප්‍රවාහ සටහනෙන් පැහැදිලි වෙයි.
රූපසටහන් 17
දැන් පළමු මට්ටමේ පවතින දත්ත ප්‍රවාහ සටහන් වල ඇති සැකසුම් තවදුරටත් වියෝජනය නොවන බව ඔබට පැහැදිලි වෙයි. එබැවින් මෙම සැන්විච් සෑදීම සදහා වූ දත්ත්හ ප්‍රවාහ සටහන පළමු මට්ටමින් අවසන් වෙයි. තවදුරටත් වියෝජනය කල හැකි සැකසුම් එහි තිබුණහොත් දෙවන මට්ටමේ දත්ත ප්‍රවාහ සටහන් නිර්මාණය කිරීමට ඒවා යොදා ගත හැකිය. කෙසේ වුවද මෙම සැන්විච් සාදන ක්‍රියාව පළමු මට්ටමේ දත්ත ප්‍රවාහ සටහන් වලින් අවසන් වන අතර එම සෑම සැකසුමක්ම තනි ඇල්ගොරිදමයකින් ඉදිරිපත් කල හැකි බව දන ඔබට පැහැදිලිය. ඉහත සාකච්චා කල 0 මට්ටම හා පළමු මට්ටම් වල දත්ත ප්‍රවාහ සටහන් තනි සටහනකට එකතු කර පහත රූපසටහන් අංක 18 ඔබට තවදුරටත් අප මෙහි කල දේ අවබෝධ කර ගැනීමට ඉදිරිපත් කර ඇත.  
  
රූපසටහන 18


දත්ත ප්‍රවාහ සටහන් වල සමතුලිතතාව
සැකසුමක ඇතුලතට හෝ පිටතට දත්ත ගැලීම මීලග දත්ත ප්‍රවාහ මට්ටමේ දත්ත ගැලීම වලට සමාන විය යුතු වීම දත්ත ප්‍රවාහ සටහන් වල සමතුලිතතාව ලෙස හදුන්වයි. ඉහත රූපසටහන් අංක 14 දැක්වෙන සන්ධර්භ සටහනේ ආදාන 3 ක් ද ප්‍රතිදාන 1 ද පවතී. එසේම 0 මට්ටමේ දත්ත ප්‍රවාහ සටහනේද (රූපසටහන් අංක 15) එම ආදාන 3 හා ප්‍රතිදානය දක්නට ලැබෙයි. මිශ්‍රණය සෑදීම සැකසුමේ (රූපසටහන් අංක 15)   ආදානයක්ද ප්‍රතිදානයක්ද පවතින අතර එය සමතුලිතව රූපසටහන් අංක 16 දැක්වෙන පළමු මට්ටමේ දත්ත ප්‍රවාහ සටහනේ දක්වා ඇත.   



සැකසුම් අංකනය
සැකසුම් පහසුවෙන් හදුනා ගැනීම සදහා අංකනය කිරීම කරනු ලබයි. එය පහත දැක්වෙන පරිදි සිදු කරයි.
  • සන්ධර්භ සටහනේ සැකසුම 0 ලෙස අංකනය කරයි.
  • 0 මට්ටමේ දත්ත ප්‍රවාහ සටහනේ සැකසුම් 1,2,3,4,....... පිළිවෙලට අංකනය කරනු ලබයි.
  • පළමු මට්ටමේ දත්ත ප්‍රවාහ සටහනේ සැකසුම් 1.1, 1.2,...., 1.5 , 2.1,2.2,2.3 යනාදී වශයෙන් අංකනය කරනු ලබයි. මෙහි දශමස්තානයට ප්‍රථම දැක්වෙන අංකයෙන් වියෝජනය වන 0 මට්ටමේ සැකසුමද දශමස්තානයට පසු යෙදෙන අංකයෙන් පළමු මට්ටමේ වියෝජනය වූ සැකසුම් අන්කයන්ද දැක්වෙයි.
මෙම අංකනය කිරීම ඉතා පැහැදිලිව ඉහත රූපසටහන් අංක 14,15,16,17 හා 18 දක්වා ඇත.

දැන් ඔබ ක්‍රියාකාරකමක් ලෙස සමන් මහතාගේ නිවස සෑදීම සදහා දත්ත ප්‍රවාහ සටහනක් නිර්මාණය කරන්න. තවද පෙර පාඩමේ ඉදිරිපත් කල පාසල් පුස්තකාල තොරතුරු පද්ධතියේ SRS වාර්තාව නැවත කියවා එයටද දත්ත ප්‍රවාහ සටහන් නිර්මාණය කරන්න.


දත්ත ප්‍රවාහ සටහන් පිළිබද අප සාකච්චා කල වැදගත් කරුණු

ඉහත සාකච්චා කල දත්ත ප්‍රවාහ සටහන් පිලිබදව වැදගත් වන කරුණු කිහිපයක් මතක තබා ගැනීමේ පහසුව තකා පහත ගොනු කර ඇත.

  • සමස්ත තොරතුරු පද්ධතියම සන්ධර්භ සටහන තුල තනි සැකසුමකින් ඉදිරිපත් කරයි.
  • බාහිර වස්තූන් සන්දර්භ සටහන තුල පමණක් ඇතුලත් කරයි.
  • පහල මට්ටම් වලදී සැකසුමක් වියෝජනය කල හැක්කේ නව සැකසුම් 3 ත් 7 ත් අතර සංඛයාවකටයි.
  • පද්ධතියේ පාලනය එය අභ්‍යන්තරයේ ගලන ආකාරය (Flow of Control) පද්ධති ප්‍රවාහ සටහන් වලින් නිරූපණය නොවෙයි. 
  • පද්ධති ප්‍රවාහ සටහන් සැකසුම් වල ක්‍රියාකාරීත්වය සදහා ගත වන කාලය, ඒවා ක්‍රියාත්මක වන පිළිවෙල හා ක්‍රියාත්මක කිරීමේ කොන්දේසි පිලිබදව නොසලකයි.
  • දත්ත ප්‍රවාහ ඊතලයකින් ඍජු ලෙස සබැදි සැකසුම් දෙකක් එකවිට ක්‍රියාත්මක වන බැවු හගවන අතර දත්ත ගබඩාවක් සමග සම්බන්ධ වන සැකසුම් දෙකක් එසේ එක විටම ක්‍රියාත්මක නොවෙයි.
  • එක් සැකසුමක් ක්‍රියාත්මක වූ පසු අනෙක් සැකසුමක හෝ කිහිපයක ක්‍රියාකාරීත්වය කිසියම් වූ කොන්දේසියකින් පාලනය කල හැකිය.
  • SRS වාර්තාවේ අඩංගු සියලුම ක්‍රියා අවශ්‍යතා දත්ත ප්‍රවාහ සටහන් තුල ඉදිරිපත් කල යුතු අතර අනෙක් අතට දත්ත ප්‍රවාහ සටහනක නිරූපණය වන්නේ SRS වාර්තාවේ අඩංගු වුනු ක්‍රියා අවශ්‍යතා පමණි. 
Data Dictionary (දත්ත ශබ්දකෝෂ)

කිසියම් වූ යෝජිත තොරතුරු පද්ධතියක් සදහා දත්ත ප්‍රවාහ සටහන් නිර්මාණය කර අවසන් වූ පසු පද්ධති විශ්ලේෂකයන් විසින් දත්ත ශබ්දකෝෂ ගොඩනගනු ලබයි. දත්ත ශබ්දකෝෂයක කිසියම් වූ තොරතුරු පද්ධතියක භාවිත කරන පාරිභාෂිත වචන හා එම වචන වල අරමුණ විස්තර කර ඇත. තවද සංයුක්ත දත්ත හා ඒවායේ දත්ත ඒකක ද පැහැදිලිව දත්ත ශබ්දකෝෂ වල විස්තර කර ඇත. දත්ත ශබ්දකෝෂ යොදා ගැනීමෙන් තොරතුරු පද්ධතියක අඩංගු දත්ත විග්‍රහ කිරීම සදහා සම්මතයක් ලැබෙන අතර මෙහිදී එක් එක් පුද්ගලයා එක් එක් අයුරින් දත්ත විස්තර කිරීම අවම වෙයි. සැන්විච් සාදන ක්‍රියාවලිය සදහා දත්ත ශබ්දකෝෂයක් පහත විස්තර කර ඇත.

  • බේකරිය = පාන් පුළුස්සන ස්ථානය
  • ශීතකරණය = චීස් හා එළවලු ගබඩා කර ඇති උපකරණය 
  • සැන්විච් පිගාන = සකස් කල සැන්විච් පිළිගන්වන උපකරණය
  • පාන් 
  • එළවලු
  • චීස්
  • සැන්විච්
  • සැන්විච් සෑදීම
  • කපා ගැනීම
  • කුළුබඩු එකතු කිරීම
  • පිස ගැනීම
  • සූරා ගැනීම
  • කර කිරීම
  • චීස් ආලේපනය
  • මිශ්‍රණය තැවරුම
  • එළවලු මිශ්‍රණය = එළවලු + කුළුබඩු
  • සූරාගත් චීස් = චීස් කැබලි
  • කර කර ගත් පාන් = සෙල්සියස් 50 රත් කර ගත් පාන්
  • කපාගත් එළවලු = එළවලු කැබලි
  • කපාගත් කුළුබඩු එක් කල මිශ්‍රණය = එළවලු කැබලි + කුළුබඩු
  • චීස් තැවරූ පාන් = චීස් කැබලි + කර කර ගත් පාන්   

දැන් ඔබ ක්‍රියාකාරකමක් ලෙස සමන් මහතාගේ නිවස සෑදීම සදහා නිර්මාණය කල දත්ත ප්‍රවාහ සටහන් ඇසුරින් දත්ත ශබ්දකෝෂයක් නිර්මාණය කරන්න. තවද පෙර පාඩමේ ඉදිරිපත් කල පාසල් පුස්තකාල තොරතුරු පද්ධතියේ දත්ත ප්‍රවාහ සටහන් උදවු කර ගනිමින් ඒ සදහාද දත්ත ශබ්දකෝෂයක් නිර්මාණය කරන්න. 

පුස්තකාල තොරතුරු පද්ධතිය සදහා මා යෝජනා කර ඇති දත්ත ප්‍රවාහ සටහන පහත දක්වා ඇත. එය ඔබ නිර්මාණය කල දත්ත ප්‍රවාහ සටහන හා සසදා බලන්න;

සන්දර්භ සටහන










0 මට්ටමේ දත්ත ප්‍රවාහ සටහන





1 මට්ටමේ දත්ත ප්‍රවාහ සටහන





2 මට්ටමේ දත්ත ප්‍රවාහ සටහන 



හොදයි, දැන් ඔබට දත්ත ප්‍රවාහ සටහන් පිලිබදව හොද අවබෝධයක් ලැබෙන්නට ඇති කියා මා අපේක්ෂා කරනවා. මීලග පාඩමින් පද්ධති සැලසුම් කිරීමෙට අයත් පද්ධති නිර්මිතය, දත්ත සමුදාය නිර්මාණය, අතුරු මුහුණත් නිර්මාණය ගැන සාකච්චා කිරීමට බලාපොරොත්තු වෙනවා.

පද්ධති නිර්මිතය, දත්ත අවශ්‍යතා සැලසුම් කිරීම හා අතුරු මුහුණත් සැලසුම් කිරීම

System Architecture, Data Design and User Interface Design 


මෙම පරිච්චේදයේ අරමුණ වනුයේ පද්ධති නිර්මිතය, දත්ත ගබඩාව සකස් කරගැනීම හා අතුරු මුහුණත් සකස් කිරීම පිලිබදව කෙටි හදුන්වා දීමක් කිරීමයි. විශේෂයෙන්ම දත්ත ගබඩා හා අතුරුමුහුණත් සකසන ආකාරය හා ක්‍රමවේද පිලිබදව මෙහිදී දීර්ග වශයෙන් කතා කිරීමට ම බලාපොරොත්තු නොවෙයි. මුලින්ම අපි පද්ධති නිර්මිතය පිලිබදව සාකච්චා කරමු.

පද්ධති නිර්මිතය (System Architecture)

ව්‍යුහගත විශ්ලේෂණයේ ප්‍රතිඵලය ලෙස යෝජිත පද්ධතිය සදහා දත්ත ප්‍රවාහ සටහන් නිර්මාණය කරන ආකාරය ගැන දීර්ග වශෙන් අපි මීට පෙර පරිච්චේදයෙන් සාකච්චා කළා ඔබට මතක ඇති. මෙසේ නිර්මාණය කර ගත් දත්ත ප්‍රවාහ සටහන් පද්ධතිය තුල සිදුවන ක්‍රියාවලිය කුමක්ද යන්න පැහැදිලිව දක්වන අතර එය සිදුවන්නේ කෙසේද යන්න පිලිබදව විස්තර නොකරයි. එබැවින් ව්‍යුහගත විශ්ලේෂණයෙන් පසු ලැබෙන එහි ප්‍රතිඵල වන දත්ත ප්‍රවාහ සටහන් උදවු කර ගනිමින් SSADM ක්‍රමවේදයට අනුව ව්‍යුහගත නිර්මාණය සිදු කරමින් දත්ත ප්‍රවාහ සටහන් වල හදුන්වා දෙන ක්‍රියාවලි සැබවින්ම ඉටු වන්නේ කෙසේද යන්න පිලිබදව විග්‍රහ කරගත හැකිය. කෙටියෙන්ම කිවහොත් ව්‍යුහගත නිර්මාණයේ අරමුණ වන්නේ යෝජිත පද්ධතිය සැලසුම් කර අවසානයේ ලැබෙන පද්ධති සැලසුමේ ප්‍රධාන උපාංග (Components) හදුන්වා දීම, සංවිධානය කිරීම හා තවදුරටත් සැලසුම් කිරීමයි (මෙම පාඩමෙන් ව්‍යුහගත නිර්මාණය පිලිබදව සාකච්චා කරනු නොලැබෙයි.) මෙසේ ලැබෙන පද්ධති උපාංග/ මොඩියුල පද්ධති නිර්මිතය යෝජනා කිරීම සදහා වැදගත් වෙයි.

පද්ධති නිර්මිතයක් යනු කුමක්ද?

පද්ධති නිර්මිතයක් යනු කිසියම් වූ පද්ධතියක උපාංග හෝ තැනුම් එකකත්, එම උපාංග හෝ තැනුම් ඒකක වල බාහිරට පෙනෙන ගුණාංග හා ඒවා අතර ඇති සම්බන්ධතාව දක්වන සැලසුමක් හෝ ආකෘතියක් ලෙස හැදින්විය හැකිය. මෙය තව දුරටත් අවබෝධ කර ගැනීම සදහා රූපසටහන් අංක 9 දැක්වෙන සමන් මහතාගේ නිවසේ නිර්මිතය දෙස අවධානය යොමු කරන්න. ඉහත අර්ථදැක්වීමට අනුව එම නිවසේ නිර්මිතයේ උපාංග ලෙස එහි පවතින කාමර, මුළුතැන්ගෙය, වරන්දාව, අමුත්තන්ගේ කාමරය, ආලින්දය හා නාන කාමරය දැක්විය හැකිය. එසේම එම උපාංග වල බාහිරට පෙනෙන ගුණාංග ලෙස වා කවුළු, ජනෙල් හා දොරවල් දැක්විය හැකිය. නිවසේ නිර්මිතයේ මේ සෑම උපාංගයක්ම බාහිර හා අභ්‍යන්තර වශයෙන් එකිනෙකට සම්බන්ධ වන ආකාරය පැහැදිලිව දක්වා ඇත. ඒ අයුරින්ම තොරතුරු පද්ධතියක නිර්මිතයේද එහි අඩංගු ප්‍රධාන මොඩියුල හා ඒවා එකිනෙකට සම්බන්ධ වන බාහිර හා අභ්‍යන්තර අන්තර්මුහුනත් ඉතා පැහැදිලිව සංවිධානය කර ඇත.   

පද්ධති නිර්මිතයක් යෝජනා කිරීමේදී කරුණු කිහිපයක් මුලික වශයෙන් සලකා බලයි. ඒ අතුරින් පළමුවැන්න ලෙස පද්ධති වියෝජනය ගැන සැලකිලිමත් විය යුතුය. සියලු උපාංග පද්ධතියේ අවශ්‍යතා හා සපුරාලන ආකාරයට, ඒවා එක එකක් සම්බන්ධ කල හැකි ආකාරයට, මනාව පහසුවෙන් පාලනය හා කළමනාකරණය කල හැකි ආකාරයට කිසියම් පද්ධතියක් එහි සලසුම්කරනයේදී වියෝජනය සිදු කල යුතුය. එසේම දෙවන වැදගත් සාධකය ලෙස මොඩියුල හෝ උපාංග වල නැවත නැවත භාවිතා කිරීමේ හැකියාව, පිරිවැය කාර්යක්ෂම වීම හා පහසුවෙන් බලාපොරොත්තු වන අරමුණු අවශ්‍යතා ඉන් ඉටු කර ගැනීමට හැකි වන පරිදි නිර්මාණය කර ගැනීම වැදගත් වෙයි. එසේම තෙවැන්න ලෙස යෝජිත පද්ධතිය පුළුල්කිරීම, නඩත්තු කිරීම හා ව්‍යාපාර අරමුණු හා එකග වීම පහසු වන ආකාරයට පද්ධති නිර්මිතය යෝජනා කල යුතුය.      

පද්ධති නිර්මිතයක් අවශ්‍ය වන්නේ ඇයි?

නියම ලෙස යෝජනා කරන ලද පද්ධති නිර්මිතයක් පවතීම් පහත සදහන් අරමුණු ඉටු කර ගත හැකි වෙයි.

  • ගුනත්වයට හානි නොවන සේ ඉතා සංකීර්ණ අභියෝගාත්මක පද්ධති ගොඩනැගීමට නම් මන ලෙස සැලසුම් කල පද්ධති නිර්මිතයක් අවශ්‍ය වෙයි.
  • සංකීර්ණ පද්ධති සංවර්ධනය කිරීම හා ඒ සදහා වැදගත් වන මානව සම්පත් කළමනාකරණය කිරීමටද පද්ධති නිර්මිතය වැදගත් වෙයි.
  • පද්ධති සංවර්ධනයෙදී නැවත භාවිතය වැඩි කිරීමෙන්, පිරිවැය, අපතේයාම, එකම දී නැවත කිරීම අඩු කිරීම සදහාද පද්ධති නිර්මිතය වැදගත් වෙයි.
  • පද්ධති අතර හා ඇතුලත සංස්ථිතිය හා සංකලනය මනාව පාලනය කිරීම හා පවත්වාගෙන යාම සදහාද පද්ධති නිර්මිතයක් ආධාර වෙයි.
  • අනාගත සංවර්ධන හා වැඩිදියුණු කිරීම සදහා ක්‍රමෝපාය යෝජනා කිරීමටද නිවැරදි පද්ධති නිර්මිතයක් වැදගත් වෙයි. 


දත්ත ගබඩා සකස් කිරීම (Database Design)


කිසියම් තොරතුරු පද්ධතියක් හා සම්බන්ධ වන දත්තයන් මනාව ගබඩා කර ගැනීම හා පාලනය කිරීම සදහා දත්ත සමුදායන් නිර්මාණය කර ගනියි. මෙය නිර්මාණය කර ගැනීම සදහා අවශ්‍ය දත්තයන් පද්ධති විශ්ලේෂනයේදීම හදුනා ගන්නා අතර එය පහත දක්වා ඇති පියවරයන් යටතේ නිර්මාණය කරගනු ලබයි.

  • දත්ත අවශ්‍යතා හදුනා ගැනීම
  • සංකලිපිත දත්ත සමුදාය නිර්මාණය කිරීම - මෙය Entity - Relationship diagram(ER Diagram) නිර්මාණය කිරීම වෙයි.
  • තාර්කික දත්ත සමුදාය නිර්මාණය කිරීම - මෙය ER Mapping ලෙස හදුන්වයි.
  • ප්‍රමතකරණය (Normalization)
  • භෞතික දත්ත සමුදාය නිර්මාණය
  • පරිශීලකයන් හා පරිශීලනය සදහා අවශ්‍ය කොන්දේසි, රෙගුලාසි හා පාලනයන් සකස් කිරීම. 


අතුරු මුනුහත් නිර්මාණය කිරීම (User Interface Design)


සාර්ථක ලෙස සැලසුම් කල පද්ධතියක අතුරුමුහුණත් සදහා හිමි වන්නේ ඉහල වැදගත් කමක්. ඒ කුමක් නිසාද කිවහොත් සමස්ත පද්ධතියම බාහිර පරිසරය හා ගැටෙනුයේ මෙම අතුරුමුහුණත් හරහා බැවිනි. අපි මේ බව තවදුරටත් වැටහ ගැනීමට අපිට හුරුපුරුදු උදාහරණය දෙසට නැවත වතාවක් හැරෙමු.

සමන් මහතගේ නිවසේ නිමාව සැලසුම් කිරීම


මේ වන විටත් සමන් මහතාගේ නිවසේ මුල් සැලසුම් සියල්ලම කමල් මහතා අවසන් කර අවශ්‍ය අනුමැතියද ලබා ගෙන ඇති බැවු ඔබට මතක ඇති. මීලගට නිමල් මහතා සමන් මහතාගෙන් විමසා සිටියේ එම නිවසේ පැවතිය යුතු නිමාව පිලිබද සැලසුම් ගැනයි. මෙහිදී විශේෂයෙන්ම කමල් මහතා අවධානය යොමු කලේ දොර ජනෙල් වල ප්‍රමාන, ඒවායේ නිමාව, පිහිටිය යුතු ආකාර, මෝස්‌තර කැටයම් යොදන ආකාරය, වා කවුළු වල කැටයම්, බිත්ති වර්ණ ගැන්වීම හා වර්ණ ගැන්වීමේ ක්‍රම, ටයිල් සදහා වර්ණ, වැසිලිකි උපාංග කට්ටලවල ස්වභාවය යනාදියයි. මෙහිදී කමල් මහතා සමන් මහතාගේ සිතැගි පරිදි මෙම කොටස් සැලසුම් කිරීමට අවශ්‍ය උපදෙස් ලබා ගත් අතර, මෙසේ උපදෙස් ලබා ගැනීම ඉතා වැදගත් බවද ඔහු සමන් මහතාට වරින් වර අවධාරණ කරන ලදී. එවිට සමන් මහතා ඒ ඇයි දැයි නිමල් මහතාගෙන් විමසු විට ඔහු පැවසූයේ මෙහිදී සලකා බලන දේවල් නිවසට එන යන පුද්ගලයන් හා කෙලින්ම ගැටෙන බවත් ඒවායේ නිවැරදි නිමාව නිවසට අමතර කලඑළියක්  හා වටිනාකමක් එක් කරන බවත්ය. ඒ අනුව, සමන් මහතා තමන්ට රිසි ලෙස වැය කරන මුදලට සරිලන පරිදි ඉහත දැක්වූ තම නිවසේ කොටස් වල නිමාව ගැන අදහස් නිමල් මහතාට ඉදිරිපත් කල අතර ඒ අනුව නිවාස ඉදි කිරීමට නිමල් මහතා කටයුතු සම්පාදනය කරන ලදී.     

දැන් අපි නැවතත් තොරතුරු පද්ධතියක අතුරුමුනත් සැලසුම් කිරීම වෙත අවධානය යොමු කරමු. සමස්ත පද්ධතියම බාහිර පරිසරය හා ගැටීම සිදු කරන මෙම අතුරුමුහුණත් වල නිමාව පද්ධතියක නිමාව හා ගුණත්වය කෙරෙහි ඍජු බලපෑමක් දක්වයි. එසේ නම් තොරතුරු පද්ධතියක් මෙසේ බාහිර පරිසරය හා සම්බන්ධ කරන අතුරු මුහුණත් ප්‍රධාන වශයෙන් කොටස් තුනකට බෙදා දැක්විය හැකිය; එනම් පෝර්ම, වාර්තා හා සංවාද ලෙසයි. පෝර්ම යනු තොරතුරු පද්ධතියට බාහිරින් දත්ත ලබා දීම සදහා නිර්මාණය කරන අතුරුමුහුණත් වන අතර උදාහරණයක් ලෙස පුස්තකාල තොරතුරු පද්ධතියක ශිෂ්‍ය ලියාපදිංචිය සදහා නිර්මාණය කල පෝරමයක් මීට ඉදිරිපත් කල හැකිය. වාර්තා යනු තොරතුරු පද්ධතියෙන් අවශ්‍ය තොරතුරු පරිශීලකයන්ට ඉදිරිපත් කිරීමට නිර්මාණය කල අතුරුමුහුනත්ය. උදාහරණයක් ලෙස පුස්තකාල තොරතුරු පද්ධතියක පොතක් පිළිබද විස්තර සෙවීමේදී එම සෙවුම් තොරතුරු ප්‍රදර්ශනය කරන අතුරුමුහුණත වාර්තාවක් සදහා උදාහරණයක් ලෙස දැක්විය හැකිය. මෙහිදී පරිශීලකයා අදාළ පොත පිලිබදව විස්තර විමසීම කරනුයේ පෝරමයක් භාවිතා කිරීමෙනි. ඒ අනුව තොරතුරු පද්ධතියක් සැකසීමේදී එහි වූ ක්‍රියා අවශ්‍යතා කිසියම් වූ පරිශීලකයෙකුගේ විමසීමක්, ඉල්ලුම් කිරීමක් (User Request) ලෙස ඉදිරිපත් කරන අතර එය කළමනාකරණය කිරීමට පොර්මද, එම විමසීම්, ඉල්ලුම්කිරීම් සදහා ප්‍රතිචාර (Responses) වාර්තා ඇසුරින්ද ඉදිරිපත් කෙරෙයි. පහත රූපසටහන් අංක 19 පෝර්මයක් සදහා නිදර්ශකයක්ද රූපසටහන් අංක 20 න වාර්තාවක් සදහා නිදර්ශකයක්ද ඉදිරිපත් කර ඇත.


රූපසටහන 19 
 රූපසටහන 20

ඉහත සදහන් කර පරිදි එක පෝර්මයක් හා එක වාර්තාවක් භාවිතා කර තොරතුරු පද්ධතියට අදාළ යම් කිසි සරල ක්‍රියාවක් ඉටුකර ගත හැකි උවත් සමහර අවස්ථා වලදී ඉටු කල යුතු ක්‍රියාවේ සංකීර්ණත්වය අනුව පෝර්ම හා වාර්තා කිහිපයක් එක්ව කිසියම් වූ අනුපිළිවෙලකට සංවිධානාත්මක අයුරින් යොදා ගැනීමට සිදු වෙයි. මෙය සංවාදයක් ලෙස හදුන්වයි. පහත 21 වන රූපසටහනේ පුස්තකාල තොරතුරු පද්ධතිය හා සැලසුම් කල සංවාදයක් ඉදිරිපත් කර ඇත.





රූපසටහන 21



රූපසටහන් අංක 21 දැක්වෙන පරිදි එහි පොත් නැවත භාරදීම සදහා සංවාදයක් සැලසුම් කර ඇත. එය වාර්තා 1 පටන් ගන්නා අතර මෙහිදී පොත් භාර දීම තේරූ විට භාර දිය යුතු පොත් පිළිබද විස්තර සහිත වාර්තා 2 දැක්වෙන අතුරු මුහුණත ලැබෙයි. එසේම රැගෙන ගිය පොත් වල නැවත භාර දීමේ දිනයේ වලංගුතාවය අනුව එම පොත් වල දින දීර්ග කිරීම (පෝර්ම 1) හෝ නැවත පොත් භාරගැනීම (පෝර්ම 2) නැවත පොත් භාරගනිමින් දඩ නියම කිරීම සිදු කල හැකිය (පෝර්ම 3). මේ අනුව එකී පුස්තකාල පද්ධතියේ පොත්භාරදීම සැලසුම් කිරීමේදී අතුරු මුහුණත් 5 ක් යොදාගෙන ඇත. එක් එක් පියවරකදී ඉදිරි පියවර හා සම්බන්ධ වීමට පරිශීලකයාගේ ප්‍රතිචාර ලැබෙන තුරා රැදී සිටින අතර පරිශීලකයාගේ ප්‍රතිචාරය මත ඉදිරි පියවර සිදු වෙයි. මෙය සංවාදයකට කදිම උදාහරණයකි.

පෝරම හා වාර්තා නිර්මාණය කිරීමේදී සැලකිය යුතු කරුණු

පෝරම හා වාර්තා නිර්මාණය කිරීමේදී සැලකිය යුතු ප්‍රධාන කරුණු කිහිපයක් පහත ගොනු කර ඇත.

  • පෝරම හෝ වාර්තා භාවිතා කරන පරිශීලකයන් පිලිබදව හොද අවබෝධයක් තිබීම.
  • සැලසුම් කර ඇති පෝරම හා වාර්තා වල සැබෑ අවශ්‍යතාවය හදුනා ගැනීම.
  • තොරතුරු පද්ධතිය තුල එසේ සැලසුම් කල පෝරම හා වාර්තා භාවිතා වන ස්ථාන හා අවස්ථාව හදුනා ගැනීම.
  • පුද්ගලයන් කී දෙනෙකුට එම පෝරම හා වාර්තා භාවිත කිරීම අවශ්‍යයි හදුනා ගැනීම. 


එසේම අර්ථවත් මාතෘකා භාවිතා කිරීම, අර්ථවත් තොරතුරු ඇතුලත් කිරීම, සමබර පිරිසැලසුම් (Layout) යොදා ගැනීම, පහසුවෙන් එක් එක් අතුරුමුහුණත හරහා ගමන් කල හැකි ක්‍රම තිබීම යන කරුණුද පෝරම හා වාර්තා සැලසුම් කිරීමේදී සිහි තබා ගත යුතුය.

තොරතුරු පද්ධතියක් සදහා අතුරුමුහුණත් නිර්මාණය කිරීමේදී පරිශීලකන්ගේ අවශ්‍යතාවන්ට සරිලන ලෙස ඔවුන්වද හැකි තාක් එයට සම්බන්ධ කර ගනිමින් සිදු කර ගැනීමද බුද්ධිමත් ක්‍රියාවකි. මෙහිදී යෝජිත අතුරුමුහුණත් සදහා මුලාකෘති (Prototype) සකසා එය පරිශීලයන්ට ඉදිරිපත් කිරීමෙන් ඔවුන්ගේ අදහස්, යෝජනා හා වෙනස් කිරීම් එයට ඇතුලත් කරගැනීමින් අවසානයේ පද්ධතියේ ගුණත්වය වැඩි කරන පරිශීලකයන්ගේ සැබෑ අවශ්‍යතා ඉටුවන අතුරුමුහුණත් සකස් කර ගත හැකිය.

ඇමුණුම


SSADM සම්පූර්ණ ක්‍රියාවලිය සරල උදාහරණයක් ඇසුරින්

Temperature Conversion Software

Context Diagram


Level 0 DFD




Structure Chart


Program

කේතකරණය හා පරීක්ෂාව

Coding and Testing 


මෙම පරිච්චේදයේ අරමුණ වනුයේ තොරතුරු පද්ධති සංවර්ධනයේදී ඉතා වැදගත් අවධියක් වන කේතකරණය හා පද්ධති පරීක්ෂාව පිලිබදව සාකච්චා කිරීමයි. මුලින්ම අපි කේතකරණය පිලිබදව සාකච්චා කරමු.


කේතකරණය

කේතකරණය යනු පද්ධති නිර්මාණයක් දී ඇති ක්‍රමලේඛන භාෂාවකට පරිවර්තනය කිරීමයි. මෙහිදී ලබා ගත් කේතය පසුව  පරිගණකය ක්‍රියාකරවා වැරදි නිවැරදි භාවය සත්‍යාපනය කල යුතුය. එසේම කෙත්කරන ක්‍රියාව පද්ධති පරීක්ෂාව හා නඩත්තු කිරීම යන අවධි දෙකටම බලපෑමක් ඇති කරයි. මෙයට හේතු වන්නේ පද්ධති පරීක්ෂාව හා නඩත්තුව සදහා මුලික වශයෙන් භාවිතා කරනුයේ කේතකරනයෙදී බිහි වන කේත වීමයි. එබැවින් පද්ධති සංවර්ධන ක්‍රියාවලිය පිලිබදව සලකා බලන විට කේතකරණයට වඩා වැඩි පිරිවැයක් පද්ධති පරීක්ෂාව හා නඩත්තුව සදහා වැය වෙයි. මේ හේතුව නිසා නිවැරදි ක්‍රමලේඛනයක අවශ්‍යතාව පද්ධතියක් සංවර්ධනය කිරීමේ ක්‍රියා පිලිවෙතේදී ඉතා වැදගත් වෙයි. නිවසක් සෑදීමේ ක්‍රියාවලිය ගැන අපි සලකා බැලුවහොත් කෙත්කරණය එම නිවසේ වූ සැලසුම සුදුසු පරිදි ගොඩනගමින් භෞතිකව නිවස තැනීමේ අවධියට සමාන කල හැකිය. ක්‍රමලේඛයක ගුණාත්මකභාවය විවිධ සාධක යටතේ විනිශ්චය කල හැකිය. ඒවා නම් ක්‍රමලේඛයේ විශාලත්වය, කියවීමට ඇති හැකියාව, ධාවන කාලය හා ක්‍රමලේඛය සදහා අවශ්‍ය වන මතක ප්‍රමාණයයි. කියවීමට පහසු, මතකයද කාර්යක්ෂම අයුරින් භාවිතා කරන සැලකියයුතු අඩු ධාවන කාලයක් ගන්නා ක්‍රමලේඛ ගුණත්වයෙන් ඉහල වෙයි. ක්‍රමලේඛයක් පහසුවෙන් නඩත්තු කිරීමට නම් එය පහසුවෙන් කියවීමට හා තේරුම් ගැනීමට හැකි වන අයුරින් ඉදිරිපත් කල යුතුය.         

ක්‍රමලේඛන ශික්ෂණය

කේතයක් ලිවීමේදී අනුගනය කල යුතු ශික්ෂණයක් පවතයි. ඒවාට අනුගතව ලියන කේත වල කියවීමේ හා හදුනා ගැනීමේ පහසුව ඇත. ක්‍රමලේඛනයේදී අනුගමනය කල යුතු ශික්ෂණයන් පහත විස්තර කර ඇත.
  • නම් කිරීම
මොඩියුල හා විචල්‍යන් සදහා නම් තෝරා ගැනීමේදී ඒවා අර්ථාන්විත විය යුතුය. තවද මොඩියුල නාමය එහි ක්‍රියාවට උචිත වුවක් විය යුතුය.
  • පාලන ව්‍යුහය
ව්‍යුහගත නොවන ආකාරයට උපදෙස් මාලාවක් සකස් කිරීමෙන් පරිගණක වැඩසටහනේ කාර්යක්ෂමතාව දුර්වල වෙයි. එමනිසා විධිමත් පාලන ව්‍යුහයක් භාවිතා කල යුතුය.
  • අතුරු ඵල
මොඩියුලයක් කැදවීමේදී යොදා ගන්නා පරාමිතීන් වෙනස් කිරීමකදී සමහර විට එහි අතුරු ඵලයක් ලෙස  ක්‍රමලේඛයද වෙනස් වීමකට භාජනය විය හැකිය. මෙවැනි අතුරු ඵල මගහැරිය යුතු අතර එය නිවැරදි ආකාරයට ලේඛනගත කල යුතුය.
  • නීඩ කිරීම (Nesting) 
කේතකරනයෙදී දීර්ග වශයෙන් නීඩ කිරීම වැලැක්විය යුතුය. එසේ වුවහොත් කේතය තේරුම් ගැනීමට අපහසු වෙයි.
  • මොඩියුලයේ ප්‍රමාණය
මොඩියුල වල ප්‍රමාණය ඒකාකාරී වීම වැදගත් වෙයි. මොඩියුල වල ප්‍රමාණය ඉතා විශාල වුව හොත් පරීක්ෂා කිරීමේදී ගැටළු සහගත තත්වයක් ඇති වෙයි. කේත අනවශ්‍ය ලෙස දීර්ග විය හැකි නිසා කේත මොඩියුල ඉතා කුඩා ආකාරයෙන් ලියා දැක්වීමෙන් වැළකිය යුතුය.
  • මොඩියුලයක අතුරුමුහුණත්
මොඩියුලයේ සංකීර්ණ අතුරුමුනතක් ඇත්දැයි පරීක්ෂා කල යුතුය. අතුරුමුහුණත පරාමිතීන් පහකට වඩා තිබුන විට එය හොදින් පරීක්ෂා කර එය සරල අතුරුමුහුණත් කිහිපයකට වෙන් කර එහි කාර්යක්ෂමතාව වැඩි කල හැකිය.
  • ක්‍රමලේඛයේ පිරිසැලසුම
කරලේඛය ඉතා පැහැදිලිව කියවීමට එහි අනුචේදන, හිස් ඉඩ ප්‍රමාණයන්, වරහන් ආදිය සුදුසු ආකාරයට යොදා ගත යුතුය.
  • අභ්‍යන්තර ප්‍රලේඛනය (Internal Documentation)
කේතකරණ අදියරදී ප්‍රතිදාන ප්‍රලේඛනය ලෙස හදුන්වනුයේ කේතයයි. මෙම ප්‍රතිදාන ප්‍රලේඛනයේ ඇති කේතය සකස් කර ඇත්තේ තේරුම් ගැනීමට පහසු වන ආකාරයටයි. ප්‍රතිදාන ප්‍රලේඛනය කේතකරනයෙදී ක්‍රමලේඛයා විසින් කේතයට විවරණ යෙදීම සිදු කෙරෙයි. විවරණයක් ප්‍රකාශයක් වන අතර එය ක්‍රමලේඛය ධාවනයේදී අවශ්‍ය නොවෙයි. කේතයක් මගින් කෙරෙන කාර්ය විවරණයක් මගින් විස්තර කෙරෙයි.
  • සත්‍යාපනය (Verification)
කේතකරණ අදියරේදී ප්‍රතිදානය සදහා සත්‍යාපනය භාවිතා කරනු ලබන්නේ එම අදියරේදී ඇති දෝෂ අනාවරණය කිරීම සදහායි. කේතය සත්‍යාපනය කර දෝෂ නැති බව තහවුරු කිරීමෙන් පෙන්නුම් කරන්නේ කේතය, සැලසුමට අනුකූල වන බවත් එම මෘදුකාංගය ක්‍රියා කිරීමට සුදුසු බවත්ය. ක්‍රමලේඛ සත්‍යාපනය කිරීමේ ආකාර දෙකකි. ඒවා නම ස්ථිතික හා ගතික ආකාර වෙයි.   ගතික ආකාරයේදී ක්‍රමලේඛයට පරීක්ෂක දත්ත ඇතුලත් කර එය ක්‍රියාත්මක කෙරෙයි. එවිට එම අවස්ථාවේදී ක්‍රමලේඛයේ ප්‍රතිදානයේ දෝෂ පවතීදැයි පරීක්ෂා කෙරෙයි. ස්ථතික ආකාරයේදී ක්‍රමලේඛයට යථාරූපී පරීක්ෂක දත්ත ඇතුලත් කර එය යථාරූපී අයුරින් පරීක්ෂා කෙරෙයි. ස්ථිතික ශිල්පීය ක්‍රමයේදී ක්‍රමලේඛය සම්පාදනය කර ක්‍රියා කිරීම සිදු නොවෙයි. මෙහිදී කේතය සත්‍යාපනය කිරීම, කියවීම, සමාලෝචනය කිරීම, අනුවරණ කිරීම (Walk through) යනාදිය සිදු කරනු ලබයි.


මීලගට මම සාකච්චා කරනුයේ පද්ධති පරීක්ෂාව පිලිබදවයි. එයට පිවිසුමක් ලෙස නැවතත් මම සමන් මහතාගේ නිවස තැනීමේ ව්‍යාපෘතිය දෙසට ඔබගේ අවධානය යොමු කිරවීමට කැමැත්තෙමි.



සමන් මහතා තම නිවසේ ගුණත්වය පරීක්ෂා කල අයුරු


මේ වන කිට අදාළ සැලසුමට අනුව සමන් මහතාගේ නිවස නිමල් මහතා විසින් ගොඩනගා අවසන්ය. ඒ සදහා සම්පූර්ණ කාලය හරියටම මාස 4 ක් සහ අමතර සතියක කාලයක් මිඩංගු කිරීමට  ඔහුට සිදු විය. මේ කාල පරාසය තුල සමන් මහතා වරින් වර ඉඩමට ගොස් පියවරින් පියවර ඉධි වන සිය නිවසෙහි ප්‍රමිතිය, තම අවශ්‍යතාවන්ට අනුකූලව සැලසුමේ සදහන් වන අයුරින් ඉධි වන්නේද යන වග, නිමාවන් වල ප්‍රමිතිය හා ගුණත්වය සොයා බලන්නට විය. මෙය නිවස සාදන අවධියේදී මෙන්ම වැඩ අවසන් වන විටත් ඔහු විසින් සිදු කළේය. සමහර අවස්ථා වල නිවසේ ඇස්තමේන්තුව හා සැලසුම රැගෙන එහි සදහන් කරුණු හා ප්‍රමිතීන්ට අනුව තම නිවස ඉධි කර ඇත්දැයි ඔහු වරින් වර විවිධ ඉධි කිරීම පියවර වලදී සොයා බැලීය. විශේෂයෙන්ම අත්තිවාරම දමන විට, බිත්ති නංවන විට, වහලය සෙවිලි කරන විට, සිවිලිම හා ටයිල් කරන විට, ජනෙල් දොරවල් සකස් කරන විට හා ඒවා සම්බන්ධ කරන විට, විදුලි හා ජල පද්ධති නිම කරන යන සෑම ප්‍රධාන අවස්ථාවකදීම ඔහු එම ක්‍රියාවන් හා නිමාවන් වල ගුණාත්මක භාවය සොයා බැලීමට උත්සුක විය. ඒ ආකාරයටම නිමල් මහතාද මේ සියල්ල නිවැරදිව අධීක්ෂණය කරමින් සියලුම ඉධි කිරීම් වල ගුණත්වය උසස් අයුරින් පවත්වා ගනිමින් නිවස ඉධි කිරීමට සමත් විය. වරින් වර සමන් මහතාගේ ඉල්ලීම් වලට අනුව හදුනාගත් දෝෂද නිරාකරණය කිරීමට ඔහු උත්සුක විය. මේ ආකාරයට නිවස ඉධි කල පෙදරේරුවන් නිවසේ සැලසුම අනුව දෛනිකව නිම කල කොටස් වල ප්‍රමිතිය හා ගුණාත්මක භාවයන් විශ්ලේෂණය කරමින් නිවස ඉධි කලෝය. එහි ප්‍රතිඵලයක් ලෙස සමන් මහතාට තත්වයෙන් උසස් නිවසක හිමිකම ලගා කර ගැනීමට අවසානයේ භාග්‍ය උදා විය.  

හොදයි, ඉහත ප්‍රයෝගික අත්දැකීමේ සදහන් වන ලෙස නිවසක් තැනීමේදී එය කොතරම් දුරට පරීකෂා කල යුතුද යන්න පිලිබදව ඔබට යම්කිසි අවබෝධයක් ලැබෙන්නට ඇති කියා මා සිතනවා. තොරතුරු පද්ධතියක් නිර්මාණය කිරීම හා සංවර්ධනය කිරීමේදීද තත්වය එසේම වෙයි. දැන් අපි තොරතුරු පද්ධතියක් හා සම්බන්දව මෙම පද්ධති පරීක්ෂාව වැදගත් වන්නේ කෙසේද යන්න විමසා බලමු.


පද්ධති පරීක්ෂාව  


පද්ධති ප්‍රවර්ධන ක්‍රියාවලියේ ඕනෑම අවධියකදී දෝෂ මතු විය හැකිය. එක් එක් අවධියේදී ඇතිවන දෝෂ අනාවරණය කිරීම සදහා යොදා ගන්නා විවිධ ශිල්පීය ක්‍රම ඇත. කෙසේ වෙතත් මෙම කවර ක්‍රමවේදයකදී වුවද සියයට සියයක් නිවැරදි එනම් දෝෂ රහිත පද්ධතියක් ක්‍රියාත්මක කිරීමට හැකියාවක් නොමැත. බොහෝ අවස්ථා වලදී එක එක අදියරේ ඇති විය හැකි දෝෂ මෘදුකාංග කේතකරණ අවධියේදී මතු විය හැකිය. මෙයට හේතු වනුයේ ඊට පෙර අවධි වලදී වලංගුතා පරීක්ෂා හස්තීයව සිදුකරන නිසාය. ක්‍රමලේඛයක් ධාවනය කිරීමේදී ඇති වන දෝෂ වලට අමතරව ක්‍රමලේඛ ප්‍රවර්දනයේදී ඇතිවන සැලසුම් දෝෂ මෙන්ම සේවාදායකයාගේ අවශ්‍යතාව නිවැරදිව සන්නිවේදනය නොවීම නිසා ඇති වන දෝෂද ඇත. ක්‍රමලේඛයක් පළමුවරට ක්‍රියාත්මක කරනු ලබන්නේ පරීක්ෂා අවස්ථාවේදීය. පරීක්ෂා අවස්ථාවක ලබන්නාවූ ප්‍රතිදානය අප බලාපොරොත්තු වන කාර්යය සාධන මට්ටමට ලගා විය යුතුය. මේ නිසා ක්‍රමලේඛ පරීක්ෂාවක් සිදුකරනුයේ එහි ඇති දෝෂ නැති කිරීම සදහා වෙයි.


පරීක්ෂා අවස්ථා (Test Cases)


කිසියම් ක්‍රමලේඛයක් දෝෂ සදහා පරීක්ෂා කිරීම සදහා පරීක්ෂා අවස්ථා හොදින් හදුනා ගත යුතුය. පරීක්ෂා අවස්ථාවක් යනු කිසියම් වූ තොරතුරු පද්ධතියක තොරතුරු හුවමාරුවක් (Transaction) හෝ තොරතුරු විමසුමක් (Query) හෝ පද්ධතිය ඇතුලත දත්ත ප්‍රවාහ (navigation) වීමක් හෝ සම්බන්ධ කෙටුම්පතක් නොහොත් සවිස්තර වාර්තාවකි (Scenario). පරීක්ෂා ක්‍රියාවලියේදී මෙම පරීක්ෂා අවස්ථා අදානයන් වන අතර පද්ධතිය නිවැරදිව ක්‍රියාත්මක වන්නේදැයි දැනගැනීමට වලංගුතා පරීක්ෂා විශාල ප්‍රමානයක් අවශ්‍ය වෙයි. මෙම වලංගුත පරීක්ෂා සංඛ්‍යාව අදාල පද්ධතියේ හැසිරීම හා ක්‍රම්ලෙඛයේ සංකීර්ණත්වය (විවිධ මාර්ග පැවතීම) මතද රදා පවතයි. මේ අනුව ගත් කල පද්ධති පරීක්ෂාව සදහා අතිශය ශ්‍රමයක් පද්ධති සංවර්ධන ක්‍රියාවලියේදී මිඩංගු කල යුතුය. ප්‍රශස්ත පරීක්ෂා අවස්ථාවක කාර්යය ඉටු වන්නේ ක්‍රමලේඛයේ දෝෂ නැති වූ විටදීය. කුඩා ක්‍රමලේඛයක වුවද පවතින ආදානයන් සදහා මුලාංග සංඛ්‍යාව විශාල පරාසයක තිබිය හැකිය. මේ නිසා පරීක්ෂා ක්‍රමයක යතාර්ති අරමුණ වන්නේ ප්‍රශස්ත මට්ටමට අස්සන්න පරීක්ෂා අවස්ථා සමූහයක් තෝරා ගැනීමයි. මේ අනුව සකස් කරනු ලබන පරීක්ෂා අවස්ථාවක ප්‍රධාන කොටස් තුනක් පැහැදිලිව හදුනා ගත හැකිය, එනම්;

  • පරීක්ෂා අවස්ථාව සදහා යොමු කරන පරීක්ෂා දත්ත (Test Data)
  • ක්‍රමලේඛයෙන් සත්‍ය වශයෙන් බලාපොරොත්තු වන ප්‍රතිදාන (Expected Output)
  • පරීක්ෂාවේ ප්‍රතිඵල ලෙස ලැබෙන සත්‍ය ප්‍රතිදාන (Actual Output)

මෙහිදී පරීක්ෂා දත්ත යනු ක්‍රමලේඛයක නිවැරදිතාව පරීක්ෂා කිරීමට පරීක්ෂා අවස්ථාවේදී එම ක්‍රමලේඛය සදහා යොදන ආදාන වෙයි. එම ආදාන යෙදු විට අදාළ ක්‍රමලේඛය නිවැරදි නම් ලැබෙන ප්‍රතිදාන බලාපොරොත්තුවන ප්‍රතිදාන ලෙස හදුන්වන අතර සත්‍ය ලෙස පරීක්ෂාව සිදු කල විට ලැබෙන ප්‍රතිදාන සතය ප්‍රතිදාන ලෙස හැදින්විය හැකිය. සත්‍ය ප්‍රතිදාන බලාපොරොත්තුවන ප්‍රතිදාන හා සමාන නම් එම දෝෂ අවස්ථාව සදහා ක්‍රමලේඛය නිවැරදි වන අතර එසේ නොවුනහොත් අදාළ ක්‍රම්ලෙඛයේ දෝෂ පවතියි. මෙය තවදුරටත් පැහැදිලි කර ගැනීමට මීට ඉහතදී සාකච්චා කල පාසල් පුස්තකාල තොරතුරු පද්ධතිය හා සම්බන්ද පොත් විස්තර සෙවීම සදහා සම්පූර්ණ කල ක්‍රමලේඛය ගැන සිතමු. මෙම ක්‍රමලේඛය පරීක්ෂා කිරීම සදහා අපට විවිධ පරීක්ෂා අවස්ථා කිහිපයක් යෝජනා කල හැකිය. එසේ ඉදිරිපත් කල පරීක්ෂා අවස්ථා කිහිපයක් ඔබට තේරුම් ගැනීම සදහා පහත ඉදිරිපත් කර ඇත.


ක්‍රමලේඛය - පාසල් පුස්තකාල තොරතුරු පද්ධතිය හා සම්බන්ද පොත් විස්තර සෙවීම සදහා සම්පූර්ණ කල ක්‍රමලේඛය

පරීක්ෂා අවස්ථා 1 - සෙවීම සදහා කිසියම වූ අර්ථයක් සහිත අකුරු පේලියක් ලබා දීම

  • පරීක්ෂා දත්ත : "Software Engineering"
  • බලාපොරොත්තු වන ප්‍රතිදාන : Software Engineering විෂය හා සම්බන්ධ පොත් විස්තරයක්
  • සත්‍ය ප්‍රතිදාන :  Software Engineering විෂය හා සම්බන්ධ පොත් විස්තරයක් 

පරීක්ෂා අවස්ථා 2 - සෙවීම සදහා කිසියම වූ අර්ථයක් රහිත ඉලක්කම් කිහිපයක් ලබා දීම 

  • පරීක්ෂා දත්ත : 12322223
  • බලාපොරොත්තු වන ප්‍රතිදාන: 12322223 ලෙස තොරතුරක් හමු නොවේ යන වැරදි හැගවීමේ ප්‍රකාශය. 
  • සත්‍ය ප්‍රතිදාන:  12322223 ලෙස තොරතුරක් හමු නොවේ යන වැරදි හැගවීමේ ප්‍රකාශය දර්ශනය නොවීම. 

පරීක්ෂා අවස්ථා 3 - සෙවීම සදහා කිසිවක් ලබා නොදීම.  

  • පරීක්ෂා දත්ත : යතුරු වචනය යොදන කොටස හිස්ව පැවතීම.
  • බලාපොරොත්තු වන ප්‍රතිදාන: කරුණාකර යතුරු වචනයක් යොදා සෙවීම කරන්න යන පණිවිඩය දර්ශනය වීම.
  • සත්‍ය ප්‍රතිදාන : කරුණාකර යතුරු වචනයක් යොදා සෙවීම කරන්න යන පණිවිඩය දර්ශනය නොවීම.


ඉහත පරීක්ෂා අවස්ථා වල ප්‍රතිඵල දෙස බලන විට පරීක්ෂා අවස්ථා 1 සදහා ක්‍රමලේඛය සාර්ථක වී ඇති අතර 2 හා 3 අවස්ථා සදහා එය අසාර්ථක වී ඇත. එබැවින් එම ක්‍රමලේඛයේ දෝෂ ඇති බැවූ අපට පැහැදිලි වන අතර ඒවා ඇති වන්නේ කුමන තත්ත්ව යටතේද යන්න මෙම පරීක්ෂා අවස්ථා විමසීමෙන් සොයාගත හැකි වෙයි. එසේ දෝෂ අනාවරණය වූ විට ක්‍රමලේඛකයන් විසින් එම දෝෂ නිදොස් කොට නැවත ක්‍රමලේඛය සකස් කරනු ලබයි.


පද්ධති පරීක්ෂා කිරීමේ ආකාර

විවිධ අවස්ථා වලදී විවිධ අරමුණු මුල් කරගනිමින් තොරතුරු පද්ධතියක් පරීක්ෂා කිරීමට භාවිතා කරන ක්‍රම කිහිපයක් පිලිබදව කෙටි විග්‍රහයක් කරීමට මෙම කොටසින් මා බලාපොරොත්තු වෙමි. එම පරීක්ෂා කිරීමේ ආකාර වන්නේ;
  • කාල මංජුසා පරීක්ෂාව (Black Box Testing) 
මෙම පරීක්ෂාව සිදු කරනුයේ ප්‍රතිග්‍රහණ අවධියේදීය. මෙහිදී පද්ධතිය සංවෘත පෙට්ටියක් ලෙස සලකයි. මෙහිදී පරීක්ෂකට පද්ධතියේ අභ්‍යන්තරය ගැන අවබෝධයක් තිබීම අවශ්‍ය නොවෙයි. එනම් මෙහිදී පරීක්ෂක විසින් ආදාන ඇතුලත් කර ප්‍රතිදාන වල නිරවද්‍යතාව පරීක්ෂා කරනු ලබයි. අපේක්ෂිත ප්‍රතිදාන සමග එම ප්‍රතිඵල නොගැලපෙයි නම් ඔහු එය දෝෂයක් ලෙස වාර්තා කරනු ලබයි.  
  • ශ්වේත මංජුසා පරීක්ෂාව (White Box Testing)
කේත පරීක්ෂාව සිදු කිරීමට පද්ධතිය ක්‍රියාත්මක කර ඇති ආකාරය ගැන දැනීමක් අවශ්‍ය වෙයි. කේත පරීක්ෂාවට පද්ධතිය තුල දත්ත ගැලීම විශ්ලේෂණය, ගැලීම පාලනය, කේත පරීක්ෂාව මගින් පරීක්ෂාවට ලක් කෙරෙයි. දෙවනුව මෘදුකාංග වල සඵලතාව හා නිරවද්‍යතාව පරීක්ෂා කිරීමට පරීක්ෂක විවේචනාත්මක දෘෂ්ටි කෝණයකින් ඒ දෙස බැලිය යුතුය. තෙවනුව පරීක්ෂාව පලදායි ලෙස ක්‍රියාත්මක කිරීමට කේත පරීක්ෂවේදී ක්‍රියාත්මක කිරීමට කේත පරීක්ෂවේදී ක්‍රියාත්මක කරන වෙනත් ආකාරයේ මෙවලම් හා ශිල්පීය ක්‍රම පිලිබදවත් පරීක්ෂකවරයා දැනුවත් වීම වැදගත් වෙයි. කේත පරීක්ෂවේදී මෙම අවශ්‍යතා තුන තනි තනිවම ක්‍රියාත්මක නොවන අතර ඒවා එකවිටම ක්‍රියාත්මක වෙයි. එය පහත පරිදි දැක්විය හැකිය.

 

  • ඒකක පරීක්ෂාව (Unit Testing)
මෙහිදී පද්ධතියේ එක් එක් සංරචක තනි තනිව පරීක්ෂා කෙරෙයි. මෙම පරීක්ෂාව කරනු ලබන්නේ ක්‍රමලේඛක විසින් වන අතර ඔහුගේ සමයුරු විසින් එය සත්‍යාපනය කරනු ලබයි. මෙම පරීක්ෂාවේ අරමුණ වන්නේ මොඩියුලයේ අභ්‍යන්තර තර්කය පරීක්ෂා කිරීමයි. ක්‍රමලේඛකයා සියලුම වලංගු නොවන තත්ත්ව පරීක්ෂා කර එය කවර තත්වයක් තුලදී හෝ වැඩසටහන් බිදුමක් තිබේදැයි පරීක්ෂා කල යුතු අතර ක්‍රමලේඛයේ කාර්යබද්ධතාවද පරීක්ෂා කල යුතුය. මෙහිදී සියලුම කෙතක ආවරණය වන පරිදි මෙම පරීක්ෂාව පිළිබද හොද තක්සේරුවක් ක්‍රමලේඛක විසින් ලබා දිය යුතුය. 


  • ඒකාබද්ධ පරීක්ෂාව (Integration Testing)
මෙම මට්ටමේදී බොහෝ ඒකක පරීක්ෂිත මොඩියුල උප පද්ධතිවලට එක් කර නැවත පරීක්ෂා කරනු ලබයි. මෙම පරීක්ෂාවේ අරමුණ වනුයේ මොඩියුල නිසි ආකාරව ඒකාබද්ධ කර ඇත්දැයි සොයා බැලීමයි. වෙනත් ආකාරයකින් කියතොත් මෙමගින් සිදුකරනුයේ මොඩියුල අතර අතුරු මුහුණත් අවධාරණයෙන් යුතුව පරීක්ෂා කිරීමයි.


  • පද්ධති පරීක්ෂාව (System Testing)
මෙහිදී සම්පූර්ණ මෘදුකාංගය පරීක්ෂාවට ලක් කෙරෙයි. මෙම ක්‍රියාව සදහා සමුද්දේශ ලේඛනයක් ලෙස යොදා ගනු ලබනුයේ පද්ධති අවශ්‍යතා ලේඛනයයි. මෙහි අරමුණ වන්නේ මෘදුකාංගය එහි අවශ්‍යතා සපුරා ඇත්ද යන්න සොයා බැලීමයි. පද්ධති පරීක්ෂාව වඩාත් ඵලදායි වන්නේ ස්වාධීන කණ්ඩායමක් විසින් පාලිත පරිසරයකදී එය සිදු කරන විටයි. මෙම ක්‍රියාවට අමතරව පද්ධතියේ සුරක්ෂිතතාව, ප්‍රතිසාධනය (Recovery) හා පද්ධතිය නැවත නියම ආකාරයෙන් පටන් ගන්නේද යන්න පරීක්ෂාවට ලක් කල යුතුය.


  • ප්‍රතිග්‍රහණ පරීක්ෂාව (Acceptance Testing)
ප්‍රතිග්‍රහණ පරීක්ෂාව සදහා යොදා ගනු ලබන්නේ දත්තය. මෙහිදී සේවාදායකයාට, ප්‍රවර්ධනය කල මෘදුකාංගය සතුටුදායක ලෙස ක්‍රියාත්මක වන බව ආදර්ශනය කර පෙන්විය යුතුය. මෙහිදී පරීක්ෂාවට ලක් කරනුයේ පද්ධතියේ සැබෑ හැසිරීමයි. සේවාදායකය ප්‍රවර්ධිත පද්ධතිය අනුමත කිරීම හෝ ප්‍රතික්ෂේප කිරීම සිදු කරනුයේ මෙම පරීක්ෂාවෙන් පසුවයි.



මෙම පරීක්ෂා කිරීම් සාර්ථකව අවසන් වීමෙන් හැගී යන්නේ පද්ධතිය ක්‍රියාත්මක කල හැකි සාධනීය මට්ටමක ඇති බවයි. එබැවින් පද්ධති පරීක්ෂාවෙන් අනතුරුව පද්ධතිය ක්‍රියාත්මක් කිරීමේ අවධිය ආරම්භ කරයි.

පද්ධති ක්‍රියාත්මක කිරීම හා නඩත්තුව

System Implementation and Maintenance



පද්ධති ක්‍රියාත්මක කිරීම හා නඩත්තුව පිලිබදව කෙටි විග්‍රහයක් කිරීම මෙම පරිච්චේදයේ අරමුණ වෙයි. මුලින්ම පද්ධති ක්‍රියාත්මක කිරීම පිලිබදව විමසා බලමු.

පද්ධති ක්‍රියාත්මක කිරීම

පවතින තොරතුරු පද්ධතියෙන් නව තොරතුරු පද්ධතියක් වෙත යොමු වීම සදහා අනුගමනය කරන සංවිධානාත්ම ආයතනික ක්‍රියාපිළිවෙත පද්ධති ක්‍රියාත්මක කිරීම ලෙස හදුන්වයි. මෙහිදී සාර්ථකව නිම කරගත් නව පද්ධතිය ක්‍රියාත්මක කිරීම ආරම්භ කරයි. මීට අමතරව මෙහිදී සමස්ත පද්ධතියේ ක්‍රියාකාරීත්වය සම්පූර්ණයෙන් ලේඛනරූඩ කල යුතු අතර පද්ධතිය භාවිතා කරන ආකාරය ගැන සියලුම පරිශීලකයන් දැනුවත් කිරීම ද සිදු කල යුතුය. එසේම භාවිතා කිරීම සදහා නිම කල පද්ධතිය අදාළ සේවාදායකයාගේ ආයතනය තුල ස්ථාපනය කල යුතු අතර මෙසේ පද්ධති ස්ථාපනය කිරීමේ විවිධ පියවර ඇත. එම පද්ධති ස්ථාපනය කිරීමේ පියවර පහත විස්තර කර ඇත.  
  • ඍජු ස්ථාපනය (Direct Implementation)
මෙහිදී පැරණි පද්ධතිය ඉවත් කොට නව පද්ධතිය පිහිටුවීම සිදු කරයි. එය රූපසටහන් අංක 22 න් දක්වා ඇත. නව පද්ධතියේ දෝෂ තිබුණහොත් එය එහි පරිශීලකයන්ට ඍජු ලෙස බලපානු ඇත. එබැවින් ඍජු ස්ථාපනය අවධානම් ක්‍රියාවකි. එනමුදු මේ සදහා වය වන ස්ථාපන පිරිවැය අඩුය. 
රූපසටහන 22
  • සමාන්තර ස්ථාපනය (Parallel Implementation)
මෙහිදී නව පද්ධතිය පැරණි පද්ධතිය පවතින විටදීම ක්‍රියාත්මක කරනු ලබයි. පැරණි පද්ධතිය ඉවත් කිරීම ආයතනයේ කළමනාකාරීත්වයේ තීරණයක් මත නව පද්ධතිය ස්ථාපනය කර කාලයක් භාවිතා කිරීමෙන් පසුව සිදු කරයි. සමාන්තර ස්ථාපනය සිදු කරන අයුරු රූපසටහන් අංක 23 න් දක්වා ඇත. මෙහිදී පැරණි පද්ධතිය කලක් භාවිතා කරන බැවින් සමාන්තර ස්ථාපනයේ අවධානම අඩුය. එනමුත් පද්ධති දෙකක එකවර ක්‍රියාත්මක කිරීමට කණ්ඩායම් දෙකක් අවශ්‍ය බැවින් පිරිවැය අධික වෙයි. එසේම පද්ධති දෙකක සම ක්‍රියාකාරීත්වය නිසා සමහර අවස්ථා වලදී පරිශීල්කයන්ටද තීරණ ගැනීමේදී ගැටළුකාරී තත්ත්ව වලට මුහුණ දීමට සිදු වෙයි. පද්ධති දෙකක සම ක්‍රියාකාරීත්වය කණ්ඩායමට ඔරොත්තු නොදෙන අවස්ථා පවතින හා පද්ධති වල සංකීර්ණත්වය වැඩි අවස්ථා වලදී මෙම සමාන්තර ස්ථාපනය සුදුසු නොවෙයි.  
රූපසටහන 23
  • අදියරමය ස්ථාපනය (Phased Implementation)
නව පද්ධතිය අදියරමය වශයෙන් පිහිටුවමින් පැරණි පද්ධතියෙන් ඉවත් වීම අදියරමය ස්ථාපනය ලෙස හදුන්වයි. මෙහිදී ස්ථාපනය සදහා දරන පිරිවැයද , අවධානමද, ව්‍යාපාර ක්‍රියාරීත්වයට බාදා ඇති වීමද අවම වෙයි. කලින් කලට නව තොරතුරු පද්ධතියේ නිවවුම් නිදහස් කරන බැවින් ඉතා පරිස්සමින් සිදු කරන පද්ධති වෙළුම් කළමනාකරණය කිරීමක් මෙහිදී අවශ්‍ය වෙයි.
  • නියමුමය ස්ථාපනය (Pilot Implementation)
නව පද්ධතිය ආයතනයේ එක අංශයක මුලින් පිහිටුවා, මනා වූ පරිපාලනයකින් යුතුව එය අනෙකුත් අංශ වෙත ව්‍යාප්ත කර අවසානයේදී සමස්ත ආයතනය තුලම පිහිටුවීම නියමුමය ස්ථාපනය ලෙස හදුන්වයි. නියමුමය ස්ථාපනයේදී තොරතුරු පද්ධතියේ ඇති දෝෂ ඍජු ස්ථාපනයේදී මෙන් මුළු ආයතනයටම බලපෑමක් කෙලින්ම ඇති නොකරයි. එසේම සමාන්තර ස්ථාපනයේදී මෙන් තොරතුරු පද්ධති දෙකක සම ක්‍රියාකාරීත්වයද මින් ඉවත් කර තිබීමද වාසියකි. නමුත් මෙම නව පද්ධතිය පැරණි පද්ධතිය ක්‍රියාත්මක වන අනෙකුත් අංශ හා සම්බන්ධ කිරීමට අවශ්‍ය වූ විට අමතර ක්‍රමලේඛයක් අවශ්‍ය වීම මෙම නියමුමය ස්ථාපනයේ අවාසියක් ලෙස දැක්විය හැකිය. නියමුමය ස්ථාපනය සිදු කරන අයුරු පහත රූපසටහන් අංක 24 න් දක්වා ඇත.
රූපසටහන 24
කෙසේ වුවද නව පද්ධතියක් පිහිටුවීමේදී දත්ත වල සිදුවන පරිවර්තනයන්, පැරණි පද්ධතිය ඉවත් කල යුතු ආකාරය හා ආයතනයේ ව්‍යාපාර රටාවන් යන සාධක පිලිබදව හොද අවබෝධයක් තිබීම වැදගත්  වෙයි. මීලග කොටසින් පද්ධති නඩත්තුව පිලිබදව කෙටි විග්‍රහයක් කිරීමට අපේක්ෂා කරමි.

පද්ධති නඩත්තුව


නව පද්ධතියක් ස්ථාපනය කල පසුව එය ක්‍රියාත්මක කිරීමේදී විවිධ ගැටළු පැන නගයි. පරිගණක පද්ධතියක ඇති විශේෂත්වය වනුයේ තාක්ෂණයේ සීග්‍ර දියුණුවත් සමග නිරතුරුවම යාවත් කාලීන කල යුතු වීමයි. පද්ධති නඩත්තු අදියරේදී පද්ධතියට බලපාන වෙනස් වීම් පරීක්ෂා කර ඒ සදහා අවශ්‍ය යෝජනා පද්ධති නඩත්තු කමිටුව මගින් ආයතනයේ කළමනාකාරීත්වයට ඉදිරිපත් කෙරෙයි. එසේම පද්ධති නඩත්තු කමිටුව හා ආයතනයේ කලමකාරීත්වය විසින් අවධානය යොමු කල යුතු නිර්ණායක කිහිපයක් පවතයි. පද්ධතියක අරමුණු, කාර්යක්ෂමතාව, පලදායිතාව, යොදා ගන්න තාක්ෂනය, වැයවන පිරිවැය, ආරක්ෂාව හා පද්ධතිය මගින් ලැබෙන ප්‍රතිලාභ ඒ අතරින් ප්‍රධාන වෙයි. පද්ධති නඩත්තු අවධියේදී හදුනාගන්නා වෙනස් වීම් සිදු කල යුත්තේ ඉහත වෙනස් වීම් වලට අනුකූලවයි.  


 

Related Posts

Post a Comment