490 research outputs found

    Sound and Relaxed Behavioural Inheritance

    Get PDF
    Object-oriented (OO) inheritance establishes taxonomies of OO classes. Behavioural inheritance (BI), a strong version, emphasises substitutability: objects of child classes replace objects of their ascendant classes without any observable effect difference on the system. BI is related to data refinement, but refinement's constrictions rule out many useful OO subclassings. This paper revisits BI at the light of Z and the theory of data refinement. It studies existing solutions to this problem, criticises them, and proposes improved relaxations. The results are applicable to any OO language that supports design-by-contract (DbC). The paper's contributions include three novel BI relaxations supported by a mathematical model with proofs carried out in the Isabelle proof assistant, and an examination of BI in the DbC languages Eiffel, JML and Spec#

    Cooperation between the {B} method and the automata theory to check the component interoperability

    No full text
    International audienceComponent interoperability is one of the essential issues in the component based development, since it allows the composition of reusable heterogenous components developed by different people. In this paper, we propose an approach to formally verify component interoperability at signature, semantics, and protocol levels. It is based on the use of the B formal method for specifying component interfaces and finite transition systems for specifying component protocols. The verification is done with the B theorem prover and the verification of the simulation relation between transition systems. This approach allows to decide whether two components can interoperate if assembled together and whether a component can be replaced by another component

    Second ECOOP Workshop on Precise Behavioral Semantics (with an Emphasis on OO Business Specifications)

    Full text link
    Business specifications are essential to describe and understand businesses (and, in particular, business rules) independently of any computing systems used for their possible automation. They have to express this understanding in a clear, precise, and explicit way, in order to act as a common ground between business domain experts and software developers. They also provide the basis for reuse of concepts and constructs ("patterns") common to all - from finance to telecommunications -, or a large number of, businesses, and in doing so save intellectual effort, time and money. Moreover, these patterns substantially ease the elicitation and validation of business specifications during walkthroughs with business customers, and support separation of concerns using viewpoints.Comment: 21 pages, 0 figure

    Water and environmental issues

    Get PDF
    Water is a precious and finite part of the environment which is vital for socioeconomic development, sustainability of the environment and survival. Malaysia is fortunate that it is located in a humid tropical area rich in rainfall and water resources. The rapid economic growth of Malaysia in the past decades is also mainly attributed to its ability to exploit abundant natural resources including water. The exploitation of water resources is an important catalyst of economic growth but continuous exploitation without proper management and conservation may cause the depletion of water supplies, rendering water resources unsustainable. In recent years, water problems have escalated in Malaysia due to climate change, urbanization and population explosion. Therefore, effective water conservation, efficient waste water and sewage management integrated with recent technologies are important for fostering the tandem development of economic growth and the sustainability of environmental resources

    Modeling Software Components Using Behavior Protocols

    Get PDF
    This thesis proposes a novel approach for a description of a software component's behavior. The behavior is specified by using behavior protocols - a notation similar to regular expressions, which is easy to read and comprehend

    When Systems Engineering Meets Software Language Engineering

    Get PDF
    International audienceThe engineering of systems involves many different stakeholders, each with their own domain of expertise. Hence more and more organizations are adopting Domain Specific Languages (DSLs) to allow domain experts to express solutions directly in terms of relevant domain concepts. This new trend raises new challenges about designing DSLs, evolving a set of DSLs and coordinating the use of multiple DSLs for both DSL designers and DSL users. This paper explores various dimensions of these challenges, and outlines a possible research roadmap for addressing them. The message of this paper is also to claim that if language engineering techniques to design any single (disposable) language are mature, the language engineering community needs to fundamentally change its view on software language design. We need to take the next step and adopt the perspective that a software language is, fundamentally, software too and thus the result of a composition of design decisions. These design decisions should be represented as first-class entities in the software languages workbench and it should be possible, during the language lifecycle, to add, remove and change language design decisions with limited effort to go from continuous design to continuous meta-design

    Object-Oriented Component-based Design using Behavioral Contracts: Application to Railway Systems

    No full text
    In this report, we propose a formal approach for the design of object-oriented component-based systems using behavioral contracts. This formalism merges interface automata describingcommunication protocols of components with the semantics of their operations. On grounds ofconsistency with the object-oriented paradigms, we revisit the notions of incremental design andindependent implementability of interface automata by novel definitions of components compatibility,composition, and refinement. Our work is illustrated by a design case study of CBTC railway systems

    Theories and techniques of program modelling, design and verification

    Get PDF
    Abstract. This submission presents our understanding of the Grand Challenge and propose an agenda on how we will position our research to contribute to this world-wide collaborative research project
    • …
    corecore