SlideShare a Scribd company logo
1 of 50
Download to read offline
SDLC
SOFTWARE DEVELOPMENT LIFE CYCLE
B y : E n g r . R o l a n B . A n d a l , C C N A , M S I T
I T P r o f e s s o r : A I T E C o l l e g e D e p t .
E m a i l : a n d a l r o l a n b @ g m a i l . c o m
Agenda
Topic one – What is a SDLC
Topic two – SDLC Phases
Topic three – SDLC Models
Introduction
SDLC - Overview
Software Development Life Cycle (SDLC)
 is a process used by the software industry to design, develop and
test high quality software.
 aims to produce a high-quality software that meets or exceeds
customer expectations, reaches completion within times and cost
estimates.
 acronym of Software Development Life Cycle.
 It is also called as Software Development Process.
 is a framework defining tasks performed at each step in the
software development process.
Take Note:
ISO/IEC 12207 is an international standard for software life-cycle
processes. It aims to be the standard that defines all the tasks
required for developing and maintaining software.
Presentation Title
What is a SDLC?
Software Development life cycle
SDLC is a pro cess followed for a software project, within a s oftware organization . It c on sis ts o f a detailed plan
describin g how to develop, maintain, replace and alter or en hance s pecific s oftware. T he life c ycle defines a
metho dology fo r impro ving the quality of software an d the o verall development proc es s.
Figure Shows following figure is a graphical representation of the various stages of a typical SDLC.
Figure. 1
Figure. 2
Figure.3
However, the most common SDLC structures are variations on the following phases:
Figure 4. Shows most common SDLC structures are variations on the following phases.
Figure. 4
1.Planning and Analysis
2.Design
3.Development
4.Testing
5.Deployment
6.Maintenance
Why is the software development life cycle important?
7
Defining and following the phases of a software development life cycle results in improved quality of resulting
software product while simultaneously reducing the time needed to build and deploy it and reducing overall costs.
Following an SDLC achieves those gains for the software development process by:
•Providing management with a higher degree of oversight and control.
•Improving documentation.
•The goal the software being developed is designed to reach is clarified and agreed upon by all stakeholders
upfront and a clear roadmap to arriving at that goal is laid out.
•All stakeholders can provide their input at the most appropriate and effective phase of the software
development process.
•Developers have a clear understanding of what they should build and why.
•All stakeholders are aware of and buy into the allocation of the resources required to attain the software
development project’s goal.
Does a software development life cycle always follow the same phases in the same order?
8
Not every software development life cycle is the same. Different software development methodologies and
frameworks have their own variations on the SDLC phases..
•Some, for example Crystal, even leave flexibility for the team working on a software development project to
set their own SDLC phases as they decide is most appropriate to the piece of software being developed.
Crystal or also known as Crystal Methods are a family of
methodologies (the Crystal family) developed by Alistair
Cockburn from his study and interviews of teams in 1998.
Does a software development life cycle always follow the same phases in the same order?
9
Another example is the Agile framework Extreme Programming (XP)
follows a 5-stage software development life cycle:
Agile software development is an iterative
approach to creating software products based on
quickly releasing a minimum viable product (MVP)
and then adjusting it and adding features and
functionalities in stages based on user behaviour
and feedback. The methodology is designed to
address the fact it can be difficult to accurately
predict the most intuitive user journeys, features
and functionalities users need, prefer and desire
from software.
Agile is being characterized by the division of tasks into short phases of work and frequent reassessment and adaptation of
plans.
"agile methods replace high-level design with frequent redesign"
Common phases of the software development life cycle
Stage 1: Planning and Requirement Analysis
 Requirement analysis is the most important and fundamental stage in SDLC.
 It is performed by the senior members of the team with inputs from the customer, the sales
department, market surveys and domain experts in the industry. This information is then
used to plan the basic project approach and to conduct product feasibility study in the
economical, operational and technical areas.
 Planning for the quality assurance requirements and identification of the risks associated
with the project is also done in the planning stage.
 The outcome of the technical feasibility study is to define the various technical approaches
that can be followed to implement the project successfully with minimum risks.
Stage 1: Planning and Requirement Analysis
•What problem will the software solve? What is solving that problem potentially worth?
•How big a potential user base does the software have?
•Does other software exist that solves the same problem?
•How will this software improve on that?
•How much might it cost to develop software to effectively solve the problem?
•Is solving the problem valuable enough to offer an acceptable return on investment on that cost?
•Do we have the resources to support that cost?
Planning and analysis processes are often conflated into a single software development life cycle phase.
But they are just as often split out into two separate phases.
During this first phase, the business case for developing a piece of software is analysed. Among the questions that
would typically be asked at this stage are:
Stage 1: Planning and Requirement Analysis
The project’s scope, or initial estimate of scope in an Agile approach, would be discussed here based on initial
feature requirements or assumptions. As would planning of the resources needed to realise the project and
then putting them in place, including the software development team
Phase 2.: Presumptions contained in the answers to these questions should be verified, preferably through
methods like user focus groups, other market research tools including things like SMS marketing, online surveys,
developing a technical prototype etc.
Goals and limitations are set.
The software development team roles most typically involved in the planning and analysis phase of the software
development life cycle (this varies from team to team and is influenced by the chosen methodology/framework)
are:
•Product owner
•Project manager
•CTO (Chief Technology Officer)
•Business analyst
A chief technology officer (CTO) (also known as a chief technical
officer or chief technologist) is an officer tasked with managing technical
operations of an organization. They oversee and supervise research and
development and serve as a technical advisor to a higher executive such as
a chief executive officer
Stage 2: Design
 Decisions will also be made on infrastructure, like if the software will be cloud-hosted and if that will involve
a public cloud, private cloud or hybrid approach and providers. Security requirements are an important part
of the design phase and will inform many of the decisions taken.
Once the need for the software has been verified and its initial scope and requirements and resources
expected to be needed are established during the analysis and planning phase, the design phase kicks in.
 This is where software architects and developers make decisions on the high-level design of the software
system. A tech stack will be chosen, like what languages, frameworks and libraries will be used on the front
end and back end and other details like the choice of database technology and other third party services.
 Throughout the design phase, stakeholders should be consulted on tech stack choices, risks, resources
required in the context of design decisions taken, time, budget, regulatory and other project constraints.
 The scope and features is to be released first should also be decided upon here as it will inform the
next phase – development.
Team roles central to the design phase of the SDLC include:
•Software architect
•UI/UX designers
Stage3:
Development
The development phase of the software development life cycle is where the product is coded
and put together by developers. In an Agile approach, which most significant software
development projects take, the first development phase of an iterative SDLC
In a Waterfall( Model) approach, what is seen as the finished product is documented in
technical detail from beginning to end during the design phase and then build from beginning
to end during the development phase.
The team roles most involved in the development phase are:
 Front-end developers
 Back-end developers
 UI/UX designers
