SDLC – Software Development Life Cycle
When we try to develop any software application program, become a good programmer the question should arrive in our mind what is software development life cycle, software development process and software development methodology.
As a agile software development team we develop some software application program, we need to follow some phases, steps or methodologies to develop the better software application.
The Software Development Life Cycle – SDLC is a sequence of phases or stages in software engineering to develop software application.
The SDLC – Software development life cycle process is used to develop software in better way. There are some phases within a SDLC phases and each sdlc phase has some different activities.
The SDLC phases such as requirement analysis, design, software coding, testing, installation, deployment and maintenance.
Software Development Life Cycle provides a structure for developer to create and design better system or produce better quality software by defining various tasks that need to done which is defined by the sdlc phases.
There are six phases in Software Development Life Cycle – SDLC Phases.
- Requirement analysis
- Implementation or coding
Software Development Life Cycle – SDLC Phases
Up to this we have to understand that If we want to develop a software program then we need to follow some steps show in above SDLC figure such as Requirement gathering and analysis, Design, Implementation, Testing, Deployment and Maintenance.
Let’s understand to each SDLC phases in detail.
1. Requirement Analysis
The Software Development Life Cycle begin with the requirement gathering and analysis phase, In this sdlc phase collect Business requirements information and discussion between project manager, stack holder and user point of view to determine the requirements. To be a agile software development team to collect data about existing system, need to change existing system, who is going to use the system, what are the input data?, what data should be output by the system?.
These types of general questions answers done in this requirement analysis sdlc phase.
In analysis sdlc phase we should determined and documented end-users requirements, like what they expected from system and how system will perform.
2. Design Phase
After understanding the requirement of customers, in this sdlc design phase defines the elements of system and components and architecture of system. This SDLC phase we prepared design of system software from the requirement which we have studied and gathering in first analysis phase.
The system design phase help to defining overall system architecture and software, hardware requirements.
All the work done with paper and pen to define clear idea about the system which model we use , How system data flow representation, how system function will work, after done this thing the system goes to next sdlc phase coding.
3. Implementation and Coding Phase
After requirement and design completed, the software development life cycle next phases start the implementation and coding to develop software application.
become agile software development team we analysis all system clearly and divide all functionality of system into small unit and start work to assign unit to different team.
In this coding sdlc phase database administrative team create a back end database as per requirement of system, front-end team design GUI part of system as per the requirement of design.
the agile software development team work with their unit and combine all unit after done work, then present work to the manager and analysts, if they check and if makes some changes then the give back to developer team to re code the system.
This phase is the longest phase of software development life cycle phase.
SDLC Testing phase tester team is verifying the code is actually done as requirement and design of system.
Testing phase all the type of testing done like unit testing, integration testing, functional testing as well as non-functional testing.
During testing phase tester team found some bugs or issue in system the generate test report and submit to agile software development team to resolve issue in system and after give to testing team to re test the whole system.
After successful design and testing the system software is ready to delivered to customer for use.
The customer release software as beta version, if the found any changes or bugs, they report to the agile software development team. Once the developer fixed the bugs and then the final product ready to deployment.
After delivered software to customer, they start to work on system while using system they found some changes in system. To make changes in system give back to developer team and they can done changes, this process are done in maintenance phase.