Towards specifying constraints for object-oriented frameworks

  • Authors:
  • Daqing Hou;H. James Hoover

  • Affiliations:
  • Department of Computing Science, University of Alberta, Edmonton, Alberta, Canada T6G 2E8;Department of Computing Science, University of Alberta, Edmonton, Alberta, Canada T6G 2E8

  • Venue:
  • CASCON '01 Proceedings of the 2001 conference of the Centre for Advanced Studies on Collaborative research
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

Object-oriented frameworks are often hard to learn and use [1, 3]. As a result, software cost rises and quality suffers. Thus the capability to automatically detect errors occurring at the boundary between frameworks and applications is considered crucial to mitigate the problem. This paper introduces the notion of framework constraints and a specification language, FCL (Framework Constraints Language), to formally specify them. Framework constraints are rules that frameworks impose on the code of framework-based applications. The semantics of FCL is primarily based on first order predicate logic and set theory though the syntax is designed to resemble that of programming languages as much as possible. We take examples from the MFC (Microsoft Foundation Classes) framework [19] demonstrating both the nature of framework constraints and the semantics of FCL. Essentially, framework constraints can be regarded as framework-specific typing rules conveyed by the specification language FCL, and thus can be enforced by techniques analogous to those of conventional type checking.