Lec-3
Software Development Life Cycle (SDLC)
• A software life cycle model (also termed process model) is a pictorial
and diagrammatic representation of the software life cycle.
• A life cycle model represents all the methods required to make a
software product transit through its life cycle stages.
• It also captures the structure in which these methods are to be
undertaken.
Software Development Life Cycle (SDLC)
• In other words, a life cycle model maps the various activities
performed on a software product from its inception to retirement.
• Different life cycle models may plan the necessary development
activities to phases in different ways.
• Thus, no matter which life cycle model is followed, the essential
activities are contained in all life cycle models though the action may
be carried out in distinct orders in different life cycle models.
• During any life cycle stage, more than one activity may also be carried
out.
Software Development Life Cycle (SDLC)
• A software life cycle model describes entry and exit criteria for each
phase.
• A phase can begin only if its stage-entry criteria have been fulfilled.
So without a software life cycle model, the entry and exit criteria for a
stage cannot be recognized.
• Without software life cycle models, it becomes tough for software
project managers to monitor the progress of the project.
Software Development Life Cycle (SDLC)
• Without using an exact life cycle model, the development of a
software product would not be in a systematic and disciplined manner.
• When a team is developing a software product, there must be a clear
understanding among team representatives about when and what to do.
Otherwise, it would point to chaos and project failure.
Software Development Life Cycle (SDLC)
• Suppose a software development issue is divided into various parts
and the parts are assigned to the team members.
• From then on, suppose the team representative is allowed the freedom
to develop the roles assigned to them in whatever way they like.
• It is possible that one representative might start writing the code for
his part, another might choose to prepare the test documents first, and
some other engineer might begin with the design phase of the roles
assigned to him.
• This would be one of the perfect methods for project failure.
Software Development Life Cycle
• SDLC Cycle represents the process of developing software. SDLC
framework includes the following steps:
Stage1: Planning and requirement analysis
• Requirement Analysis is the most important and necessary stage in SDLC.
• The senior members of the team perform it with inputs from all the
stakeholders and domain experts.
• Planning for the quality assurance requirements and identification of the
risks associated with the projects is also done at this stage.
• Business analyst and Project organizer set up a meeting with the client to
gather all the data like what the customer wants to build, who will be the
end user, what is the objective of the product.
• Before creating a product, a core understanding or knowledge of the
product is very necessary.
Stage1: Planning and requirement analysis
• For Example, A client wants to have an application which concerns
money transactions. In this method, the requirement has to be precise
like what kind of operations will be done, how it will be done, in
which currency it will be done, etc.
• Once the required function is done, an analysis is complete with
auditing the feasibility of the growth of a product. In case of any
ambiguity, a signal is set up for further discussion.
• Once the requirement is understood, the SRS (Software Requirement
Specification) document is created. The developers should thoroughly
follow this document and also should be reviewed by the customer for
future reference.
Stage2: Defining Requirements
• Once the requirement analysis is done, the next stage is to certainly
represent and document the software requirements and get them
accepted from the project stakeholders.
• This is accomplished through "SRS"- Software Requirement
Specification document which contains all the product requirements to
be constructed and developed during the project life cycle.
Stage3: Designing the Software
• The next phase is about to bring down all the knowledge of
requirements, analysis, and design of the software project.
• This phase is the product of the last two stages, inputs from the
customer and requirement gathering.
Stage4: Developing the project
• In this phase of SDLC, the actual development begins, and the
programming is built.
• The implementation of design begins concerning writing code.
• Developers have to follow the coding guidelines described by their
management and programming tools like compilers, interpreters,
debuggers, etc. are used to develop and implement the code.
Stage5: Testing
• After the code is generated, it is tested against the requirements to
make sure that the products are solving the needs addressed and
gathered during the requirements stage.
• During this stage, unit testing, integration testing, system testing,
acceptance testing are done.
Stage6: Deployment
• Once the software is certified, and no bugs or errors are stated, then it
is deployed.
• Then based on the assessment, the software may be released as it is or
with suggested enhancement in the object segment.
• After the software is deployed, then its maintenance begins.
Software Development Process Models
• Software Development life cycle (SDLC) is a spiritual model used in
project management that defines the stages included in an information
system development project, from an initial feasibility study to the
maintenance of the completed application.
• There are different software development life cycle models specify
and design, which are followed during the software development
phase. These models are also called "Software Development Process
Models." Each process model follows a series of phase unique to its
type to ensure success in the step of software development.