What is the meaning of UI UX?
UX (user experience) and UI (user interface) are two interdependent terms.
While UI generally deals with the interaction between users and computer
systems, software and applications, UX deals more generally with a user's
overall experience with a brand, product or service.
Stage4:
Testing
During the testing phase, the software developed in the previous phase is tested against requirements defined in the planning and
analysis phase as well as for performance and bugs. The goal of the phase is to ensure the software product has been developed as
intended, both in terms of user experience and the resources needed for it to run smoothly and meet availability and security
requirements.
Software testing usually involves both manual testing of user journeys and experience as well as automated
testing based on tools and scripts. If bugs or other defects are found, testers must document the issue and
inform the development team who will create a new version of the software in which the issues have been
resolved. That version of the software will then be tested again in case updates have had unintended
consequences and created new bugs or defects.
In a DevOps approach to the software development life
cycle, the development and testing phases are tightly
integrated with testing a continuous process during
development and could even be described as a single,
unified phase.
The team roles most involved in the testing phase are:
•Solutions architect
•QA engineer
•Tester
•DevOps engineer
Stage4:
Deployment
The deployment phase sees a software application moved from its development and testing environments into a live environment where it
is available to users. Deployment can be a relatively simple process or an extremely complex one, depending on the nature of the
software. For example, if a new software product involves a database other systems will use, integrating them all could represent a
significant undertaking.
A crucial step in the deployment phase is also making sure, which means testing, that the software works exactly the same way in the live
environment as it does in the development and testing environments. In a DevOps CI/CD software development pipeline pre-deployment
and live environments should be identical, minimizing the risk of discrepancies between how the software runs. DevOps tightly integrates
the development and deployment phases.
The most prominent team roles in the deployment phase of the SDLC are:
•DevOps engineer
•Database administrator
Stage4:
Maintenance
The maintenance phase involves making sure the software application continues to run as it is
intended to in terms of functionalities, performance and availability. Users and ongoing testing may
uncover bugs and other defects, or security issues, not found during the testing phase, which
should be fixed. These may be minor or necessitate the launch of a new development phase.
The main roles in the maintenance phase are most after:
•Users
•Testers
•Support managers
Software development life cycle? and System development life cycle?
Software development life cycle is about building a software (“only”) in a phased approach systematically.
System development life cycle is about implementing hardware and software in a phased manner
systematically. Here both the hardware and the software is considered as a system.
SDLC can also stand for ‘system development life cycle’ when used more holistically to ensure security
controls and requirements are designed rather than retrofitted into the software development process.
When the ‘S’ of SDLC stands for ‘system’, it covers people, processes, software components,
infrastructure, and change management.
It’s the more ‘general’ project management term while ‘software development life cycle’ has a targeted
focus on just the software components.
Take note:
In conclusion for SDLC 6 Phases
The software development life cycle can and is adapted by
software development teams based on the philosophy,
methodology and framework they adopt when building a
given software product, or between organizations.
Little, if anything, is written in stone, nor should it be.
The SDLC is a tool in the project management box and
should fit the needs of a particular project, the team
working on it and other key stakeholders involved in the
process. Phase names, their order, or if they are distinct
or conflated into each other change.
But every software development project has a life cycle,
and you should now have a good understanding of its role
in project management and as a tool used to improve
outcomes.
( A n d w h e n d o e s n ’ t i t ? )
F i n d o u t h e r e !
Presentation Title
SDLC Models
Presentation Title
SDLC Models
 Software Development life cycle (SDLC) is a spiritual model used in project management that defines the
stages include 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.
Waterfall Model
SDLC Models – Waterfall Model
 Here, are some important phases of SDLC life cycle:
Waterfall Model
The waterfall is a universally accepted SDLC
model. In this method, the whole process of
software development is divided into various
phases.
The waterfall model is a continuous software
development model in which development is
seen as flowing steadily downwards (like a
waterfall) through the steps of requirements
analysis, design, implementation, testing
(validation), integration, and maintenance.
SDLC Models – Waterfall Model
Waterfall model
 Winston Royce introduced the Waterfall Model in 1970.
 The steps always follow in this order and do not overlap.
 The developer must complete every phase before the next phase begins.
 This model is named "Waterfall Model", because its diagrammatic representation
resembles a cascade of waterfalls.
SDLC Models – Waterfall Model
Waterfall model Stages
Requirements analysis
Design
Implementation/Coding
Testing
Deployment
Maintenance
SDLC Models – Waterfall Model
Waterfall model
Advantages of Waterfall model
 This model is simple to implement also the number of resources that are required for it is minimal.
 The requirements are simple and explicitly declared; they remain unchanged during the entire
project development.
 The start and end points for each phase is fixed, which makes it easy to cover progress.
 The release date for the complete product, as well as its final cost, can be determined before
development.
 It gives easy to control and clarity for the customer due to a strict reporting system.
Disadvantages of Waterfall model
 In this model, the risk factor is higher, so this model is not suitable for more significant and complex
projects.
 This model cannot accept the changes in requirements during development.
 It becomes tough to go back to the phase. For example, if the application has now shifted to the
coding phase, and there is a change in requirement, It becomes tough to go back and change it.
 Since the testing done at a later stage, it does not allow identifying the challenges and risks in the
