Please note: In order to keep Hive up to date and provide users with the best features, we are no longer able to fully support Internet Explorer. The site is still available to you, however some sections of the site may appear broken. We would encourage you to move to a more modern browser like Firefox, Edge or Chrome in order to experience the site fully.

Software Abstractions : Logic, Language, and Analysis, Paperback / softback Book

Software Abstractions : Logic, Language, and Analysis Paperback / softback

Part of the The MIT Press series

Paperback / softback


An approach to software design that introduces a fully automated analysis giving designers immediate feedback, now featuring the latest version of the Alloy language.

In Software Abstractions Daniel Jackson introduces an approach to software design that draws on traditional formal methods but exploits automated tools to find flaws as early as possible.

This approach-which Jackson calls "lightweight formal methods" or "agile modeling"-takes from formal specification the idea of a precise and expressive notation based on a tiny core of simple and robust concepts but replaces conventional analysis based on theorem proving with a fully automated analysis that gives designers immediate feedback.

Jackson has developed Alloy, a language that captures the essence of software abstractions simply and succinctly, using a minimal toolkit of mathematical notions.

This revised edition updates the text, examples, and appendixes to be fully compatible with Alloy 4.


Save 22%



Free Home Delivery

on all orders

Pick up orders

from local bookshops


Also in the The MIT Press series  |  View all