您位于: 首页 / Events / Past Events

Past Events

北京大学“软件技术未来”名家讲坛特别专题

为了庆祝建院十周年,梅老师邀请了四位在国际上具有很高知名度的学者前来讲学。

北京大学“软件技术未来”名家讲坛特别专题 - 查看更多...

沙龙:编程语言现状

本周五上午,实验室举办编程语言进展沙龙。

沙龙:编程语言现状 - 查看更多...

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.

T.H. Tse教授学术报告 - 查看更多...

文档操作