SlideShare a Scribd company logo
1 of 4
Download to read offline
************ [Effective Software Defect Tracking] *****************************************************
When implemented well, defect tracking greatly reduces overall project costs and improves schedule performance.
To effectively track and manage software defects also improves customer satisfaction, creates higher productivity and
quicker delivery, and leads to better operational reliability and improved morale.
Software quality costs are the costs associated with preventing, finding, and correcting defective software.
Following costs contribute to the total cost of poor-quality software to the organization.
 Prevention Costs: Cost of activities specifically designed to prevent poor-quality software, e.g. costs of efforts to
prevent coding errors, design errors, additional document reviews to reduce mistakes in the user manuals, and
code reviews to minimize badly documented or unmaintainably complex code.
 Appraisal Costs: Costs of activities to find defects, such as code inspections and software quality testing. Design
reviews are part prevention and part appraisal. Formulating ways to strengthen the design is a prevention cost,
whereas to analyze proposed designs for potential errors is an appraisal cost.
 Failure Costs: Costs that result directly from poor software quality, such as the cost to fix defects and the cost to
deal with customer complaints. Failure costs can be divided into two main areas:
o Internal: Costs that arise before the product is delivered to the customer.
o External: Once software is delivered to the customer, poor-quality software can incur in customer service
costs or the cost to distribute a patch for a released product.
The total cost of software quality: Total Cost of Quality = Prevention + Appraisal + Internal Failure + External Failure
Defects are commonly defined as “failure to conform to specifications”, e.g. incorrectly implemented specifications and
specified requirement(s) missing from the software.
Defect: variance from a desired attribute. These attributes include complete and correct requirements and specifications,
designs that meet requirements, and programs that observe requirements and business rules.
Effective defect tracking begins with a systematic process. A structured tracking process begins with initially logging the
defects, investigating the defects, then providing the structure to resolve them.
For early defect detection and resolution to take place, defect tracking and software development efforts should being
simultaneously. Defect tracking must be implemented throughout the development lifecycle.
Phases of Defect Tracking
 Requirements phase: Defect tracking focuses on validating that the defined requirements meet the needs and
the user’s expectation about functionality.
 Design and analysis phase: Efforts should focus on identifying and documenting that the application design
meets the business rules or field requirements as defined by the business or user requirements.
 Programming phase: Defect tracking must emphasize ensuring that the programs accomplish the defined
application functionality given by the requirements and design.
 Maintenance and enhancement phase: During Maintenance, effort is spent tracking ongoing user issues with
the software. During enhancement, defect tracking is focused on establishing that the previous release is still
stable when the enhancements have been added.
Once a defect has been discovered,
the important first step is to log the
defect into a defect-tracking database
or repository.
Attributes to be recorded:
 Defect Number
 Date
 Build and test platform in which it was
 discovered
 Application requirement or business rule to which it relates
 Any supplementary notes.
Defects types:
 Interface defects: include incorrectly working menu items, push buttons and list boxes.
 Navigational defects: window not opening when moving from one interface screen to another.
 Functionality defects: incorrect calculation of salaries in a payroll system.
Defects Priority Levels
 Resolve immediately
 High Priority
 Normal Queue
 Low Priority
Urgency with which a defect has to be repaired is
derived from the severity of the defect.
 Critical
 Important
 Average
 Low
Each defect is also given appropriate status; for example, a new defect is given the status of “open” and a defect under
repair would have the status of “assigned”.
Only if the fix passes the regression test will be accepted and the defect assigned a status of “closed”. Other defect
statuses could include “deferred”, if the defect is not to be fixed for the current release but may be resolved in a
subsequent release or “enhancement”, if a feature that is not part of the requirements has been suggested, and may
be reviewed as an enhancement for later releases.
Most organizations consider it essential to constantly monitor and evaluate their performance, and this key practice is
especially critical in defect removal. Following measures need to be determined to analyze defects:
 Defect Status vs. Priority
 Defect status vs. Severity
 Defect status vs. application module
 Defect age.
