SDLC

You might also like

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 19

SOFTWARE

DEVELOPMENT LIFE
CYCLE
AGENDA

1. What is SDLC model?


2. Phases of the SDLC model
3. Types of SDLC model
SDLC MODEL
PLANNING AND REQUIREMENTS ANALYSIS

► Performed by the senior members of the team with inputs from the
customer, the sales department, etc in the industry
► Used to plan the basic project approach
► Planning for the quality assurance requirements and identification of
the risk
DEFINING REQUIREMENTS
► Clearly define and document the product requirements and get them
approved from the customer or the market analysts.
► This is done through an SRS (Software Requirement Specification)
document which consists of all the product requirements to be designed
and developed during the project life cycle
DESIGNING THE PRODUCT
ARCHITECTURE
At the Architecture Design stage, the product’s architects will create a Design Document
Specification (DDS), where they’ll specify architecture design based on the collected data.

Here’s how you can optimize the Architecture Design stage:

► Formalize alternative architectures in the DDS. Include alternative architectures based


on your project’s requirements. Multiple viable options for development will give
engineers more flexibility and help stakeholders to make informed decisions.
► Make sure that DDS brings value. The documentation should be explicit to help
understand key system functions, security capabilities, UIs, platform characteristics, and
app logic. Ideally, DDS should be comprehensible enough for developers, testers, and
key stakeholders to understand.
► Gather stakeholders’ input continuously. You many need to secure other
stakeholders’ approvals for certain tasks (e.g. proposed architecture design or task
priorities).
► Define roles and responsibilities in a RACI matrix. RACI (which stands for
Responsible, Accountable, Consulted, and Informed) helps define departments and
people accountable for tasks and milestones.
BUILDING OR DEVELOPMENT
► Implementation phase is the core of the software development
process. At this stage, engineers work through the set list of tasks to
transform the pre-approved architecture into a functional system. This
SDLC phase marks the beginning of the production. It includes code
writing, testing, and technology fine-tuning.
TESTING THE PRODUCT
Testing is a continuous process in the SDLC process.

► The testing phase is where you focus on investigation and discovery. The main
goal of the testing procedures is to report, monitor, resolve and retest software
components until they reach the quality standards
► Before testing can begin, the team develops a test plan. The test plan includes
the types of testing you'll be using, resources for testing, how the software will
be tested, who should be the testers, and test scripts, which are instructions
each tester uses to test the software. Test scripts ensure consistency while
testing.
DEPLOYMENT AND MAINTENANCE

● Release of the product


● Maintenance for the customer if required

The client can choose from several software deployment mechanisms in


outsourcing. For example, an outsourcing vendor can deploy the product
and even maintain it after release. Alternatively, the customer can accept
the product and entrust its delivery to another company. Lastly, the in-house
development team can handle software deployment.
SDLC MODELS

There are various software development life cycle models


defined and designed which are followed during the software
development process. Also referred as "Software Development
Process Models".

Each process model follows a Series of steps unique to its type


to ensure success in the process of software development.
WATERFALL APPROACH

● Requirements are known


● Each stage signed off before the
next one commences
● Need extensive documentation as
this is the primary communication
medium

Perfect approach if requirements are fully


understood and not complex
V-MODEL
V-MODEL. ADVANTAGES

● This is a highly disciplined model and Phases are completed one at


a time.
● V-Model is used for projects where project requirements are clear.
● Simple and easy to understand and use.
● Proactive defect tracking – that is defects are found at early stages
when they are introduced
● Testing Methods like planning, test designing happens well before
coding.
V-MODEL. DISADVANTAGES

● It’s not flexible


● It is not a good for complex and object-oriented projects.
● It is not suitable for projects where requirements are not clear and
contains high risk of changing.
● This model does not support iteration of phases.
SPIRAL MODEL

● Provides support for


Risk Handling
● Good for large
projects
● Flexibility in
Requirements
● Customer
Satisfaction
Agile software development
It’s a set of practices intended to improve the effectiveness of software
development professionals, teams, and organizations that helps teams deliver
value to their customers faster and with fewer headaches.
Agile Values
CHANGING ROLE FOR TESTER
TRADITIONAL APPROACH AGILE/SCRUM
● Work in team of testing prof’s ● Work in cross functional team of
analysts, developers, testers …
● Role predominantly involves testing ● Expanded role - design def/review,
write/review code and testing
● Last line of defense for software ● Quality responsibility of entire sprint
quality team
● Test case prepared from well ● Test cases prepared from user stories,
documented req’s and designs req. & design discussions, minimal docs
● Test execution after code complete ● Testing is collaborative effort with
other functions, no phase gate
● Report progress by testing ● Report progress by Feature complete

phase rather than testing completion


PROJECT LIFE CYCLE

You might also like