earlier phase, so the risk reduction strategy is difficult to prepare.
Iterative Waterfall Model
Iterative Waterfall Model
What is the Waterfall software development methodology
and is it still relevant?
In 2021 the Waterfall methodology is broadly considered an outdated
approach to software development but are there circumstances under which
it might still be relevant?
In a practical software development project, the classical waterfall model is hard to
use. So, the Iterative waterfall model can be thought of as incorporating the necessary
changes to the classical waterfall model to make it usable in practical software
development projects. It is almost the same as the classical waterfall model except some
changes are made to increase the efficiency of the software development.
The iterative waterfall model provides feedback paths from every phase to its preceding
phases, which is the main difference from the classical waterfall model.
RAD Model
Rapid Application development
SDLC Models – RAD - Rapid Application Development
Rapid Application development
RAD or Rapid Application Development process is an adoption of the waterfall model; it targets
developing software in a short period. The RAD model is based on the concept that a better
system can be developed in lesser time by using focus groups to gather system requirements.
Traditional development methodologies, like the waterfall
approach, don’t cut it any longer. But the RAD model does.
The idea is to adapt quickly to problems, opportunities, and updates, while being
able to make data-driven decisions and base the design and development of the
solution on both requirements and knowledge gained from previous or on-going
processes.
Rapid Application Development Phases
The winning formula mentioned above consists of 4 rapid
application development stages:
1.Plan Requirements
2.User Design and Input
3.Rapid Construction
4.Finalization
SDLC Models – RAD - Rapid Application Development
Stage 1: Outlining the product’s “gist (the substance or essence)” is the first step in the RAD
process. This is when programmers, product owners, managers, users, and designers gather to
summarize the scope, needs, purpose, potential obstacles, and other project’s specificalities.
But they keep the requirements flexible enough so they can more easily undergo any updates if
necessary.
Stage 2: This is a continuous RAD phase that lasts from start to finish and is usually associated
with prototyping and testing. Users work alongside the technical team to give feedback on the
ways the system has been working so far, address shortcomings, clarify features, functionalities,
and user flows that need to be changed/kept, define how intuitive and user-friendly the
software is turning out, and so forth.
Stage 3: Here’s when features and functionalities are finalized, and developers start working
on the product construction based on the feedback collected from the previous phase. One of
the major differences between RAD and other models gets most noticeable in the rapid
construction phase precisely, because it presents programmers with the modules that have
already been discussed, built and tested in the prototypes. So, it is a huge time-saver.
Stage 4: After final testing, user training, interface fine-tunes, quality and stability
assessments, the product moves from approval to live environment.
Rapid Application Development Phases
SDLC Models – RAD - Rapid Application Development
RAD Model Advantages - Or the Aspects That Will Make You Go from Waterfall to Agile.
•Reduces risk from infeasible designs that turn out to be far too complex to execute.
•Weeds out problems and bugs earlier in the project life cycle rather than when the system is already implemented.
•Allows for quick reviews and lets users experience prototypes, provide constructive feedback and identify possible improvements more
effectively.
•Invites users throughout the entire process and not just at the beginning/end, which eliminates design and UX discrepancies more easily.
•The system can be built in modules and functionality-by-functionality, allowing for more detailed testing and insight into the aimed business
aspect of it.
•Delivering better quality and more usable software through well-tested prototypes and RAD projects take typically less time to complete and
progress hand in hand with UX.
•Minimizes the planning phase and nourishes fast-paced prototype iterations.
•PMs and stakeholders can better monitor progress and results, because the project is usually broken down into chunks and more manageable
tasks.
•Eliminates error-prone hand coding and encourages code reuse with the easy integration of low-code/no-code tools and automation.
Rapid Application Development Advantages and Disadvantages
SDLC Models – RAD - Rapid Application Development
Disadvantages - Or the Things to Keep in Mind Before You Jump Straight to Agile
•May result in ignoring the system’s architecture and deemphasizing the non-functional requirements (NFRs).
•Not applicable to large scale teams and projects that require full control and better planning.
•It is more difficult and scattered to manage due to its flexibility and iterative nature.
•Works on 100% for modular systems only.
•May require too frequent meetings due to potentially recurrent cycles of prototypes.
•Some back-end processes and best practices are compromised due to the focus on the facade – the user-
facing front-end (this can be eliminated with the use of low-code development tools but more about this
follows below).
Rapid Application Development Disadvantages
Spiral Model
SDLC Model: Spiral Model
The Spiral Model is one of the most
important Software Development Life Cycle models,
which provides support for Risk Handling.
SDLC Model: Spiral Model
What is the Spiral Model?
The Spiral Model is a Software Development Life Cycle
(SDLC) model that provides a systematic and iterative
approach to software development. In its diagrammatic
representation, looks like a spiral with many loops. The exact
number of loops of the spiral is unknown and can vary from
project to project. Each loop of the spiral is called a Phase of
the software development process.
SDLC Model: Spiral Model
1.The exact number of phases needed to develop the product can be varied by
the project manager depending upon the project risks.
2.As the project manager dynamically determines the number of phases, the
project manager has an important role in developing a product using the spiral
model.
3.It is based on the idea of a spiral, with each iteration of the spiral
representing a complete software development cycle, from requirements
gathering and analysis to design, implementation, testing, and maintenance.
.
SDLC Model: Spiral Model
1 . P l a n n i n g
T h e f i r s t p h a s e o f t h e S p i r a l M o d e l is t h e p l a n n i n g p h a s e , w h e r e t h e s c o p e o f t h e p r o j e c t is d e t e r m i n e d , a n d a
p l a n i s c r e a t e d f o r t h e n e x t i t e r a t i o n o f t h e s p i r a l .
. 2 . R i s k A n a l y s i s
I n t h e r i s k a n a l y s is p h a s e , t h e r i s k s a s s o c i a t e d w i t h t h e p r o j e c t a r e i d e n t i f i e d a n d e v a l u a t e d .
3 . E n g i n e e r i n g
I n t h e e n g i n e e r i n g p h a s e , t h e s o f t w a r e is d e v e l o p e d b a s e d o n t h e r e q u ir e m e n t s g a t h e r e d in t h e p r e v i o u s
i t e r a t i o n .
4 . E v a l u a t i o n
I n t h e e v a l u a t i o n p h a s e , t h e s o f t w a r e i s e v a l u a t e d t o d e t e r m i n e i f it m e e t s t h e c u s t o m e r ’ s r e q u ir e m e n t s a n d if it
i s o f h ig h q u a l i t y .
5 . P l a n n i n g
T h e n e x t i t e r a t i o n o f t h e s p i r a l b e g i n s w i t h a n e w p l a n n i n g p h a s e , b a s e d o n t h e r e s u l t s o f t h e e v a l u a t i o n .
What Are the Phases of Spiral Model?
The Spiral Model is a risk-driven model, meaning that the focus is on managing risk through
multiple iterations of the software development process. It consists of the following phases:
SDLC Model: Spiral Model
The Spiral Model is often used for complex and large software development projects, as it
allows for a more flexible and adaptable approach to software development. It is also well-
suited to projects with significant uncertainty or high levels of risk.
The Radius of the spiral at any point represents the expenses(cost) of the project so far, and
the angular dimension represents the progress made so far in the current phase.
SDLC Model: Spiral Model
Each phase of the Spiral Model is divided into four quadrants as shown in the above
figure. The functions of these four quadrants are discussed below:
1.Objectives determination and identify alternative solutions: Requirements are gathered from the customers and the
objectives are identified, elaborated, and analyzed at the start of every phase. Then alternative solutions possible for the
phase are proposed in this quadrant.
2.Identify and resolve Risks: During the second quadrant, all the possible solutions are evaluated to select the best
possible solution. Then the risks associated with that solution are identified and the risks are resolved using the best
possible strategy. At the end of this quadrant, the Prototype is built for the best possible solution.
3.Develop the next version of the Product: During the third quadrant, the identified features are developed and verified
through testing. At the end of the third quadrant, the next version of the software is available.
4.Review and plan for the next Phase: In the fourth quadrant, the Customers evaluate the so-far developed version of the
software. In the end, planning for the next phase is started.
SDLC Model: Spiral Model
Each phase of the Spiral Model is divided into four quadrants as shown in the above
figure. The functions of these four quadrants are discussed below:
1.Objectives determination and identify alternative solutions: Requirements are gathered from the customers and the
objectives are identified, elaborated, and analyzed at the start of every phase. Then alternative solutions possible for the
phase are proposed in this quadrant.
2.Identify and resolve Risks: During the second quadrant, all the possible solutions are evaluated to select the best
possible solution. Then the risks associated with that solution are identified and the risks are resolved using the best
possible strategy. At the end of this quadrant, the Prototype is built for the best possible solution.
3.Develop the next version of the Product: During the third quadrant, the identified features are developed and verified
through testing. At the end of the third quadrant, the next version of the software is available.
4.Review and plan for the next Phase: In the fourth quadrant, the Customers evaluate the so-far developed version of the
software. In the end, planning for the next phase is started.
SDLC Model: Spiral Model
Advantages of the Spiral Model
Below are some advantages of the Spiral Model.
1.Risk Handling: The projects with many unknown risks that occur as the development proceeds,
in that case, Spiral Model is the best development model to follow due to the risk analysis and risk
handling at every phase.
2.Good for large projects: It is recommended to use the Spiral Model in large and complex
projects.
3.Flexibility in Requirements: Change requests in the Requirements at a later phase can be
incorporated accurately by using this model.
4.Customer Satisfaction: Customers can see the development of the product at the early phase of
the software development and thus, they habituated with the system by using it before
completion of the total product.
5.Iterative and Incremental Approach: The Spiral Model provides an iterative and incremental
approach to software development, allowing for flexibility and adaptability in response to
changing requirements or unexpected events.
6.Emphasis on Risk Management: The Spiral Model places a strong emphasis on risk
management, which helps to minimize the impact of uncertainty and risk on the software
development process.
7.Improved Communication: The Spiral Model provides for regular evaluations and reviews,
which can improve communication between the customer and the development team.
8.Improved Quality: The Spiral Model allows for multiple iterations of the software development
process, which can result in improved software quality and reliability.
SDLC Model: Spiral Model
Disadvantages of the Spiral Model
Below are some main disadvantages of the spiral model.
1.Complex: The Spiral Model is much more complex than other SDLC models.
2.Expensive: Spiral Model is not suitable for small projects as it is expensive.
3.Too much dependability on Risk Analysis: The successful completion of the project is
very much dependent on Risk Analysis. Without very highly experienced experts, it is
going to be a failure to develop a project using this model.
4.Difficulty in time management: As the number of phases is unknown at the start of the
project, time estimation is very difficult.
5.Complexity: The Spiral Model can be complex, as it involves multiple iterations of the
software development process.
6.Time-Consuming: The Spiral Model can be time-consuming, as it requires multiple
evaluations and reviews.
7.Resource Intensive: The Spiral Model can be resource-intensive, as it requires a
significant investment in planning, risk analysis, and evaluations.
SDLC Model: Spiral Model
When To Use the Spiral Model?
1.When a project is vast in software engineering, a spiral model is utilized.
2.A spiral approach is utilized when frequent releases are necessary.
3.When it is appropriate to create a prototype
4.When evaluating risks and costs is crucial
5.The spiral approach is beneficial for projects with moderate to high risk.
6.The SDLC’s spiral model is helpful when requirements are complicated and ambiguous.
7.If modifications are possible at any moment
8.When committing to a long-term project is impractical owing to shifting economic
priorities.
Prototype Model
SDLC Model: Prototype Model
 The prototype model requires that before carrying out the development of actual software, a