An evaluation of defects discovered during testing provides the best indication of software. Quality is the indication of
how well the software meets a desired attribute.
Defect evaluation may be based on methods that range from simple defect counts to rigorous statistical modeling.
Defect analysis: Analyzing the distribution of defects over the values of one or more parameters associated with a
defect.
Four main defect parameters for defect analysis
 Status: current state of the defect
 Priority: relative importance of addressing and resolving this defect
 Severity: relative impact of this defect to the end-user, an organization, third parties, etc.
 Source: what part of the software or requirement this defect affects.
Defect counts can be reported in two ways:
1. As a function of time, resulting in a defect
trend diagram or report
2. As a function of one or more defect
parameters (like severity or status) in a
defect density report.
Classes of Reports
 Defect Density or Distribution Reports: defect counts to be shown as a function of one or two defect
parameters.
 Defect Age Reports: Type of defect distribution report that shows how long a defect has been in a particular
state.
 Defect Trend Reports: show defect counts by status as a function of time.
Effective defect tracking strongly contributes to enhancing software quality and reducing development project costs. By
“shadowing” the software development process, defect tracking helps you identify and report potential software
process early and acts as a catalyst for problems to be addressed. By facilitating discovery of defects earlier in the
development cycle, effective defect tracking is a critical key to lower costs, enhanced software quality and reducing
overall project cost.
************ [Pragmatic Unit Testing] *****************************************************
Unit testing is the practice of using small bits of code to exercise the code you’ve written.
A unit test is a piece of code written by a developer that exercises a very small, specific area of functionality in the code
being tested. Unit tests are performed to prove that a piece of code does what the developer thinks it should do.
Unit testing benefits: It will make your designs better and drastically reduce the amount of time you spend in
debugging.
Collateral Damage is what happens when a new feature or a bug fix in one part of the system causes a bug (damage) to
another, possibly unrelated part of the system.
Team is not effectively unit testing if, unit tests only test a path, unit tests are in fact integration tests or unit tests are
not maintained.
To check if code is behaving as you expect, you use an assertion, a simple method call that verifies that something is
true.
Open source refers to software where the source code is made freely available.
Test code follows a standard formula:
 Set up all conditions needed for testing
 Call the method to be tested
 Verify that the tested functionality worked as expected
 Clean up after itself
A fixture is about the scenario we are testing than the actual class we are testing. Testing a single class across multiple
fixtures is very common.
Six specific areas to test (RIGHT BICEP)
Right – are the results right?
B – are all the boundary conditions CORRECT?
I – can you check inverse relationships?
C – can you cross-check results using other means?
E – can you force error conditions to happen?
P – are performance characteristics within bounds?
Tests for boundary conditions
Conformance – Does the value conform to an expected format?
Ordering – is the set of values ordered or unordered as appropriate?
Range – is the value within reasonable minimum and maximum values?
Reference – does the code reference anything external that isn’t under direct control of the code itself?
Existence – Does the value exist?
Cardinality – are there exactly enough values?
Time – is everything happening in order? At the right time? In time?

More Related Content

What's hot

16103271 software-testing-ppt
16103271 software-testing-ppt16103271 software-testing-ppt
16103271 software-testing-pptatish90
 
functional testing
functional testing functional testing
functional testing bharathanche
 
Software testing.ppt
Software testing.pptSoftware testing.ppt
Software testing.pptKomal Garg
 
Static white box testing lecture 12
Static white box testing lecture 12Static white box testing lecture 12
Static white box testing lecture 12Abdul Basit
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual TestingSachin-QA
 
verification and validation
verification and validationverification and validation
verification and validationDinesh Pasi
 
software testing methodologies
software testing methodologiessoftware testing methodologies
software testing methodologiesJhonny Jhon
 
Software testing lecture 9
Software testing lecture 9Software testing lecture 9
Software testing lecture 9Abdul Basit
 
