එකට ගොඩ යමු- දෙවෙනි කොටස (වැඩේ පටන් ගමු)

HAneo

Well-known member
  • Jan 30, 2007
    12,971
    29,155
    113
    Homagama
    20012020009.jpg


    මේක කිසිසේත්ම ඔයාල මෙච්චරකල් කල නෝට් බලලා හෝ වීඩියෝ බලලා දෙයක් ඉගෙන ගන්න එකට සම්පුර්නෙන් වෙනස් වෙයි. තනිකර ප්‍රැක්ටිකල් එක්ක යන වැඩක් කරන්න යන්නේ. මම දැඩිව විෂවෂ කරන දෙයක් පළපුරුද්ද කියන එක අනික් හැම දේටම වඩා උඩින් තියෙන්නේ කියන එක. මේ ෆලෝ එකත් එක්ක යන අයට තමා මේක වැදගත් වෙන්නේ. කම්මැලි කමට ඉන්න එපා. වැඩේ එක්කම ඉන්න කියල මුලින්ම හැමෝගෙන්ම ඉල්ලනවා

    මේකෙදි ඔයාලගේ උනන්දුව කැපවීම තමා ඕනේ. මහන්සි වෙලා වැඩ කරන්න ඕනේ නැ . එකට තමා ස්මාර්ට් වීම කියන දේ තියෙන්නේ. මුල ඉදලා අගටම කියවලා බලලා වැඩේ පටන් ගන්න ඕනේ. මේක කරන්නේ සොෆ්ට්වෙයා ගැන මොනම හෝ දැනුමක් නැති එකෙක්ටත් හරියන විදිහට. ඒ නිසා තමන්ට අදාළ තැනින් පනින්න ඕනේ. ඒ වගේම කලිනුත් කිව්වා වගේ උබලට තියන අදහස් චෝදනා වැරදි තව එකතු වෙන්න ඕනේ දේවල් සේරම මේකේ දාපල්ලා. ඒ ඔක්කොම ආවාම මේක PDF එකකින් මෙතනම දානවා.

    මේක ඉතාමත් කෙටියෙන් කියන්නේ. අතිශයින්ම ඕනේ ටික විතරයි. මොකද අපිට හුගක් දුර යන්න තියනවා. ඉතින් පොඩි දෙයක් හරි තේරුනේ නැත්නම් හෝ ප්‍රශ්න තියේ නම් අහන්න. පුළුවන් හැම කෙනෙක්ම උත්තර දෙන්න.

    කෙලින්ම වැඩේට බහිමු
    ===================

    සොෆ්ට්වෙයා එකක් හදන්නේ යම් බිස්නස් එකක තියන අතින් කරන්න ඕනේ වැඩ ටික (manual works) අඩු කරගන්න හෝ නැත්තටම නැති කරගන්න. උදාහරණ විදිහට කඩේක බඩු වල විකුණුන දේවල් අතින් කොලේක ලියනවට වඩා එක පරිගණකට ඇතුලත් කලාම අපිට ලේසියෙන් දවසේ sale එකේ වටිනාකම බලාගන්න පුළුවන්. ඒ වගේම තමන්ට ඒවගෙන් තියන profit එහෙම ලේසියෙන් බලාගන්න පුළුවන්. මේක පොතක කරලා බලනවා නම් සැහෙන වෙලාවක් පිටු පෙරලා පෙරලා ගණන් හදන්න වෙනවා.

    සොෆ්ට්වෙයා සහ බිස්නස් මොඩල් එක
    ===============================


    අපි උඩින් කිව්වා වගේ සොෆ්ට්වෙයා එකක් වැදගත් වෙන්නේ බිස්නස් එකකට. එක උබලගේ ගෙදර දෙයක් හරි වෙන්න පුළුවන්. බිස්නස් මොඩල් එක කියන්නේ කම්පැනි එකක් ලාබ හොයන්න හෝ වැඩක් ලේසි කරන්න යොදාගන්න ක්‍රම වේදය. මේකට අපේ බිස්නස් සෙට් එක හොද නිර්වචනයක් දීලා එහෙම ගන්න අනික් අයට දැනගන්න.. ඉතින් අපි කරන්නේ දැනට අමාරුවෙන් බර කරත්තෙන් අදින මේ බිස්නස් මොඩල් එකට පරිගණක වලින් විසදුමක් දෙනවා. එක දෙන්නේ සොෆ්ට්වෙයා එකක් විදිහට. අපිට සොෆ්ට්වෙයා එකක් හදන්න දුන්නම මේ බිස්නස් මොඩල් එක හරියටම නුලටම හොයාගන්න එක තමා හොදම සොෆ්ට්වෙයා එකක හොදටම කරන්න ඕනේ. මේක දැනගැනීමේ ප්‍රතිශතය මත සොෆ්ට්වෙයා එක කොච්චර perfect ද කියන එක රදා පවතිනවා

    හරි දැන් ඔය මගුල හදන්නේ කොමද?
    ==============================

    උඩින් කිව්ව බිස්නස් එකට සොෆ්ට්වෙයා එකක් හදනකොට ටොයිලට් එකට ගිහින් බොක දානව වගේ එක පාර කරන බැ . එකට ස්ටෙප්ස් ගොඩක් තියනවා. මේ ස්ටෙප්ස් ටික හරිම වැදගත්. ලෝකේ එක එක තැන් වල මේවා එක එක විදිහට වෙනවා. සමහර තැන් වල සම්පුර්ණයෙන් වෙනස් ක්‍රමයක් තමන්ටම හදාගන්නවා මේකට. ඉතින් අපි බලමු සාමන්යෙන් කරන්න ඕනේ දේ. ඉස්සරහට යනකොට අපේ වැඩේ හොදට දන්නා අය මේකට විවිද දේවල් එකතු කරයි කියල මම හිතනවා.

    සොෆ්ට්වෙයා එකක් හදන පියවරවල්
    ------------------------------------------------

    මේ පල්ලෙහායින් තියන ටික තම බිස්නස් එකක් සොෆ්ට්වෙයා එකකට හරවනකොට කරන්න තියන වැඩ ටික.

    1. Planning

    2. Analysis
    3. Design
    4. Development
    5. Test
    6. Acceptance

    7. Maintenance

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

    මේ ලෝකේ ඕනෙම වැඩක් කරන්න කලින් පොඩි ප්ලැන් එකක් ගහගන්න එක මිනිසුන්ගේ පුරුද්දක් නේ. උබලා බොන්න ගියත් සෙට් එකාගෙන් අහනව නේ මොනවද ගහන්නේ? කොහෙද බොන්නේ අපි?එකා කීය ගානේ දානවද? නිකන් බොන්න එන හිරලුවෝ හලන්නේ කොහොමද? වගේ දේවල්. අන්න එකට තමා Planning කියන්නේ. සොෆ්ට්වෙයා එකක් හදන්න කලින් මුලිනම් ආපි ඒ වැඩේ වෙන්නේ කොහොමද කියල plan කරන්න ඕනේ. නැත්නම් වැඩේ හබක්. මේකෙදි අපි කස්ටමර් එක්ක කතා කරගනන්ව මොනවද ඕනේ කියල සහ අපි දෙන්නේ මෙන්න මේ ටික තමා කියල. නැත්නම් ඌ අපි හදන එකෙන් රෙදි ටික හෝදන්නත් හදලා දෙන්න කියයි. ඒ නිසා අපි boundary එකක් හදාගන්නවා මෙන්න මේක ඇතුලේ තියන දේවල් විතරයි දෙන්නේ කියල. ඊට පිට පනින්න ඕනේ නම් අව්ලක් නැ වැඩිපුර අරගෙන කරන්න වෙනව. එතැනදී අලුත් boundary එකක් හැදෙනවා. එක තමා Final boundary එක නැත්නම් System boundary එක කියන්නේ. එතනින් එහා හෙන ගැහුවත් හදන්නේ නැ

    Analysis කරනවා කියන්නේ අපි අර උඩින් කිව්ව බිස්නස් එක ගැන වැඩි දුර හොයා බලනවා. මොකක්ද එකන් වෙන්නේ වගේ බිස්නස් මොඩල් එක ගැන ඉතා හොද දැනුමක් ගණන්ව මේකෙදි.

    Design කරන එකෙන් කරන්නේ අර Analysis කරලා ගත්ත තොරතුරු එක්ක මේ හදන සොෆ්ට්වෙයා එක කොහොමද තියෙන්න ඕනේ කියල සලකල බලන එක. මේකෙදි Data save කරන විදිහ , බිස්නස් මොඩල් එකේ ප්‍රොසෙස් එක හරියටම හදාගන්න එක., හදන සොෆ්ට්වෙයා එකේ User Interfaces ගැන බලන එක වගේ වැඩ ගොඩක් තියනවා කරන්න. මේක සහ Analysis එක අපි සැහෙන්න ඇතරලා දාන පියවරල් දෙකක්. නමුත් සොස්ෆ්ට්වෙයා එකක් හදද්දී තියන ඉතාමත් වැදගත් පියවරවල් දෙක මේක. මේ දෙක වැරදුනොත් හදන එක රුවිතෙට යනවා

    Development කියනේ පුතාල අර උඩින් කිව්ව ස්ටෙප් දෙකේදී අපි ඩිසයින් කරගත්ත විදිහට සොෆ්ට්වෙයා එකක් හදන එක. මේක කරන්න දේවල් ගොඩක් ඕනේ වෙනවා. එකෙන් මුලික දේ Programing Language එකක් එකෙන් තමා ඉඩ දී අපි සැලසුම් කල පියවරවල් වලට වැඩේ වෙන්න හදන්නේ. මේක එක්ක තව ටුල් ගොඩක් එකතු වෙලා තම මේ වැඩේ වෙන්නේ. අපි ඒවා මේ ගැන වැඩිදුර කතා කරන නුලේදී බලමු. වැදගත් දෙයක් තමා Programing Language ඉගෙන ගන්න අය මතක තියාගන්න්න ඕනේ තමන් කරන දේට උඩින් තව පියවරවල් 3 ක් තියනවා කියන එක. ඒ උද පියවරවල් තුන නැතුව හොද වැඩ කාරයෙක් වෙන්න හරිම අමාරුයි.

    Test කරද්දී තමා අහුවෙන්නේ අපි හදපු එකේ ගහලා තියන බුල් ටික. මේකෙන් කරන්නේ පුතාල අර Design පියවරේදී අපි මවාගත්ත කෙල්ලද මේ හදලා තියෙන්නේ කියන එක. මේකෙදි ටෙස්ට් වර්ග ගොඩක් තියනවා. unit test , integration test , regression test වගේ ටෙස්ට් වර්ග ගොඩක්. මේකට ඉන්නවා වෙනම ඕපාදුප කාපර්ලා . උන්ට වචනේ වැරදුනත් පෙන්න ඕනේ. මේ අය තමා සොෆ්ට්වෙයා එක ඔකේ කියල ෆයිනල් කමාන්ඩ් එක දෙන්නේ. මෙතනින් පස්සේ සොෆ්ට්වෙයා එක සම්පුර්ණයෙන් වගේ හදලා ඉවරයි කියන්න පුළුවන්. මේක වෙන විදිහත් වෙනම ත්‍රෙඩ් එකකින් අපි බලනවා

    දැන් මේ හදලා ටෙස්ට් කලාට වැඩක් නැ ඕක උන්ට ඕනෙම විදිහට තියනවා කියල අපිට මේක හදන්න දුන්න සෙට් එක Confirm කරන්න ඕනේ. අන්න එකට අපි කියන්නේ Acceptance නැත්නම් User Acceptance Testing කියල. මේක කරන්නේ කස්ටමර් ගේ පැත්තේ සෙට් එකක්. උන්ට අපි හදපු සොෆ්ට්වෙයා එකේ ට්‍රයල් එකක් දෙනවා. උන් එක උන්ගේ සෙට් එක එක්ක හොදට ටෙස්ට් කරනවා , උන්ගේ ඇත්ත ඩේටා දාල බලනවා. දාල ෆයිනල් රිපෝට් එකක් දෙනවා. එකේදී වෙනස්කම් කරන්න ඕනේ නම් මුලින් බලනවා අර උඩ එකග උන boundary එක ඇතුලේ වෙනස් කමක් ද ඉල්ලන්නේ කියල. එහෙම නම් කරලා දෙනවා. නැත්නම් ගානක් අරන් තමා කරලා දෙන්නේ

    අන්තිමට ඉතින් හදාගත්ත දරුවා බලාගන්න තමා තියෙන්නේ. අසනීප අවාම බෙහෙත් දෙන්න ඕනේ. ඉස්පිරිතාලේ ගෙනියන්න ඕනේ අන්න ඒවා තමා Maintenance කියන්නේ. මේකට වෙනම ටීම් එකක් ඉන්නවා. ඒ වගේම සාමන්යෙන් customer service line එකක් හදනවා අපි. එකේදී customer calls , complains . subjections වගේ ඒවා ලොග් කරගනන්ව. මේ line එකේම කැල්ලක් තමා customer support team එක . ඒ අය තමා කස්ටමර් ලා දෙන හැම දේම බාරගන්නේ. එතනින් හදලා දෙන්න පුළුවන් දේවල හදලා දෙනවා. බැරි දේවල් ඩිවලොප්මන්ට් ටීම් එක පැත්තට දානවා. මේකට අපි වෙනම සර්විස් චාජ් එකක් අනිවාර්යෙන් අය කරනවා. සොෆ්ට්වෙයා ගෙඩි පිටින් හදලා දෙනවා කියන්නේ බොරු කතා. මොකද හදපු උන්ට වඩා අලුතෙන් එකට අත ගහන එකෙක් ඒ ගැන දන්නේ නැනේ.

     

    HAneo

    Well-known member
  • Jan 30, 2007
    12,971
    29,155
    113
    Homagama
    කිරියේ කව්රුත් දන්නා DevOps.
    =======================

    ඔන්න දැන් නොදන්නා එකෙක්ටත් තියනවා සරල සමනය දැනුමක් වෙන්නේ මොකක්ද කියල. දැන් උබලට පේනවා ඇති උඩින් කිව්ව steps 7 එකිනෙකට බැදෙනවා කියල. උදාහරණ විදිහට Planning ස්ටේජ් එකේදී වෙන හැම වැඩක්ම වගේ එතනින් පල්ලෙහා ඉන්න උන් දැනගන්න ඕනේ. ඒ වගේම Analysis සහ Design දෙකේදී උන දේවල් Development කරන උන් දැනගන්නම ඕනේ. මිට සැහෙන්න කලින් මේ ස්ටෙප් අතර සන්නිවේදනය උනේ තනිකර දොක්යුමන්ට් සහ වෙනත් මද්යකින්. එක පැත්තක ඉන්න උන් දන්නේ නැ අනික් පැත්තේ වෙන දේවල්. උන්ට වැඩක් නැ කියල අහක දානවා. මෙන්න මේක සැහෙන කාලෙක ඉදන් තිබ්බ හෙනයක් මේ පැත්තේ. ඕක කඩන්න තමා මේ DevOps කියන දේ ගෙනාවේ.

    මේකෙදි අර උඩින් කිව්ව ස්ටෙප් 7 ටම අදාළ උන් එකම පිට්ටනියකට දාල තමා මැච් එක ගහන්න දෙන්නේ. එකට වෙනම සොෆ්ට්වෙයා තියනවා විවිද වර්ගේ. ඉතින් අපිත් ඒ වගේ සොෆ්ට්වෙයා එකක් පවිච්චි කරනවා මේ ස්ටෙප් 7 සම්බන්දෙ තියාගන්න. එකට අපි සරලව කියනවා agile methodology කියල. ඒ වචනේ උබල වැඩිය හිතන්න එපා දැනට . වැඩේ කරගෙන යනකොට තේරෙයි මොකක්ද කියල.

    agile methodology එකට තමා අපි මේ සොෆ්ට්වෙයා එක ඉස්සරහට ගෙනියන්නේ. ඉතින් මුල ඉදන් උබලට කියල දෙනවා මේක කරන්නනේ කොහොමද කියල


    විශේෂ දේවල්.
    ===========

    1. මේකෙදි සමහර දේවල් කියල පැහැදිලි කරන්න අමාරුයි. එහෙම ඒවා වීඩියෝ එකක් හදලා දාන්න තමා හිතන් ඉන්නේ. ඒ ගැන දන්නා අපේ උන් ඒ වගේ ඒවා බාරගෙන පොඩි වීඩියෝ එකකින් එක පැහැදිලි කරලා දෙන්න. සැහෙන වටිනවා. ඒ වගේම උබලා එක කරද්දී උබලට් සුපිරි දැනුමක් එනවා. වෙන එකෙක්ට දෙයක් කියල දුන්නම උබලට එන තෘප්තිය තියනවා. එකෙන්ම උබලා ගොඩ යනවා කියන එක ප්‍රක්ටිකලි මම දන්නවා.

    2. අපි මේකේ කරන දේවල් වලට පිටින් සොෆ්ට්වෙයා ඕනේ වෙනවා. ඒවා හුගක් වෙලේට ෆ්‍රී දෙන්නේ. ඉතින් මේකේ ඒවා කිව්වම උබලා පොඩ්ඩක් පිටින් එක බලල පිට දැනුම ගන්න ඕනේ. හැම දේම දෙනකන් ඉන්න එපා. එකෙන් උබලගේ ටැලන්ට් එක සැහෙන්න බහිනවා. තනියෙන් හොයාගන්න හුණු බෙට්ටත් දෙන මැණිකට වඩා වටිනවා කියල මතක තියාගන්න්න ඕනේ

    3. ඕනෙම දෙයක් ගැන ඕනෙම වෙලාවක ප්‍රශ්න අහන්න බය වෙන්න එපා. උබලා හිතනවා නම එකෙන් උබලා චෝර වෙයි කියල ඒ තරම් මෝඩයෝ ලෝකේ නැ . ඕනේ වැඩ කරුවෙක් එහෙම වෙන්නේ වැරදිලා. උන්ගේ විශේෂත්වේ තමා වැරදුනා කියල දන්නවා සහ එක හරිගස්ස ගන්න විදිහ ටක් ගාල ඔලුවට එන එක. උබලට හිතෙනවා නම් අහන්න යන කෙස් එක දිග එකක් කියල එකට වෙනම ත්‍රෙඩ් එකක් දාන්න . අපි ඔය ලින්ක් ටික ඔක්කොම එකතු කරලා ත්‍රෙඩ් එකේ අප්ඩේට් කරනවා

    4. මේකෙන් කියාදෙන සහ උබලා ගන්න දේවල් වලින් උබලාගේම දේවල් හදපල්ලා. ඒවා එරෙන වෙලේට අහලා වැඩේ පිළිවෙලට කරමු. මේකේ යන දේවල් දාල මම පොඩි වෙබ් එකක් හදන්න ඉන්නේ . එකේ තියෙන්නේ ස්ටඩි දේවල් විතරයි.

    5. මේ සරලව පටන් ගත්තට අපි මේක ඇදගෙන යනවා අද ඉන්දස්ට්‍රි එකේ තියන ලොකුම දේවල් වලට. එකට ඕනේ කරන දැනුම තියන උන් මේකේ ඕනේ තරම් ඉන්නවා. ඒ අයගේ දායකත්වයෙන් තමා ඒක කරන්න ඉන්නේ. ඉතින් උන් ඔක්කොටොම තමන්ගේ කාලෙන් පොද්ද්දක් වැය කරලා සහයෝගයක් දෙන්න කියල ඉල්ලනවා.

    6. මේ කරන වැඩේ මොබයිල් පැත්තක් තියනවා. එකට අදාළ දේවලුත් අපි බලනවා. එකේදී අපේ ඉන්න මොබයිල් වැඩ කරුවෝ ටික ඉස්සරහට ඇවිත් උදව්වක් දෙයි කියලත් බලාපොරොත්තු වෙනවා.

    එහෙනම් වැඩේ කරගෙන යමු. මේකේ අරමුණ අපේ රටේ පොඩියට හරි සොෆ්ට්වෙයා හබ් එකක් හදලා රටින් පුළුවන් තරම් ඩොලර් ගෙන එක . එකට උබලා හැම එකාගෙම දායකත්වය දෙන්න කියල තමා කියන්නේ.



    දවසේ ගෙදර වැඩ
    ==============

    අනිවාර්ය සේවා කරන්න ඕනේ වැඩ තමා ගෙදර වැඩ. නැත්නම් වැඩකුත් නැති වෙනවා මේ කරන වැඩේ

    Task 1: දැන් අපි කරන්න යන්නේ Small Delivery Business එකක් නේ. උබලා හැමෝම බලන්න ඕනේ මේක මොකක්ද කියල. එක ගැන විස්තර හොයන්න ඕනේ. ලෝකේ ඕනේ තැනක තියන දේවල් අරගෙන බලන්න ඕනේ. එහෙම බලලා උබලා ඔය වගේ සිස්ටම් එකකින් වෙන වැඩ නිකන් කතාවක් වගේ ලියන්න. අන්න ඒක ඩ්‍රයිව් එකට අප්ලෝඩ් කරලා මේකේ දාපල්ලා. නැත්නම් නිකන් පොස්ට් එකක් විදිහට හරි කමක් නැ . වීඩියෝ සහ පොස්ට් වල ලින්ක් දාන්න එපා. මොකද එක බලල උබලා ගත්ත හරය තමා ඕනේ. හැබැයි ඒ වීඩියෝ සහ පොස්ට් වගේ ඒවා bookmark කරලා තියාගන්න ඕනේ නම් නොට් එක යටින් reference කියල දාන්න.

    ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    ඊළගට අපි බලන්නේ මේකේ Planning එක කොහොමද කරන්නේ කියල. එකේදී අපි DevOps ආරම්බයක් ගණන්ව. ඒ වගේම ඩොකියුමන්ට් අප්ලෝඩ් කරන්න Git එක ඉගෙන ගන්නවා. එකට අපේ සිරි අය්යා වෙනම නෝට් එකක් දානව. එකත් මේකේ ලින්ක් වලටම අමුනන්නම්.
    ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    ඒ එක්කම අපි මේ පැත්ත ගැන දැනුම තියන අය එකතු වෙන්න ඕනේ අනික් අයට උදව් කරන්න. දැනට මේ දෙන්නා වටිනා දේවල් දෙකක් කිව්වා. තවත් ඒ වගේ අය හිටියා හුගක්. එහෙම අපේ එළකිරි කොල්ලෝ ටික මට මෙසජේ එකක් දන්නා දෙයක් ගැන ත්‍රෙඩ් එකක් හෝ ඒ පිළිබද ප්‍රශ්න වලට උත්තර දෙන්නම් කියල. එහෙම විවිද පති වල අය සෙට් උනාම අපිව හොල්ලන්න වෙන්නේ නැ .
    [SIZE=5]හෙළයෙක්[/SIZE] - Github Organizations

    [SIZE=5]siri_ayya[/SIZE] - Git​


    එකට ගොඩ යමු - පලවෙනි කොටස

    Git ගැන හැමදේම - පළමු කොටස
     
    Last edited:

    HAneo

    Well-known member
  • Jan 30, 2007
    12,971
    29,155
    113
    Homagama
    කට්ටිය හොදට කියවල වැඩේ කරන්න. යටින් හෝම් වරක් එකකුත් තියනවා.
    කියවන්න කම්මැලි වෙන්න එපා. අපි ඉස්සරහට ඕනේ දේවල් වීඩියෝ වලින් දෙන්න ඉන්නේ
     

    tharakaf

    Well-known member
  • Oct 19, 2020
    24,375
    45,601
    113
    20012020009.jpg


    මේක කිසිසේත්ම ඔයාල මෙච්චරකල් කල නෝට් බලලා හෝ වීඩියෝ බලලා දෙයක් ඉගෙන ගන්න එකට සම්පුර්නෙන් වෙනස් වෙයි. තනිකර ප්‍රැක්ටිකල් එක්ක යන වැඩක් කරන්න යන්නේ. මම දැඩිව විෂවෂ කරන දෙයක් පළපුරුද්ද කියන එක අනික් හැම දේටම වඩා උඩින් තියෙන්නේ කියන එක. මේ ෆලෝ එකත් එක්ක යන අයට තමා මේක වැදගත් වෙන්නේ. කම්මැලි කමට ඉන්න එපා. වැඩේ එක්කම ඉන්න කියල මුලින්ම හැමෝගෙන්ම ඉල්ලනවා

    මේකෙදි ඔයාලගේ උනන්දුව කැපවීම තමා ඕනේ. මහන්සි වෙලා වැඩ කරන්න ඕනේ නැ . එකට තමා ස්මාර්ට් වීම කියන දේ තියෙන්නේ. මුල ඉදලා අගටම කියවලා බලලා වැඩේ පටන් ගන්න ඕනේ. මේක කරන්නේ සොෆ්ට්වෙයා ගැන මොනම හෝ දැනුමක් නැති එකෙක්ටත් හරියන විදිහට. ඒ නිසා තමන්ට අදාළ තැනින් පනින්න ඕනේ. ඒ වගේම කලිනුත් කිව්වා වගේ උබලට තියන අදහස් චෝදනා වැරදි තව එකතු වෙන්න ඕනේ දේවල් සේරම මේකේ දාපල්ලා. ඒ ඔක්කොම ආවාම මේක PDF එකකින් මෙතනම දානවා.

    මේක ඉතාමත් කෙටියෙන් කියන්නේ. අතිශයින්ම ඕනේ ටික විතරයි. මොකද අපිට හුගක් දුර යන්න තියනවා. ඉතින් පොඩි දෙයක් හරි තේරුනේ නැත්නම් හෝ ප්‍රශ්න තියේ නම් අහන්න. පුළුවන් හැම කෙනෙක්ම උත්තර දෙන්න.

    කෙලින්ම වැඩේට බහිමු
    ===================

    සොෆ්ට්වෙයා එකක් හදන්නේ යම් බිස්නස් එකක තියන අතින් කරන්න ඕනේ වැඩ ටික (manual works) අඩු කරගන්න හෝ නැත්තටම නැති කරගන්න. උදාහරණ විදිහට කඩේක බඩු වල විකුණුන දේවල් අතින් කොලේක ලියනවට වඩා එක පරිගණකට ඇතුලත් කලාම අපිට ලේසියෙන් දවසේ sale එකේ වටිනාකම බලාගන්න පුළුවන්. ඒ වගේම තමන්ට ඒවගෙන් තියන profit එහෙම ලේසියෙන් බලාගන්න පුළුවන්. මේක පොතක කරලා බලනවා නම් සැහෙන වෙලාවක් පිටු පෙරලා පෙරලා ගණන් හදන්න වෙනවා.

    සොෆ්ට්වෙයා සහ බිස්නස් මොඩල් එක
    ===============================


    අපි උඩින් කිව්වා වගේ සොෆ්ට්වෙයා එකක් වැදගත් වෙන්නේ බිස්නස් එකකට. එක උබලගේ ගෙදර දෙයක් හරි වෙන්න පුළුවන්. බිස්නස් මොඩල් එක කියන්නේ කම්පැනි එකක් ලාබ හොයන්න හෝ වැඩක් ලේසි කරන්න යොදාගන්න ක්‍රම වේදය. මේකට අපේ බිස්නස් සෙට් එක හොද නිර්වචනයක් දීලා එහෙම ගන්න අනික් අයට දැනගන්න.. ඉතින් අපි කරන්නේ දැනට අමාරුවෙන් බර කරත්තෙන් අදින මේ බිස්නස් මොඩල් එකට පරිගණක වලින් විසදුමක් දෙනවා. එක දෙන්නේ සොෆ්ට්වෙයා එකක් විදිහට. අපිට සොෆ්ට්වෙයා එකක් හදන්න දුන්නම මේ බිස්නස් මොඩල් එක හරියටම නුලටම හොයාගන්න එක තමා හොදම සොෆ්ට්වෙයා එකක හොදටම කරන්න ඕනේ. මේක දැනගැනීමේ ප්‍රතිශතය මත සොෆ්ට්වෙයා එක කොච්චර perfect ද කියන එක රදා පවතිනවා

    හරි දැන් ඔය මගුල හදන්නේ කොමද?
    ==============================

    උඩින් කිව්ව බිස්නස් එකට සොෆ්ට්වෙයා එකක් හදනකොට ටොයිලට් එකට ගිහින් බොක දානව වගේ එක පාර කරන බැ . එකට ස්ටෙප්ස් ගොඩක් තියනවා. මේ ස්ටෙප්ස් ටික හරිම වැදගත්. ලෝකේ එක එක තැන් වල මේවා එක එක විදිහට වෙනවා. සමහර තැන් වල සම්පුර්ණයෙන් වෙනස් ක්‍රමයක් තමන්ටම හදාගන්නවා මේකට. ඉතින් අපි බලමු සාමන්යෙන් කරන්න ඕනේ දේ. ඉස්සරහට යනකොට අපේ වැඩේ හොදට දන්නා අය මේකට විවිද දේවල් එකතු කරයි කියල මම හිතනවා.

    සොෆ්ට්වෙයා එකක් හදන පියවරවල්
    ------------------------------------------------

    මේ පල්ලෙහායින් තියන ටික තම බිස්නස් එකක් සොෆ්ට්වෙයා එකකට හරවනකොට කරන්න තියන වැඩ ටික.

    1. Planning

    2. Analysis
    3. Design
    4. Development
    5. Test
    6. Acceptance

    7. Maintenance

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

    මේ ලෝකේ ඕනෙම වැඩක් කරන්න කලින් පොඩි ප්ලැන් එකක් ගහගන්න එක මිනිසුන්ගේ පුරුද්දක් නේ. උබලා බොන්න ගියත් සෙට් එකාගෙන් අහනව නේ මොනවද ගහන්නේ? කොහෙද බොන්නේ අපි?එකා කීය ගානේ දානවද? නිකන් බොන්න එන හිරලුවෝ හලන්නේ කොහොමද? වගේ දේවල්. අන්න එකට තමා Planning කියන්නේ. සොෆ්ට්වෙයා එකක් හදන්න කලින් මුලිනම් ආපි ඒ වැඩේ වෙන්නේ කොහොමද කියල plan කරන්න ඕනේ. නැත්නම් වැඩේ හබක්. මේකෙදි අපි කස්ටමර් එක්ක කතා කරගනන්ව මොනවද ඕනේ කියල සහ අපි දෙන්නේ මෙන්න මේ ටික තමා කියල. නැත්නම් ඌ අපි හදන එකෙන් රෙදි ටික හෝදන්නත් හදලා දෙන්න කියයි. ඒ නිසා අපි boundary එකක් හදාගන්නවා මෙන්න මේක ඇතුලේ තියන දේවල් විතරයි දෙන්නේ කියල. ඊට පිට පනින්න ඕනේ නම් අව්ලක් නැ වැඩිපුර අරගෙන කරන්න වෙනව. එතැනදී අලුත් boundary එකක් හැදෙනවා. එක තමා Final boundary එක නැත්නම් System boundary එක කියන්නේ. එතනින් එහා හෙන ගැහුවත් හදන්නේ නැ

    Analysis කරනවා කියන්නේ අපි අර උඩින් කිව්ව බිස්නස් එක ගැන වැඩි දුර හොයා බලනවා. මොකක්ද එකන් වෙන්නේ වගේ බිස්නස් මොඩල් එක ගැන ඉතා හොද දැනුමක් ගණන්ව මේකෙදි.

    Design කරන එකෙන් කරන්නේ අර Analysis කරලා ගත්ත තොරතුරු එක්ක මේ හදන සොෆ්ට්වෙයා එක කොහොමද තියෙන්න ඕනේ කියල සලකල බලන එක. මේකෙදි Data save කරන විදිහ , බිස්නස් මොඩල් එකේ ප්‍රොසෙස් එක හරියටම හදාගන්න එක., හදන සොෆ්ට්වෙයා එකේ User Interfaces ගැන බලන එක වගේ වැඩ ගොඩක් තියනවා කරන්න. මේක සහ Analysis එක අපි සැහෙන්න ඇතරලා දාන පියවරල් දෙකක්. නමුත් සොස්ෆ්ට්වෙයා එකක් හදද්දී තියන ඉතාමත් වැදගත් පියවරවල් දෙක මේක. මේ දෙක වැරදුනොත් හදන එක රුවිතෙට යනවා

    Development කියනේ පුතාල අර උඩින් කිව්ව ස්ටෙප් දෙකේදී අපි ඩිසයින් කරගත්ත විදිහට සොෆ්ට්වෙයා එකක් හදන එක. මේක කරන්න දේවල් ගොඩක් ඕනේ වෙනවා. එකෙන් මුලික දේ Programing Language එකක් එකෙන් තමා ඉඩ දී අපි සැලසුම් කල පියවරවල් වලට වැඩේ වෙන්න හදන්නේ. මේක එක්ක තව ටුල් ගොඩක් එකතු වෙලා තම මේ වැඩේ වෙන්නේ. අපි ඒවා මේ ගැන වැඩිදුර කතා කරන නුලේදී බලමු. වැදගත් දෙයක් තමා Programing Language ඉගෙන ගන්න අය මතක තියාගන්න්න ඕනේ තමන් කරන දේට උඩින් තව පියවරවල් 3 ක් තියනවා කියන එක. ඒ උද පියවරවල් තුන නැතුව හොද වැඩ කාරයෙක් වෙන්න හරිම අමාරුයි.

    Test කරද්දී තමා අහුවෙන්නේ අපි හදපු එකේ ගහලා තියන බුල් ටික. මේකෙන් කරන්නේ පුතාල අර Design පියවරේදී අපි මවාගත්ත කෙල්ලද මේ හදලා තියෙන්නේ කියන එක. මේකෙදි ටෙස්ට් වර්ග ගොඩක් තියනවා. unit test , integration test , regression test වගේ ටෙස්ට් වර්ග ගොඩක්. මේකට ඉන්නවා වෙනම ඕපාදුප කාපර්ලා . උන්ට වචනේ වැරදුනත් පෙන්න ඕනේ. මේ අය තමා සොෆ්ට්වෙයා එක ඔකේ කියල ෆයිනල් කමාන්ඩ් එක දෙන්නේ. මෙතනින් පස්සේ සොෆ්ට්වෙයා එක සම්පුර්ණයෙන් වගේ හදලා ඉවරයි කියන්න පුළුවන්. මේක වෙන විදිහත් වෙනම ත්‍රෙඩ් එකකින් අපි බලනවා

    දැන් මේ හදලා ටෙස්ට් කලාට වැඩක් නැ ඕක උන්ට ඕනෙම විදිහට තියනවා කියල අපිට මේක හදන්න දුන්න සෙට් එක Confirm කරන්න ඕනේ. අන්න එකට අපි කියන්නේ Acceptance නැත්නම් User Acceptance Testing කියල. මේක කරන්නේ කස්ටමර් ගේ පැත්තේ සෙට් එකක්. උන්ට අපි හදපු සොෆ්ට්වෙයා එකේ ට්‍රයල් එකක් දෙනවා. උන් එක උන්ගේ සෙට් එක එක්ක හොදට ටෙස්ට් කරනවා , උන්ගේ ඇත්ත ඩේටා දාල බලනවා. දාල ෆයිනල් රිපෝට් එකක් දෙනවා. එකේදී වෙනස්කම් කරන්න ඕනේ නම් මුලින් බලනවා අර උඩ එකග උන boundary එක ඇතුලේ වෙනස් කමක් ද ඉල්ලන්නේ කියල. එහෙම නම් කරලා දෙනවා. නැත්නම් ගානක් අරන් තමා කරලා දෙන්නේ

    අන්තිමට ඉතින් හදාගත්ත දරුවා බලාගන්න තමා තියෙන්නේ. අසනීප අවාම බෙහෙත් දෙන්න ඕනේ. ඉස්පිරිතාලේ ගෙනියන්න ඕනේ අන්න ඒවා තමා Maintenance කියන්නේ. මේකට වෙනම ටීම් එකක් ඉන්නවා. ඒ වගේම සාමන්යෙන් customer service line එකක් හදනවා අපි. එකේදී customer calls , complains . subjections වගේ ඒවා ලොග් කරගනන්ව. මේ line එකේම කැල්ලක් තමා customer support team එක . ඒ අය තමා කස්ටමර් ලා දෙන හැම දේම බාරගන්නේ. එතනින් හදලා දෙන්න පුළුවන් දේවල හදලා දෙනවා. බැරි දේවල් ඩිවලොප්මන්ට් ටීම් එක පැත්තට දානවා. මේකට අපි වෙනම සර්විස් චාජ් එකක් අනිවාර්යෙන් අය කරනවා. සොෆ්ට්වෙයා ගෙඩි පිටින් හදලා දෙනවා කියන්නේ බොරු කතා. මොකද හදපු උන්ට වඩා අලුතෙන් එකට අත ගහන එකෙක් ඒ ගැන දන්නේ නැනේ.
    Umba kiyana labbak terenne ne. Eth Bump :-D
     
    • Like
    Reactions: HAneo

    Sunil dinawamu

    Well-known member
  • Aug 12, 2015
    1,989
    1,605
    113
    එකතු කරපු කරුංකා ටිකක් තියනවා. හොද ගානකට දී ගත්තොත් මේ සතිය ගොඩයාගන්න පුළුවන් වේවි.
    (යකෝ මම හිතුවේ ගොඩ යන්නේ කොහොමද කියල ඇහුව කියල. බැලින්නම් මේක පාඩමක් කියල දෙන සීන් එකක් නේ. සොරි වෙන්න ඕන. ජය ! )
     
    Last edited:

    Sathira529

    Well-known member
  • Apr 8, 2019
    3,429
    1
    8,313
    113
    එලකිරි බන්.ජයවේවා.මටත් මොනවත් තේරෙන්නෙ නෑ.හැබැයි කරල බලන්න ආසයි.ආයෙත් තෑන්ක්ස් මේ මහන්සියට