working prototype of the system should be built.
 A prototype is a toy implementation of the system.
 A prototype usually turns out to be a very crude version of the actual system, possible
exhibiting limited functional capabilities, low reliability, and inefficient performance as
compared to actual software.
 In many instances, the client only has a general view of what is expected from the software
product. In such a scenario where there is an absence of detailed information regarding the
input to the system, the processing needs, and the output requirement, the prototyping
model may be employed.
SDLC Model: Prototype Model
Steps of Prototype Model
1.Requirement Gathering and Analyst
2.Quick Decision
3.Build a Prototype
4.Assessment or User Evaluation
5.Prototype Refinement
6.Engineer Product
SDLC Model: Prototype Model
Advantage of Prototype Model
1.Reduce the risk of incorrect user requirement
2.Good where requirement are changing/uncommitted
3.Regular visible process aids management
4.Support early product marketing
5.Reduce Maintenance cost.
6.Errors can be detected much earlier as the system is made side by
side.
7.Prototyping tools are expensive.
8.Special tools & techniques are required to build a prototype.
9.It is a time-consuming process.
SDLC Model: Prototype Model
Disadvantage of Prototype Model
1.An unstable/badly implemented prototype often becomes
the final product.
2.Require extensive customer collaboration
1. Costs customer money
2. Needs committed customer
3. Difficult to finish if customer withdraw
4. May be too customer specific, no broad market
3.Difficult to know how long the project will last.
4.Easy to fall back into the code and fix without proper
requirement analysis, design, customer evaluation, and
feedback.
THANK YOU
P r e s e n t e d B y : E n g r . R o l a n B . A n d a l , C C N A , M S I T
I T P r o f e s s o r : A I T E C o l l e g e D e p a r t m e n t .
E m a i l : a n d a l r o l a n b @ g m a i l . c o m

More Related Content

Similar to SIA-101-Final-_SDLC.pdf

ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLESwarnima Tiwari
 
SoftwareEngineering.pptx
SoftwareEngineering.pptxSoftwareEngineering.pptx
SoftwareEngineering.pptxpriyaaresearch
 
Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )eshtiyak
 
Software development lifecycle
Software development lifecycleSoftware development lifecycle
Software development lifecycleMaqUAE
 
unit2.pdfJgkcGkgcjkGKCJGgscdGSADKJgjsdkgKJAGSDJK
unit2.pdfJgkcGkgcjkGKCJGgscdGSADKJgjsdkgKJAGSDJKunit2.pdfJgkcGkgcjkGKCJGgscdGSADKJgjsdkgKJAGSDJK
unit2.pdfJgkcGkgcjkGKCJGgscdGSADKJgjsdkgKJAGSDJKAvijitChaudhuri3
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycleshubhamkumar2004
 
System development life cycle
System development life cycleSystem development life cycle
System development life cycleNITISH SADOTRA
 
structure of SDLC.ppt
structure of SDLC.pptstructure of SDLC.ppt
structure of SDLC.pptRaghavGaming2
 
ashimpptonsdlc-141119005634-conversion-gate02.pdf
ashimpptonsdlc-141119005634-conversion-gate02.pdfashimpptonsdlc-141119005634-conversion-gate02.pdf
ashimpptonsdlc-141119005634-conversion-gate02.pdfNagavelliMadhavi
 
Understanding the Software Development Life Cycle
Understanding the Software Development Life CycleUnderstanding the Software Development Life Cycle
Understanding the Software Development Life CycleTyrion Lannister
 
SDLC presentation-1.pptx
SDLC presentation-1.pptxSDLC presentation-1.pptx
SDLC presentation-1.pptxEvelynChinnu
 
Designing A Waterfall Approach For Software Development Essay
Designing A Waterfall Approach For Software Development EssayDesigning A Waterfall Approach For Software Development Essay
Designing A Waterfall Approach For Software Development EssayAlison Reed
 

Similar to SIA-101-Final-_SDLC.pdf (20)

ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 
SoftwareEngineering.pptx
SoftwareEngineering.pptxSoftwareEngineering.pptx
SoftwareEngineering.pptx
 
SoftwareEngineering.pptx
SoftwareEngineering.pptxSoftwareEngineering.pptx
SoftwareEngineering.pptx
 
SE notes by k. adisesha
SE notes by k. adiseshaSE notes by k. adisesha
SE notes by k. adisesha
 
Sdlc model
Sdlc modelSdlc model
Sdlc model
 
Rishi
RishiRishi
Rishi
 
Rishi
RishiRishi
Rishi
 
Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )
 
Software development lifecycle
Software development lifecycleSoftware development lifecycle
Software development lifecycle
 
SDLC.pptx
SDLC.pptxSDLC.pptx
SDLC.pptx
 
unit2.pdfJgkcGkgcjkGKCJGgscdGSADKJgjsdkgKJAGSDJK
unit2.pdfJgkcGkgcjkGKCJGgscdGSADKJgjsdkgKJAGSDJKunit2.pdfJgkcGkgcjkGKCJGgscdGSADKJgjsdkgKJAGSDJK
unit2.pdfJgkcGkgcjkGKCJGgscdGSADKJgjsdkgKJAGSDJK
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycle
 
System development life cycle
System development life cycleSystem development life cycle
System development life cycle
 
structure of SDLC.ppt
structure of SDLC.pptstructure of SDLC.ppt
structure of SDLC.ppt
 
SE UNIT-1 Revised.pdf
SE UNIT-1 Revised.pdfSE UNIT-1 Revised.pdf
SE UNIT-1 Revised.pdf
 
ashimpptonsdlc-141119005634-conversion-gate02.pdf
ashimpptonsdlc-141119005634-conversion-gate02.pdfashimpptonsdlc-141119005634-conversion-gate02.pdf
ashimpptonsdlc-141119005634-conversion-gate02.pdf
 
Understanding the Software Development Life Cycle
Understanding the Software Development Life CycleUnderstanding the Software Development Life Cycle
Understanding the Software Development Life Cycle
 
Software_Testing.pptx
Software_Testing.pptxSoftware_Testing.pptx
Software_Testing.pptx
 
SDLC presentation-1.pptx
SDLC presentation-1.pptxSDLC presentation-1.pptx
SDLC presentation-1.pptx
 
Designing A Waterfall Approach For Software Development Essay
Designing A Waterfall Approach For Software Development EssayDesigning A Waterfall Approach For Software Development Essay
Designing A Waterfall Approach For Software Development Essay
 

Recently uploaded

RadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfRadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfgstagge
 
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Callshivangimorya083
 
dokumen.tips_chapter-4-transient-heat-conduction-mehmet-kanoglu.ppt
dokumen.tips_chapter-4-transient-heat-conduction-mehmet-kanoglu.pptdokumen.tips_chapter-4-transient-heat-conduction-mehmet-kanoglu.ppt
dokumen.tips_chapter-4-transient-heat-conduction-mehmet-kanoglu.pptSonatrach
 
VIP High Class Call Girls Bikaner Anushka 8250192130 Independent Escort Servi...
VIP High Class Call Girls Bikaner Anushka 8250192130 Independent Escort Servi...VIP High Class Call Girls Bikaner Anushka 8250192130 Independent Escort Servi...
VIP High Class Call Girls Bikaner Anushka 8250192130 Independent Escort Servi...Suhani Kapoor
 
From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...Florian Roscheck
 
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdf
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdfKantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdf
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdfSocial Samosa
 
Market Analysis in the 5 Largest Economic Countries in Southeast Asia.pdf
Market Analysis in the 5 Largest Economic Countries in Southeast Asia.pdfMarket Analysis in the 5 Largest Economic Countries in Southeast Asia.pdf
Market Analysis in the 5 Largest Economic Countries in Southeast Asia.pdfRachmat Ramadhan H
 
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Callshivangimorya083
 
