Software Development Life Cycle
Software development life cycle Or sdlc:
It is a sequence of activities that leads to the production of a software product.
It is a well defined, structured sequence of stages in software engineering to develop the intended software product.
Communication: Very first step where user contact the service provider i.e, software organisation and initiate the request for a desired software product in writing and tries to negotiate the terms.
Requirement Gathering: A team of software developer holds discussion with various stakeholders from problem domain and bring out as much as information as possible on the requirements.
Feasibility Study: After requirement gathering , with the help of many algorithms, team analyses if a software can be designed to fulfill all requirements of the user and also analyze if the product is financially, practically and technologically feasible for the organization to take up.
System Analysis - A Planning Phase: Developer decide a road map of their plan and try to bring up the best software model suitable for project.
The project team analyzes the scope of the project and then plans the schedule and the resources accordingly.
Software Design:- All knowledge of requirement and analysis are taken together to plan-up design the software product.
Coding: Programming Phase- This step is also known as programming phase. The implementation of software design starts in terms of writing program code in the suitable programming language and developing error-free executable programming efficiently.
Testing: Software testing is done while coding, by the tester that is developing team members.
Integration: Software is integrated with libraries, databases and other programs.
Implementation: We install software on user machine. Software is tested for portability, adaptability integration.
Operation And Maintenance: This phase confirms the software operations In terms of more efficiency and less errors. If required, the user are trained on, are aided with the documentation on how to operate the software and how to keep the software operational.
The software is maintained timely by updating the code according to the changes taking place in user and environment or Technology.
This phase may take challenges from hidden bugs and real word undefined problems.