Orthogonal Defect Classification

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

Orthogonal Defect Classification (ODC)[1] turns semantic information in the software defect stream into a measurement on the process.[2] The ideas were developed in the late '80s and early '90s by Ram Chillarege[3] at IBM Research. This has led to the development of new analytical methods used for software development and test process analysis. ODC is process model, language and domain independent. Applications of ODC have been reported by several corporations on a variety of platforms and development processes, ranging from waterfall, spiral, gated, and agile[4] [5] development processes. One of the popular applications of ODC is software root cause analysis. ODC is known to reduce the time taken to perform root cause analysis by over a factor of 10. The gains come primarily from a different approach to root cause analysis, where the ODC data is generated rapidly (in minutes, as opposed to hours per defect) and analytics used for the cause and effect analysis. This shifts the burden of analysis from a purely human method to one that is more data intensive.[6][7]

The value set chosen for the individual ODC categories, particularly Defect Type and Defect Trigger, are designed so that they provide measurements on the development process and the testing process respectively. These measurements occur through the distribution that the specific category in any particular phase (or period of time) during the development process. For example, the defect trigger distribution during, say, unit test, becomes a measure of the productivity of the test process during that phase. Calibrations of these distributions are not publicly available, and seem to be proprietary. However there are several published papers by the originator and several other researchers in the industry illustrating the use of these ideas.


  1. ^ Orthogonal Defect Classification-A Concept for In-Process Measurements, IEEE Transactions on Software Engineering, November 1992 (vol. 18 no. 11). http://www.chillarege.com/articles/odc-concept.html
  2. ^ What is ODC? https://www.youtube.com/watch?v=mno4pQMqtBM
  3. ^ IEEE Computer Society, 2002 Technical Achievement Award http://www.computer.org/portal/web/awards/chillarege
  4. ^ Orthogonal Defect Classification (ODC) in Agile Development. M. Jagia, S. Meena, IEEE ISSRE 2009 Supplemental Proceedings, Nov. 2009.
  5. ^ Orthogonal Defect Classification: An Agile Test/QA Primer, Agile Development Conference, Nov. 2012
  6. ^ "ODC - a 10x for Root Cause Analysis", R. Chillarege 2006
  7. ^ "5 Differences between classical root cause analysis and ODC root cause analysis. https://www.youtube.com/watch?v=fTJr2Pgnxco

External links[edit]