Subject Name: accountsubtype
Souce Code Language: Java
Number of Versions: 1
Number of Variants: 1
   - orig
Error expected:
   orig: Race
Non-determinisitc: yes

***orig***
LOC: 89 (noncomment/logical Java source code)
Classes: 6
Methods: 19
Fields: 16
Statements: 67
wait() call: 0
notifyAll() call: 0
Sync blocks: 8
Thread start() calls: 1
New expressions: 6

The accountsubtype program is a refactoring of the Account example that
that implements an interface and sub-typing to organize
different types of accounts, e.g., checking, savings, etc. thus
producing a more realistic object-oriented source code structure.
The fault (race) was related to account type, so the intent of this
object is to aid in understanding the interaction between OO structure
and fault detection.

References

[1] Dwyer, Matthew B. and Person, Suzette and Elbaum, Sebastian.
Controlling factors in evaluating path-sensitive error detection techniques,
SIGSOFT '06/FSE-14: Proceedings of the 14th ACM SIGSOFT international symposium
on Foundations of software engineering, 2006, isbn 1-59593-468-5, pp. 92--104,
Portland, Oregon, USA, ACM, New York, NY, USA.
