ගිය සතියෙ අපි කථා කලේ 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ක් අපි කථා කරනවා.
- Planing
- Requirement Analysis
- Design
- Coding
- Testing
- Documentation
මේකෙ ඒක් පියවරකදි 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යි.
- Coding
- Testing
- Listening
- Designing
ඊලග පාඩම් මාලාවෙන් Component Based Software Model ගැන කථා කරමු....