Classification Tree Method

This is an old revision of this page, as edited by OMPwiki (talk | contribs) at 09:28, 12 August 2013. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

The Classification Tree Method is a method for test design, as it is used in different areas of software development (e.g. embedded systems …). It has been developed by Grimm and Grochtmann in 1993[1] . Classification Trees in terms of the Classification Tree Method must not be confused with decision trees.

The classification tree method consists of two mayor steps:

  1. Identification of test relevant aspects (so called classifications) and their corresponding values (called classes) as well as
  2. Combination of different classes from all classifications into test cases.

The identification of test relevant aspects usually follows the (functional) specification (e.g. requirements, uses cases …) of the system under test. These aspects form the input and output data space of the test object.

The second step of test design then follows the principles of combinatorial test design.

While the method can be applied using a pen and a paper, the usual way involves the usage of the Classification Tree Editor, a software tool implmenting the classification tree method.

Background

The classification tree (CTM) method introduced the following advantages over the Category Partion Method[2] (CPM) by Olstrad and Balcer:

  • Notation: CPM only had a textual notation, whereas CTM uses a graphical, tree-shaped representation.
  • Refinements Selecting one representative might have an influence on the occurrence of other representatives.
CPM only offers restrictions to handle this scenario.
CTM allows modeling of hierarchical refinements in the classification tree, also called implicit dependencies.
  • Tool support: The tool presented by Ostrand and Balcer only supported test case generation, but not the partitioning itself.
Grochtmann and Wegener presented their tool, the Classification Tree Editor (CTE) which supports both partitioning as well as test case generation.[3]

Application

CTM supports any type of system under test. This includes (but is not limited to) hardware systems, integrated hardware-software systems, plain software systems, including embedded software, user interfaces, operating systems, parsers, and others (or subsystems of mentioned systems).

References

  1. ^ Grochtmann, Matthias (1993). "Classification Trees for Partition Testing". Software Testing, Verification & Reliability. 3 (2): 63–82. doi:10.1002/stvr.4370030203. {{cite journal}}: Unknown parameter |coauthors= ignored (|author= suggested) (help)
  2. ^ Ostrand, T. J. (1988). "The category-partition method for specifying and generating fuctional tests". Communications of the ACM. 31 (6): 676–686. doi:10.1145/62959.62964. {{cite journal}}: Unknown parameter |coauthors= ignored (|author= suggested) (help)
  3. ^ Grochtmann, Matthias (1995). "Test Case Design Using Classification Trees and the Classification-Tree Editor CTE". Proceedings of the 8th International Software Quality Week(QW '95), San Francisco, USA. {{cite journal}}: Unknown parameter |coauthors= ignored (|author= suggested) (help)