您位于: 首页 / Events / T.H. Tse教授学术报告

T.H. Tse教授学术报告

Despite the popularity of object-oriented programming, the testing of such software is a very difficult task. Many attempts have been proposed by international researchers to solve the problem using black-box testing with algebraic specifications. There are seven or eight different definitions of the correctness of a program implementation with respect to a specification. Every researcher team claims that their criterion is more comprehensive than others. In this talk, we will first present a taxonomy of the program correctness criteria through very interesting examples. We show that none of these criteria can be applied in their present form to real-life situations. The usual relationship "expected result = actual outcome" in program testing cannot be verified in practice in a finite number of steps in object-oriented software, because the checking of the equality of objects, known formally as observational equivalence, involves the checking of an infinite number of potential operations. In addition to the observational equivalence of objects, we also need to verify the observational nonequivalence of objects. This will not only increase our effort, but will also add an additional uncertainty about test case allocation in both subdomains. In the second part of the talk, we outline our theoretical framework which proves that, given a canonical algebraic specification of a class with proper imports and a complete implementation, every existing correctness criterion can be verified very easily. We also present a surprising finding that the verification of observational equivalence of objects covers the verification of observational nonequivalence of objects, and vice versa. Thus, the theoretical and practical challenges suddenly go away neatly.

事件详细信息

时间

2012-09-18
起始时间 14:30 结束时间 15:30

把事件添加到日历

ABSTRACT

Despite the popularity of object-oriented programming, the testing
of such software is a very difficult task.  Many attempts have been
proposed by international researchers to solve the problem using
black-box testing with algebraic specifications.  There are seven
or eight different definitions of the correctness of a program
implementation with respect to a specification.  Every researcher
team claims that their criterion is more comprehensive than others.

In this talk, we will first present a taxonomy of the program
correctness criteria through very interesting examples.  We show
that none of these criteria can be applied in their present form
to real-life situations.  The usual relationship "expected
result = actual outcome" in program testing cannot be verified
in practice in a finite number of steps in object-oriented software,
because the checking of the equality of objects, known formally as
observational equivalence, involves the checking of an infinite number
of potential operations.  In addition to the observational equivalence
of objects, we also need to verify the observational nonequivalence of
objects.  This will not only increase our effort, but will also add an
additional uncertainty about test case allocation in both subdomains.

In the second part of the talk, we outline our theoretical framework
which proves that, given a canonical algebraic specification of
a class with proper imports and a complete implementation, every
existing correctness criterion can be verified very easily.  We also
present a surprising finding that the verification of observational
equivalence of objects covers the verification of observational
nonequivalence of objects, and vice versa.  Thus, the theoretical
and practical challenges suddenly go away neatly.


ABOUT THE SPEAKER


Prof. T.H. Tse is a professor in computer science at The University of
Hong Kong.  He received the PhD degree from the London School of
Economics and was a visiting fellow at the University of Oxford.  His
current research interest is in program testing, debugging, and
analysis.  He is the steering committee chair of QSIC and an editorial
board member of Software Testing, Verification and Reliability, the
Journal of Systems and Software, Software: Practice and Experience,
and the Journal of Universal Computer Science.  He is a fellow of the
British Computer Society, a fellow of the Institute for the Management
of Information Systems, a fellow of the Institute of Mathematics and
its Applications, and a fellow of the Hong Kong Institution of
Engineers.  He was awarded an MBE by The Queen of the United Kingdom.
More recently, he received best paper awards in COMPSAC 2008, COMPSAC
2009, and QSIC 2011, as well as a best teacher award from the Faculty
of Engineering of The University of Hong Kong in 2012.