Imperial College London

ProfessorJeffKramer

Faculty of EngineeringDepartment of Computing

Honorary Emeritus Professor of Distributed Computing
 
 
 
//

Contact

 

j.kramer Website

 
 
//

Assistant

 

Mrs Bridget Gundry +44 (0)20 7594 1245

 
//

Location

 

571Huxley BuildingSouth Kensington Campus

//

Summary

 

Publications

Publication Type
Year
to

362 results found

Cheung SC, Kramer J, 1994, T ractable Flow Analysis for Distributed Programs, IEEE Transactions on Software Enginering, Publisher: IEEE Computer Society Press, Pages: 579-593

Conference paper

Easterbrook S, Finkelstein A, Kramer J, Nuseibeh Bet al., 1994, Coordinating Distributed ViewPoints: the anatomy of a consistency check, International Journal on Concurrent Engineering:, Research and Applications, Vol: 2, Pages: 209-222

Journal article

Kremien O, Kramer J, 1994, Providing High Performance Distributed Computing through Scalable Computation, Proceedings of the 3rd International Symposium on High Performance Distributed Computing (HPDC-3),San Francisco, Pages: 70-77

Conference paper

Nuseibeh B, Kramer J, Finkelstein A, 1994, A Framework for Expressing the Relationship Between Multiple Views in Requirements Specifications, Transactions on Software Engineering, Vol: 20, Pages: 760-773

Journal article

Kramer J, 1994, Distributed Software Engineering, Proceedings of the 16th IEEE International Conference on Sofware Engineering (ICSE), Publisher: IEEE Computer Society Press, Pages: 253-263, ISSN: 0270-5257

Conference paper

KRAMER J, 1994, EXOSKELETAL SOFTWARE, 16th International Conference on Software Engineering (ICSE-16), Publisher: I E E E, COMPUTER SOC PRESS, Pages: 366-366, ISSN: 0270-5257

Conference paper

Magee JN, Eisenbach S, Kramer J, 1994, Modelling Darwin in the Pi-calculus, International Workshop on Theory and Practice in Distributed Systems, Publisher: Springer-Verlag

Conference paper

KRAMER J, 1994, DISTRIBUTED SOFTWARE ENGINEERING, 16th International Conference on Software Engineering (ICSE-16), Publisher: I E E E, COMPUTER SOC PRESS, Pages: 253-263, ISSN: 0270-5257

Conference paper

Magee JN, Eisenbach S, Kramer J, 1994, Modelling Darwin in the Pi-calculus, International Workshop on Theory and Practice in Distributed Systems, Publisher: Springer-Verlag

Conference paper

Nuseibeh B, Finkelstein A, Kramer J, Easterbrook Set al., 1994, Concurrent Software Engineering: Co-ordinating Distributed Viewpoints for Managing Inconsistency, IEE Colloquium on Issues of Co-operative Working in Concurrent Engineering

Journal article

Eisenbach S, Kramer J, Magee JN, 1994, Regis-Darwin specified in the p-Calculus, Proceedings IEEE 2nd Int. Workshop on Configurable Distributed Systems (IWCDS-2), Publisher: IEEE

Conference paper

Easterbrook S, Finkelstein A, Kramer J, Nuseibeh Bet al., 1994, Co-ordinating Distributed Viewpoints: the anatomy of a consistency check, International Journal on Concurrent Engineering: Research and Applications, Vol: 2, Pages: 209-222

Journal article

Nuseibeh B, Finkelstein A, Kramer J, 1993, Fine-grain process modelling, Pages: 42-46

In this paper, we propose the use of fine-grain process modelling as an aid to software development. We suggest the use of two levels of granularity, one at the level of the individual developer and another at the level of the representation scheme used by that developer. The advantages of modelling the software development process at these two levels, we argue, include respectively: (1) the production of models that better reflect actual development processes because they are oriented towards the actors who enact them, and (2) models that are vehicles for providing guidance because they may be expressed in terms of the actual representation schemes employed by those actors. We suggest that our previously published approach of using multiple "Viewpoints" to model software development participants, the perspectives that they hold, the representation schemes that they deploy and the process models that they maintain, is one way of supporting the fine-grain modelling we advocate. We point to some simple, tool-based experiments we have performed that support our proposition.

Conference paper

Cheung SC, Kramer J, 1993, Enhancing compositional reachability analysis with context constraints, Pages: 115-125

Compositional techniques have been proposed for traditional reachability analysis in order to introduce modularity and to control the state explosion problem. While modularity has been achieved, state explosion is still a problem. Indeed, this problem may even be exacerbated as a locally minimised subsystem may contain many states and transitions forbidden by its context or environments. This paper presents a method to alleviate tiiis problem effectively by including context constraints in local subsystem minimisation. The global behaviour generated using the method is observationally equivalent to that generated by compositional reachability analysis without the inclusion of context constraints. Context constraints, specified as interface processes, are restrictions imposed by the environment on subsystem behaviour. The minimisation produces a simplified machine that describes the behaviour of the subsystem constrained by its context. This machine can also be used as a substitute for the original subsystem in the subsequent steps of the compositional reachability analysis. Interface processes capturing context constraints can be specified by users or automatically constructed using a simple algorithm. The concepts in the paper are illustrated with a clients/server system.

