දැනට තිබෙන පාඩම්...

Thursday, May 19, 2016

Software Engineering ඉගෙන ගනිමු - 4 පාඩම

මේ පාර අපි කථා කරන්නෙ පාඩමේ ඊලග කොටස...

ගිය සතියෙ අපි කථා කලේ Incremental Development ගැන. මේ පාර ඒතනින් ඒහාට අපි කථා කරනවා.

3. Spiral Model

මේ Model ඒක පාවිච්චි වෙන්නෙ බොහොම විශාල, වටිනා,  සංකීර්ණ Projects වලට. Waterfall Model ඒකේ Development Phases තිබුනෙ දිය අැල්ලක ගලන පඩිපෙලක් වගේ. ඒත් මේකෙ තියෙන්නෙ Loops විදියට. මේ හැම loop(චක්‍රයකදිම) Risk Analysis (අවදානම් විශ්ලේෂණයක්) කරනවා. ඒ ගැන Project Management  වලදි අපි කථා කරමු.  

පලමු චක්‍රය අැතුලෙදී Requirements ටික ඒකතු වෙනවා. ඊ ලගට ඒ සේරම ටික පරීක්ෂා කරනවා(Review). ඊට පස්සෙ Risk Analysis කරලා Prototype ඒකක් නිකුත් කරනවා. පියවර යටතේ මොන දේවල් කෙරුනත් හැම පියවරක් අන්තිමටම Risk Analysis ඒකක් කෙරිලා Prototype ඒකක් නිකුත් වෙනවා. අන්තිම loops වලදී designing, validations,testing වගේ දේවල් කෙරෙන්නෙ...






4. Agile Software Model
මේ ක්‍රමයේදී ප්‍රධාන පියවර 6ක් අපි කථා කරනවා.
  1. Planing
  2. Requirement Analysis
  3. Design
  4. Coding
  5. Testing
  6. Documentation
බොහොම කෙටි කාලයකින් කෙරෙන පියවර වලින් හැදුනු  projects මේ ගොඩට අයිති වෙනවා.Project ඒකට ලොකු කාලයක් යන්න පුලුවන්. මේකෙදි Documentation ඒකක් සිද්ධ වෙන්නෙ නෑ. මොකද Documents හද හද ඉන්න කාලයක් නෑ. Team ඒකේ කට්ටිය කථා වෙලා තමයි තීරණ ගන්නෙ. මේකෙ පියවරකට යන්නෙ මාසෙකටත් වඩා අඩුවෙන්... 

මේකෙ ඒක් පියවරකදි Product ඒක සම්පූර්ණයෙන්ම develop කරලා test කරලා ඉවර කරනවා. ඉවර වෙන කොටස usersලාට පාවිච්චි කරන්න දෙනවා. Product ඒකේ improvement ඒක ඉවරයක් වෙන්නෙ නෑ.
මේකට උදාහරණයක් විදියට Firefoxලා දෙන BETA Version  ඒක පෙන්වන්න පුලුවන්. හුගක් වෙලාවට Open Source කට්ටිය තමයි මේක පාවිච්චි කරන්නෙ...

5.Cowboy Coding
මතකද කව්ද බෝයි?? අන්න ඒ වගේ තමයි මේකත්. තනියම තමයි කෙරෙන්නෙ. ඒ කියන්නෙ තනි Developer කෙනෙක් තමයි වැඩ කරගන්නෙ. 
කලින් ඒවගෙ වගේ හරි ක්‍රමයක් පාවිච්චි වෙන්නෙ නෑ.හොදයි කියලා හිතෙන දේ කරනවා...
තනි කෙනෙක් කරන නිසා Resources වැයවෙනවා අඩුයි. පොඩි projects වලට හොදට ගැලපෙනවා.
ප්‍රධානම අවාසිය තමයි, Testing කරන්නෙ නැති නිසා Product ඒකේ quality ඒක ගැන කිසි වගකීමක් නෑ.


6. Extreme Programming(XP)
ප්‍රධානම වාසිය තමයි Customerගේ feedback ඒකක් අරන් ඒවා අනුව වැඩ කරන ඒක.මේක හැමදාම කෙරෙන දෙයක්. Pair Programming සංකල්පය පාවිච්චි වෙන්නෙත් මේකට. (Programmer කෙනෙක් කලින් ගහපු Code ඒකක් වෙන Programmer කෙනෙක් වෙනස් කරන ඒක ). ප්‍රධාන පියවර 4යි.
  1. Coding
  2. Testing
  3. Listening
  4. Designing
හැම වෙලාවකම Requirements අලුත් වෙන Projects වලට recommend කරන්න පුලුවන්, ඒ වගේම වේගවත්ම ක්‍රමය කියන්නත් පුලුවන්.


ඊලග පාඩම් මාලාවෙන් Component Based Software Model ගැන කථා කරමු....

   



Entrepreneurship ඉගෙන ගනිමුද? - 1 පාඩම

කෝමද යාලුවනේ? පහුගිය කාලේ තිබ්බ වැඩ කන්දත් ඒක්ක ලිපියක් ලියාගන්න වෙලාව නැති වුනත් චමියාට හිතුනා පොඩි ලිපියක් ලියන්න ව්‍යවසායකත්ව අධ්‍යය...