Concept of Failure, error, fault and defect
Concept of Failure, error, fault and defectConcept of Failure, error, fault and defect
Concept of Failure, error, fault and defectchaklee191
 
Software testing life cycle
Software testing life cycleSoftware testing life cycle
Software testing life cycleGaruda Trainings
 
Software testing
Software testingSoftware testing
Software testingmkn3009
 
Verification and validation process in software testing
Verification and validation process in software testingVerification and validation process in software testing
Verification and validation process in software testingpooja deshmukh
 
software testing strategies
software testing strategiessoftware testing strategies
software testing strategiesHemanth Gajula
 

What's hot (20)

16103271 software-testing-ppt
16103271 software-testing-ppt16103271 software-testing-ppt
16103271 software-testing-ppt
 
Software testing
Software testingSoftware testing
Software testing
 
functional testing
functional testing functional testing
functional testing
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Software testing.ppt
Software testing.pptSoftware testing.ppt
Software testing.ppt
 
Testing methodology
Testing methodologyTesting methodology
Testing methodology
 
Static white box testing lecture 12
Static white box testing lecture 12Static white box testing lecture 12
Static white box testing lecture 12
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
 
verification and validation
verification and validationverification and validation
verification and validation
 
Chapter 16
Chapter 16Chapter 16
Chapter 16
 
software testing methodologies
software testing methodologiessoftware testing methodologies
software testing methodologies
 
Software testing lecture 9
Software testing lecture 9Software testing lecture 9
Software testing lecture 9
 
Software testing Report
Software testing ReportSoftware testing Report
Software testing Report
 
Verification and validation
Verification and validationVerification and validation
Verification and validation
 
SECh1920
SECh1920SECh1920
SECh1920
 
Concept of Failure, error, fault and defect
Concept of Failure, error, fault and defectConcept of Failure, error, fault and defect
Concept of Failure, error, fault and defect
 
Software testing life cycle
Software testing life cycleSoftware testing life cycle
Software testing life cycle
 
Software testing
Software testingSoftware testing
Software testing
 
Verification and validation process in software testing
Verification and validation process in software testingVerification and validation process in software testing
Verification and validation process in software testing
 
software testing strategies
software testing strategiessoftware testing strategies
software testing strategies
 

Viewers also liked

Viewers also liked (10)

Defect Management on BugDay Bangkok 2009
Defect Management on BugDay Bangkok 2009Defect Management on BugDay Bangkok 2009
Defect Management on BugDay Bangkok 2009
 
StarWest 2012 - Agile Defect Management: Focus On Prevention
StarWest 2012 - Agile Defect Management: Focus On PreventionStarWest 2012 - Agile Defect Management: Focus On Prevention
StarWest 2012 - Agile Defect Management: Focus On Prevention
 
Root cause Analysis of Defects
Root cause Analysis of DefectsRoot cause Analysis of Defects
Root cause Analysis of Defects
 
Test Reports
Test ReportsTest Reports
Test Reports
 
TEST EXECUTION AND REPORTING
TEST EXECUTION AND REPORTINGTEST EXECUTION AND REPORTING
TEST EXECUTION AND REPORTING
 
IT Quality Testing and the Defect Management Process
IT Quality Testing and the Defect Management ProcessIT Quality Testing and the Defect Management Process
IT Quality Testing and the Defect Management Process
 
Root Cause Analysis (RCA) Tools
Root Cause Analysis (RCA) ToolsRoot Cause Analysis (RCA) Tools
Root Cause Analysis (RCA) Tools
 
Root cause analysis
Root cause analysisRoot cause analysis
Root cause analysis
 
Rajesh HR resume
Rajesh HR resumeRajesh HR resume
Rajesh HR resume
 
Root Cause Analysis Presentation
Root Cause Analysis PresentationRoot Cause Analysis Presentation
Root Cause Analysis Presentation
 

