0% found this document useful (0 votes)
18 views27 pages

Overview of The Software Development Life Cycle-1

The document provides an overview of the Software Development Life Cycle (SDLC), detailing its phases including requirements gathering, system design, implementation, testing, deployment, and maintenance. It also discusses various software development methodologies, specifically the Waterfall and Agile approaches, highlighting their advantages and disadvantages. The learning objectives include identifying SDLC phases, discussing methodologies, and understanding their pros and cons.

Uploaded by

klopienclaudia
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views27 pages

Overview of The Software Development Life Cycle-1

The document provides an overview of the Software Development Life Cycle (SDLC), detailing its phases including requirements gathering, system design, implementation, testing, deployment, and maintenance. It also discusses various software development methodologies, specifically the Waterfall and Agile approaches, highlighting their advantages and disadvantages. The learning objectives include identifying SDLC phases, discussing methodologies, and understanding their pros and cons.

Uploaded by

klopienclaudia
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 27

Overview of the

software development
life cycle

Dr Kazeem Oyebode,
PhD Computer Engineering (Computer Vision)
University of KwaZulu Natal
LEARNING OBJECTIVEs

● To identify the phases in a software


development life cycle

●To discuss software development methodologies

●To list the advantages and disadvantages of identified


software development methodologies.
Overview of the software development life cycle

● An organized method for creating software


applications is called the Software Development Life Cycle (SDLC).
● In order to achieve effective and high-quality software
development, it entails a number of phases,
● Each with particular objectives and deliverables.
Software development phases

● Requirements Gathering and Analysis


● System Design
● Implementation or Coding
● Testing
● Deployment
● Maintenance
Requirements Gathering and Analysis

● In this preliminary stage, information from


stakeholders, such as end users, clients, is gathered
in order to determine the software requirements.
● To guarantee a thorough grasp of the software's
purpose, capabilities, and limitations, the
requirements are recorded, examined, and confirmed.
Requirements Gathering and Analysis
System Design

● Based on the requirements gathered, the system architecture


and design are implemented in this phase. Numerous parts,
modules, interfaces, and data structures are included in the
design. It outlines how various software
components will work together and how the
system will be developed to match the
required specifications.
System Design
Implementation or Coding

● The actual coding and development of the software application start


after the system design is finished.
● Programmers use the appropriate programming languages, frameworks,
and tools to write the code in accordance with the
design standards.
Implementation or Coding
Testing

● Verifying the software's stability, performance, and usability is part of


the testing step. Testing is carried out using a variety of methods,
including
● user acceptability testing -testing by end users
● system testing - testing the complete system
● integration testing - testing the interaction
between functions
● unit testing - testing individual functions.
Software testing
Deployment

● After successful testing, the software is deployed to the production


environment. This phase involves the installation of the software on
target hardware or servers and configuring it to
work in the desired environment. Data migration,
system integration, and user training may
also occur during the deployment
Deployment
Maintenance

● The maintenance phase begins after the program has been deployed. In
this stage, problems are resolved, defects are fixed, and any necessary
upgrades or improvements are made.
Maintenance
Software development Methodologies

● Software development techniques are the different methods and


frameworks that teams and organizations use to organize, carry out,
and complete software projects.
Software development Methodologies

Methodology kinds
● Waterfall
● Agile
Waterfall

● The waterfall methodology employs a sequential and linear process.


Before going on to the following phase of the SDLC, each phase must be
finished. At the outset, requirements are gathered, and the entire
project is planned and recorded. This approach is unbending and less
flexible.
Waterfall
Agile

● Agile methodologies, emphasize iterative and incremental


development. The project is divided into smaller iterations or sprints,
typically ranging from one to four weeks. The requirements and
priorities can be adjusted throughout the project, promoting flexibility
and adaptability.
However, this approach may not support documentation
Agile
Summary
Summary

● We explored software development life cycle

● We also explored software development methodologies

● Finally, we looked at the advantages and disadvantages of


listed methodologies.
FURTHER READING RESOURCES

● Beginning Software Engineering 1st Edition by Rod Stephens


● Software Engineering, 10th Edition Paperback – January 1,
2017 by IAN SOMMERVILLE
Thank
You

You might also like