Quality Assurance in SDLC

36,522 views

Published on

Quality Assurance in Software Development Life-cycle (SDLC)

Published in: Technology

Quality Assurance in SDLC

  1. 1. Quality Assurance in Software Development Lifecycle Concepts, Practices, and ChallengesAdil Ahmed Mughal
  2. 2. About This Session• What you must already know? – Basic concepts of Software Engineering• What you will learn today? – Understanding commonly used concepts – How do we use theory in practice – What are the challenges we faced in industry
  3. 3. About This Session• What you must already know? – Basic concepts of Software Engineering This is not a single side talk, its discussion!• What you will learn today? Promise me that you will raise hand when you – Understanding commonly used concepts have anything to say? – How do we use theory in practice – What are the challenges we faced in industry
  4. 4. About Speaker Adil Ahmed MughalAffiliations:Contact Information: adil.mughal@live.com @adilamughal http://www.adilmughal.com
  5. 5. Concepts & Terminologies• What is Quality? – Conformances to requirements – Fitness for use – performs these specified functions correctly over repeated use or over a long period of time
  6. 6. Concepts & Terminologies• Purpose of QA – To ensure software quality through the related set of (validation and verification) activities
  7. 7. Concepts & TerminologiesQuality Assurance != Testing
  8. 8. Concepts & Terminologies• Software Development Lifecycle (SDLC) Planning Design Testing Analysis Development Maintenance
  9. 9. Concepts & Terminologies• SDLC & Quality Assurance Quality Assurance (Umbrella) Planning Design Testing Analysis Development Maintenance Quality Planning Execution (Verification and Validation) Measurement and Analysis
  10. 10. Concepts & TerminologiesQuality Assurance > Testing
  11. 11. Concepts & TerminologiesFunctional & Non-Functional Testing
  12. 12. Concepts & Terminologies Functional Non-Functional Integrating Installation Interoperability System Testing Testing Regression Compatibility Usability API Testing TestingGUI Validation Documentation Globalization Security Testing Review
  13. 13. Concepts & TerminologiesError, Fault, Failure and Defect
  14. 14. Concepts & TerminologiesError Fault Failure• Missing/Incorrect • Incorrect step in • Inability of a Human action computer program system • Behavioral deviationCollectively referred as Defect
  15. 15. Concepts & TerminologiesVerification and Validation?
  16. 16. Concepts & TerminologiesVerification Validation• Verification evaluates • Validation evaluates the documents, plans, code, product itself. requirements, and specifications • Involves the execution of tests designed to cover each• For example, of the specific system • Inconsistent Requirements requirements • Design Walkthroughs • Code Inspections
  17. 17. Concepts & TerminologiesVerification Validation• Verification evaluates • Validation evaluates the documents, plans, code, product itself. Verification and Validation? requirements, and specifications • Involves the execution of tests designed to cover each• For example, of the specific system • Inconsistent Requirements requirements • Design Walkthroughs • Code Inspections
  18. 18. Practices• So how it is done in Industry? Planning • Create a QA plan/test strategy Analysis • Specification Review Design Development • Develop test cases for testing (validation) • Test cases execution on developed software Testing and Integration testing Deployment • Build validation/Shipment assurance
  19. 19. Practices• It could be improved like • Create a QA plan/test strategy Planning • Review project plan Analysis • Specification Review Design • Analyze design • Develop test cases for testing (validation) Development • Code Inspection/Review • Unit Testing • Test cases execution on developed software • Integration testing Testing • Test Automation (tools) • Non-Functional Testing Deployment • Build validation/Shipment assurance
  20. 20. ChallengesFocus on Functional Testing
  21. 21. ChallengesRelative Cost of Bug Fix
  22. 22. Challenges
  23. 23. Challenges Time QualityFeature Cost
  24. 24. ChallengesCareer Path and Opportunities Myth: Those who are not comfortable with programming takes QA job
  25. 25. Thank You! Adil Ahmed Mughaladil.mughal@live.com@adilamughalhttp://www.adilmughal.com

×