Conference paper

MAGEE J, DULAY N, KRAMER J, 1993, STRUCTURING PARALLEL AND DISTRIBUTED PROGRAMS, SOFTWARE ENGINEERING JOURNAL, Vol: 8, Pages: 73-82, ISSN: 0268-6961

Journal article

KRAMER J, 1993, CONFIGURABLE DISTRIBUTED SYSTEMS, SOFTWARE ENGINEERING JOURNAL, Vol: 8, Pages: 51-52, ISSN: 0268-6961

Journal article

Cheung SC, Kramer J, 1993, Tractable flow analysis for anomaly detection in distributed programs, Pages: 283-300, ISSN: 0302-9743

Each process in a distributed program or design can be modelled as a process flow graph, where nodes represent program statements and directed edges represent control flows. This paper describes a flow analysis method to detect unreachable statements by examining the control flows and communication patterns in a collection of process flow graphs. The method can analyse programs with loops, non-deterministic structures and synchronous communication using an algorithm with a quadratic complexity in terms of program size. The method follows an approach described by Reif and Smolka [9] but delivers a more accurate result in assessing the reachability of statements. The higher accuracy is achieved using three techniques: statement dependency, history sets and statement re-reachability. The method is illustrated by a pump control application for a mining environment. A prototype has been implemented and its performance is presented.

Conference paper

Magee J, Kramer J, Dulay N, 1993, Darwin/MP: An environment for parallel and distributed programming, Pages: 337-346, ISSN: 1530-1605

Darwin/MP is a programming environment for distributed memory parallel computers. Programs are constructed from hierarchically structured configurations of processes. These process configurations are described explicitly in the Darwin configuration language. In addition to expressing the initial or static structure of a parallel program, Darwin can be used to express structures which change dynamically as execution progresses. Generic structures allow commonly used parallel programming paradigms to be captured as program skeletons. Processes are programmed in a conventional sequential language augmented with the MP message passing primitives. The authors illustrate program development and execution in the environment by means of a set of examples. In addition, they report on the performance of Darwin/MP programs and on experience with the use of the environment. Darwin/MP is currently targeted at developing programs for transputer based multicomputers and for workstation clusters.

Conference paper

Kremien O, Kramer J, Magee J, 1993, Scalable load-sharing for distributed systems, Pages: 632-641, ISSN: 1530-1605

Adaptive algorithms for load-sharing usually comprise two basic functions: State information dissemination and decision making. The authors describe a flexible load-sharing algorithm, FLS, which includes a third function introduced for scalability purposes, that of partitioning into domains. The system partitioning function at a node is responsible for the selection of other nodes to be included in its domain. The state of other nodes in its domain is held locally, in a cache. Cached data are treated as hints for decision making. The FLS algorithm permits local decisions to be made, aims at minimizing the number of incorrect decisions, and does not allow erroneous decisions to proceed. The algorithm is analyzed and shown to be stable and scalable. Its suitability to a CONIC/RES environment was demonstrated with a prototype implementation, providing an automatic software allocation service as part of configuration management.

Conference paper

Finkelstein A, Gabbay D, Hunter A, Kramer J, Nuseibeh Bet al., 1993, Inconsistency handling in multi-perspective specifications, Pages: 84-99, ISSN: 0302-9743

The development of most large and complex systems necessarily involves many people - each with their own perspectives on the system defined by their knowledge, responsibilities, and commitments. To address this we have advocated distributed development of specifications from multiple perspectives. However, this leads to problems of identifying and handling inconsistencies between such perspectives. Maintaining absolute consistency is not always possible. Often this is not even desirable since this can unnecessarily constrain the development process, and can lead to the loss of important information. Indeed since the real-world forces us to work with inconsistencies, we should formalise some of the usually informal or extra-logical ways of responding to them. This is not necessarily done by eradicating inconsistencies but rather by supplying logical rules specifying how we should act on them. To achieve this, we combine two lines of existing research: the Viewpoints framework for perspective development, interaction and organisation, and a logic-based approach to inconsistency handling. This paper presents our technique for inconsistency handling in the ViewPoints framework by using simple examples.

Conference paper

Nuseibeh B, Kramer J, Finkelstein A, 1993, Expressing the relationships between multiple views in requirements specification, Pages: 187-196, ISSN: 0270-5257

Composite systems generally comprise heterogeneous components whose specifications are developed by many development participants. The requirements of such systems are invariably elicited from multiple perspectives which will overlap, complement and contradict each other. If these requirements are developed and specified using multiple methods and notations respectively, then it is necessary to express and check the relationships between the resultant specification fragments. In this paper we deploy multiple 'ViewPoints″ that hold partial requirements specifications, described and developed using different representation schemes and development strategies. We discuss the notion of inter-ViewPoint communication in the context of this ViewPoints framework, and propose a general model for such communication. We elaborate on some of the requirements for expressing and enacting inter-ViewPoint relationships, and use fragments of the requirements specification method CORE to illustrate our model.

