Program Development by Refinement Case Studies Using the B Method

You must be logged in to access this title.

Sign up now

Already a member? Log in

Synopsis

The Idea of Program Refinement Programs are complex. They are typically so complex, that they go beyond the full comprehension even of the programmer or team who designed them, with all the consequences this has. How can we cope with such complexity in a satisfactory way? An approach, advocated for a long time, is to separate a concise specification of a program - the "what" - from a possibly involved implementation - the "how". Once a specification is obtained from the set of requirements on the program, there can still be a large gap to an efficient implementation. The development from specification to implementation can then proceed by a succession oflayers, such that each layer is a refinement of the previous one. Design decisions can be introduced in refinement steps one at a time. By this, the refinement steps can be kept small and manageable. Still, the set of all requirements can be far too large to be taken completely into account in the initial specification. Even if they could, they might obscure issues more than clarify them. For example: • An information system for stored goods needs to produce an error message on il­ legal input. Yet, the exact wording - and even the language - of those messages is irrelevant for an understanding of the essence of the system. • A banking application interacts with customers with a graphical interface. Yet the specification of the graphical layout is secondary compared to the specification of the possible transactions.

Book details

Edition:
1999
Series:
Formal Approaches to Computing and Information Technology (FACIT)
Author:
Emil Sekerinski, Kaisa Sere
ISBN:
9781447105855
Related ISBNs:
9781852330538
Publisher:
Springer London
Pages:
N/A
Reading age:
Not specified
Includes images:
No
Date of addition:
2020-12-21
Usage restrictions:
Copyright
Copyright date:
1999
Copyright by:
N/A 
Adult content:
No
Language:
English
Categories:
Computers and Internet, Mathematics and Statistics, Nonfiction, Philosophy