Programming Assistance Based on Contracts and Modular Verification in the Automation Domain

Dominik Hurnaus, Herbert Prähofer

Research output: Chapter in Book/Report/Conference proceedingConference proceedingspeer-review

Abstract

In industrial automation, control software often has to get changed and adapted by domain experts and end users who have no or only limited software development expertise. This results in high demands on programming environments with respect to supporting, guiding, and supervising the programming tasks. In this paper we present an approach based on model checking and artificial intelligence techniques to guide domain experts in building control software which is guaranteed to obey specified contracts and constraints. The work is based on Monaco which is a domain-specific language for programming automation solutions. As Monaco employs a hierarchical component approach, the verification is done hierarchically where an upper component is verified against the contracts of its subcomponents. The verification approach is leveraged in different programming support systems which give immediate feedback about valid and invalid programs in an integrated development environment.
Original languageEnglish
Title of host publicationSAC '10 Proceedings of the 2010 ACM Symposium on Applied Computing
PublisherACM Digital Library
Pages2544-2551
Number of pages7
ISBN (Print)978-1-60558-639-7
DOIs
Publication statusPublished - Mar 2010

Fields of science

  • 102 Computer Sciences
  • 102009 Computer simulation
  • 102011 Formal languages
  • 102013 Human-computer interaction
  • 102029 Practical computer science
  • 102022 Software development
  • 102024 Usability research

JKU Focus areas

  • Computation in Informatics and Mathematics

Cite this