Conference paper

Kremien O, Kramer J, Magee J, 1993, Scalable, Adaptive Load Sharing for Distributed Systems, IEEE Parallel and Distributed Technology, Vol: 1, Pages: 62-70, ISSN: 1063-6552

This flexible load-sharing algorithm achieves scalability by partitioning a system into domains. Each node dynamically and adaptively selects other nodes to be included in its domain. © 1993, IEEE. All rights reserved.

Journal article

FINKELSTEIN A, KRAMER J, ABRAMSKY S, BRODA K, DROSSOPOULOU S, EISENBACH Set al., 1993, AN INTEGRATED ENGINEERING STUDY SCHEME IN COMPUTING, COMPUTER JOURNAL, Vol: 36, Pages: 320-334, ISSN: 0010-4620

Journal article

Finkelstein A, Kramer J, Nuseibeh B, 1993, ViewPoint-Oriented Development: applications in composite systems, Safety-Critical Systems: Current issues, techniques and standards, Publisher: Chapman & Hall, Pages: 90-101

Book chapter

KREMIEN O, KRAMER J, 1992, METHODICAL ANALYSIS OF ADAPTIVE LOAD SHARING ALGORITHMS, IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, Vol: 3, Pages: 747-760, ISSN: 1045-9219

Journal article

KRAMER J, 1992, WORKSHOP PARTICIPANTS EXPLORE CONFIGURABLE DISTRIBUTED SYSTEMS RESEARCH, COMPUTER, Vol: 25, Pages: 107-108, ISSN: 0018-9162

Journal article

FINKELSTEIN A, KRAMER J, NUSEIBEH B, FINKELSTEIN L, GOEDICKE Met al., 1992, A FRAMEWORK FOR INTEGRATING MULTIPLE PERSPECTIVES IN SYSTEM-DEVELOPMENT - VIEWPOINTS, INTERNATIONAL JOURNAL OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING, Vol: 2, Pages: 31-57, ISSN: 0218-1940

Journal article

KRAMER J, MAGEE J, SLOMAN M, DULAY Net al., 1992, CONFIGURING OBJECT-BASED DISTRIBUTED PROGRAMS IN REX, SOFTWARE ENG J, Vol: 7, Pages: 139-149, ISSN: 0268-6961

The popularity of the object-oriented programming paradigm has stimulated research into its use for parallel and distributed programming. The major issues that affect such use are concurrency control, object interfaces, binding and inheritance. In this paper, we discuss the relative merits of current solutions to these issues and describe an approach based on the use of active objects with essentially explicit interfaces and bindings, and composition as a pragmatic alternative to inheritance. The key feature of our approach is the use of a configuration language to define program structure as a set of objects and their bindings. The configuration language includes facilities for hierarchic definition of composite objects, parameterisation of objects, conditional configurations and recursive definition of objects. This separate and explicit description of program structure complements object-oriented programming. The approach is illustrated by examples from the REX environment for the development of parallel and distributed software.

Journal article

Magee J, Dulay N, Kramer J, 1992, Structuring parallel and distributed programs, Pages: 102-117

Darwin is a configuration language which allows distributed and parallel programs to be structured interns of groups of process instances which communicate by message passing. In addition to expressing static structure, Darwin can be used to express structures which change dynamically as execution progresses. The paper presents a set of examples illustrating the use of Darwin in constructing parallel programs. Since processes can be considered to be an abstraction of physical processors, Darwin can also be used to describe the hardware structure of distributed memory multicomputers in terms of processors and their interconnection. The paper illustrates this for a multicomputer constructed from transputers and shows its use in the process of mapping the logical structure of a parallel program to the physical hardware.

Conference paper

Kremien O, Kramer J, 1992, Flexible load-sharing in configurable distributed systems, Pages: 224-236

Adaptive algorithms for load-sharing usually comprise two basic functions: state information dissemination and decision making (control). This paper describes a flexible load-sharing algorithm, FLS,which includes a third function introduced for scalability purposes, that of partitioning into domains. The system partitioning function at a node is responsible for tHe selection of other nodes to be included in its domain. The state of other nodes in its domain is held locally, in a cache. Cached data is treated as hints for decision making. The FLS algorithm permits local decisions to be made, aims at minimising the number of incorrect decisions and does not allow erroneous decisions to proceed. The algorithm is analysed and shown to be stable and scalable. Its suitability to a CONIC/REX environment is demonstrated with a prototype implementation, providing an automatic software allocation service as part of configuration management.

Conference paper

This data is extracted from the Web of Science and reproduced under a licence from Thomson Reuters. You may not copy or re-distribute this data in whole or in part without the written consent of the Science business of Thomson Reuters.

Request URL: http://wlsprd.imperial.ac.uk:80/respub/WEB-INF/jsp/search-html.jsp Request URI: /respub/WEB-INF/jsp/search-html.jsp Query String: limit=30&id=00003345&person=true&page=10&respub-action=search.html