Partsch | Specification and Transformation of Programs | Buch | 978-3-540-52356-7 | sack.de

Buch, Englisch, 493 Seiten, Format (B × H): 183 mm x 260 mm, Gewicht: 1157 g

Reihe: Monographs in Computer Science

Partsch

Specification and Transformation of Programs

A Formal Approach to Software Development
1990
ISBN: 978-3-540-52356-7
Verlag: Springer Berlin Heidelberg

A Formal Approach to Software Development

Buch, Englisch, 493 Seiten, Format (B × H): 183 mm x 260 mm, Gewicht: 1157 g

Reihe: Monographs in Computer Science

ISBN: 978-3-540-52356-7
Verlag: Springer Berlin Heidelberg


"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.

Partsch Specification and Transformation of Programs jetzt bestellen!

Zielgruppe


Graduate


Autoren/Hrsg.


Weitere Infos & Material


1. Introduction.- 1.1 Software Engineering.- 1.2 The Problematics of Software Development.- 1.3 Formal Specification and Program Transformation.- 1.4 Our Particular View of Transformational Programming.- 1.5 Relation to Other Approaches to Programming Methodology.- 1.6 An Introductory Example.- 2. Requirements Engineering.- 2.1 Introduction.- 2.2 Some Formalisms Used in Requirements Engineering.- 3. Formal Problem Specification.- 3.1 Specification and Formal Specification.- 3.2 The Process of Formalization.- 3.3 Definition of Object Classes and Their Basic Operations.- 3.4 Additional Language Constructs for Formal Specifications.- 3.5 Structuring and Modularization.- 3.6 Examples.- 3.7 Exercises.- 4. Basic Transformation Techniques.- 4.1 Semantic Foundations.- 4.2 Notational Conventions.- 4.3 The Unfold/Fold System.- 4.4 Further Basic Transformation Rules.- 4.5 Sample Developments with Basic Rules.- 4.6 Exercises.- 5. From Descriptive Specifications to Operational Ones.- 5.1 Transforming Specifications.- 5.2 Embedding.- 5.3 Development of Recursive Solutions from Problem Descriptions.- 5.4 Elimination of Descriptive Constructs in Applicative Programs.- 5.5 Examples.- 5.6 Exercises.- 6. Modification of Applicative Programs.- 6.1 Merging of Computations.- 6.2 Inverting the Flow of Computation.- 6.3 Storing of Values Instead of Recomputation.- 6.4 Computation in Advance.- 6.5 Simplification of Recursion.- 6.6 Examples.- 6.7 Exercises.- 7. Transformation of Procedural Programs.- 7.1 From Tail Recursion to Iteration.- 7.2 Simplification of Imperative Programs.- 7.3 Examples.- 7.4 Exercises.- 8. Transformation of Data Structures.- 8.1 Implementation of Types in Terms of Other Types.- 8.2 Implementations of Types for Specific Environments.- 8.3 Libraries of Implementations.- 8.4 Transformation of Type Systems.- 8.5 Joint Development.- 8.6 An Example: Cycles in a Graph.- 8.7 Exercises.- 9. Complete Examples.- 9.1 Warshall’s Algorithm.- 9.2 The Majority Problem.- 9.3 Fast Pattern Matching According to Boyer and Moore.- 9.4 A Text Editor.- References.



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.