Larch: Languages and Tools for Formal Specification

Larch: Languages and Tools for Formal Specification PDF Author: John V. Guttag
Publisher: Springer Science & Business Media
ISBN: 1461227046
Category : Mathematics
Languages : en
Pages : 266

Get Book

Book Description
Building software often seems harder than it ought to be. It takes longer than expected, the software's functionality and performance are not as wonderful as hoped, and the software is not particularly malleable or easy to maintain. It does not have to be that way. This book is about programming, and the role that formal specifications can play in making programming easier and programs better. The intended audience is practicing programmers and students in undergraduate or basic graduate courses in software engineering or formal methods. To make the book accessible to such an audience, we have not presumed that the reader has formal training in mathematics or computer science. We have, however, presumed some programming experience. The roles of fonnal specifications Designing software is largely a matter of combining, inventing, and planning the implementation of abstractions. The goal of design is to describe a set of modules that interact with one another in simple, well defined ways. If this is achieved, people will be able to work independently on different modules, and yet the modules will fit together to accomplish the larger purpose. In addition, during program maintenance it will be possible to modify a module without affecting many others. Abstractions are intangible. But they must somehow be captured and communicated. That is what specifications are for. Specification gives us a way to say what an abstraction is, independent of any of its implementations.

Larch: Languages and Tools for Formal Specification

Larch: Languages and Tools for Formal Specification PDF Author: John V. Guttag
Publisher: Springer Science & Business Media
ISBN: 1461227046
Category : Mathematics
Languages : en
Pages : 266

Get Book

Book Description
Building software often seems harder than it ought to be. It takes longer than expected, the software's functionality and performance are not as wonderful as hoped, and the software is not particularly malleable or easy to maintain. It does not have to be that way. This book is about programming, and the role that formal specifications can play in making programming easier and programs better. The intended audience is practicing programmers and students in undergraduate or basic graduate courses in software engineering or formal methods. To make the book accessible to such an audience, we have not presumed that the reader has formal training in mathematics or computer science. We have, however, presumed some programming experience. The roles of fonnal specifications Designing software is largely a matter of combining, inventing, and planning the implementation of abstractions. The goal of design is to describe a set of modules that interact with one another in simple, well defined ways. If this is achieved, people will be able to work independently on different modules, and yet the modules will fit together to accomplish the larger purpose. In addition, during program maintenance it will be possible to modify a module without affecting many others. Abstractions are intangible. But they must somehow be captured and communicated. That is what specifications are for. Specification gives us a way to say what an abstraction is, independent of any of its implementations.

Formal Specification and Verification of Digital Systems

Formal Specification and Verification of Digital Systems PDF Author: George J. Milne
Publisher: McGraw-Hill Companies
ISBN:
Category : Computers
Languages : en
Pages : 264

Get Book

Book Description


Formal Specification and Design

Formal Specification and Design PDF Author: L. M. G. Feijs
Publisher: Cambridge University Press
ISBN: 0521434572
Category : Computers
Languages : en
Pages : 355

Get Book

Book Description
The authors describe specification techniques from the unified view of the Common Object-oriented Language for Design.

Formal Specification and Documentation Using Z

Formal Specification and Documentation Using Z PDF Author: Jonathan Peter Bowen
Publisher:
ISBN:
Category : Computer software
Languages : en
Pages : 324

Get Book

Book Description


Software Specification and Design

Software Specification and Design PDF Author: Ph.D., John C. Munson
Publisher: CRC Press
ISBN: 0203496299
Category : Computers
Languages : en
Pages : 400

Get Book

Book Description
The rigors of engineering must soon be applied to the software development process, or the complexities of new systems will initiate the collapse of companies that attempt to produce them. Software Specification and Design: An Engineering Approach offers a foundation for rigorously engineered software. It provides a clear vision of what occurs at e

Specification and Transformation of Programs

Specification and Transformation of Programs PDF Author: Helmut A. Partsch
Publisher: Springer Science & Business Media
ISBN: 9783540525899
Category : Computers
Languages : en
Pages : 516

Get Book

