Title :
An event-based architecture definition language
Author :
Luckham, David C. ; Vera, James
Author_Institution :
Comput. Syst. Lab., Stanford Univ., CA, USA
fDate :
9/1/1995 12:00:00 AM
Abstract :
This paper discusses general requirements for architecture definition languages, and describes the syntax and semantics of the subset of the Rapide language that is designed to satisfy these requirements. Rapide is a concurrent event-based simulation language for defining and simulating the behavior of system architectures. Rapide is intended for modelling the architectures of concurrent and distributed systems, both hardware and software in order to represent the behavior of distributed systems in as much detail as possible. Rapide is designed to make the greatest possible use of event-based modelling by producing causal event simulations. When a Rapide model is executed it produces a simulation that shows not only the events that make up the model´s behavior, and their timestamps, but also which events caused other events, and which events happened independently. The architecture definition features of Rapide are described: event patterns, interfaces, architectures and event pattern mappings. The use of these features to build causal event models of both static and dynamic architectures is illustrated by a series of simple examples from both software and hardware. Also we give a detailed example of the use of event pattern mappings to define the relationship between two architectures at different levels of abstraction. Finally, we discuss briefly how Rapide is related to other event-based languages
Keywords :
discrete event simulation; distributed processing; hardware description languages; simulation languages; virtual machines; Rapide language; causal event models; causal event simulations; concurrent event-based simulation language; distributed systems; event pattern mappings; event patterns; event-based architecture definition language; event-based languages; interfaces; semantics; syntax; timestamps; Computer architecture; Concurrent computing; Discrete event simulation; Hardware; History; Large-scale systems; Object oriented modeling; Object oriented programming; System testing; Virtual prototyping;
Journal_Title :
Software Engineering, IEEE Transactions on