946 research outputs found

    Z Unification Tools in Generic Formaliser

    Get PDF
    We describe some prototype tools for performing unification (i.e. deriving the least common refinement) of simple Z specifications. The techniques used are those described in http://alethea.ukc.ac.uk/Dept/Computing/Research/NDS/consistency/cccfpsiZ.html on viewpoint specification in Z; the tools have been implemented in Generic http://public.logica.com/formaliser (a product of Logica UK Limited). UKC Computing Laboratory technical report 10-97. The prototype tools themselves (in the form of Generic Formaliser grammars) will be made available later

    Big Data Refinement

    Get PDF
    "Big data" has become a major area of research and associated funding, as well as a focus of utopian thinking. In the still growing research community, one of the favourite optimistic analogies for data processing is that of the oil refinery, extracting the essence out of the raw data. Pessimists look for their imagery to the other end of the petrol cycle, and talk about the "data exhausts" of our society. Obviously, the refinement community knows how to do "refining". This paper explores the extent to which notions of refinement and data in the formal methods community relate to the core concepts in "big data". In particular, can the data refinement paradigm can be used to explain aspects of big data processing

    Grey Box Data Refinement

    Get PDF
    We introduce the concepts of grey box and display box data types. These make explicit the idea that state variables in abstract data types are not always hidden. Programming languages have visibility rules which make representations observable and modifiable. Specifications in model-based notations may have implicit assumptions about visible state components, or are used in contexts where the representation does matter. Grey box data types are like the ``standard'' black box data types, except that they contain explicit subspaces of the state which are modifiable and observable. Display boxes indirectly observe the state by adding displays to a black box. Refinement rules for both these alternative data types are given, based on their interpretations as black boxes

    A Generator for Turing Machine Simulating Programs - User's Manual -

    Get PDF
    By means of some sample dialogues we show the use of a program to generate Berkeley Pascal programs from Turing machine descriptions such that these Pascal programs simulate the behavior of the corresponding Turing machines

    Incompleteness of relational simulations in the blocking paradigm

    Get PDF
    Refinement is the notion of development between formal specifications For specifications given in a relational formalism downward and upward simulations are the standard method to verify that a refinement holds their usefulness based upon their soundness and joint completeness This is known to be true for total relational specifications and has been claimed to hold for partial relational specifications in both the non-blocking and blocking interpretations In this paper we show that downward and upward simulations in the blocking interpretation where domains are guards are not Jointly complete This contradicts earlier claims in the literature We illustrate this with an example (based on one recently constructed by Reeves and Streader) and then construct a proof to show why Joint completeness fails in general (C) 2010 Elsevier B V All rights reserve

    Supporting ODP - Translating LOTOS to Z

    Get PDF
    This paper describes a translation of full LOTOS into Z. A common semantic model is defined and the translation is proved correct with respect to the semantics. The motivation for such a translation is the use of multiple viewpoints for specifying complex systems defined by the reference model of the Open Distributed Processing (ODP) standardization initiative. The postscript version available here is an extended version of what was published

    Specifying and Refining Internal Operations in Z

    Get PDF
    Abstract An important aspect in the specification of distributed systems is the role of the internal (or unobservable) operation. Such operations are not part of the interface to the environment (i.e. the user cannot invoke them), however, they are essential to our understanding and correct modelling of the system. In this paper we are interested in the use of the formal specification notation Z for the description of distributed systems. Various conventions have been employed to model internal operations when specifying such systems in Z. If internal operations are distinguished in the specification notation, then refinement needs to deal with internal operations in appropriate ways. Using an example of a telecommunications protocol we show that standard Z refinement is inappropriate for refining a system when internal operations are specified explicitly. We present a generalization of Z refinement, called weak refinement, which treats internal operations differently from observable operations when refining a system. We discuss the role of internal operations in a Z specification, and in particular whether an equivalent specification not containing internal operations can be found. The nature of divergence through livelock is also discussed. Keywords: Z; Refinement; Distributed Systems; Internal Operations; Process Algebras; Concurrency

    Unification and multiple views of data in Z

    Get PDF
    This paper discusses the unification of Z specifications, in particular specifications that maintain different representations of what is intended to be the same datatype. Essentially this amounts to integrating previously published techniques for combining multiple viewpoints and for combining multiple views. It is shown how the technique proposed in this paper indeed produces unifications, and that it generalises both previous techniques

    Strategies for Consistency Checking

    Get PDF
    Viewpoint models of system development are becoming increasingly important. A major requirement for viewpoints modelling is to be able to check that the multiple viewpoint specifications are consistent with one another. The work presented in this report makes a contribution to this task. Our work is particularly influenced by the viewpoints model used in the ISO standardisation architecture for Open Distributed Processing. This report focuses on the issue of strategies for consistency checking. In particular, it considers how global consistency (between any arbitrary number of viewpoints) can be obtained from binary consistency (between two viewpoints). The report documents a number of different classes of consistency checking, from those that are very poorly behaved to those that are very well behaved. The report is intended as a companion to the work presented in [1] and it should be read in association with this document. In particular, the body of this report is a single chapter which should be viewed as additional to the chapters included in [1]. This report contains complete proofs of all relevant results, even though some of the results are obvious and some of the proofs are trivial. A much compressed version of the report is being submitted for publication. Thus, the main value of this report is as a reference document for readers who require a complete presentation of the technical. [1] E. Boiten, H. Bowman, J. Derrick and M. Steen ''Cross Viewpoint Consistency in Open Distributed Processing (Intra Language Consistency)'', Technical Report, Computing Laboratory, University of Kent at Canterbury, report No. 8-95, 1995. Phone: +44 1227 827913, Fax: 44 1227 762811 Email: H.Bowman,E.A.Boiten,J.Derrick,[email protected]

    The Necessity of Estimation in Software Development Projects

    Get PDF
    Master's thesis in Industrial economicsToday most Software Development Companies use Agile Project Management to manage their project, here the decisions are made as the project progresses to keep the agility in the project. This has been a successful transition with a lot of benefits, but many agree that estimation remains a great area of concern. The most important reasons for this are the unknown parts of the project that make it hard to calculate accurate estimates. Many teams are unable to deliver what they have committed to, because their estimates are often way off. This results in large project overruns, which prevent the organizations from reaching the market early enough and can result in bad market performance. In this thesis, the necessity of estimation in Software Development Projects is discussed. Interviews with experienced project managers where held to find out how theory coincides with the Software Development Industry, Also, some of the main goals of these interviews were to find out more about how estimates in Software Development Projects are created within the industry today, and how necessary it is to have accurate estimates or estimates at all, for project managers. This thesis shows that there are a lot of benefits and often necessary to have good estimates. The thesis also shows that it is important to have early specification of parts of the project, where the decisions about the software should be made as early as possible to create the most accurate estimates. But only the parts of the project which are soon going into development must be heavily specified, otherwise agility will be lost. For less specified parts of the project rough estimates should be enough to make the right decisions
    • …
    corecore