Orthogonal Defect Classification

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

Orthogonal Defect Classification (ODC) [1] turns semantic information in the software defect stream into a measurement on the process.

The ideas were developed in the late '80s and early '90s at IBM Research by Ram Chillarege.[2] 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-agnostic. Applications of ODC have been reported by several corporations on a variety of platforms and development processes, ranging from waterfall, spiral, gated, and agile [3] [4]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. [5]

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 publically available, and seem to be proprietary. However there are several published papers by the originator and several other researchers in the industry illustrated the use of these ideas.

The strength of the ODC method lies in the fact that this measurement system is independent of the software lifecycle model, the language used, the domain, or the development process model. The ideas were developed more than 20 years ago, and the fact that it has survived the advances to the Agile development processes, and is equally valuable today is a testament to its original design and concept.

External links[edit]

References[edit]

  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
  2. ^ IEEE Computer Society, 2002 Technical Achievement Award http://www.computer.org/portal/web/awards/chillarege
  3. ^ Orthogonal Defect Classification (ODC) in Agile Development. M. Jagia, S. Meena, IEEE ISSRE 2009 Supplemental Proceedings, Nov. 2009.
  4. ^ Orthogonal Defect Classification: An Agile Test/QA Primer, Agile Development Conference, Nov. 2012
  5. ^ "ODC - a 10x for Root Cause Analysis", R. Chillarege 2006