Using the Aslan Formal Specification Language in Undergraduate Software Engineering Courses
Brent Auernheimer, Daniel J. Stearns · Computer Science Education · 1991
Aslan is an easy to use, widely available, formal specification language suitable for use in software engineering classes. An Aslan specification consists of assertions about the initial states of a system, critical correctness requirements, and transitions from one system state to another. Aslan allows specifiers to define formally a sequence of increasingly more detailed levels of abstraction. The Aslan Language Processor (ALP) is a compiler taking formal specifications written in Aslan and producing first‐order predicate calculus assertions. The proof of these assertions ensures that the system being specified meets its critical correctness criteria. This article describes the Aslan language and its use in an undergraduate software engineering course.