Similar to Reading Summary - Effective Software Defect Tracking + Pragmatic Unit Testing

Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance Webtech Learning
 
Chapter 9 Testing Strategies.ppt
Chapter 9 Testing Strategies.pptChapter 9 Testing Strategies.ppt
Chapter 9 Testing Strategies.pptVijayaPratapReddyM
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTINGacemindia
 
Testing strategies in Software Engineering
Testing strategies in Software EngineeringTesting strategies in Software Engineering
Testing strategies in Software EngineeringMuhammadTalha436
 
Aim (A).pptx
Aim (A).pptxAim (A).pptx
Aim (A).pptx14941
 
11 steps of testing process - By Harshil Barot
11 steps of testing process - By Harshil Barot11 steps of testing process - By Harshil Barot
11 steps of testing process - By Harshil BarotHarshil Barot
 
Software Testing Interview Questions For Experienced
Software Testing Interview Questions For ExperiencedSoftware Testing Interview Questions For Experienced
Software Testing Interview Questions For Experiencedzynofustechnology
 
QA interview questions and answers
QA interview questions and answersQA interview questions and answers
QA interview questions and answersMehul Chauhan
 
Some Commonly Asked Question For Software Testing
Some Commonly Asked Question For Software TestingSome Commonly Asked Question For Software Testing
Some Commonly Asked Question For Software TestingKumari Warsha Goel
 
IRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLCIRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLCIRJET Journal
 
Software Testing
Software TestingSoftware Testing
Software TestingSengu Msc
 
ISTQB Chapter 1 Fundamentals of Testing
ISTQB Chapter 1  Fundamentals of TestingISTQB Chapter 1  Fundamentals of Testing
ISTQB Chapter 1 Fundamentals of Testingssuser2d9936
 
software testing technique
software testing techniquesoftware testing technique
software testing techniqueRana assad ali
 

Similar to Reading Summary - Effective Software Defect Tracking + Pragmatic Unit Testing (20)

Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance
 
Chapter 9 Testing Strategies.ppt
Chapter 9 Testing Strategies.pptChapter 9 Testing Strategies.ppt
Chapter 9 Testing Strategies.ppt
 
UNIT 2.pptx
UNIT 2.pptxUNIT 2.pptx
UNIT 2.pptx
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
Ch22
Ch22Ch22
Ch22
 
Testing strategies in Software Engineering
Testing strategies in Software EngineeringTesting strategies in Software Engineering
Testing strategies in Software Engineering
 
Aim (A).pptx
Aim (A).pptxAim (A).pptx
Aim (A).pptx
 
11 steps of testing process - By Harshil Barot
11 steps of testing process - By Harshil Barot11 steps of testing process - By Harshil Barot
11 steps of testing process - By Harshil Barot
 
SE-Lecture-7.pptx
SE-Lecture-7.pptxSE-Lecture-7.pptx
SE-Lecture-7.pptx
 
Software Testing Interview Questions For Experienced
Software Testing Interview Questions For ExperiencedSoftware Testing Interview Questions For Experienced
Software Testing Interview Questions For Experienced
 
QA interview questions and answers
QA interview questions and answersQA interview questions and answers
QA interview questions and answers
 
Qa analyst training
Qa analyst training Qa analyst training
Qa analyst training
 
Some Commonly Asked Question For Software Testing
Some Commonly Asked Question For Software TestingSome Commonly Asked Question For Software Testing
Some Commonly Asked Question For Software Testing
 
IRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLCIRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLC
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
ISTQB Chapter 1 Fundamentals of Testing
ISTQB Chapter 1  Fundamentals of TestingISTQB Chapter 1  Fundamentals of Testing
ISTQB Chapter 1 Fundamentals of Testing
 
Software test life cycle
Software test life cycleSoftware test life cycle
Software test life cycle
 
SDLCTesting
SDLCTestingSDLCTesting
SDLCTesting
 
software testing technique
software testing techniquesoftware testing technique
software testing technique
 

