Any system build on flawed concepts makes it clumsy and hard to make even simplest of changes to repair the damage done. The author begins the book with the statement "Software is built on abstractions. Pick the right ones and programming will flow from design; modules will have small and simple interfaces; and new functionality will more likely fit in without extensive organization." Basically, an abstraction is an idea reduced to its essential form. The author introduces the key elements of the approach: 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; and an analysis, which is a form of constraint solving, and it offers both simulation (generating sample states and executions) and checking (finding counterexamples to claimed properties). The author uses the language Alloy as a vehicle because of its simplicity and tool support; but the book's lessons are mostly language-independent, and could also be applied in the context of other modeling languages. Table of Contents CONTENTS Preface Acknowledgments 1. Introduction 2. A Whirlwind Tour 3. Logic 4. Language 5. Analysis 6. Examples Appendices A. Exercises B. Alloy Language Reference C. Kernel Semantics D. Diagrammatic Notation E. Alternative Approaches References Index
"synopsis" may belong to another edition of this title.
(No Available Copies)
Search Books: Create a WantCan't find the book you're looking for? We'll keep searching for you. If one of our booksellers adds it to AbeBooks, we'll let you know!
Create a Want