Software Abstractions: Logic, Language and Analysis

Nov. 1, 2006
By Daniel Jackson
ISBN: 0-262-10114-9

This book may not be every programmer's cup of tea, but if you are interested in the Alloy programming language, agile modeling or a new way to look at software abstraction then this is the book for you.

Alloy is related to the Z language. Alloy is a combination of predicate logic and relational algebra that maps well to graphical modeling tools like UML (Universal Modeling Language). A sizable chunk of the book is dedicated to Alloy making it a good reference manual but Jackson does a good job of presenting his design principles while introducing aspects of Alloy.

Alloy will probably not push C out of its top programming language slot but it offers a number of benefits in terms of analysis and design. Alloy Analyzer is a tool that is discussed and that can be downloaded from MIT's website. It is applied to models written in Alloy. Formally meeting design constraints is becoming critical as designs become more complex, employ hundreds of designers and address safety critical and reliable applications.

Alloy is an interesting language, and you will need to read this book to understand it and its application. Alloy can be used to build and verify models even if the application is written in something like C. This is similar to UML, but Alloy is significantly simpler, though no less powerful. It might be more suitable for many developers.

This book does a good job of putting modeling and model analysis tools and methodologies into the hands of the reader.

Sponsored Recommendations

Near- and Far-Field Measurements

April 16, 2024
In this comprehensive application note, we delve into the methods of measuring the transmission (or reception) pattern, a key determinant of antenna gain, using a vector network...

DigiKey Factory Tomorrow Season 3: Sustainable Manufacturing

April 16, 2024
Industry 4.0 is helping manufacturers develop and integrate technologies such as AI, edge computing and connectivity for the factories of tomorrow. Learn more at DigiKey today...

Connectivity – The Backbone of Sustainable Automation

April 16, 2024
Advanced interfaces for signals, data, and electrical power are essential. They help save resources and costs when networking production equipment.

Empowered by Cutting-Edge Automation Technology: The Sustainable Journey

April 16, 2024
Advanced automation is key to efficient production and is a powerful tool for optimizing infrastructure and processes in terms of sustainability.

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!