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.
Emil Sekerinski & Kaisa Sere
Program Development by Refinement [PDF ebook]
Case Studies Using the B Method
Program Development by Refinement [PDF ebook]
Case Studies Using the B Method
购买此电子书可免费获赠一本!
语言 英语 ● 格式 PDF ● ISBN 9781447105855 ● 编辑 Emil Sekerinski & Kaisa Sere ● 出版者 Springer London ● 发布时间 2012 ● 下载 3 时 ● 货币 EUR ● ID 4700046 ● 复制保护 Adobe DRM
需要具备DRM功能的电子书阅读器