105 research outputs found

    Enhancing dependability through flexible adaptation to changing requirements

    Get PDF
    This paper describes an architectural approach that facilitates the dynamic adaptation of systems to changing domain rules. The approach relies on 'coordination contracts', a modelling and implementation primitive we have developed for run-time reconfiguration. Our framework includes an engine that, whenever a service is called, checks the domain rules that are applicable and configures the response of the service before proceeding with the call. This approach enhances dependability in two essential ways: on the one hand, it guarantees that system execution is always consistent with the domain logic because service response is configured automatically (i.e., without any need for programmer intervention); on the other hand, it makes it possible for changes to be incorporated into existing domain rules, and from new rules to be created, with little effort, because coordination contracts can be superposed dynamically without having to change neither the client nor the service code. Our approach is illustrated through a case study in financial systems, an area in which dependability arises mainly in the guise of business concerns like adherence to agreed policies and conditions negotiated on a case-by-case basis. We report on an information system that ATX Software developed for a company specialised in recovering bad credit. We show in particular how, by using this framework, we have devised a way of generating rule-dependent SQL code for batch-oriented services

    Enveloping Sophisticated Tools into Process-Centered Environments

    Get PDF
    We present a tool integration strategy based on enveloping pre-existing tools without source code modifications or recompilation, and without assuming an extension language, application programming interface, or any other special capabilities on the part of the tool. This Black Box enveloping (or wrapping) idea has existed for a long time, but was previously restricted to relatively simple tools. We describe the design and implementation of, and experimentation with, a new Black Box enveloping facility intended for sophisticated tools --- with particular concern for the emerging class of groupware applications

    Methodological Problems of the Balance of the National Economy

    No full text
    The planned balance of the national economy of the USSR represents a system of interconnected synthetic indices of socialist expanded reproduction. Reflecting the operation of socialism's objective economic laws, it plays an important part in the solution of practical problems of national economic planning. The balance of the national economy is intended to characterize the rates, proportions and interconnections in the national economy, the use of the social product for the replacement of the means of production, for consumption and accumulation. At the same time it serves as an important instrument for drafting the plan and checking on its fulfillment.

    Decoupling change from design

    No full text
    fied simplifying change as a critical criterion for mod-ularizing software. Successful designs are those in which a change can be accommodated by modifying a single module. There is a tacit assumption in most of the literature that once a change has been limited to a single module, the cost of making the change is essential y inconsequential. But modules have com-plexity of their own and are frequently large. Thus, making a change can be expensive, even if limited to a single module. We present a method of decomposing modules into smaller components for the purpose of supporting change. Although similar to the approach of modu-larizing programs described by Parnas, our approach is specific to decomposing modules. It is not intended to replace traditional high level modularization but rather to augment it with a second level of modulari-zation where the standard of information hiding can be relaxed. The goal of the method is to make mod-ules easier to change by decomposing them around smaller design decisions—ideally encoding only one design choice per submodule component, In this paper we show how submodule components can be used to address the issue of change. We also demonstrate how the ability to address change with submodule components is, to a large extent, indepen-dent of the design level modularization. Moreover, we show that, at least in some cases, by using submodule components the choice of high level modularization can itself be changed wit bout having to rewrite large amounts of code. Permission to make digital~ard wpy of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage, the copyright notice, the title of the publication and its date appear, and notice is given tha
    • …
    corecore