SlideShare a Scribd company logo
Astana IT University​
Advanced QA​
PhD Adamova Aigul Dyusenbinovna​
Aigul.adamova@astanait.edu.kz​
Software Development Lifecycle
Week: 2
Software Development Lifecycle Presentation
Today’s agenda
Software Development Model
Software Testing Axioms
Software Testing Terms and Definitions
Software Development Lifecycle (SDLC)
Process of producing and maintaining software systems
Primary goal is delivering software that is:
High quality
1.
Meets customer expectations
2.
On time & within budget
3.
SDLC consist of several phases...
SDLC Process & Phases
Variations in names / phases but follows same process:
Requirements
1.
Design
2.
Implementation
3.
Testing
4.
Deployment
5.
Maintenance
6.
SDLC Process & Phases
Variations in names / phases but follows same process:
Requirements: Gather & define project foundation
1.
Design
2.
Implementation
3.
Testing
4.
Deployment
5.
Maintenance
6.
SDLC Process & Phases
Variations in names / phases but follows same process:
Requirements: Gather & define project foundation
1.
Design: Determine architectural structure documents
2.
Implementation
3.
Testing
4.
Deployment
5.
Maintenance
6.
SDLC Process & Phases
Variations in names / phases but follows same process:
Requirements: Gather & define project foundation
1.
Design: Determine architectural structure documents
2.
Implementation: Product coded & built to spec
3.
Testing
4.
Deployment
5.
Maintenance
6.
SDLC Process & Phases
Variations in names / phases but follows same process:
Requirements: Gather & define project foundation
1.
Design: Determine architectural structure documents
2.
Implementation: Product coded & built to spec
3.
Testing: Fix bugs, errors & inconsistencies
4.
Deployment
5.
Maintenance
6.
SDLC Process & Phases
Variations in names / phases but follows same process:
Requirements: Gather & define project foundation
1.
Design: Determine architectural structure documents
2.
Implementation: Product coded & built to spec
3.
Testing: Fix bugs, errors & inconsistencies
4.
Deployment: Public release, inc. training & help files
5.
Maintenance
6.
SDLC Process & Phases
Variations in names / phases but follows same process:
Requirements: Gather & define project foundation
1.
Design: Determine architectural structure documents
2.
Implementation: Product coded & built to spec
3.
Testing: Fix bugs, errors & inconsistencies
4.
Deployment: Public release, inc. training & help files
5.
Maintenance: Support, big fixes, updates etc.
6.
Role of Testing in SDLC
Testing is an essential part of the SDLC
Ensures quality and reliability
Occurs throughout development process
Identify & fix defects early
Prevents mistakes, reduces risk of failure
Testing in different SDLC Phases
Requirements - validate & verify that clear & complete
1.
Design - check documents are accurate & consistent
2.
Implementation - develop test cases, run Unit Testing
3.
Testing - execute cases, identify defects & retest
4.
Deployment - verify correct, provide support material
5.
Maintenance - test new features, bug fixes and changes
6.
Software Development Lifecycle Presentation
SDLC
Quiz
Activities
Requirements
Elicitation Analysis Specification ??? Prioritisation
Design
Architectural
design
Detailed
design
Interface
design
Design
documentation
Implementation Coding
Code review (e.g.,
peer code review)
Integration Code
refactoring
Testing
Test planning Test case
design
Test evaluation Defect
tracking
Deployment
Configuration
management
Release
management
Deployment Maintenance
???
???
???
???
Unit testing
Post-deployment
validation
Validation Design review Test execution
Waterfall model
Software Development Model
V model Spiral model
RAD model Agile model
Waterfall model
Software Development Model
Spiral model
Software Development Model
V model Software Development Model
RAD model Software Development Model
Agile model Software Development Model
Case Study Error in Intel's Pentium Microprocessor
Mathematics professor at Lynchburg College, USA, Dr.Thomas Nicely, found a floating point division error in Intel Pentium
microprocessor in the year 1994. He was computing on his Pentium-based computer to find the sum of the reciprocals of prime numbers.
He noticed that the computation result was significantly different from the theoretical values. When the same computation was carried out
on another computer with a different microprocessor (486 CPU) he was able to get the correct values that obey the theoretical values. The
worst and well-known case was division of 4195835 by 3145727. The correct value is 1.33382, however the Pentium's floating point unit
computed and generated a value 1.33374 (Only 6 places after decimal is mentioned here), which has an error of 0.006.
Dr.Thomas Nicely reported the bug to Intel, but Intel ignored it and Nicley did not receive any proper response from Intel. Later, Nicley
took the issue to public with the help of the Internet and media. Following these events, Intel publicly announced that "an error is only
likely to occur [about] once in nine billion random floating points". They also mentioned in their announcement that "an average
spreadsheet user could encounter this subtle flaw once in every 27,000 years of use." However, it was noted that the Intel Pentium
processors output was wrong every time when such division was performed for such values.
On November 28, 1994, Intel publicly admitted the problem and issued a statement saying that it would replace pentium chips only for
those who could explain the need of high accuracy in complex calculations. Industry experts, public, and media criticized this attitude of
Intel. Later, in the month of December, Intel announced that it would freely replace the processor for any owner who asked for one.
The bug problem made Intel to issue an apology to its customers and the public for the way it handled the bug and issues related to it. It
had to spend more than $400 million for replacing bad chips. Learning a lesson from this, Intel now reports all known problems on its
official website and it also monitors customer feedbacks carefully and regularly.
Questions
1. Is Intel right in their approach to customers? How did they win customers’ confidence?
2. Explain the kind of bug faced by Intel. What method would you suggest to overcome the bug?
Software Testing Axioms
Axiom 1
It is impossible to test a
program completely
Software Testing Axioms
Axiom 2
Software testing is a risk-
based exercise
Axiom 3
Testing cannot show the
absence of bugs.
Axiom 4
The more bugs you find,
the more bugs there are.
Axiom 5
Not all bugs found will be
fixed.
Axiom 6
It is difficult to say when a
bug is indeed a bug.
Axiom 7
Specifications are never
final.
Axiom 8
Software testers are not
the most popular
members of a project.
Axiom 9
Software testing is a
disciplined and technical
profession.
Software Quality
Software Testing Terms and Definitions
Verification
Validation
Quality Assurance
Quality Control
Test plan
Test case
is impacted by bugs. It is essential that the software is bug free or
defect free and meets the requirements, specifications, and
expectations of the client.
the process of discovering the possible failures in the software
before the commencement of the testing phase. It involves reviews,
inspections, meetings, code reviews, and specifications. It answers
the question.” Are we building the product right?”
the actual testing of the product happens at a later stage. Defects
which occur due to discrepancies in functionality and specifications
are detected in this phase. It answers the question, “Are we building
the right product?”
Software Quality
Software Testing Terms and Definitions
Verification
Validation
Quality Assurance
Quality Control
Test plan
Test case
is a document which gives information about the objectives, scope,
approach and the various attributes that the testing project must
focus on.
The main aim is to evaluate whether the deliverables are of
acceptable quality. The focus thus is to detect defects and correction
of these defects (correction oriented). The activities ensure data
integrity, correctness and completeness.
The activities are more generic and can encompass the whole
development process. The main aim is to prevent defects, and thus
it focuses on the process of product or application building.
is a document and is the smallest unit of testing. It has a developed
set of inputs, execution preconditions and expected outcomes for a
specific objective.
Software Development Lifecycle Presentation
Questions
1. Is there any difference between the water fall model and the spiral model? Discuss.
2. In V model, test cases are developed at every stage of software development. Explain.
3. Explain how you will carry out software development process using RAD model.
4. In Agile model, the customers, developers, and testers constantly interact with each other
during the entire development process. Discuss.
5. How does test strategy differ from the test technique? Substantiate how planning a
strategy helps in efficient testing.
6. Suppose you are recruited as a tester in a software company, what qualities are you
expected to exhibit?
7. Do you think software testers need to be just knowledgeable in their domain? Are there
any specific soft skills they are expected to exhibit?
8. “The process of static test is very tedious”. Explain why.
9. Is there any difference between Verification and Validation? Discuss
10. “Not all bugs found will be fixed. “ How would you substantiate this axiom?
Summary
Testing plays critical role in SDLC
Ensures software is reliable & defect-tree
Testing throughout the SDLC minimises risk of software failure
The Waterfall model of software development is a traditional model which
follows sequential method of software development. V and Spiral models, which
employ testing as an integral part of software development, are more efficient
than the Waterfall model. Agile is considered to be the most advanced and
efficient type of software development model. Extreme Programming (XP) is a
method developed based on the agile model, which uses test driven development
to develop highly efficient software.

