Using predicate fields in a highly flexible industrial control system

  • Authors:
  • Shay Artzi;Michael D. Ernst

  • Affiliations:
  • MIT, Cambridge, MA;MIT, Cambridge, MA

  • Venue:
  • OOPSLA '05 Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Predicate fields allow an object's structure to vary at runtime based on the object's state: a predicate field is present or not, depending on the values of other fields. Predicate fields and related concepts have not previously been evaluated outside a research environment. We present a case study of two industrial applications with similar requirements, one of which uses predicate fields and one of which does not. The use of predicate fields was motivated by requirements for high flexibility, by unavailability of many requirements, and by high user interface development costs. Despite an implementation of predicate fields as a library (rather than as a language extension), developers found them natural to use, and in many cases they significantly reduced development effort.