Schema on read is obsolete. Welcome metaprogramming..pdf
Schema on read is obsolete. Welcome metaprogramming..pdfSchema on read is obsolete. Welcome metaprogramming..pdf
Schema on read is obsolete. Welcome metaprogramming..pdfLars Albertsson
 
Spark3's new memory model/management
Spark3's new memory model/managementSpark3's new memory model/management
Spark3's new memory model/managementakshesh doshi
 
PKS-TGC-1084-630 - Stage 1 Proposal.pptx
PKS-TGC-1084-630 - Stage 1 Proposal.pptxPKS-TGC-1084-630 - Stage 1 Proposal.pptx
PKS-TGC-1084-630 - Stage 1 Proposal.pptxPramod Kumar Srivastava
 
Unveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data AnalystUnveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data AnalystSamantha Rae Coolbeth
 
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...soniya singh
 
Saket, (-DELHI )+91-9654467111-(=)CHEAP Call Girls in Escorts Service Saket C...
Saket, (-DELHI )+91-9654467111-(=)CHEAP Call Girls in Escorts Service Saket C...Saket, (-DELHI )+91-9654467111-(=)CHEAP Call Girls in Escorts Service Saket C...
Saket, (-DELHI )+91-9654467111-(=)CHEAP Call Girls in Escorts Service Saket C...Sapana Sha
 
{Pooja: 9892124323 } Call Girl in Mumbai | Jas Kaur Rate 4500 Free Hotel Del...
{Pooja:  9892124323 } Call Girl in Mumbai | Jas Kaur Rate 4500 Free Hotel Del...{Pooja:  9892124323 } Call Girl in Mumbai | Jas Kaur Rate 4500 Free Hotel Del...
{Pooja: 9892124323 } Call Girl in Mumbai | Jas Kaur Rate 4500 Free Hotel Del...Pooja Nehwal
 
Call Girls In Noida City Center Metro 24/7✡️9711147426✡️ Escorts Service
Call Girls In Noida City Center Metro 24/7✡️9711147426✡️ Escorts ServiceCall Girls In Noida City Center Metro 24/7✡️9711147426✡️ Escorts Service
Call Girls In Noida City Center Metro 24/7✡️9711147426✡️ Escorts Servicejennyeacort
 
Delhi Call Girls CP 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls CP 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls CP 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls CP 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Callshivangimorya083
 

Recently uploaded (20)

RadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfRadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdf
 
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
 
dokumen.tips_chapter-4-transient-heat-conduction-mehmet-kanoglu.ppt
dokumen.tips_chapter-4-transient-heat-conduction-mehmet-kanoglu.pptdokumen.tips_chapter-4-transient-heat-conduction-mehmet-kanoglu.ppt
dokumen.tips_chapter-4-transient-heat-conduction-mehmet-kanoglu.ppt
 
VIP High Class Call Girls Bikaner Anushka 8250192130 Independent Escort Servi...
VIP High Class Call Girls Bikaner Anushka 8250192130 Independent Escort Servi...VIP High Class Call Girls Bikaner Anushka 8250192130 Independent Escort Servi...
VIP High Class Call Girls Bikaner Anushka 8250192130 Independent Escort Servi...
 
From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...
 
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdf
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdfKantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdf
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdf
 
Market Analysis in the 5 Largest Economic Countries in Southeast Asia.pdf
Market Analysis in the 5 Largest Economic Countries in Southeast Asia.pdfMarket Analysis in the 5 Largest Economic Countries in Southeast Asia.pdf
Market Analysis in the 5 Largest Economic Countries in Southeast Asia.pdf
 
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
 
Schema on read is obsolete. Welcome metaprogramming..pdf
Schema on read is obsolete. Welcome metaprogramming..pdfSchema on read is obsolete. Welcome metaprogramming..pdf
Schema on read is obsolete. Welcome metaprogramming..pdf
 
Delhi 99530 vip 56974 Genuine Escort Service Call Girls in Kishangarh
Delhi 99530 vip 56974 Genuine Escort Service Call Girls in  KishangarhDelhi 99530 vip 56974 Genuine Escort Service Call Girls in  Kishangarh
Delhi 99530 vip 56974 Genuine Escort Service Call Girls in Kishangarh
 
Spark3's new memory model/management
Spark3's new memory model/managementSpark3's new memory model/management
Spark3's new memory model/management
 
PKS-TGC-1084-630 - Stage 1 Proposal.pptx
PKS-TGC-1084-630 - Stage 1 Proposal.pptxPKS-TGC-1084-630 - Stage 1 Proposal.pptx
PKS-TGC-1084-630 - Stage 1 Proposal.pptx
 
Unveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data AnalystUnveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data Analyst
 
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...
 
VIP Call Girls Service Charbagh { Lucknow Call Girls Service 9548273370 } Boo...
VIP Call Girls Service Charbagh { Lucknow Call Girls Service 9548273370 } Boo...VIP Call Girls Service Charbagh { Lucknow Call Girls Service 9548273370 } Boo...
VIP Call Girls Service Charbagh { Lucknow Call Girls Service 9548273370 } Boo...
 
Saket, (-DELHI )+91-9654467111-(=)CHEAP Call Girls in Escorts Service Saket C...
Saket, (-DELHI )+91-9654467111-(=)CHEAP Call Girls in Escorts Service Saket C...Saket, (-DELHI )+91-9654467111-(=)CHEAP Call Girls in Escorts Service Saket C...
Saket, (-DELHI )+91-9654467111-(=)CHEAP Call Girls in Escorts Service Saket C...
 
{Pooja: 9892124323 } Call Girl in Mumbai | Jas Kaur Rate 4500 Free Hotel Del...
{Pooja:  9892124323 } Call Girl in Mumbai | Jas Kaur Rate 4500 Free Hotel Del...{Pooja:  9892124323 } Call Girl in Mumbai | Jas Kaur Rate 4500 Free Hotel Del...
{Pooja: 9892124323 } Call Girl in Mumbai | Jas Kaur Rate 4500 Free Hotel Del...
 
E-Commerce Order PredictionShraddha Kamble.pptx
E-Commerce Order PredictionShraddha Kamble.pptxE-Commerce Order PredictionShraddha Kamble.pptx
E-Commerce Order PredictionShraddha Kamble.pptx
 
Call Girls In Noida City Center Metro 24/7✡️9711147426✡️ Escorts Service
Call Girls In Noida City Center Metro 24/7✡️9711147426✡️ Escorts ServiceCall Girls In Noida City Center Metro 24/7✡️9711147426✡️ Escorts Service
Call Girls In Noida City Center Metro 24/7✡️9711147426✡️ Escorts Service
 
Delhi Call Girls CP 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls CP 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls CP 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls CP 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
 