More Related Content

PDF
Chapter 2 - Testing Throughout SDLC V4.0
PPTX
Dw testing
PPTX
SOFTWARE TESTING unit 1 types of software testing.pptx
DOCX
International Journal of Soft Computing and Engineering (IJS
ODP
Testing Software
PPT
testing
PPTX
Software_Testing.pptx
PPTX
SQT-UNIT TESTING SOFTWARE DEVELOPMENT LIFECYCLE
Chapter 2 - Testing Throughout SDLC V4.0
Dw testing
SOFTWARE TESTING unit 1 types of software testing.pptx
International Journal of Soft Computing and Engineering (IJS
Testing Software
testing
Software_Testing.pptx
SQT-UNIT TESTING SOFTWARE DEVELOPMENT LIFECYCLE

Similar to Software Development Lifecycle Presentation (20)

PDF
IRJET- Research Study on Testing Mantle in SDLC
PDF
EFFECTIVE TEST CASE DESING: A REVIEW
PPT
Learn software testing
PPTX
Introduction to software testing Presentation
PPS
Software Development Life Cycle Testingtypes
PPT
Software testing-and-analysis
PDF
Software_testing Unit 1 bca V.pdf
PPT
Role+Of+Testing+In+Sdlc
PPTX
Software Engineering-Part 1
PDF
SOFTWARE TESTING W1_watermark.pdf
PDF
Quality analysis pdf to study For your education
PDF
Software testing
PDF
IRJET- Technique of Finding the Defect in Software Testing
PPTX
week-3.pptx.............................
PPTX
Software testing sengu
PDF
Complete Manual Testing Notes which tells about the process of testing
PDF
Importance of Testing in SDLC
PPTX
Introduction to Software Engineering and Software Process Models
PPTX
STLC & SDLC-ppt-1.pptx
PPT
SOFTWARE TESTING
IRJET- Research Study on Testing Mantle in SDLC
EFFECTIVE TEST CASE DESING: A REVIEW
Learn software testing
Introduction to software testing Presentation
Software Development Life Cycle Testingtypes
Software testing-and-analysis
Software_testing Unit 1 bca V.pdf
Role+Of+Testing+In+Sdlc
Software Engineering-Part 1
SOFTWARE TESTING W1_watermark.pdf
Quality analysis pdf to study For your education
Software testing
IRJET- Technique of Finding the Defect in Software Testing
week-3.pptx.............................
Software testing sengu
Complete Manual Testing Notes which tells about the process of testing
Importance of Testing in SDLC
Introduction to Software Engineering and Software Process Models
STLC & SDLC-ppt-1.pptx
SOFTWARE TESTING
Ad

Recently uploaded (20)

PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PPTX
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
PDF
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PDF
Basic Mud Logging Guide for educational purpose
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PDF
Supply Chain Operations Speaking Notes -ICLT Program
PPTX
Pharma ospi slides which help in ospi learning
PDF
O7-L3 Supply Chain Operations - ICLT Program
PDF
FourierSeries-QuestionsWithAnswers(Part-A).pdf
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PPTX
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
PDF
Computing-Curriculum for Schools in Ghana
PDF
Classroom Observation Tools for Teachers
PDF
Microbial disease of the cardiovascular and lymphatic systems
PPTX
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
PDF
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PPTX
Cell Structure & Organelles in detailed.
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
Abdominal Access Techniques with Prof. Dr. R K Mishra
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
Basic Mud Logging Guide for educational purpose
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
Supply Chain Operations Speaking Notes -ICLT Program
Pharma ospi slides which help in ospi learning
O7-L3 Supply Chain Operations - ICLT Program
FourierSeries-QuestionsWithAnswers(Part-A).pdf
Final Presentation General Medicine 03-08-2024.pptx
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
Computing-Curriculum for Schools in Ghana
Classroom Observation Tools for Teachers
Microbial disease of the cardiovascular and lymphatic systems
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
Module 4: Burden of Disease Tutorial Slides S2 2025
Cell Structure & Organelles in detailed.
Ad

Software Development Lifecycle Presentation

  • 1. Astana IT University​ Advanced QA​ PhD Adamova Aigul Dyusenbinovna​ Aigul.adamova@astanait.edu.kz​ Software Development Lifecycle Week: 2
  • 3. Today’s agenda Software Development Model Software Testing Axioms Software Testing Terms and Definitions
  • 4. Software Development Lifecycle (SDLC) Process of producing and maintaining software systems Primary goal is delivering software that is: High quality 1. Meets customer expectations 2. On time & within budget 3. SDLC consist of several phases...
  • 5. SDLC Process & Phases Variations in names / phases but follows same process: Requirements 1. Design 2. Implementation 3. Testing 4. Deployment 5. Maintenance 6.
  • 6. SDLC Process & Phases Variations in names / phases but follows same process: Requirements: Gather & define project foundation 1. Design 2. Implementation 3. Testing 4. Deployment 5. Maintenance 6.
  • 7. SDLC Process & Phases Variations in names / phases but follows same process: Requirements: Gather & define project foundation 1. Design: Determine architectural structure documents 2. Implementation 3. Testing 4. Deployment 5. Maintenance 6.
  • 8. SDLC Process & Phases Variations in names / phases but follows same process: Requirements: Gather & define project foundation 1. Design: Determine architectural structure documents 2. Implementation: Product coded & built to spec 3. Testing 4. Deployment 5. Maintenance 6.
  • 9. SDLC Process & Phases Variations in names / phases but follows same process: Requirements: Gather & define project foundation 1. Design: Determine architectural structure documents 2. Implementation: Product coded & built to spec 3. Testing: Fix bugs, errors & inconsistencies 4. Deployment 5. Maintenance 6.
  • 10. SDLC Process & Phases Variations in names / phases but follows same process: Requirements: Gather & define project foundation 1. Design: Determine architectural structure documents 2. Implementation: Product coded & built to spec 3. Testing: Fix bugs, errors & inconsistencies 4. Deployment: Public release, inc. training & help files 5. Maintenance 6.
  • 11. SDLC Process & Phases Variations in names / phases but follows same process: Requirements: Gather & define project foundation 1. Design: Determine architectural structure documents 2. Implementation: Product coded & built to spec 3. Testing: Fix bugs, errors & inconsistencies 4. Deployment: Public release, inc. training & help files 5. Maintenance: Support, big fixes, updates etc. 6.
  • 12. Role of Testing in SDLC Testing is an essential part of the SDLC Ensures quality and reliability Occurs throughout development process Identify & fix defects early Prevents mistakes, reduces risk of failure
  • 13. Testing in different SDLC Phases Requirements - validate & verify that clear & complete 1. Design - check documents are accurate & consistent 2. Implementation - develop test cases, run Unit Testing 3. Testing - execute cases, identify defects & retest 4. Deployment - verify correct, provide support material 5. Maintenance - test new features, bug fixes and changes 6.
  • 15. SDLC Quiz Activities Requirements Elicitation Analysis Specification ??? Prioritisation Design Architectural design Detailed design Interface design Design documentation Implementation Coding Code review (e.g., peer code review) Integration Code refactoring Testing Test planning Test case design Test evaluation Defect tracking Deployment Configuration management Release management Deployment Maintenance ??? ??? ??? ??? Unit testing Post-deployment validation Validation Design review Test execution
  • 16. Waterfall model Software Development Model V model Spiral model RAD model Agile model
  • 19. V model Software Development Model
  • 20. RAD model Software Development Model
  • 21. Agile model Software Development Model
  • 22. Case Study Error in Intel's Pentium Microprocessor Mathematics professor at Lynchburg College, USA, Dr.Thomas Nicely, found a floating point division error in Intel Pentium microprocessor in the year 1994. He was computing on his Pentium-based computer to find the sum of the reciprocals of prime numbers. He noticed that the computation result was significantly different from the theoretical values. When the same computation was carried out on another computer with a different microprocessor (486 CPU) he was able to get the correct values that obey the theoretical values. The worst and well-known case was division of 4195835 by 3145727. The correct value is 1.33382, however the Pentium's floating point unit computed and generated a value 1.33374 (Only 6 places after decimal is mentioned here), which has an error of 0.006. Dr.Thomas Nicely reported the bug to Intel, but Intel ignored it and Nicley did not receive any proper response from Intel. Later, Nicley took the issue to public with the help of the Internet and media. Following these events, Intel publicly announced that "an error is only likely to occur [about] once in nine billion random floating points". They also mentioned in their announcement that "an average spreadsheet user could encounter this subtle flaw once in every 27,000 years of use." However, it was noted that the Intel Pentium processors output was wrong every time when such division was performed for such values. On November 28, 1994, Intel publicly admitted the problem and issued a statement saying that it would replace pentium chips only for those who could explain the need of high accuracy in complex calculations. Industry experts, public, and media criticized this attitude of Intel. Later, in the month of December, Intel announced that it would freely replace the processor for any owner who asked for one. The bug problem made Intel to issue an apology to its customers and the public for the way it handled the bug and issues related to it. It had to spend more than $400 million for replacing bad chips. Learning a lesson from this, Intel now reports all known problems on its official website and it also monitors customer feedbacks carefully and regularly. Questions 1. Is Intel right in their approach to customers? How did they win customers’ confidence? 2. Explain the kind of bug faced by Intel. What method would you suggest to overcome the bug?
  • 24. Axiom 1 It is impossible to test a program completely Software Testing Axioms Axiom 2 Software testing is a risk- based exercise Axiom 3 Testing cannot show the absence of bugs. Axiom 4 The more bugs you find, the more bugs there are. Axiom 5 Not all bugs found will be fixed. Axiom 6 It is difficult to say when a bug is indeed a bug. Axiom 7 Specifications are never final. Axiom 8 Software testers are not the most popular members of a project. Axiom 9 Software testing is a disciplined and technical profession.
  • 25. Software Quality Software Testing Terms and Definitions Verification Validation Quality Assurance Quality Control Test plan Test case is impacted by bugs. It is essential that the software is bug free or defect free and meets the requirements, specifications, and expectations of the client. the process of discovering the possible failures in the software before the commencement of the testing phase. It involves reviews, inspections, meetings, code reviews, and specifications. It answers the question.” Are we building the product right?” the actual testing of the product happens at a later stage. Defects which occur due to discrepancies in functionality and specifications are detected in this phase. It answers the question, “Are we building the right product?”
  • 26. Software Quality Software Testing Terms and Definitions Verification Validation Quality Assurance Quality Control Test plan Test case is a document which gives information about the objectives, scope, approach and the various attributes that the testing project must focus on. The main aim is to evaluate whether the deliverables are of acceptable quality. The focus thus is to detect defects and correction of these defects (correction oriented). The activities ensure data integrity, correctness and completeness. The activities are more generic and can encompass the whole development process. The main aim is to prevent defects, and thus it focuses on the process of product or application building. is a document and is the smallest unit of testing. It has a developed set of inputs, execution preconditions and expected outcomes for a specific objective.
  • 28. Questions 1. Is there any difference between the water fall model and the spiral model? Discuss. 2. In V model, test cases are developed at every stage of software development. Explain. 3. Explain how you will carry out software development process using RAD model. 4. In Agile model, the customers, developers, and testers constantly interact with each other during the entire development process. Discuss. 5. How does test strategy differ from the test technique? Substantiate how planning a strategy helps in efficient testing. 6. Suppose you are recruited as a tester in a software company, what qualities are you expected to exhibit? 7. Do you think software testers need to be just knowledgeable in their domain? Are there any specific soft skills they are expected to exhibit? 8. “The process of static test is very tedious”. Explain why. 9. Is there any difference between Verification and Validation? Discuss 10. “Not all bugs found will be fixed. “ How would you substantiate this axiom?
  • 29. Summary Testing plays critical role in SDLC Ensures software is reliable & defect-tree Testing throughout the SDLC minimises risk of software failure The Waterfall model of software development is a traditional model which follows sequential method of software development. V and Spiral models, which employ testing as an integral part of software development, are more efficient than the Waterfall model. Agile is considered to be the most advanced and efficient type of software development model. Extreme Programming (XP) is a method developed based on the agile model, which uses test driven development to develop highly efficient software.