Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Marco Bernardo is active.

Publication


Featured researches published by Marco Bernardo.


Theoretical Computer Science | 1998

A tutorial on EMPA: a theory of concurrent processes with nondeterminism, priorities, probabilities and time

Marco Bernardo; Roberto Gorrieri

We give an overview of EMPA, a process algebra for modeling and analyzing concurrent systems where nondeterminism, priorities, probabilities and time are present, aiming at a reasonable trade off between the expressive power of the calculus and the complexity of its underlying theory.


ACM Transactions on Software Engineering and Methodology | 2002

Architecting families of software systems with process algebras

Marco Bernardo; Paolo Ciancarini; Lorenzo Donatiello

Software components can give rise to several kinds of architectural mismatches when assembled together in order to form a software system. A formal description of the architecture of the resulting component-based software system may help to detect such architectural mismatches and to single out the components that cause the mismatches. In this article, we concentrate on deadlock-related architectural mismatches arising from three different causes that we identify: incompatibility between two components due to a single interaction, incompatibility between two components due to the combination of several interactions, and lack of interoperability among a set of components forming a cyclic topology. We develop a process algebra-based architectural description language called PADL, which deals with all three causes through an architectural compatibility check and an architectural interoperability check relying on standard observational equivalences. The adequacy of the architectural compatibility check is assessed on a compressing proxy system, while the adequacy of the architectural interoperability check is assessed on a cruise control system. We then address the issue of scaling the architectural compatibility and interoperability checks to architectural styles through an extension of PADL. The formalization of an architectural style is complicated by the presence of two degrees of freedom within the set of instances of the style: variability of the internal behavior of the components and variability of the topology formed by the components. As a first step towards the solution of the problem, we propose an intermediate abstraction called architectural type, whose instances differ only for the internal behavior of their components. We define an efficient architectural conformity check based on a standard observational equivalence to verify whether an architecture is an instance of an architectural type. We show that all the architectures conforming to the same architectural type possess the same compatibility and interoperability properties.


international conference on concurrency theory | 1996

Extended Markovian Process Algebra

Marco Bernardo; Roberto Gorrieri

EMPA enhances the expressiveness of classical process algebras by integrating functional and performance descriptions of concurrent systems. This is achieved by offering, besides passive actions (useful for pure nondeterminism), actions whose duration is exponentially distributed as well as immediate actions (useful for performance abstraction), parametrized by priority levels (hence prioritized choices) and weights (hence probabilistic choices). In order to analyze an EMPA term, from its integrated semantic model (a transition system labeled on both action types and action durations) we derive a functional semantic model (a transition system labeled on action types only) and a performance semantic model (a Markov chain). We show that an integrated analysis, i.e. a notion of equivalence on the integrated semantic model, is not only convenient but also necessary to achieve compositionality.


Theoretical Computer Science | 2003

Performance measure sensitive congruences for Markovian process algebras

Marco Bernardo; Mario Bravetti

The modeling and analysis experience with process algebras has shown the necessity of extending them with priority, probabilistic internal/external choice, and time while preserving compositionality. The purpose of this paper is to make a further step by introducing a way to express performance measures, in order to allow the modeler to capture the QoS metrics of interest. We show that the standard technique of expressing stationary and transient performance measures as weighted sums of state probabilities and transition frequencies can be imported in the process algebra framework. Technically speaking, if we denote by n ∈ N the number of performance measures of interest, in this paper we define a family of extended Markovian process algebras with generative master-reactive slaves synchronization mechanism called EMPAgrn including probabilities, priorities, exponentially distributed durations, and sequences of rewards of length n. Then we show that the Markovian bisimulation equivalence ∼MBn is a congruence for EMPAgrn which preserves the specified performance measures and we give a sound and complete axiomatization for finite EMPAgrn terms. Finally, we present a case study conducted with the software tool Two Towers in which we contrast the average performance of a selection of distributed algorithms for mutual exclusion modeled with EMPAgrn.


Archive | 2009

A Process Algebraic Approach to Software Architecture Design

Alessandro Aldini; Marco Bernardo; Flavio Corradini

