SDLC life Cycle කියන්නේ මොනවටද බලමුකෝ
Software Development  Life  Cycle  නොහොත් SDlC  කියන්නේ Software  develop  කරන්න යොදා  ගන්නා  systematic process  එකකටයි . එහෙම කරපුවහම අපි build  කරන software  එකේ quality එක වගේම correctness  එකත් තහවුරු වෙනවා .SDLC  වල aim  එක වෙන්නෙත් customer ගේ expectation  උපරිම වන පරිදි high  quality  software  එකක්   අවසානයේ නිර්මාණය  කිරීමයි . software development  වලදී කළින්  define  කරපු  time  එකට සහ cost complete  කරන්න ඕන . 
SDLC  වල අන්තර්ගත වෙනවා detailed plan  එකක්. ඒ කිවේ software  එක build  කරන්න  plan  කරන විදිය , build  කරන විදිය maintain කරන විදිය define  කරපු plan  එකක් . SDLC  phases  වල phases  වලට ආවේණික  වූ process සහ deliverable   තියනවා .
SDLC  phases  මුලික වශයෙන් 7ක් තියනවා .
Phase 1: Requirement collection and analysis
Phase 2: Feasibility study
Phase 3: Design
Phase 4: Coding
Phase 5: Testing
Phase 6: Installation/Deployment
Phase 7: Maintenance 
- Requirement  analysis
SDLC  process  වල පළමු stage  එක තමයි requirement  analysis  කියන්නේ . ඒක  මෙහෙයවන්නේ Software development  team  එකේ ඉන්න senior සාමාජිකයන් ය . Quality  assurance plan  කිරීම , requirements  හදුනා ගැනීම , ඇතිවිය හැකි risk  හදුනා ගැනීම සිදු කරන්නේ මෙම stage  එක තුල දිය . මේ stage  එක පැහැදිලි අවබෝධයක් දෙනවා සම්පුර්ණ project  එකේ scope  එක ගැන වගේම ඇතිවෙන්න පුළුවන්  risk   , සහ opportunities  ගැනත් .  මුලික වශයෙන් කෙරෙන කාර්යය තමයි requirements  හදුනා ගැනීම .ඉතින් මේ ස්ටගේ එකේදී project  එකේ timeline එක finalize  කරන්න උදව්   වෙනවා .
2. Feasibility studies
Requirement  Analysis  phase  එක අවසන් වු විට තියෙන ඊලග  පියවර තමයි software  needs  define  කරලා document  කරන එක . මේ සදහා උපකාර වන document  එක තමයි SRS  නොහොත් Software  Requirement  Specification  document  එක . එකේ තමයි project  life cycle එක තුල  design  කරපු develop  කරපු හැමදේම තියෙන්නේ .
Feasibility  check  කරන ක්රම 5ක් තියනවා .
- . Economic : එනම් අප කරන project එක අපට තියන budget එක ඇතුලත කරන්න පුලුවන්ද බැරිද යන වග .
- . Legal : අප කරන project එක cyber law එක යටතේ වගේම අනෙක් regulatory framework එක යටතේ කරන්න පුලුවන්ද බැරිද යන වග
- .Operation Feasibility : Client ගේ expectation එකට අනුව project operations මෙහෙයවන්න පුලුවන්ද බැරිද යන වග
- . Technical :වර්තමානයේ ඇති computer system එක build කරන software එකට support කරනවද නැද්ද යන වග
- : Schedule : සම්පුර්ණ project එක නියමිත කාල රාමුවේ සම්පුර්ණ කල හැකිද නොහැකිද යන වග .
ආදිය check  කිරීම සිදු කරයි .
3. Design
3. Design
තෙවන අදියරේදී requirement  වලට අනුව සුදානම් කල system සහ software  design  documents මගින් සම්පුර්ණ architecture  එක define  කිරීම කරයි . මෙම stage  එකේදී design  documents 2ක්  develop  කරනවා . 
- හැම module එකක් ගැනම කෙටි description එකක් ඇතුලත් වේ.
- හැම module එකකම functionalities නිරුපනය කරයි
- relationship සහ modules අතර dependencies interface කිරීම
- key elements සමග database tables identify කිරීම
- technology details සමග architecture diagrams complete කිරීම .
Low Level Design (LLD )
- modules වල Functional logic
- type සහ size එක ඇතුලත් DB tables
- Interface පිළිබද සම්පුර්ණ තොරතුරු
- සියලු වර්ගයේ dependency issues
- error messages
- හැම module එකකම සම්පුර්ණ inputs සහ outputs
යනාංග ඇතුලත් වේ .
4. Coding
Design phase  එක අවසන් වුනාට පසුව ඊලගට තියන වැදගත්ම කාර්යය තමයි Coding  කිරීම .මෙම phase  එකේදී developers ල සිදු කරන කාර්ය තමයි සුදුසු programming  language  එකක් තෝරාගෙන  සම්පුර්ණ system  එකම code  කිරීමයි .මෙහිදී සම්පුර්ණ system  එකම units , modules  වලට කඩාගෙන developers ල අතර modules  බෙදා හද ගෙන code  කිරීම සිදු කරයි .software  development life  cycle  එකේ තියන විශාලතම අවධිය තමයි මේක . මෙහිදී developers  ල compiler , interpreters , debugger , වැනි tools  පාවිච්චි කරලා code generate කරලා implement  කිරීම සිදු කරයි .
5.Testing
Software  එක සම්පුර්ණ කල පසු ඉතිරි කාර්යය වන්නේ testing  කිරීමයි . එහිදී testing  team  එක , සම්පුර්ණ system  එකෙහිම functionalities  test  කිරීම ආරම්භ කරයි . එහෙම කරන්න හේතුව තමයි customer  requirements  වලට අනුව  සම්පුර්ණ application එක නිවැරදිව ක්රියාත්මක වනවාද නැද්ද යන්න තහවුරු කිරීමටයි . මෙහිදී QA  testing  team  එක bugs , defects  වගේ තියන අඩුපාඩු හොයාගෙන development  team  එකට දැනුම් දෙනවා .ඊට පස්සේ development  team  එක ඒ bug  fix  කරලා නැවත පරික්ෂා  කිරීමට  QA  ට එවනවා .මේක චක්රයක් වගේ software  එකේ bug  free  වෙලා business  need  එකට අනුව අවසන් output  එක වෙනකම්ම continue  වෙනවා .
6. Installation
software  testing  phase  එක අවසන් වෙලා system  එකේ  bugs , errors free  වුවාට  පසු ඇති ඊලග level  එක තමයි installation  කියන්නේ .ඒ අනුව software  project  manager ගේ feedback  එක මත final  software  එක release  කරනවා .
7. Maintenance
system  එක install  කලාට පසුව customer  එම system  එක පාවිච්චි කිරීමට පටන් ගන්නවා . එවිට පහත activities  3 සිදු කරනු ලබනවා . 
- Bug Fixing : tested වෙලා නැති සමහර bugs report කිරීම
- Upgrade : අලුත් versions වලට upgrade කිරීම .
- Enhancement : existing system එකට අලුත් features add කිරීම යනාදියයි .
ඊලගට මන් SDLC  වල තියන  ජනප්රිය models  ටිකක් කියන්නම් .
- Waterfall Model
- Incremental approach
- V Model
- Agile Model
- Spiral Model
- Big Bang Model
waterfall  model  එක කියන්නේ ලෝකය පුරා  ව්යාප්ත  වූ  පිළිගත් ජනප්රිය   model  එකක් . waterfall  model   එකේදී සිදු වන්නේ සම්පුර්ණ process  එකම විවිධ phases  වලට බෙදා වෙන්කිරීමයි .විශේෂ ලක්ෂණය තමයි එක phase  එකක output  එක ඊලග  phase  එකක input  එක වීමයි . 

0 comments:
Post a Comment