SearcharxivSearch

arXiv subjects

Bob Diertens

Publications and source records attributed to Bob Diertens.

10 recordsLinked to original sources

Process Algebra Based Tool Coordination Architectures in Raku and Go

This paper presents ongoing research in our project software engineering with process algebra. In this project we have developed among others a reimplementation of the simulator from the PSF Toolkit, a set of tools for the Process Specification formalism (PSF). This new simulator uses the ToolBus, a tool coordination architecture based on process algebra. We now developed new tool coordination architectures based on this ToolBus. We implement the primitives of the ToolBus in the programming languages Raku and Go. Both these languages have support for concurrency and communication between concurrent entities in the form of channels. We apply these tool coorination architectures on a small example. And we give implementations for the simulator in the PSF Toolkit based on the tool coordination architectures in Raku and Go.

cs.SE

Refinement in the Function-Behaviour-Structure Framework

We introduce refinement in the function-behaviour-structure framework for design, as described by John Gero, in order to deal with complexity. We do this by connecting the frameworks for the design of two models, one the refinement of the other. The result is a framework for the design of an object that supports levels of abstraction in the design. This framework can easily be extended for the design of an object on more than two levels of abstraction.

cs.SE

Composition in the Function-Behaviour-Structure Framework

We introduce composition in the function-behaviour-structure framework for design, as described by John Gero, in order to deal with complexity. We do this by connecting the frameworks for the design of several models, in which one is constrained by the others. The result is a framework for the design of an object that supports modularity. This framework can easily be extended for the design of an object with more than one layer of modularity.

cs.SE

From Functions to Object-Orientation by Abstraction

In previous work we developed a framework of computational models for function and object execution. The models on an higher level of abstraction in this framework allow for concurrent execution of functions and objects. We show that the computational model for object execution complies with the fundamentals of object-orientation.

cs.SE

Concurrent Models for Object Execution

In previous work we developed a framework of computational models for the concurrent execution of functions on different levels of abstraction. It shows that the traditional sequential execution of function is just a possible implementation of an abstract computational model that allows for the concurrent execution of function. We use this framework as base for the development of abstract computational models that allow for the concurrent execution of objects.

cs.SE

Concurrent Models for Function Execution

We derive an abstract computational model from a sequential computational model that is generally used for function execution. This abstract computational model allows for the concurrent execution of functions. We discuss concurrent models for function execution as implementations from the abstract computational model. We give an example of a particular concurrent function construct that can be implemented on a concurrent machine model using multi-threading. The result is a framework of computational models at different levels of abstraction that can be used in further development of concurrent computational models that deal with the problems inherent with concurrency.

cs.SE

Communicating Concurrent Functions

In this article we extend the framework of execution of concurrent functions on different abstract levels from previous work with communication between the concurrent functions. We classify the communications and identify problems that can occur with these communications. We present solutions for the problems based on encapsulation and abstraction to obtain correct behaviours. The result is that communication on a low level of abstraction in the form of shared memory and message passing is dealt with on an higher level of abstraction.

cs.SE

Software (Re-)Engineering with PSF II: from architecture to implementation

This paper presents ongoing research on the application of PSF in the field of software engineering and reengineering. We build a new implementation for the simulator of the PSF Toolkit starting from the specification in PSF of the architecture of a simple simulator and extend it with features to obtain the architecture of a full simulator. We apply refining and constraining techniques on the specification of the architecture to obtain a specification low enough to build an implementation from.

cs.SE

Software (Re-)Engineering with PSF III: an IDE for PSF

We describe the design of an integrated development environment (IDE) for PSF. In the software engineering process we used process algebra in the form of PSF for the specification of the architecture of the IDE. This specification is refined to a PSF specification of the IDE system as a ToolBus application, by applying vertical and horizontal implementation techniques. We implemented the various tools as specified and connected them with a ToolBus script extracted from the system specification.

cs.SE

Software (Re-)Engineering with PSF

This paper investigates the usefulness of PSF in software engineering and reengineering. PSF is based on ACP (Algebra of Communicating Processes) and as some architectural description languages are based on process algebra, we investigate whether PSF can be used at the software architecture level, but we also use PSF at lower abstract levels. As a case study we reengineer the compiler from the Toolkit of PSF.

cs.SE