SIA-101-Final-_SDLC.pdf

  • 1. SDLC SOFTWARE DEVELOPMENT LIFE CYCLE B y : E n g r . R o l a n B . A n d a l , C C N A , M S I T I T P r o f e s s o r : A I T E C o l l e g e D e p t . E m a i l : a n d a l r o l a n b @ g m a i l . c o m
  • 2. Agenda Topic one – What is a SDLC Topic two – SDLC Phases Topic three – SDLC Models
  • 3. Introduction SDLC - Overview Software Development Life Cycle (SDLC)  is a process used by the software industry to design, develop and test high quality software.  aims to produce a high-quality software that meets or exceeds customer expectations, reaches completion within times and cost estimates.  acronym of Software Development Life Cycle.  It is also called as Software Development Process.  is a framework defining tasks performed at each step in the software development process. Take Note: ISO/IEC 12207 is an international standard for software life-cycle processes. It aims to be the standard that defines all the tasks required for developing and maintaining software. Presentation Title
  • 4. What is a SDLC? Software Development life cycle
  • 5. SDLC is a pro cess followed for a software project, within a s oftware organization . It c on sis ts o f a detailed plan describin g how to develop, maintain, replace and alter or en hance s pecific s oftware. T he life c ycle defines a metho dology fo r impro ving the quality of software an d the o verall development proc es s. Figure Shows following figure is a graphical representation of the various stages of a typical SDLC. Figure. 1 Figure. 2 Figure.3
  • 6. However, the most common SDLC structures are variations on the following phases: Figure 4. Shows most common SDLC structures are variations on the following phases. Figure. 4 1.Planning and Analysis 2.Design 3.Development 4.Testing 5.Deployment 6.Maintenance
  • 7. Why is the software development life cycle important? 7 Defining and following the phases of a software development life cycle results in improved quality of resulting software product while simultaneously reducing the time needed to build and deploy it and reducing overall costs. Following an SDLC achieves those gains for the software development process by: •Providing management with a higher degree of oversight and control. •Improving documentation. •The goal the software being developed is designed to reach is clarified and agreed upon by all stakeholders upfront and a clear roadmap to arriving at that goal is laid out. •All stakeholders can provide their input at the most appropriate and effective phase of the software development process. •Developers have a clear understanding of what they should build and why. •All stakeholders are aware of and buy into the allocation of the resources required to attain the software development project’s goal.
  • 8. Does a software development life cycle always follow the same phases in the same order? 8 Not every software development life cycle is the same. Different software development methodologies and frameworks have their own variations on the SDLC phases.. •Some, for example Crystal, even leave flexibility for the team working on a software development project to set their own SDLC phases as they decide is most appropriate to the piece of software being developed. Crystal or also known as Crystal Methods are a family of methodologies (the Crystal family) developed by Alistair Cockburn from his study and interviews of teams in 1998.
  • 9. Does a software development life cycle always follow the same phases in the same order? 9 Another example is the Agile framework Extreme Programming (XP) follows a 5-stage software development life cycle: Agile software development is an iterative approach to creating software products based on quickly releasing a minimum viable product (MVP) and then adjusting it and adding features and functionalities in stages based on user behaviour and feedback. The methodology is designed to address the fact it can be difficult to accurately predict the most intuitive user journeys, features and functionalities users need, prefer and desire from software. Agile is being characterized by the division of tasks into short phases of work and frequent reassessment and adaptation of plans. "agile methods replace high-level design with frequent redesign"
  • 10. Common phases of the software development life cycle Stage 1: Planning and Requirement Analysis  Requirement analysis is the most important and fundamental stage in SDLC.  It is performed by the senior members of the team with inputs from the customer, the sales department, market surveys and domain experts in the industry. This information is then used to plan the basic project approach and to conduct product feasibility study in the economical, operational and technical areas.  Planning for the quality assurance requirements and identification of the risks associated with the project is also done in the planning stage.  The outcome of the technical feasibility study is to define the various technical approaches that can be followed to implement the project successfully with minimum risks.
  • 11. Stage 1: Planning and Requirement Analysis •What problem will the software solve? What is solving that problem potentially worth? •How big a potential user base does the software have? •Does other software exist that solves the same problem? •How will this software improve on that? •How much might it cost to develop software to effectively solve the problem? •Is solving the problem valuable enough to offer an acceptable return on investment on that cost? •Do we have the resources to support that cost? Planning and analysis processes are often conflated into a single software development life cycle phase. But they are just as often split out into two separate phases. During this first phase, the business case for developing a piece of software is analysed. Among the questions that would typically be asked at this stage are:
  • 12. Stage 1: Planning and Requirement Analysis The project’s scope, or initial estimate of scope in an Agile approach, would be discussed here based on initial feature requirements or assumptions. As would planning of the resources needed to realise the project and then putting them in place, including the software development team Phase 2.: Presumptions contained in the answers to these questions should be verified, preferably through methods like user focus groups, other market research tools including things like SMS marketing, online surveys, developing a technical prototype etc. Goals and limitations are set. The software development team roles most typically involved in the planning and analysis phase of the software development life cycle (this varies from team to team and is influenced by the chosen methodology/framework) are: •Product owner •Project manager •CTO (Chief Technology Officer) •Business analyst A chief technology officer (CTO) (also known as a chief technical officer or chief technologist) is an officer tasked with managing technical operations of an organization. They oversee and supervise research and development and serve as a technical advisor to a higher executive such as a chief executive officer
  • 13. Stage 2: Design  Decisions will also be made on infrastructure, like if the software will be cloud-hosted and if that will involve a public cloud, private cloud or hybrid approach and providers. Security requirements are an important part of the design phase and will inform many of the decisions taken. Once the need for the software has been verified and its initial scope and requirements and resources expected to be needed are established during the analysis and planning phase, the design phase kicks in.  This is where software architects and developers make decisions on the high-level design of the software system. A tech stack will be chosen, like what languages, frameworks and libraries will be used on the front end and back end and other details like the choice of database technology and other third party services.  Throughout the design phase, stakeholders should be consulted on tech stack choices, risks, resources required in the context of design decisions taken, time, budget, regulatory and other project constraints.  The scope and features is to be released first should also be decided upon here as it will inform the next phase – development. Team roles central to the design phase of the SDLC include: •Software architect •UI/UX designers
  • 14. Stage3: Development The development phase of the software development life cycle is where the product is coded and put together by developers. In an Agile approach, which most significant software development projects take, the first development phase of an iterative SDLC In a Waterfall( Model) approach, what is seen as the finished product is documented in technical detail from beginning to end during the design phase and then build from beginning to end during the development phase. The team roles most involved in the development phase are:  Front-end developers  Back-end developers  UI/UX designers What is the meaning of UI UX? UX (user experience) and UI (user interface) are two interdependent terms. While UI generally deals with the interaction between users and computer systems, software and applications, UX deals more generally with a user's overall experience with a brand, product or service.
  • 15. Stage4: Testing During the testing phase, the software developed in the previous phase is tested against requirements defined in the planning and analysis phase as well as for performance and bugs. The goal of the phase is to ensure the software product has been developed as intended, both in terms of user experience and the resources needed for it to run smoothly and meet availability and security requirements. Software testing usually involves both manual testing of user journeys and experience as well as automated testing based on tools and scripts. If bugs or other defects are found, testers must document the issue and inform the development team who will create a new version of the software in which the issues have been resolved. That version of the software will then be tested again in case updates have had unintended consequences and created new bugs or defects. In a DevOps approach to the software development life cycle, the development and testing phases are tightly integrated with testing a continuous process during development and could even be described as a single, unified phase. The team roles most involved in the testing phase are: •Solutions architect •QA engineer •Tester •DevOps engineer
  • 16. Stage4: Deployment The deployment phase sees a software application moved from its development and testing environments into a live environment where it is available to users. Deployment can be a relatively simple process or an extremely complex one, depending on the nature of the software. For example, if a new software product involves a database other systems will use, integrating them all could represent a significant undertaking. A crucial step in the deployment phase is also making sure, which means testing, that the software works exactly the same way in the live environment as it does in the development and testing environments. In a DevOps CI/CD software development pipeline pre-deployment and live environments should be identical, minimizing the risk of discrepancies between how the software runs. DevOps tightly integrates the development and deployment phases. The most prominent team roles in the deployment phase of the SDLC are: •DevOps engineer •Database administrator
  • 17. Stage4: Maintenance The maintenance phase involves making sure the software application continues to run as it is intended to in terms of functionalities, performance and availability. Users and ongoing testing may uncover bugs and other defects, or security issues, not found during the testing phase, which should be fixed. These may be minor or necessitate the launch of a new development phase. The main roles in the maintenance phase are most after: •Users •Testers •Support managers
  • 18. Software development life cycle? and System development life cycle? Software development life cycle is about building a software (“only”) in a phased approach systematically. System development life cycle is about implementing hardware and software in a phased manner systematically. Here both the hardware and the software is considered as a system. SDLC can also stand for ‘system development life cycle’ when used more holistically to ensure security controls and requirements are designed rather than retrofitted into the software development process. When the ‘S’ of SDLC stands for ‘system’, it covers people, processes, software components, infrastructure, and change management. It’s the more ‘general’ project management term while ‘software development life cycle’ has a targeted focus on just the software components. Take note:
  • 19. In conclusion for SDLC 6 Phases The software development life cycle can and is adapted by software development teams based on the philosophy, methodology and framework they adopt when building a given software product, or between organizations. Little, if anything, is written in stone, nor should it be. The SDLC is a tool in the project management box and should fit the needs of a particular project, the team working on it and other key stakeholders involved in the process. Phase names, their order, or if they are distinct or conflated into each other change. But every software development project has a life cycle, and you should now have a good understanding of its role in project management and as a tool used to improve outcomes. ( A n d w h e n d o e s n ’ t i t ? ) F i n d o u t h e r e ! Presentation Title
  • 21. SDLC Models  Software Development life cycle (SDLC) is a spiritual model used in project management that defines the stages include 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.
  • 23. SDLC Models – Waterfall Model  Here, are some important phases of SDLC life cycle: Waterfall Model The waterfall is a universally accepted SDLC model. In this method, the whole process of software development is divided into various phases. The waterfall model is a continuous software development model in which development is seen as flowing steadily downwards (like a waterfall) through the steps of requirements analysis, design, implementation, testing (validation), integration, and maintenance.
  • 24. SDLC Models – Waterfall Model Waterfall model  Winston Royce introduced the Waterfall Model in 1970.  The steps always follow in this order and do not overlap.  The developer must complete every phase before the next phase begins.  This model is named "Waterfall Model", because its diagrammatic representation resembles a cascade of waterfalls.
  • 25. SDLC Models – Waterfall Model Waterfall model Stages Requirements analysis Design Implementation/Coding Testing Deployment Maintenance
  • 26. SDLC Models – Waterfall Model Waterfall model Advantages of Waterfall model  This model is simple to implement also the number of resources that are required for it is minimal.  The requirements are simple and explicitly declared; they remain unchanged during the entire project development.  The start and end points for each phase is fixed, which makes it easy to cover progress.  The release date for the complete product, as well as its final cost, can be determined before development.  It gives easy to control and clarity for the customer due to a strict reporting system. Disadvantages of Waterfall model  In this model, the risk factor is higher, so this model is not suitable for more significant and complex projects.  This model cannot accept the changes in requirements during development.  It becomes tough to go back to the phase. For example, if the application has now shifted to the coding phase, and there is a change in requirement, It becomes tough to go back and change it.  Since the testing done at a later stage, it does not allow identifying the challenges and risks in the earlier phase, so the risk reduction strategy is difficult to prepare.
  • 28. Iterative Waterfall Model What is the Waterfall software development methodology and is it still relevant? In 2021 the Waterfall methodology is broadly considered an outdated approach to software development but are there circumstances under which it might still be relevant? In a practical software development project, the classical waterfall model is hard to use. So, the Iterative waterfall model can be thought of as incorporating the necessary changes to the classical waterfall model to make it usable in practical software development projects. It is almost the same as the classical waterfall model except some changes are made to increase the efficiency of the software development. The iterative waterfall model provides feedback paths from every phase to its preceding phases, which is the main difference from the classical waterfall model.
  • 30. SDLC Models – RAD - Rapid Application Development Rapid Application development RAD or Rapid Application Development process is an adoption of the waterfall model; it targets developing software in a short period. The RAD model is based on the concept that a better system can be developed in lesser time by using focus groups to gather system requirements. Traditional development methodologies, like the waterfall approach, don’t cut it any longer. But the RAD model does. The idea is to adapt quickly to problems, opportunities, and updates, while being able to make data-driven decisions and base the design and development of the solution on both requirements and knowledge gained from previous or on-going processes. Rapid Application Development Phases The winning formula mentioned above consists of 4 rapid application development stages: 1.Plan Requirements 2.User Design and Input 3.Rapid Construction 4.Finalization
  • 31. SDLC Models – RAD - Rapid Application Development Stage 1: Outlining the product’s “gist (the substance or essence)” is the first step in the RAD process. This is when programmers, product owners, managers, users, and designers gather to summarize the scope, needs, purpose, potential obstacles, and other project’s specificalities. But they keep the requirements flexible enough so they can more easily undergo any updates if necessary. Stage 2: This is a continuous RAD phase that lasts from start to finish and is usually associated with prototyping and testing. Users work alongside the technical team to give feedback on the ways the system has been working so far, address shortcomings, clarify features, functionalities, and user flows that need to be changed/kept, define how intuitive and user-friendly the software is turning out, and so forth. Stage 3: Here’s when features and functionalities are finalized, and developers start working on the product construction based on the feedback collected from the previous phase. One of the major differences between RAD and other models gets most noticeable in the rapid construction phase precisely, because it presents programmers with the modules that have already been discussed, built and tested in the prototypes. So, it is a huge time-saver. Stage 4: After final testing, user training, interface fine-tunes, quality and stability assessments, the product moves from approval to live environment. Rapid Application Development Phases
  • 32. SDLC Models – RAD - Rapid Application Development RAD Model Advantages - Or the Aspects That Will Make You Go from Waterfall to Agile. •Reduces risk from infeasible designs that turn out to be far too complex to execute. •Weeds out problems and bugs earlier in the project life cycle rather than when the system is already implemented. •Allows for quick reviews and lets users experience prototypes, provide constructive feedback and identify possible improvements more effectively. •Invites users throughout the entire process and not just at the beginning/end, which eliminates design and UX discrepancies more easily. •The system can be built in modules and functionality-by-functionality, allowing for more detailed testing and insight into the aimed business aspect of it. •Delivering better quality and more usable software through well-tested prototypes and RAD projects take typically less time to complete and progress hand in hand with UX. •Minimizes the planning phase and nourishes fast-paced prototype iterations. •PMs and stakeholders can better monitor progress and results, because the project is usually broken down into chunks and more manageable tasks. •Eliminates error-prone hand coding and encourages code reuse with the easy integration of low-code/no-code tools and automation. Rapid Application Development Advantages and Disadvantages
  • 33. SDLC Models – RAD - Rapid Application Development Disadvantages - Or the Things to Keep in Mind Before You Jump Straight to Agile •May result in ignoring the system’s architecture and deemphasizing the non-functional requirements (NFRs). •Not applicable to large scale teams and projects that require full control and better planning. •It is more difficult and scattered to manage due to its flexibility and iterative nature. •Works on 100% for modular systems only. •May require too frequent meetings due to potentially recurrent cycles of prototypes. •Some back-end processes and best practices are compromised due to the focus on the facade – the user- facing front-end (this can be eliminated with the use of low-code development tools but more about this follows below). Rapid Application Development Disadvantages
  • 35. SDLC Model: Spiral Model The Spiral Model is one of the most important Software Development Life Cycle models, which provides support for Risk Handling.
  • 36. SDLC Model: Spiral Model What is the Spiral Model? The Spiral Model is a Software Development Life Cycle (SDLC) model that provides a systematic and iterative approach to software development. In its diagrammatic representation, looks like a spiral with many loops. The exact number of loops of the spiral is unknown and can vary from project to project. Each loop of the spiral is called a Phase of the software development process.
  • 37. SDLC Model: Spiral Model 1.The exact number of phases needed to develop the product can be varied by the project manager depending upon the project risks. 2.As the project manager dynamically determines the number of phases, the project manager has an important role in developing a product using the spiral model. 3.It is based on the idea of a spiral, with each iteration of the spiral representing a complete software development cycle, from requirements gathering and analysis to design, implementation, testing, and maintenance. .
  • 38. SDLC Model: Spiral Model 1 . P l a n n i n g T h e f i r s t p h a s e o f t h e S p i r a l M o d e l is t h e p l a n n i n g p h a s e , w h e r e t h e s c o p e o f t h e p r o j e c t is d e t e r m i n e d , a n d a p l a n i s c r e a t e d f o r t h e n e x t i t e r a t i o n o f t h e s p i r a l . . 2 . R i s k A n a l y s i s I n t h e r i s k a n a l y s is p h a s e , t h e r i s k s a s s o c i a t e d w i t h t h e p r o j e c t a r e i d e n t i f i e d a n d e v a l u a t e d . 3 . E n g i n e e r i n g I n t h e e n g i n e e r i n g p h a s e , t h e s o f t w a r e is d e v e l o p e d b a s e d o n t h e r e q u ir e m e n t s g a t h e r e d in t h e p r e v i o u s i t e r a t i o n . 4 . E v a l u a t i o n I n t h e e v a l u a t i o n p h a s e , t h e s o f t w a r e i s e v a l u a t e d t o d e t e r m i n e i f it m e e t s t h e c u s t o m e r ’ s r e q u ir e m e n t s a n d if it i s o f h ig h q u a l i t y . 5 . P l a n n i n g T h e n e x t i t e r a t i o n o f t h e s p i r a l b e g i n s w i t h a n e w p l a n n i n g p h a s e , b a s e d o n t h e r e s u l t s o f t h e e v a l u a t i o n . What Are the Phases of Spiral Model? The Spiral Model is a risk-driven model, meaning that the focus is on managing risk through multiple iterations of the software development process. It consists of the following phases:
  • 39. SDLC Model: Spiral Model The Spiral Model is often used for complex and large software development projects, as it allows for a more flexible and adaptable approach to software development. It is also well- suited to projects with significant uncertainty or high levels of risk. The Radius of the spiral at any point represents the expenses(cost) of the project so far, and the angular dimension represents the progress made so far in the current phase.
  • 40. SDLC Model: Spiral Model Each phase of the Spiral Model is divided into four quadrants as shown in the above figure. The functions of these four quadrants are discussed below: 1.Objectives determination and identify alternative solutions: Requirements are gathered from the customers and the objectives are identified, elaborated, and analyzed at the start of every phase. Then alternative solutions possible for the phase are proposed in this quadrant. 2.Identify and resolve Risks: During the second quadrant, all the possible solutions are evaluated to select the best possible solution. Then the risks associated with that solution are identified and the risks are resolved using the best possible strategy. At the end of this quadrant, the Prototype is built for the best possible solution. 3.Develop the next version of the Product: During the third quadrant, the identified features are developed and verified through testing. At the end of the third quadrant, the next version of the software is available. 4.Review and plan for the next Phase: In the fourth quadrant, the Customers evaluate the so-far developed version of the software. In the end, planning for the next phase is started.
  • 41. SDLC Model: Spiral Model Each phase of the Spiral Model is divided into four quadrants as shown in the above figure. The functions of these four quadrants are discussed below: 1.Objectives determination and identify alternative solutions: Requirements are gathered from the customers and the objectives are identified, elaborated, and analyzed at the start of every phase. Then alternative solutions possible for the phase are proposed in this quadrant. 2.Identify and resolve Risks: During the second quadrant, all the possible solutions are evaluated to select the best possible solution. Then the risks associated with that solution are identified and the risks are resolved using the best possible strategy. At the end of this quadrant, the Prototype is built for the best possible solution. 3.Develop the next version of the Product: During the third quadrant, the identified features are developed and verified through testing. At the end of the third quadrant, the next version of the software is available. 4.Review and plan for the next Phase: In the fourth quadrant, the Customers evaluate the so-far developed version of the software. In the end, planning for the next phase is started.
  • 42. SDLC Model: Spiral Model Advantages of the Spiral Model Below are some advantages of the Spiral Model. 1.Risk Handling: The projects with many unknown risks that occur as the development proceeds, in that case, Spiral Model is the best development model to follow due to the risk analysis and risk handling at every phase. 2.Good for large projects: It is recommended to use the Spiral Model in large and complex projects. 3.Flexibility in Requirements: Change requests in the Requirements at a later phase can be incorporated accurately by using this model. 4.Customer Satisfaction: Customers can see the development of the product at the early phase of the software development and thus, they habituated with the system by using it before completion of the total product. 5.Iterative and Incremental Approach: The Spiral Model provides an iterative and incremental approach to software development, allowing for flexibility and adaptability in response to changing requirements or unexpected events. 6.Emphasis on Risk Management: The Spiral Model places a strong emphasis on risk management, which helps to minimize the impact of uncertainty and risk on the software development process. 7.Improved Communication: The Spiral Model provides for regular evaluations and reviews, which can improve communication between the customer and the development team. 8.Improved Quality: The Spiral Model allows for multiple iterations of the software development process, which can result in improved software quality and reliability.
  • 43. SDLC Model: Spiral Model Disadvantages of the Spiral Model Below are some main disadvantages of the spiral model. 1.Complex: The Spiral Model is much more complex than other SDLC models. 2.Expensive: Spiral Model is not suitable for small projects as it is expensive. 3.Too much dependability on Risk Analysis: The successful completion of the project is very much dependent on Risk Analysis. Without very highly experienced experts, it is going to be a failure to develop a project using this model. 4.Difficulty in time management: As the number of phases is unknown at the start of the project, time estimation is very difficult. 5.Complexity: The Spiral Model can be complex, as it involves multiple iterations of the software development process. 6.Time-Consuming: The Spiral Model can be time-consuming, as it requires multiple evaluations and reviews. 7.Resource Intensive: The Spiral Model can be resource-intensive, as it requires a significant investment in planning, risk analysis, and evaluations.
  • 44. SDLC Model: Spiral Model When To Use the Spiral Model? 1.When a project is vast in software engineering, a spiral model is utilized. 2.A spiral approach is utilized when frequent releases are necessary. 3.When it is appropriate to create a prototype 4.When evaluating risks and costs is crucial 5.The spiral approach is beneficial for projects with moderate to high risk. 6.The SDLC’s spiral model is helpful when requirements are complicated and ambiguous. 7.If modifications are possible at any moment 8.When committing to a long-term project is impractical owing to shifting economic priorities.
  • 46. SDLC Model: Prototype Model  The prototype model requires that before carrying out the development of actual software, a working prototype of the system should be built.  A prototype is a toy implementation of the system.  A prototype usually turns out to be a very crude version of the actual system, possible exhibiting limited functional capabilities, low reliability, and inefficient performance as compared to actual software.  In many instances, the client only has a general view of what is expected from the software product. In such a scenario where there is an absence of detailed information regarding the input to the system, the processing needs, and the output requirement, the prototyping model may be employed.
  • 47. SDLC Model: Prototype Model Steps of Prototype Model 1.Requirement Gathering and Analyst 2.Quick Decision 3.Build a Prototype 4.Assessment or User Evaluation 5.Prototype Refinement 6.Engineer Product
  • 48. SDLC Model: Prototype Model Advantage of Prototype Model 1.Reduce the risk of incorrect user requirement 2.Good where requirement are changing/uncommitted 3.Regular visible process aids management 4.Support early product marketing 5.Reduce Maintenance cost. 6.Errors can be detected much earlier as the system is made side by side. 7.Prototyping tools are expensive. 8.Special tools & techniques are required to build a prototype. 9.It is a time-consuming process.
  • 49. SDLC Model: Prototype Model Disadvantage of Prototype Model 1.An unstable/badly implemented prototype often becomes the final product. 2.Require extensive customer collaboration 1. Costs customer money 2. Needs committed customer 3. Difficult to finish if customer withdraw 4. May be too customer specific, no broad market 3.Difficult to know how long the project will last. 4.Easy to fall back into the code and fix without proper requirement analysis, design, customer evaluation, and feedback.
  • 50. THANK YOU P r e s e n t e d B y : E n g r . R o l a n B . A n d a l , C C N A , M S I T I T P r o f e s s o r : A I T E C o l l e g e D e p a r t m e n t . E m a i l : a n d a l r o l a n b @ g m a i l . c o m