More from Artemisa Yescas Engler

Maestría en Ciencias de la Computación - Tec de Mty - Campus Guadalajara
Maestría en Ciencias de la Computación - Tec de Mty - Campus GuadalajaraMaestría en Ciencias de la Computación - Tec de Mty - Campus Guadalajara
Maestría en Ciencias de la Computación - Tec de Mty - Campus GuadalajaraArtemisa Yescas Engler
 
Reading Summary - Static Analysis to find Bugs & ROI Models for Static Analys...
Reading Summary - Static Analysis to find Bugs & ROI Models for Static Analys...Reading Summary - Static Analysis to find Bugs & ROI Models for Static Analys...
Reading Summary - Static Analysis to find Bugs & ROI Models for Static Analys...Artemisa Yescas Engler
 
Reading Summary - Business Modeling + Peer Code Review + SW Inspections
Reading Summary - Business Modeling + Peer Code Review + SW InspectionsReading Summary - Business Modeling + Peer Code Review + SW Inspections
Reading Summary - Business Modeling + Peer Code Review + SW InspectionsArtemisa Yescas Engler
 
Reading Summary - Software Requirements + Characteristics of Well Written Req...
Reading Summary - Software Requirements + Characteristics of Well Written Req...Reading Summary - Software Requirements + Characteristics of Well Written Req...
Reading Summary - Software Requirements + Characteristics of Well Written Req...Artemisa Yescas Engler
 
Reading Summary - Agile Documentation + Continuous Integration
Reading Summary - Agile Documentation + Continuous IntegrationReading Summary - Agile Documentation + Continuous Integration
Reading Summary - Agile Documentation + Continuous IntegrationArtemisa Yescas Engler
 
Reading Summary - Software Agile Development + Scrum
Reading Summary - Software Agile Development + Scrum Reading Summary - Software Agile Development + Scrum
Reading Summary - Software Agile Development + Scrum Artemisa Yescas Engler
 
Reading Summary - Teamwork + Team Structure + Configuration Management
Reading Summary - Teamwork + Team Structure + Configuration ManagementReading Summary - Teamwork + Team Structure + Configuration Management
Reading Summary - Teamwork + Team Structure + Configuration ManagementArtemisa Yescas Engler
 
Reading Summary - Team Motivation + Software Lifecycles Models
Reading Summary - Team Motivation + Software Lifecycles ModelsReading Summary - Team Motivation + Software Lifecycles Models
Reading Summary - Team Motivation + Software Lifecycles ModelsArtemisa Yescas Engler
 

More from Artemisa Yescas Engler (9)

Maestría en Ciencias de la Computación - Tec de Mty - Campus Guadalajara
Maestría en Ciencias de la Computación - Tec de Mty - Campus GuadalajaraMaestría en Ciencias de la Computación - Tec de Mty - Campus Guadalajara
Maestría en Ciencias de la Computación - Tec de Mty - Campus Guadalajara
 
Reading Summary - Static Analysis to find Bugs & ROI Models for Static Analys...
Reading Summary - Static Analysis to find Bugs & ROI Models for Static Analys...Reading Summary - Static Analysis to find Bugs & ROI Models for Static Analys...
Reading Summary - Static Analysis to find Bugs & ROI Models for Static Analys...
 
Reading Summary - Business Modeling + Peer Code Review + SW Inspections
Reading Summary - Business Modeling + Peer Code Review + SW InspectionsReading Summary - Business Modeling + Peer Code Review + SW Inspections
Reading Summary - Business Modeling + Peer Code Review + SW Inspections
 
Reading Summary - Software Requirements + Characteristics of Well Written Req...
Reading Summary - Software Requirements + Characteristics of Well Written Req...Reading Summary - Software Requirements + Characteristics of Well Written Req...
Reading Summary - Software Requirements + Characteristics of Well Written Req...
 
