Software Abstractions: Logic, Language, and Analysis Review

Software Abstractions: Logic, Language, and Analysis
Average Reviews:

(More customer reviews)
Are you looking to buy Software Abstractions: Logic, Language, and Analysis? Here is the right place to find the great deals. we can offer discounts of up to 90% on Software Abstractions: Logic, Language, and Analysis. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Software Abstractions: Logic, Language, and Analysis ReviewThis book describes Alloy, a tool for specifying and analyzing data structures and other relationships within your programs. The book walks you through a tutorial, showing you how you can find the bugs in your specifications before you actually write any code, and then goes into the details of the language and its semantics.
I think I was exactly the target audience for this book (and the Alloy language), as I write a lot of Java software and have been looking for a practical specification tool. I've heard of other people who were less happy with this book, as they were trying to learn _about_ Alloy rather than learning Alloy itself. There is some material at the beginning and end that compares and contrasts Alloy with other specification languages, but the real value of this book comes in the middle where it teaches you how to use Alloy effectively.Software Abstractions: Logic, Language, and Analysis OverviewIn Software Abstractions Daniel Jackson introduces a new approach tosoftware design that draws on traditional formal methods but exploits automatedtools to find flaws as early as possible. This approach--which Jackson calls"lightweight formal methods" or "agile modeling"--takes from formal specificationthe idea of a precise and expressive notation based on a tiny core of simple androbust concepts but replaces conventional analysis based on theorem proving with afully automated analysis that gives designers immediate feedback. Jackson hasdeveloped Alloy, a language that captures the essence of software abstractionssimply and succinctly, using a minimal toolkit of mathematical notions. The designercan use automated analysis not only to correct errors but also to make models thatare more precise and elegant. This approach, Jackson says, can rescue designers from"the tarpit of implementation technologies" and return them to thinking deeply aboutunderlying concepts.Software Abstractions introduces the key elements of theapproach: a logic, which provides the building blocks of the language; a language,which adds a small amount of syntax to the logic for structuring descriptions; andan analysis, a form of constraint solving that offers both simulation (generatingsample states and executions) and checking (finding counterexamples to claimedproperties). The book uses Alloy as a vehicle because of its simplicity and toolsupport, but the book's lessons are mostly language-independent, and could also beapplied in the context of other modeling languages.

Want to learn more information about Software Abstractions: Logic, Language, and Analysis?

>> Click Here to See All Customer Reviews & Ratings Now

0 comments:

Post a Comment