Home → Magazine Archive → September 2019 (Vol. 62, No. 9) → Alloy: A Language and Tool for Exploring Software... → Abstract

Alloy: A Language and Tool for Exploring Software Designs

By Daniel Jackson

Communications of the ACM, Vol. 62 No. 9, Pages 66-76

[article image]

Alloy is a language and a toolkit for exploring the kinds of structures that arise in many software designs. This article aims to give readers a flavor of Alloy in action, and some examples of its applications to date, thus giving a sense of how it can be used in software design work.

Back to Top

Key Insights


Software involves structures of many sorts: architectures, database schemas, network topologies, ontologies, and so on. When designing a software system, you need to be able to express the structures essential to the design and to check that they have the properties you expect.


No entries found