Title :
Modeling software the alloy way
Author :
Lutz, Michael J.
Author_Institution :
Software Eng. Dept., Rochester Inst. of Technol., Rochester, NY, USA
Abstract :
Until recently, those who taught mathematical modeling (or “formal methods”) faced daunting challenges. First, most modeling tools used seemingly esoteric notations that were hurdles for many students. Even if the notation could be tamed, the tools themselves were rarely more than syntax checkers, possibly with support for simple expression evaluation. Venturing beyond this requires understanding of proof theories and strategies well beyond that typical of other engineering disciplines. What is more, the tools worked at a much lower level than that of the domain itself; it was easy for students to miss the forest for the trees. The development and release of the Alloy from MIT has improved the situation dramatically. With Alloy, instructors now have a tool that supports formal structural and behavioral modeling (using C-like syntax), along with state space exploration and property verification using relational logic, predicates, and assertions The tradeoff involved - only first order systems over finite domains can be analyzed - is not problematic in practice. The workshop will introduce Alloy - both the language and support tool - to faculty interested in formal methods and mathematical modeling. After a brief introduction to Alloy concepts, the tool and language will be explored by interactively developing a simple software system model. This approach mirrors the way Alloy is taught and used within RIT´s undergraduate software engineering program.
Keywords :
computer science education; formal logic; formal verification; Alloy; C-like syntax; behavioral modeling; esoteric notation; formal structural modeling; property verification; relational logic; state space exploration; syntax checker; undergraduate software engineering program; Computational modeling; Conferences; Mathematical model; Metals; Software; Software engineering; Space exploration; formal methods; mathematical modeling; software engineering education;
Conference_Titel :
Frontiers in Education Conference, 2013 IEEE
Conference_Location :
Oklahoma City, OK
DOI :
10.1109/FIE.2013.6684771