Book Description
"Specification and transformation of programs" is short for a methodology of software development where, from a formal specification of a problem to be solved, programs correctly solving that problem are constructed by stepwise application of formal, semantics-preserving transformation rules. The approach considers programming as a formal activity. Consequently, it requires some mathematical maturity and, above all, the will to try something new. A somewhat experienced programmer or a third- or fourth-year student in computer science should be able to master most of this material - at least, this is the level I have aimed at. This book is primarily intended as a general introductory textbook on transformational methodology. As with any methodology, reading and understanding is necessary but not sufficient. Therefore, most of the chapters contain a set of exercises for practising as homework. Solutions to these exercises exist and can, in principle, be obtained at nominal cost from the author upon request on appropriate letterhead. In addition, the book also can be seen as a comprehensive account of the particular transformational methodology developed within the Munich CIP project.

Software Engineering with OBJ

Software Engineering with OBJ PDF Author: Joseph A. Goguen
Publisher: Springer Science & Business Media
ISBN: 147576541X
Category : Computers
Languages : en
Pages : 428

Get Book

Book Description
Software Engineering with OBJ: Algebraic Specification in Action is a comprehensive introduction to OBJ, the most widely used algebraic specification system. As a formal specification language, OBJ makes specifications and designs more precise and easier to read, as well as making maintenance easier and more accurate. OBJ differs from most other specification languages not just in having a formal semantics, but in being executable, either through symbolic execution with term rewriting, or more generally through theorem proving. One problem with specifications is that they are often wrong. OBJ can help validate specifications by executing test cases, and by proving properties. As well as providing a detailed introduction to the language and the OBJ system that implements it, Software Engineering with OBJ: Algebraic Specification in Action provides case studies by leading practitioners in the field, in areas such as computer graphics standards, hardware design, and parallel computation. The case studies demonstrate that OBJ can be used in a wide variety of ways to achieve a wide variety of practical aims in the system development process. The papers on various OBJ systems also demonstrate that the language is relatively easy to understand, implement, and use, and that it supports formal reasoning in a straightforward but powerful way. Software Engineering with OBJ: Algebraic Specification in Action will be of interest to students and teachers in the areas of data types, programming languages, semantics, theorem proving, and algebra, as well as to researchers and practitioners in software engineering.

The B Language and Method

The B Language and Method PDF Author: Kevin Lano
Publisher: Springer Science & Business Media
ISBN: 1447114949
Category : Computers
Languages : en
Pages : 240

Get Book

Book Description
B is one of the few formal methods which has robust, commercially-available tool support for the entire development lifecycle from specification through to code generation. This volume provides a comprehensive introduction to the B Abstract Machine Notation, and to how it can be used to support formal specification and development of high integrity systems. A strong emphasis is placed on the use of B in the context of existing software development methods, including object-oriented analysis and design. The text includes a large number of worked examples, graduated exercises in B AMN specification and development (all of which have been class-tested), two extended case studies of the development process, and an appendix of proof techniques suitable for B. Based on material which has been used to teach B at postgraduate and undergraduate level, this volume will provide invaluable reading a wide range of people, including students, project technical managers and workers, and researchers with an interest in methods integration and B semantics.

Understanding Z

Understanding Z PDF Author: J. M. Spivey
Publisher: Cambridge University Press
ISBN: 9780521334297
Category : Computers
Languages : en
Pages : 144

Get Book

Book Description
The Z notation is a language for expressing mathematical specifications of computing systems. By providing a formal semantics for Z, this book justifies the claim that Z is a precise specification language, and provides a standard framework for understanding Z specifications.

The Object-Z Specification Language

The Object-Z Specification Language PDF Author: Graeme Smith
Publisher: Springer Science & Business Media
ISBN: 1461552656
Category : Computers
Languages : en
Pages : 155

Get Book

Book Description
Object-Z is an object-oriented extension of the formal specification language Z. It adds to Z notions of classes and objects, and inheritance and polymorphism. By extending Z's semantic basis, it enables the specification of systems as collections of independent objects in which self and mutual referencing are possible. The Object-Z Specification Language presents a comprehensive description of Object-Z including discussions of semantic issues, definitions of all language constructs, type rules and other rules of usage, specification guidelines, and a full concrete syntax. It will enable you to confidently construct Object-Z specifications and is intended as a reference manual to keep by your side as you use and learn to use Object-Z. The Object-Z Specification Language is suitable as a textbook or as a secondary text for a graduate-level course, and as a reference for researchers and practitioners in industry.