Demo Data from VLDB 2026 / reviewers in the wild / expert
Anders P. Ravn
dblp:51/1502
· DBLP profile ↗
32ranked-venue papers
8as first author
0since 2021 · last 2017
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 16 · 5 first-authorSystems, architecture and hardware · 7 · 3 first-authorTheory of computation · 4Databases, data management, data science and information retrieval · 1Applied, interdisciplinary, general and emerging computing · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
4 papers |
Requirements engineering and software design · 42% Software maintenance and evolution · 28% Program verification · 14% | |
| Computer architecture, parallel and distributed computing, and storage systems
2 papers |
Embedded and real-time systems · 72% Electronic design automation · 28% |
Topics — the 14 heaviest of 15, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Software maintenance and evolution
fault tree analysis |
0.0 | 1 | 1998 | From Safety Analysis to Software Requirements · IEEE Trans. Software Eng. 1998 |
Requirements engineering and software design
safety requirements |
0.0 | 1 | 1998 | From Safety Analysis to Software Requirements · IEEE Trans. Software Eng. 1998 |
Embedded and real-time systems › critical systems
safety-critical software |
0.0 | 1 | 1998 | From Safety Analysis to Software Requirements · IEEE Trans. Software Eng. 1998 |
Program verification › reactive system verification
real-time system verification |
0.0 | 1 | 1993 | Specifying and Verifying Requirements of Real-Time Systems · IEEE Trans. Software Eng. 1993 |
Requirements engineering and software design
requirements specification |
0.0 | 1 | 1993 | Specifying and Verifying Requirements of Real-Time Systems · IEEE Trans. Software Eng. 1993 |
Electronic design automation › formal methods
formal specification and verification |
0.0 | 1 | 1993 | Specifying and Verifying Requirements of Real-Time Systems · IEEE Trans. Software Eng. 1993 |
Embedded and real-time systems
distributed real-time systems |
0.0 | 1 | 1993 | Specifying and Verifying Requirements of Real-Time Systems · IEEE Trans. Software Eng. 1993 |
Embedded and real-time systems › networked embedded systems
sensor-actuator networks |
0.0 | 1 | 1993 | Specifying and Verifying Requirements of Real-Time Systems · IEEE Trans. Software Eng. 1993 |
Operating systems › i/o › i/o subsystem
device drivers |
0.0 | 1 | 1980 | Device Monitors · IEEE Trans. Software Eng. 1980 |
Operating systems › i/o
i/o subsystem |
0.0 | 1 | 1980 | Device Monitors · IEEE Trans. Software Eng. 1980 |
Concurrent programming › synchronization
monitors |
0.0 | 1 | 1980 | Device Monitors · IEEE Trans. Software Eng. 1980 |
Concurrent programming
synchronization |
0.0 | 1 | 1980 | Device Monitors · IEEE Trans. Software Eng. 1980 |
Operating systems › resource management › storage management › file systems
file system design |
0.0 | 1 | 1984 | Encapsulation Constructs in Systems Programming Languages · ACM Trans. Program. Lang. Syst. 1984 |
Operating systems › kernel
interrupt handling |
0.0 | 1 | 1980 | Device Monitors · IEEE Trans. Software Eng. 1980 |
Methods — techniques the papers use, named apart from their topics
temporal logic · 0.0fault tree analysis · 0.0interval logic · 0.0duration calculus · 0.0deduction · 0.0language design evaluation · 0.0monitor concept · 0.0hardware interrupts · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2017 | Safety-critical Java for embedded systemsabstractSummary This paper presents the motivation for and outcomes of an engineering research project on certifiable Java for embedded systems. The project supports the upcoming standard for safety‐critical Java, which defines a subset of Java and libraries aiming for development of high criticality systems. The outcome of this project include prototype safety‐critical Java implementations, a time‐predictable Java processor, analysis tools for memory safety, and example applications to explore the usability of safety‐critical Java for this application area. The text summarizes developments and key contributions and concludes with the lessons learned. Copyright © 2016 John Wiley & Sons, Ltd. Martin Schoeberl, Andreas Engelbredt Dalsgaard, René Rydhof Hansen, Stephan Korsholm, Anders P. Ravn, Juan Ricardo Rios, Tórur Biskopstø Strøm, Hans Søndergaard, Andy J. Wellings, Shuai Zhao 0004 |
Concurr. Comput. Pract. Exp. | 5 |
| 2017 | Conformance test development with the Java modeling languageabstractSummary In order to claim conformance with a Java Specification Request, a Java implementation has to pass all tests in an associated Technology Compatibility Kit. This paper presents a model‐based development of a Technology Compatibility Kit test suite and a test execution tool for the draft safety‐critical Java profile specification. The Java Modeling Language is used to model conformance constraints for the profile. Java Modeling Language annotations define contracts for classes and interfaces. The annotations are translated by a tool into runtime assertion checks. Hereby, the design and elaboration of the concrete test cases are simplified, because the expected results are derived from contracts and thus do not need to be provided explicitly. Bottom‐up testing is applied for testing methods of the safety‐critical Java classes, whereas top‐down testing is applied for testing global properties, such as protocols, memory management, and real‐time properties, including scheduling. The tests are executed using a simplified version of JUnit, which makes the test suite executable on resource‐constrained platforms. Copyright © 2017 John Wiley & Sons, Ltd. Hans Søndergaard, Stephan Korsholm, Anders P. Ravn |
Concurr. Comput. Pract. Exp. | 3 |
| 2014 | A real-time Java tool chain for resource constrained platformsabstractSUMMARY The Java programming language was originally developed for embedded systems, but the resource requirements of previous and current Java implementations – especially memory consumption – tend to exclude them from being used on a significant class of resource constrained embedded platforms. The contribution of this paper is an architecture and implementation of a Java execution stack for resource constrained embedded platforms with a few kB of RAM and flash memory. The resource requirements of the presented architecture has been reduced significantly through all the layers of the architecture by integrating the following: (1) a lean virtual machine without any external dependencies on POSIX‐like libraries or other OS functionalities; (2) a hardware abstraction layer, implemented almost entirely in Java through the use of hardware objects, first level interrupt handlers, and native variables; and (3) an implementation of the Safety‐Critical Java profile Level 0 and 1 for hard real‐time applications. All Java components of a given application are minimized through program specialization, and because (2) and (3) are written in Java, the program specialization has a significant impact on the resulting program size. An evaluation of the presented solution shows that the miniCDj benchmark gets reduced to a size where it can run on resource constrained platforms. Copyright © 2013 John Wiley & Sons, Ltd. Stephan Korsholm, Hans Søndergaard, Anders P. Ravn |
Concurr. Comput. Pract. Exp. | 3 |
| 2013 | Introduction to the special issue on Java technologies for real-time and embedded systems: JTRES2011abstractTEST 02 - Elsevier's Scopus, the largest abstract and citation database of peer-reviewed literature. Search and access research from the science, technology, medicine, social sciences and arts and humanities fields. Anders P. Ravn, M. Teresa Higuera-Toledano |
Concurr. Comput. Pract. Exp. | 1 |
| 2013 | Model-checking web services business activity protocols
Abinoam P. Marques Jr., Anders P. Ravn, Jirí Srba, Muhammad Saleem Vighio |
Int. J. Softw. Tools Technol. Transf. | 2 |
| 2012 | Safety-critical Java with cyclic executives on chip-multiprocessorsabstractSUMMARY Chip‐multiprocessors offer increased processing power at a low cost. However, in order to use them for real‐time systems, tasks have to be scheduled efficiently and predictably. It is well known that finding optimal schedules is a computationally hard problem. In this paper we present a solution that uses model checking to find a static schedule, if one exists at all, which gives an implementation of a table driven multiprocessor scheduler. Mutual exclusion to access shared resources is guaranteed by including access constraints in the schedule generation. To evaluate the proposed cyclic executive for multiprocessors, we have implemented it in the context of safety‐critical Java on a Java processor. Copyright © 2011 John Wiley & Sons, Ltd. Anders P. Ravn, Martin Schoeberl |
Concurr. Comput. Pract. Exp. | 1 |
| 2012 | Compositional verification of real-time systems using Ecdar
Alexandre David, Kim G. Larsen, Axel Legay, Mikael H. Møller, Ulrik Nyman, Anders P. Ravn, Arne Skou, Andrzej Wasowski |
Int. J. Softw. Tools Technol. Transf. | 6 |
| 2011 | An Abstract Model for Proving Safety of Multi-lane Traffic Manoeuvres
Martin Hilscher, Sven Linker, Ernst-Rüdiger Olderog, Anders P. Ravn |
ICFEM | 4 |
| 2011 | Refactoring Real-Time Java ProfilesabstractJust like other software, Java profiles benefits from refactoring when they have been used and have evolved for some time. This paper presents a refactoring of the Real-Time Specification for Java (RTSJ) and the Safety Critical Java (SCJ) profile (JSR-302). It highlights core concepts and makes it a suitable foundation for the proposed levels of SCJ. The ongoing work of specifying the SCJ profile builds on sub classing of RTSJ. This spurred our interest in a refactoring approach. It starts by extracting the common kernel of the specifications in a core package, which defines interfaces only. It is then possible to refactor SCJ with its three levels and RTSJ in such a way that each profile is in a separate package. This refactoring results in cleaner class hierarchies with no superfluous methods, well defined SCJ levels, elimination of SCJ annotations like @SCJAllowed, thus making the profiles easier to comprehend and use for application developers and students. Hans Søndergaard, Bent Thomsen, Anders P. Ravn, René Rydhof Hansen, Thomas Bøgholm |
ISORC | 3 |
| 2011 | Modelling and Verification of Web Services Business Activity Protocol
Anders P. Ravn, Jirí Srba, Muhammad Saleem Vighio |
TACAS | 1 |
| 2011 | A Hardware Abstraction Layer in JavaabstractEmbedded systems use specialized hardware devices to interact with their environment, and since they have to be dependable, it is attractive to use a modern, type-safe programming language like Java to develop programs for them. Standard Java, as a platform-independent language, delegates access to devices, direct memory access, and interrupt handling to some underlying operating system or kernel, but in the embedded systems domain resources are scarce and a Java Virtual Machine (JVM) without an underlying middleware is an attractive architecture. The contribution of this article is a proposal for Java packages with hardware objects and interrupt handlers that interface to such a JVM. We provide implementations of the proposal directly in hardware, as extensions of standard interpreters, and finally with an operating system middleware. The latter solution is mainly seen as a migration path allowing Java programs to coexist with legacy system components. An important aspect of the proposal is that it is compatible with the Real-Time Specification for Java (RTSJ). Martin Schoeberl, Stephan Korsholm, Tomas Kalibera, Anders P. Ravn |
ACM Trans. Embed. Comput. Syst. | 4 |
| 2010 | A Formal Analysis of the Web Services Atomic Transaction Protocol with UPPAAL
Anders P. Ravn, Jirí Srba, Muhammad Saleem Vighio |
ISoLA (1) | 1 |
| 2009 | Semantics for Communicating Actors with Interdependent Real-Time DeadlinesabstractModels of embedded systems with communicating actors and deadlines offer abstraction and encapsulation of related functionality, but their behavior is complex. Verification is therefore difficult and requires a combination of simulation, model checking and testing tools. In order to rely on the results, these tools must use consistent semantics for the model. Yet, a monolithic semantic model is just as complex as the entity it describes. In order to circumvent this issue, we define a three level semantics giving independent definitions of the functionality of actors, the temporal properties of communications, and finally imposing deadlines on the timing of dependent actors. With this approach the semantics is used directly in developing a simulator supporting the nondeterminism of the abstract semantics such that e.g. potential race conditions can be detected. The layers are also planned to underpin independent specialized verification tools. The verification task for timed, hybrid systems can thus be divided into the continuous, discrete, and timing domains with automated translation to specialized tools, and this promises better scalability than simulation or model checking of one complex model. Istvan Knoll, Anders P. Ravn, Arne Skou |
TASE | 2 |
| 2009 | Refinement and verification in component-based model-driven design
Zhenbang Chen 0001, Zhiming Liu 0001, Anders P. Ravn, Volker Stolz, Naijun Zhan |
Sci. Comput. Program. | 3 |
| 2008 | Classification of SOA Contract Specification LanguagesabstractThere are numerous existing notations and standards in the Web service community. These may be grouped broadly into three competing families, namely; Web services, semantic Web, and electronic business. Although the families are competing, we expect that applications will cut across them and there is a need to map from one to another and to analyze compatibility and other properties. Therefore we survey how they deal with different aspects. We then illustrate with examples, the aspects of contracts captured by one language from each of the three competing families in addition to WSDL, the core standard for Web services description. The result is a classification based on the aspects of computations: functionality, protocol, and for instance performance covered by the languages. The classification is used to identify similarities between semantic models and thus find potential mappings between the families. Furthermore, this gives a handle on analysis techniques that may apply to the aspects in a particular family. Joseph C. Okika, Anders P. Ravn |
ICWS | 2 |
| 2008 | Interrupt Handlers in JavaabstractAn important part of implementing device drivers is to control the interrupt facilities of the hardware platform and to program interrupt handlers. Current methods for handling interrupts in Java use a server thread waiting for the VM to signal an interrupt occurrence. It means that the interrupt is handled at a later time, which has some disadvantages. We present constructs that allow interrupts to be handled directly and not at a later point decided by a scheduler. A desirable feature of our approach is that we do not require a native middelware layer but can handle interrupts entirely with Java code. We have implemented our approach using an interpreter and a Java processor, and give an example demonstrating its use. Stephan Korsholm, Martin Schoeberl, Anders P. Ravn |
ISORC | 3 |
| 2008 | Hardware Objects for JavaabstractJava, as a safe and platform independent language, avoids access to low-level I/O devices or direct memory access. In standard Java, low-level I/O is not a concern; it is handled by the operating system. However, in the embedded domain resources are scarce and a Java virtual machine (JVM) without an underlying middleware is an attractive architecture. When running the JVM on bare metal, we need access to I/O devices from Java; therefore we investigate a safe and efficient mechanism to represent I/O devices as first class Java objects, where device registers are represented by object fields. Access to those registers is safe as Java's type system regulates it. The access is also fast as it is directly performed by the bytecodesgetfield and putfield. Hardware objects thus provide an object-oriented abstraction of low-level hardware devices. As a proof of concept, we have implemented hardware objects in three quite different JVMs: in the Java processor JOP, the JIT compiler CACAO, and in the interpreting embedded JVM SimpleRTJ. Martin Schoeberl, Christian Thalinger, Stephan Korsholm, Anders P. Ravn |
ISORC | 4 |
| 2007 | A Refinement Driven Component-Based DesignabstractModern software applications ranging from enterprise to embedded systems are becoming increasingly complex, and require very high levels of dependability assurance. The most effective means to handle complexity is separation of concerns and incremental development, and assurance of dependability requires formal methods. We report here our experience on these issues in an application of a formal calculus, rCOS, to a component-based design of the point of sale system (POS). We demonstrate the possibility in scaling-up correctness by design and discuss how rCOS may be integrated with current and emerging software engineering tools. Zhenbang Chen 0001, Zhiming Liu 0001, Volker Stolz, Anders P. Ravn |
ICECCS | 5 |
| 2007 | A Profile for Safety Critical JavaabstractWe propose a new, minimal specification for real-time Java for safety critical applications. The intention is to provide a profile that supports programming of applications that can be validated against safety critical standards such as DO-178B (1992). The proposed profile is in line with the Java specification request JSR-302: Safety Critical Java Technology, which is still under discussion. In contrast to the current direction of the expert group for the JSR-302 we do not subset the rather complex Real-Time Specification for Java (RTSJ). Nevertheless, our profile can be implemented on top of an RTSJ compliant JVM Martin Schoeberl, Hans Søndergaard, Bent Thomsen, Anders P. Ravn |
ISORC | 4 |
| 2007 | Editorial: Hybrid Systems
Ernst-Rüdiger Olderog, Anders P. Ravn |
Acta Informatica | 2 |
| 2006 | Harnessing Theories for Tool SupportabstractSoftware development tools need to support more and more phases of the entire development process, because applications must be developed more correctly and efficiently. The tools therefore need to integrate sophisticated checkers, generators and transformations. A feasible approach to ensure high quality of such add-ins is to base them on sound formal foundations. In order to know where such add-ins will fit, we investigate the use of an existing successful commercial tool and identify suitable places for adding formally supported checking, transformation and generation modules. The paper concludes with a discussion of feasibility of developing the proposed add-ins and how to give conditions such that they will actually be used. Zhiming Liu 0001, Vladimir Mencl, Anders P. Ravn |
ISoLA | 3 |
| 2004 | Unifying proof methodologies of duration calculus and timed linear temporal logicabstractAbstract. Linear temporal logic (LTL) has been widely used for specification and verification of reactive systems. Its standard model is sequences of states (or state transitions), and formulas describe sequencing of state transitions. When LTL is used to model real-time systems, a state is extended with a time stamp to record when a state transition takes place. Duration calculus (DC) is another well studied approach for real-time systems development. DC models behaviours of a system by functions from the domain of reals representing time to the system states. This paper extends this time domain to the Cartesian product of the real and the natural numbers. With the extended time domain, we provide the chop modality with a non-overlapping interpretation. This allows some linear temporal operators explicitly dealing with the discrete dimension of time to be derivable from the chop modality in essentially the same way that their continuous-time counterparts are in the classical DC. This provides a nice embedding of some timed LTL (TLTL) modalities into DC to unify the methods from DC and LTL for real-time systems development: Requirements and high level design decisions are interval properties and are therefore specified and reasoned about in DC, while properties of an implementation, as well as the refinement relation between two implementations, are specified and verified compositionally and inductively in LTL. Implementation properties are related to requirement and design properties by rules for lifting LTL formulas to DC formulas. Zhiming Liu 0001, Anders P. Ravn |
Formal Aspects Comput. | 2 |
| 2003 | Hybrid action systems
Mauno Rönkkö, Anders P. Ravn, Kaisa Sere |
Theor. Comput. Sci. | 2 |
| 1998 | From Safety Analysis to Software RequirementsabstractSoftware for safety critical systems must deal with the hazards identified by safety analysis. This paper investigates, how the results of one safety analysis technique, fault trees, are interpreted as software safety requirements to be used in the program design process. We propose that fault tree analysis and program development use the same system model. This model is formalized in a real-time, interval logic, based on a conventional dynamic systems model with state evolving over time. Fault trees are interpreted as temporal formulas, and it is shown how such formulas can be used for deriving safety requirements for software components. Kirsten Mark Hansen, Anders P. Ravn, Victoria Coleman |
IEEE Trans. Software Eng. | 2 |
| 1995 | Development of Safety-Critical Real-Time Systems
Hans Rischel, Jorge Cuéllar, Simon Mørk, Anders P. Ravn, Isolde Wildgruber |
SOFSEM | 4 |
| 1993 | Specifying and Verifying Requirements of Real-Time SystemsabstractAn approach to specification of requirements and verification of design for real-time systems is presented. A system is defined by a conventional mathematical model for a dynamic system where application specific states denote functions of real time. Specifications are formulas in duration calculus, a real-time interval logic, where predicates define durations of states. Requirements define safety and functionality constraints on the system or a component. A top-level design is given by a control law: a predicate that defines an automation controlling the transition between phases of operation. Each phase maintains certain relations among the system states; this is analogous to the control functions known from conventional control theory. The top-level design is decomposed into an architecture for a distributed system with specifications for sensor, actuator, and program components. Programs control the distributed computation through synchronous events. Sensors and actuators relate events with system states. Verification is a deduction showing that a design implies requirements.> Anders P. Ravn, Hans Rischel, Kirsten Mark Hansen |
IEEE Trans. Software Eng. | 1 |
| 1991 | A Calculus of Durations
Chaochen Zhou, Tony Hoare, Anders P. Ravn |
Inf. Process. Lett. | 3 |
| 1984 | Encapsulation Constructs in Systems Programming LanguagesabstractThis paper investigates the desirable properties of programming language constructs that support encapsulation of environments and abstract data types.These properties are illustrated by using a simple multiuser file system as a model.The requirements for such a file system are outlined; then the model file system design is described by a hierarchy of encapsulated abstract data types and environments.The high-level language constructs necessary to directly implement the model file system design are identified.It is concluded that environment encapsulation and abstract data types must be supported by different constructs, and the desirable properties of such constructs are outlined.A superset of Ada e that effectively supports both environments and abstract data types is introduced and used to implement the model file system.The encapsulation constructs of several modern systems programming languages are evaluated.Each of these languages is shown to be insufficient for a direct implementation of the model file system design. William F. Appelbe, Anders P. Ravn |
ACM Trans. Program. Lang. Syst. | 2 |
| 1982 | Use of concurrent Pascal in systems programming teaching
Anders P. Ravn |
Microprocessing and Microprogramming | 1 |
| 1982 | Pointer Variables in Concurrent PascalabstractAbstract Concurrent Pascal and similar languages are inefficient when used to program systems where processes exchange large messages. The inefficiencies, caused by copying of data, can be removed by introducing pointer variables, and this paper shows how this is done without allowing unrestricted sharing of variables. Pointer variables also give means to solve problems of dynamic resource allocation and dynamic addressing. Examples with performance figures for an actual implementation are given. Anders P. Ravn |
Softw. Pract. Exp. | 1 |
| 1980 | Device MonitorsabstractA driver is the part of an I/O system used for processing of an I/O request for a specific channel. The interaction of the CPU with a channel is described through the monitor concept of Hoare and Brinch Hansen. The implementation of monitors using hardware interrupt facilities is described. The resulting device monitor is compared pared with the device processes of Wirth's Modula. The concept is illustrated through an extension to Concurrent Pascal with examples drawn from the PDP11 system. Problems of missing interrupts and power failure are also discussed. Anders P. Ravn |
IEEE Trans. Software Eng. | 1 |
| 1979 | Synchronization under a Commercial Operating SystemabstractAbstract Mutual exclusion and general synchronization of concurrent processes (‘tasks’) are well‐known principles for constructing reliable real‐time systems. This paper shows how to implement these principles under a typical commercial operating system which provides incomplete synchronization operations. The problem of synchronizing erroneous tasks is discussed briefly. Jørn Jensen, Søren Lauesen, Anders P. Ravn |
Softw. Pract. Exp. | 3 |