44,99 €
inkl. MwSt.
Versandkostenfrei*
Versandfertig in 6-10 Tagen
  • Broschiertes Buch

Automatically generating a program from its specification eliminates a large source of errors that is often unavoidable in a manual approach. This work investigates the theory behind Booster a specification language and automatic code generator, developed by Dr. Ib Sørenson and his group at Oxford University's Computing Laboratory. The work focuses on three contributions: semantics, model completion and code generation. The semantics of a Booster model is a single abstract data type (ADT) where the invariants and the methods of all the model classes are promoted to the ADT. This work argues…mehr

Produktbeschreibung
Automatically generating a program from its specification eliminates a large source of errors that is often unavoidable in a manual approach. This work investigates the theory behind Booster a specification language and automatic code generator, developed by Dr. Ib Sørenson and his group at Oxford University's Computing Laboratory. The work focuses on three contributions: semantics, model completion and code generation. The semantics of a Booster model is a single abstract data type (ADT) where the invariants and the methods of all the model classes are promoted to the ADT. This work argues that this semantics is a better model of object oriented systems than the traditional view where each class is a separate ADT. The second contribution is the idea of model completion a process that augments the postconditions of methods with additional predicates that follow from the system's invariant and the method's intention. The third contribution describes a simple but effective code generation technique that is based on interpreting postconditions as executable statements and uses weakest preconditions to ensure that the generated code refines its specification.
Autorenporträt
Dr. David Faitelson studied mathematics and computer science at Tel Aviv University and earned his MSc. and PhD in computer science at the University of Oxford. He has been working as a software engineer since the early 90's. Currently he is the CTO of a startup company and a lecturer at the Academic College of Tel Aviv-Jaffa.