Inthe?eldofformalmethodsincomputerscience,concurrencytheoryisreceivinga constantlyincreasinginterest.Thisisespeciallytrueforprocessalgebra.Althoughit had been originally conceived as a means for reasoning about the semantics of c- current programs, process algebraic formalisms like CCS, CSP, ACP, ?-calculus, and their extensions (see, e.g., [154,119,112,22,155,181,30]) were soon used also for comprehendingfunctionaland nonfunctionalaspects of the behaviorof com- nicating concurrent systems. The scienti?c impact of process calculi and behavioral equivalences at the base of process algebra is witnessed not only by a very rich literature. It is in fact worth mentioningthe standardizationprocedurethat led to the developmentof the process algebraic language LOTOS [49], as well as the implementation of several modeling and analysis tools based on process algebra, like CWB [70] and CADP [93], some of which have been used in industrial case studies. Furthermore, process calculi and behavioral equivalencesare by now adopted in university-levelcourses to teach the foundations of concurrent programming as well as the model-driven design of concurrent, distributed, and mobile systems. Nevertheless, after 30 years since its introduction, process algebra is rarely adopted in the practice of software development. On the one hand, its technica- ties often obfuscate the way in which systems are modeled. As an example, if a process term comprises numerous occurrences of the parallel composition operator, it is hard to understand the communicationscheme among the varioussubterms. On the other hand, process algebra is perceived as being dif?cult to learn and use by practitioners, as it is not close enough to the way they think of software systems.


formal techniques for networked and distributed systems | 1998

TwoTowers: A Tool Integrating Functional and Performance Analysis of Concurrent Systems

Marco Bernardo; Rance Cleaveland; Steve Sims; W. Stewart

We present TwoTowers, a tool for analyzing functional and performance properties of concurrent systems expressed as terms in the stochastically timed reward process algebra EMPAr. TwoTowers builds on two existing tools, CWB-NC and MarCA, that have been retargeted to carry out functional and performance analysis (respectively) of EMPAr, system specifications. As an example, we describe the application of TwoTowers to the Lehmann-Rabin randomized distributed algorithm for the dining philosopher problem.


international conference on concurrency theory | 1998

Towards Performance Evaluation with General Distributions in Process Algebras

Mario Bravetti; Marco Bernardo; Roberto Gorrieri

We present a process algebra for the performance modeling and evaluation of concurrent systems whose activity durations are expressed through general probability distributions. We first determine the class of generalized semi-Markov processes (GSMPs) as being the class of stochastic processes on which we must rely for performance evaluation to be possible. Then we argue that in this context the right semantics for algebraic terms is a variant of the ST semantics which accounts for both functional and performance aspects. The GSMP based process algebra we propose is introduced together with its formal semantics, an example of performance evaluation, and a notion of probabilistic bisimulation based equivalence accounting for action durations which is shown to be a congruence.


foundations of software engineering | 2000

On the formalization of architectural types with process algebras

Marco Bernardo; Paolo Ciancarini; Lorenzo Donatiello

Architectural styles play an important role in software engineering as they convey codified principles and experience which help the construction of software systems with high levels of efficiency and confidence. We address the problem of formalizing and analyzing architectural styles in an operational setting by introducing the intermediate abstraction of architectural type. We develop the concept of architectural type in a process algebraic framework because of its modeling adequacy and the availability of means, such as Milners weak bisimulation equivalence, which allow us to reason compositionally and efficiently about the well formedness of architectural types.


international symposium on computer modeling, measurement and evaluation | 2002

Stochastic Process Algebra: From an Algebraic Formalism to an Architectural Description Language

Marco Bernardo; Lorenzo Donatiello; Paolo Ciancarini

The objective of this tutorial is to describe the evolution of the field of stochastic process algebra in the past decade, through a presentation of the main achievements in the field. In particular, the tutorial stresses the current transformation of stochastic process algebra from a simple formalism to a fully fledged architectural description language for the functional verification and performance evaluation of complex computer, communication and software systems.


Information & Computation | 1998

A formal approach to the integration of performance aspects in the modeling and analysis of concurrent systems

Marco Bernardo; Lorenzo Donatiello; Roberto Gorrieri

A formal approach for modeling and analyzing concurrent systems is proposed which integrates performance characteristics in the early stages of the design process. The approach relies on both stochastically timed process algebras and stochastically timed Petri nets in order to exploit their complementary advantages. The approach is instantiated to the case of EMPA (extended Markovian process algebra), introduced together with the collection of its four semantics and the notion of equivalence that are required in order to implement the approach. Finally, the case study of the alternating bit protocol is presented to illustrate the adequacy of the approach.

Collaboration


Dive into the Marco Bernardo's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Rocco De Nicola

IMT Institute for Advanced Studies Lucca

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge