0% found this document useful (0 votes)
2 views

ICT Lecture SDLC, Agile Waterfall

The document provides an overview of the Software Development Life Cycle (SDLC), detailing its phases, advantages, and disadvantages. It contrasts Agile and Waterfall methodologies, highlighting their differences in project management approaches. The SDLC aims to create high-quality software efficiently while addressing user needs, with Agile focusing on flexibility and iterative development, and Waterfall emphasizing a structured, linear process.

Uploaded by

adnandanish1375
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

ICT Lecture SDLC, Agile Waterfall

The document provides an overview of the Software Development Life Cycle (SDLC), detailing its phases, advantages, and disadvantages. It contrasts Agile and Waterfall methodologies, highlighting their differences in project management approaches. The SDLC aims to create high-quality software efficiently while addressing user needs, with Agile focusing on flexibility and iterative development, and Waterfall emphasizing a structured, linear process.

Uploaded by

adnandanish1375
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 26

ICT Lecture

INTRODUCTION TO SDLC
Contents
SDLC

Pros and Cons of SDLC

Agile & Waterfall


What is SDLC?
SDLC, or Software Development Life Cycle, is like a step-by-step guide for
creating computer programs.
It's a careful process that makes sure the software works well and does what it's
supposed to do.
The goal is to make high-quality software that satisfies the needs of the people
using it. The process has a set timeframe and cost to ensure it gets done
efficiently.
Think of it as a detailed plan that tells us how to plan, build, and take care of
specific software. Each step in the process has its own tasks and results that lead
into the next step. SDLC, which is short for Software Development Life Cycle, is
also called the Application Development life-cycle.
Scenario
Software
Developer Friend
Why SDLC?
Here, are prime reasons why SDLC is important for developing a software system

It offers a Provides a It is a
basis for framework mechanism
project for a for project
planning, standard set tracking and
scheduling, of activities control
and and
estimating deliverables

Helps you to
Increases decrease
visibility of Increased Improved project risk
project and enhance client and project
planning to development relations managemen
all involved speed t plan
stakeholders overhead
.
SDLC Phases

The entire SDLC process divided into the following SDLC steps:

Requirements Implementation Testing and


Planning Designing Testing
Analysis Coding Maintenance
1: Planning and Requirement Analysis

 This initial stage involves identifying current user problems and


devising effective solutions. Insights gained from understanding these
issues contribute to the creation of a comprehensive plan.
 Planning includes considerations such as costs, materials, labor
calculations, and timelines. Stakeholder involvement is crucial for
feedback, and the stage defines the project scope to prevent it from
expanding beyond its intended boundaries.
2: Defining Requirements
Following planning, the production team defines and documents project
requirements.

These requirements, encompassing the application or software's uses, features,


and potential challenges, need approval from stakeholders. Identifying necessary
resources is also a critical aspect of this stage.
3: Designing the Product Architecture
In the design phase, the model's workings and other elements are outlined, including:

 Programming: Identifying the programming language and how the software will perform tasks.

 User Interface: Determining user interaction and response to inputs.

 Security: Implementing measures like password protection and data encryption.

 Communication: Defining communication mechanisms with other assets, such as a central


server.

 Platforms: Listing platforms like Android, iOS, Windows, Linux.

 Architecture: Defining templates, overall design, programming languages, and industry


practices.

This stage also involves creating a prototype, serving as an early version of the software for
demonstration and adjustments.
4: Implementation or Coding

Development/coding begins, with the team writing the program.

Tasks are divided among team members if a larger team is involved.


5: Testing the Product
Once the software is developed, it requires to be tested to check if it
performs as it is supposed to.

It is specifically an important stage of the SDLC as, when the software is
developed, it is done so in parts. Testing allows one to combine all these parts
of the software and test how the software as a whole performs and whether
all its parts integrate well.

Any glitches, bugs, or issues are identified and addressed to ensure that the
software runs smoothly. This stage allows developers to ensure a higher
usage rate and improved satisfaction in users.
6: Deployment to the Market and
Maintenance
After successfully navigating the testing phase and resolving all identified bugs, the software is
prepared for release and becomes accessible to users.
Deployment can be carried out manually or through automated processes, depending on the
specific needs and complexity of the software.
Continuous Maintenance and Support:
Following deployment, every software necessitates ongoing maintenance and support. This
ensures that any newly emerging bugs, or those that remained undetected during the testing
phase, are promptly addressed.
This step is crucial as it empowers developers to consistently enhance the software's quality,
directly influencing the overall user experience. Regular maintenance and support contribute to
the longevity, reliability, and optimal performance of the software in the hands of users.
So Now Basic Concept
of SDLC is clear.
Advantages of SDLC:
1.Comprehensive Project Overview:
◦ Provides a clear view of the entire project, encompassing all aspects, developers
involved, and estimates for cost and timeline.

2.Cost and Timeline Estimation:


◦ The SDLC plan aids project managers in establishing a foundational cost for the
project, considering the resources required for execution.

3.Standardization of Processes:
◦ Helps in clearly defining standards and goals, ensuring consistency and
uniformity throughout the development process.

4.Adaptability and Feedback Loop:


◦ Allows the development team to revisit prior stages if something deviates from
expectations, facilitating assessment and necessary adjustments.
Disadvantages of SDLC:

1.Time-Consuming:
◦ The detailed planning and documentation involved in SDLC can be time-
consuming, potentially delaying the initiation of the actual development work.

2.High Costs:
◦ The comprehensive planning and adherence to standards can result in higher initial
costs, especially if changes are required during later stages.

3.Not Ideal for Small Projects:


◦ The structured approach of SDLC may be overly formal and bureaucratic for
smaller projects.
Introduction

When it comes to project management, you might have wondered whether Agile or Waterfall is
the better approach. Let's explore the basics of both.

The Basics of Agile and


Waterfall
Agile and Waterfall are two different project management methodologies.
Both are valid approaches but have different processes and structures.
Agile & Waterfall
Project Management
Agile Project Management
Agile focuses on rapid, continuous delivery and shorter timescales.
Agile projects are open to change and use an iterative approach to product development.
Agile teams are self-organizing and work closely with customers and stakeholders.
Agile is less rigid than Waterfall and emphasizes continuous process improvement.

Waterfall Project Management


Waterfall is a more traditional approach to project management.
It plans the project from the start and relies heavily on documentation.
Ideal for projects where crucial details are known upfront, resources are available, and the project is
relatively uncomplicated.
Follows a linear, sequential process with phases like requirement, design, implementation, testing,
deployment, and maintenance.
Agile SDLC Methodology
•Description:
•This methodology centers around user
input and experiences to address
issues. It is highly feedback-driven and
adapts well to changing market needs.
•Characteristics:
•Iterative and flexible. Emphasizes
collaboration, customer feedback, and
the ability to respond swiftly to
changing requirements.
Waterfall SDLC Methodology:

•Description:
•A linear methodology where developers must
complete each step before progressing to the
next. This sequential approach allows
organizations to assess feasibility at every
stage of development.

•Characteristics:
• Structured, systematic, and well-defined
phases. Progress moves in a single direction,
making it easier to track and manage.
The Difference Between
Agile and Waterfall

Agile delivery happens in cyclical phases, while Waterfall relies on linear, sequential phases.

Agile is responsive to change, whereas Waterfall favors upfront planning.

Agile values continuous refinement, while Waterfall makes mid-project assessment difficult.

Choo • Agile might be suitable if you anticipate changing needs,


sing multiple deliverables over time, and prioritize process
the improvement.
Right
Appr • Waterfall might work better for straightforward projects with
oach
: known deadlines and resource constraints
• These methodologies cater to different project
requirements, team dynamics, and adaptability to change.
The choice between them depends on factors such as
project complexity, size, and the level of client
involvement desired.
Thank You

You might also like