- Taschenbuch: 384 Seiten
- Verlag: Addison-Wesley Longman, Amsterdam; Auflage: 01 (1. August 2002)
- Sprache: Englisch
- ISBN-10: 032114306X
- ISBN-13: 978-0321143068
- Größe und/oder Gewicht: 18,7 x 2,2 x 23,5 cm
- Durchschnittliche Kundenbewertung: Schreiben Sie die erste Bewertung
- Amazon Bestseller-Rang: Nr. 138.475 in Fremdsprachige Bücher (Siehe Top 100 in Fremdsprachige Bücher)
- Komplettes Inhaltsverzeichnis ansehen
Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers (Englisch) Taschenbuch – 1. August 2002
Kunden, die diesen Artikel angesehen haben, haben auch angesehen
Kunden, die diesen Artikel gekauft haben, kauften auch
Es wird kein Kindle Gerät benötigt. Laden Sie eine der kostenlosen Kindle Apps herunter und beginnen Sie, Kindle-Bücher auf Ihrem Smartphone, Tablet und Computer zu lesen.
Geben Sie Ihre Mobiltelefonnummer ein, um die kostenfreie App zu beziehen.
Wenn Sie dieses Produkt verkaufen, möchten Sie über Seller Support Updates vorschlagen?
This book is the distillation of over 25 years of work by one of the world's most renowned computer scientists. A specification is a written description of what a system is supposed to do, plus a way of checking to make sure that it works. Specifying a system helps us understand it. It's a good idea to understand a system before building it, so it's a good idea to write a specification of a system before implementing it. The most effective tool to describe a specification is the Temporal Logic of Actions, or TLA, because it provides a mathematical, i.e. precise, foundation for describing systems. TLA+ is the language the author developed to write the mathematical specifications. TLA+ is available freely on the web. It can be used for both software and hardware. In fact, Intel is using TLA+ with great success in the design of a new chip. The book is divided into four parts. The first part contains all that most programmers and engineers need to know about writing specifications. The second part contains more advanced material for more sophisticated readers. The third and fourth parts comprise a reference manual for TLA+ - both the language itself as well as its tools.
"TLA+ represents the only effective methodology I've seen for visualizing and quantifying algorithmic complexity in a way that is meaningful to engineers."
--Brannon Batson, Processor Architect, Intel Corporation
This long-awaited book shows how to write unambiguous specifications of complex computer systems.
The first part provides a concise and lucid introduction to specification, explaining how to describe, with mathematical precision, the behavioral properties of a system--what that system is allowed to do. The emphasis here is on safety properties.
The second part of the book covers more advanced topics, including liveness and fairness, real-time properties, and composition.
The book's final two parts provide a complete reference manual for the TLA+ language and tools, as well as a handy mini-manual. TLA+ is the language developed by the author for writing simple and elegant specifications of algorithms and protocols and for verifying the correctness of a design. The language already has proved to be a valuable aid in understanding and building concurrent and distributed systems. Tools for TLA+ syntax analysis and model checking are freely available from the Web, where you can also find supplemental materials for this book, including exercises.
032114306XB06262002 Alle Produktbeschreibungen
Welche anderen Artikel kaufen Kunden, nachdem sie diesen Artikel angesehen haben?
|5 Sterne (0%)|
|4 Sterne (0%)|
|3 Sterne (0%)|
|2 Sterne (0%)|
|1 Stern (0%)|
Dieses Produkt bewerten
Die hilfreichsten Kundenrezensionen auf Amazon.com
To convince yourself, you can start by reading the PDF version online, available by the author here: http://research.microsoft.com/en-us/um/people/lamport/tla/book.html
Compared to the relevant papers by Lamport and coauthors, the book is geared more towards beginners and users. It is not a collection of all the results, but has a complementary purpose. In particular, composition of open systems and timing constraints are developed in more detail outside this book.
The book itself is targeted to people who engineer software. I am an elementary school special education teacher. So this is not in my area of expertise. Nonetheless, there is a LOT to learn here for any person who likes detailed thinking and the insights those thoughts produce.
Of the approaches I've read over the years, Lamport's TLA+ comes the closest to this promise a system specification that's workable. This book provides a great introduction with practical, real-world examples.
This has been an eye opener book for concurrency and distributed software design. I learned more with this book (and the TLA+ toolbox) than with the "classic" from Lynch on distributed algorithms. I do not know if Lynch book also improves qualitatively when used with the Tempo toolbox. I guess it is worth trying.
The book is challenging but it is really well-written. I'll recommend the book to anyone that wants to challenge his understanding of computer systems (hardware, software, concurrency, etc). You will never evaluate your designs so naively.
I would like to have a new edition of this book that covers TLA+2.
BTW, You can get the pdf from Lamport web page.