Reading Summary - Agile Documentation + Continuous Integration
Reading Summary - Agile Documentation + Continuous IntegrationReading Summary - Agile Documentation + Continuous Integration
Reading Summary - Agile Documentation + Continuous Integration
 
Reading Summary - Software Agile Development + Scrum
Reading Summary - Software Agile Development + Scrum Reading Summary - Software Agile Development + Scrum
Reading Summary - Software Agile Development + Scrum
 
Reading Summary - Teamwork + Team Structure + Configuration Management
Reading Summary - Teamwork + Team Structure + Configuration ManagementReading Summary - Teamwork + Team Structure + Configuration Management
Reading Summary - Teamwork + Team Structure + Configuration Management
 
Reading Summary - Team Motivation + Software Lifecycles Models
Reading Summary - Team Motivation + Software Lifecycles ModelsReading Summary - Team Motivation + Software Lifecycles Models
Reading Summary - Team Motivation + Software Lifecycles Models
 
About Node.js
About Node.jsAbout Node.js
About Node.js
 

Recently uploaded

Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 

Recently uploaded (20)

Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 

Reading Summary - Effective Software Defect Tracking + Pragmatic Unit Testing

  • 1. ************ [Effective Software Defect Tracking] ***************************************************** When implemented well, defect tracking greatly reduces overall project costs and improves schedule performance. To effectively track and manage software defects also improves customer satisfaction, creates higher productivity and quicker delivery, and leads to better operational reliability and improved morale. Software quality costs are the costs associated with preventing, finding, and correcting defective software. Following costs contribute to the total cost of poor-quality software to the organization.  Prevention Costs: Cost of activities specifically designed to prevent poor-quality software, e.g. costs of efforts to prevent coding errors, design errors, additional document reviews to reduce mistakes in the user manuals, and code reviews to minimize badly documented or unmaintainably complex code.  Appraisal Costs: Costs of activities to find defects, such as code inspections and software quality testing. Design reviews are part prevention and part appraisal. Formulating ways to strengthen the design is a prevention cost, whereas to analyze proposed designs for potential errors is an appraisal cost.  Failure Costs: Costs that result directly from poor software quality, such as the cost to fix defects and the cost to deal with customer complaints. Failure costs can be divided into two main areas: o Internal: Costs that arise before the product is delivered to the customer. o External: Once software is delivered to the customer, poor-quality software can incur in customer service costs or the cost to distribute a patch for a released product. The total cost of software quality: Total Cost of Quality = Prevention + Appraisal + Internal Failure + External Failure Defects are commonly defined as “failure to conform to specifications”, e.g. incorrectly implemented specifications and specified requirement(s) missing from the software. Defect: variance from a desired attribute. These attributes include complete and correct requirements and specifications, designs that meet requirements, and programs that observe requirements and business rules. Effective defect tracking begins with a systematic process. A structured tracking process begins with initially logging the defects, investigating the defects, then providing the structure to resolve them. For early defect detection and resolution to take place, defect tracking and software development efforts should being simultaneously. Defect tracking must be implemented throughout the development lifecycle. Phases of Defect Tracking  Requirements phase: Defect tracking focuses on validating that the defined requirements meet the needs and the user’s expectation about functionality.  Design and analysis phase: Efforts should focus on identifying and documenting that the application design meets the business rules or field requirements as defined by the business or user requirements.  Programming phase: Defect tracking must emphasize ensuring that the programs accomplish the defined application functionality given by the requirements and design.  Maintenance and enhancement phase: During Maintenance, effort is spent tracking ongoing user issues with the software. During enhancement, defect tracking is focused on establishing that the previous release is still stable when the enhancements have been added.
  • 2. Once a defect has been discovered, the important first step is to log the defect into a defect-tracking database or repository. Attributes to be recorded:  Defect Number  Date  Build and test platform in which it was  discovered  Application requirement or business rule to which it relates  Any supplementary notes. Defects types:  Interface defects: include incorrectly working menu items, push buttons and list boxes.  Navigational defects: window not opening when moving from one interface screen to another.  Functionality defects: incorrect calculation of salaries in a payroll system. Defects Priority Levels  Resolve immediately  High Priority  Normal Queue  Low Priority Urgency with which a defect has to be repaired is derived from the severity of the defect.  Critical  Important  Average  Low Each defect is also given appropriate status; for example, a new defect is given the status of “open” and a defect under repair would have the status of “assigned”. Only if the fix passes the regression test will be accepted and the defect assigned a status of “closed”. Other defect statuses could include “deferred”, if the defect is not to be fixed for the current release but may be resolved in a subsequent release or “enhancement”, if a feature that is not part of the requirements has been suggested, and may be reviewed as an enhancement for later releases. Most organizations consider it essential to constantly monitor and evaluate their performance, and this key practice is especially critical in defect removal. Following measures need to be determined to analyze defects:  Defect Status vs. Priority  Defect status vs. Severity  Defect status vs. application module  Defect age.
  • 3. An evaluation of defects discovered during testing provides the best indication of software. Quality is the indication of how well the software meets a desired attribute. Defect evaluation may be based on methods that range from simple defect counts to rigorous statistical modeling. Defect analysis: Analyzing the distribution of defects over the values of one or more parameters associated with a defect. Four main defect parameters for defect analysis  Status: current state of the defect  Priority: relative importance of addressing and resolving this defect  Severity: relative impact of this defect to the end-user, an organization, third parties, etc.  Source: what part of the software or requirement this defect affects. Defect counts can be reported in two ways: 1. As a function of time, resulting in a defect trend diagram or report 2. As a function of one or more defect parameters (like severity or status) in a defect density report. Classes of Reports  Defect Density or Distribution Reports: defect counts to be shown as a function of one or two defect parameters.  Defect Age Reports: Type of defect distribution report that shows how long a defect has been in a particular state.  Defect Trend Reports: show defect counts by status as a function of time. Effective defect tracking strongly contributes to enhancing software quality and reducing development project costs. By “shadowing” the software development process, defect tracking helps you identify and report potential software process early and acts as a catalyst for problems to be addressed. By facilitating discovery of defects earlier in the development cycle, effective defect tracking is a critical key to lower costs, enhanced software quality and reducing overall project cost.
  • 4. ************ [Pragmatic Unit Testing] ***************************************************** Unit testing is the practice of using small bits of code to exercise the code you’ve written. A unit test is a piece of code written by a developer that exercises a very small, specific area of functionality in the code being tested. Unit tests are performed to prove that a piece of code does what the developer thinks it should do. Unit testing benefits: It will make your designs better and drastically reduce the amount of time you spend in debugging. Collateral Damage is what happens when a new feature or a bug fix in one part of the system causes a bug (damage) to another, possibly unrelated part of the system. Team is not effectively unit testing if, unit tests only test a path, unit tests are in fact integration tests or unit tests are not maintained. To check if code is behaving as you expect, you use an assertion, a simple method call that verifies that something is true. Open source refers to software where the source code is made freely available. Test code follows a standard formula:  Set up all conditions needed for testing  Call the method to be tested  Verify that the tested functionality worked as expected  Clean up after itself A fixture is about the scenario we are testing than the actual class we are testing. Testing a single class across multiple fixtures is very common. Six specific areas to test (RIGHT BICEP) Right – are the results right? B – are all the boundary conditions CORRECT? I – can you check inverse relationships? C – can you cross-check results using other means? E – can you force error conditions to happen? P – are performance characteristics within bounds? Tests for boundary conditions Conformance – Does the value conform to an expected format? Ordering – is the set of values ordered or unordered as appropriate? Range – is the value within reasonable minimum and maximum values? Reference – does the code reference anything external that isn’t under direct control of the code itself? Existence – Does the value exist? Cardinality – are there exactly enough values? Time – is everything happening in order? At the right time? In time?