What is SDLC in brief
Definition of SDLC:
The term software development life cycle model [SDLC] is a way of describing the planning, designing, coding, and testing of a software system, as well as the method in which these steps are implemented.
How SDLC Works:
SDLC is a process that produces software with the highest quality and lowest cost in the shortest time. SDLC includes a detailed plan for how to develop, alter, maintain, and replace a software system. SDLC achieves these apparently divergent goals by following a plan that removes the typical pitfalls to software development projects. That plan starts by evaluating existing systems for deficiencies. Next, it defines the requirements of the new system. SLDC can eliminate redundant rework and after-the-fact fixes.
Stages involved in SDLC:
A variety of life cycle models exist in the market, but they all include the same constituent parts. All lifecycle models take a project through several primary phases. Following are the comprehensive list of phases involved in software development lifecycle:
- Identify the current problems: {“What don’t we want?”} This stage of SDLC involves getting input from all stakeholders, including customers, salespeople, industry experts, and programmers. Learn the strengths and weaknesses of the current system with improvement as the goal.
- Plan: {“What do we want?”} In this stage of SDLC, the team defines the requirements of the new software and determines the cost and resources required. It also details the risks involved and provides sub-plans for softening those risks. In this stage, a Software Requirement Specification document is created.
- Design: { “How will we get what we want?”} This phase of SDLC starts by turning the software specifications into a design plan called the Design Specification. All stakeholders then review this plan and offer feedback and suggestions. It’s crucial to have a plan for collecting and incorporating stakeholder input into this document. Failure at this stage will almost certainly result in cost overruns at best and total collapse of the project at worst.
- Build: {“Let’s create what we want.”} This SDLC stage develops the software by generating all the actual code. If the previous steps have been followed with attention to detail, this is actually the least complicated step.
- Test: {“Did we get what we want?”} In this stage, we test for defects and deficiencies. We fix those issues until the product meets the original specifications.
- Deploy: {“Let’s start using what we got.”} Often, this part of the SDLC process happens in a limited way at first. Depending on feedback from end users, more adjustments can be made.
- Maintain: {“Let’s get this closer to what we want.”} The plan almost never turns out perfect when it meets reality. Further, as conditions in the real world change, we need to update and advance the software to match.
SDLC models:
There are several SDLC models exists in the market. Following are the few important SDLC models used in the present market:
- Agile Model. The Agile SDLC model separates the product into cycles and delivers a working product very quickly. This methodology produces a succession of releases. Testing of each release feeds back info that’s incorporated into the next version.
- Waterfall Model: This SDLC model is the oldest and most straightforward. With this methodology, we finish one phase and then start the next. Each phase has its own mini-plan and each phase “waterfalls” into the next. The biggest drawback of this model is that small details left incomplete can hold up the entire process.
- V-Shaped Model: This SDLC methodology tests at each stage of development. As with waterfall, this process can run into roadblocks.
- Spiral Model: The most flexible of the SDLC models, the spiral model is similar to the iterative model in its emphasis on repetition. The spiral model goes through the planning, design, build and test phases over and over, with gradual improvements at each pass.
Conclusion:
SDLC done right can allow the highest level of management control and documentation. Developers understand what they should build and why. All parties agree on the goal up front and see a clear plan for arriving at that goal. Everyone understands the costs and resources required. The benefits of SDLC only exist if the plan is followed faithfully.
Comments
Post a Comment