Rosario Pugliese

dblp:p/RosarioPugliese · DBLP profile ↗
← Back
57ranked-venue papers
2as first author
4since 2021 · last 2024
0000-0002-1419-1405ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 25 · 1 first-author · 3 since 2021Theory of computation · 21 · 1 first-authorSystems, architecture and hardware · 1Computer networks · 1Human-computer interaction and ubiquitous computing · 1Applied, interdisciplinary, general and emerging computing · 1 · 1 since 2021
YearPublicationVenuePosition
2024 Klaim in the Making
Lorenzo Bettini, Gian-Luigi Ferrari 0002, Michele Loreti, Rosario Pugliese, Francesco Tiezzi 0001, Emilio Tuosto
ISoLA (1)4
2024 A blockchain-based platform for incentivizing customer reviews in the grocery industry
abstract
Nowadays, user-generated content is pivotal for many companies: people trust other customers' opinions more than any brand advertisement. Brands are aware of this and try to promote and motivate their customers to create high-quality content. However, this way of operating is still at an early stage: there is a lack of fairness, as companies typically do not provide a validation system, or if they do, it is not based on a transparent solution, and often there is no reward for creating unique and high-quality content. In this paper, we focus on the problem of incentivizing the user's creation of content in the form of customer reviews in the online grocery industry. Specifically, we illustrate the solution to the problem devised in the Re-Taled project by relying on blockchain technology. We developed a decentralized ecosystem of consumers, influencers, and manufacturers, where content creators are rewarded for their contribution according to a framework that provides incentives in the form of both reputation and monetization. Blockchain technology is used to certify the content's authenticity and compensate content creators with a cryptographic token. We illustrate the technical choices of the solution together with its software architecture and implemented platform. In particular, we introduce the framework used to validate the trustworthiness of user-generated content and favor fairness and transparency within the platform.
Tania Bruno, Ettore Etenzi, Luca Gualandi, Eraldo Katra, Rosario Pugliese, Alessio Taranto, Francesco Tiezzi 0001
Blockchain Res. Appl.5
2023 Coordinating and programming multiple ROS-based robots with X-KLAIM
abstract
Abstract Software development for robotics applications is still a major challenge that becomes even more complex when considering multi-robot systems (MRSs). Such distributed software has to perform multiple cooperating tasks in a well-coordinated manner to avoid unsatisfactory emerging behavior. This paper provides an approach for programming MRSs at a high abstraction level using the programming language X-Klaim. The computation and communication model of X-Klaim, based on multiple distributed tuple spaces, permits coordinating with the same abstractions and mechanisms both intra- and inter-robot interactions of an MRS. This allows developers to focus on MRS behavior, achieving readable, reusable, and maintainable code. The proposed approach can be used in practice by integrating X-Klaim and the popular robotics framework ROS. We demonstrate the feasibility and effectiveness of our approach by (i) showing how it scales when implementing two warehouse scenarios allowing us to reuse most of the code when passing from the simpler to the more enriched scenario and (ii) presenting the results of a few experiments showing that our code introduces a slightly greater but acceptable latency and consumes less memory than the traditional ROS implementation based on Python code.
Lorenzo Bettini, Khalid Bourr, Rosario Pugliese, Francesco Tiezzi 0001
Int. J. Softw. Tools Technol. Transf.3
2022 Programming Multi-robot Systems with X-KLAIM
Lorenzo Bettini, Khalid Bourr, Rosario Pugliese, Francesco Tiezzi 0001
ISoLA (3)3
2020 Writing Robotics Applications with X-Klaim
Lorenzo Bettini, Khalid Bourr, Rosario Pugliese, Francesco Tiezzi 0001
ISoLA (2)3
2020 A formal approach to the engineering of domain-specific distributed systems
Rocco De Nicola, Gian-Luigi Ferrari 0002, Rosario Pugliese, Francesco Tiezzi 0001
J. Log. Algebraic Methods Program.3
2020 Replacement freeness: A criterion for separating process calculi
Rosario Pugliese, Francesco Tiezzi 0001
J. Log. Algebraic Methods Program.1
2020 Synthesis of Orchestrations and Choreographies: Bridging the Gap between Supervisory Control and Coordination of Services
abstract
We present a number of contributions to bridging the gap between supervisory control theory and coordination of services in order to explore the frontiers between coordination and control systems. Firstly, we modify the classical synthesis algorithm from supervisory control theory for obtaining the so-called most permissive controller in order to synthesise orchestrations and choreographies of service contracts formalised as contract automata. The key ingredient to make this possible is a novel notion of controllability. Then, we present an abstract parametric synthesis algorithm and show that it generalises the classical synthesis as well as the orchestration and choreography syntheses. Finally, through the novel abstract synthesis, we show that the concrete syntheses are in a refinement order. A running example from the service domain illustrates our contributions.
Davide Basile 0001, Maurice H. ter Beek, Rosario Pugliese
Log. Methods Comput. Sci.3
2019 Bridging the Gap Between Supervisory Control and Coordination of Services: Synthesis of Orchestrations and Choreographies
Davide Basile 0001, Maurice H. ter Beek, Rosario Pugliese
COORDINATION3
2019 A Rigorous Framework for Specification, Analysis and Enforcement of Access Control Policies
abstract
Access control systems are widely used means for the protection of computing systems. They are defined in terms of access control policies regulating the access to system resources. In this paper, we introduce a formally-defined, fully-implemented framework for specification, analysis and enforcement of attribute-based access control policies. The framework rests on FACPL, a language with a compact, yet expressive, syntax for specification of real-world access control policies and with a rigorously defined denotational semantics. The framework enables the automated verification of properties regarding both the authorisations enforced by single policies and the relationships among multiple policies. Effectiveness and performance of the analysis rely on a semantic-preserving representation of FACPL policies in terms of SMT formulae and on the use of efficient SMT solvers. Our analysis approach explicitly addresses some crucial aspects of policy evaluation, such as missing attributes, erroneous values and obligations, which are instead overlooked in other proposals. The framework is supported by Java-based tools, among which an Eclipse-based IDE offering a tailored development and analysis environment for FACPL policies and a Java library for policy enforcement. We illustrate the framework and its formal ingredients by means of an e-Health case study, while its effectiveness is assessed by means of performance stress tests and experiments on a well-established benchmark.
Andrea Margheri, Massimiliano Masi, Rosario Pugliese, Francesco Tiezzi 0001
IEEE Trans. Software Eng.3
2018 A Formal Approach to the Engineering of Domain-Specific Distributed Systems
Rocco De Nicola, Gian-Luigi Ferrari 0002, Rosario Pugliese, Francesco Tiezzi 0001
COORDINATION3
2017 Blind-date conversation joining
Luca Cesari, Rosario Pugliese, Francesco Tiezzi 0001
Serv. Oriented Comput. Appl.2
2016 Towards Static Analysis of Policy-Based Self-adaptive Computing Systems
Andrea Margheri, Hanne Riis Nielson, Flemming Nielson, Rosario Pugliese
ISoLA (1)4
2014 Self-expression and Dynamic Attribute-Based Ensembles in SCEL
Giacomo Cabri, Nicola Capodieci, Luca Cesari, Rocco De Nicola, Rosario Pugliese, Francesco Tiezzi 0001, Franco Zambonelli
ISoLA (1)5
2014 On Programming and Policing Autonomic Computing Systems
Michele Loreti, Andrea Margheri, Rosario Pugliese, Francesco Tiezzi 0001
ISoLA (1)3
2014 A Formal Approach to Autonomic Systems Programming: The SCEL Language
abstract
The autonomic computing paradigm has been proposed to cope with size, complexity, and dynamism of contemporary software-intensive systems. The challenge for language designers is to devise appropriate abstractions and linguistic primitives to deal with the large dimension of systems and with their need to adapt to the changes of the working environment and to the evolving requirements. We propose a set of programming abstractions that permit us to represent behaviors, knowledge, and aggregations according to specific policies and to support programming context-awareness, self-awareness, and adaptation. Based on these abstractions, we define SCEL (Software Component Ensemble Language), a kernel language whose solid semantic foundations lay also the basis for formal reasoning on autonomic systems behavior. To show expressiveness and effectiveness of SCEL;’s design, we present a Java implementation of the proposed abstractions and show how it can be exploited for programming a robotics scenario that is used as a running example for describing the features and potential of our approach.
Rocco De Nicola, Michele Loreti, Rosario Pugliese, Francesco Tiezzi 0001
ACM Trans. Auton. Adapt. Syst.3
2012 Towards a Formal Verification Methodology for Collective Robotic Systems
Edmond Gjondrekaj, Michele Loreti, Rosario Pugliese, Francesco Tiezzi 0001, Carlo Pinciroli, Manuele Brambilla, Mauro Birattari, Marco Dorigo
ICFEM3
2012 Using formal methods to develop WS-BPEL applications
Alessandro Lapadula, Rosario Pugliese, Francesco Tiezzi 0001
Sci. Comput. Program.2
2012 A logical verification methodology for service-oriented computing
abstract
We introduce a logical verification methodology for checking behavioral properties of service-oriented computing systems. Service properties are described by means of SocL, a branching-time temporal logic that we have specifically designed for expressing in an effective way distinctive aspects of services, such as, acceptance of a request, provision of a response, correlation among service requests and responses, etc. Our approach allows service properties to be expressed in such a way that they can be independent of service domains and specifications. We show an instantiation of our general methodology that uses the formal language COWS to conveniently specify services and the expressly developed software tool CMC to assist the user in the task of verifying SocL formulas over service specifications. We demonstrate the feasibility and effectiveness of our methodology by means of the specification and analysis of a case study in the automotive domain.
Alessandro Fantechi, Stefania Gnesi, Alessandro Lapadula, Franco Mazzanti, Rosario Pugliese, Francesco Tiezzi 0001
ACM Trans. Softw. Eng. Methodol.5
2011 A WSDL-based type system for asynchronous WS-BPEL processes
Alessandro Lapadula, Rosario Pugliese, Francesco Tiezzi 0001
Formal Methods Syst. Des.2
2011 An accessible verification environment for UML models of services
Federico Banti, Rosario Pugliese, Francesco Tiezzi 0001
J. Symb. Comput.2
2010 From Flow Logic to static type systems for coordination languages
Rocco De Nicola, Daniele Gorla, René Rydhof Hansen, Flemming Nielson, Hanne Riis Nielson, Christian W. Probst, Rosario Pugliese
Sci. Comput. Program.7
2009 On Observing Dynamic Prioritised Actions in SOC
Rosario Pugliese, Francesco Tiezzi 0001, Nobuko Yoshida
ICALP (2)1
2008 A Formal Account of WS-BPEL
Alessandro Lapadula, Rosario Pugliese, Francesco Tiezzi 0001
COORDINATION2
2008 From Flow Logic to Static Type Systems for Coordination Languages
Rocco De Nicola, Daniele Gorla, René Rydhof Hansen, Flemming Nielson, Hanne Riis Nielson, Christian W. Probst, Rosario Pugliese
COORDINATION7
2008 A Model Checking Approach for Verifying COWS Specifications
Alessandro Fantechi, Stefania Gnesi, Alessandro Lapadula, Franco Mazzanti, Rosario Pugliese, Francesco Tiezzi 0001
FASE5
2008 SensoriaPatterns: Augmenting Service Engineering with Formal Analysis, Transformation and Dynamicity
Martin Wirsing, Matthias M. Hölzl, Lucia Acciai, Federico Banti, Allan Clark, Alessandro Fantechi, Stephen Gilmore, Stefania Gnesi, László Gönczy, Nora Koch, Alessandro Lapadula, Philip Mayer, Franco Mazzanti, Rosario Pugliese, Andreas Schroeder 0001, Francesco Tiezzi 0001, Mirco Tribastone, Dániel Varró
ISoLA14
2007 A Calculus for Orchestration of Web Services
Alessandro Lapadula, Rosario Pugliese, Francesco Tiezzi 0001
ESOP2
2007 C-clock-WS: A Timed Service-Oriented Calculus
Alessandro Lapadula, Rosario Pugliese, Francesco Tiezzi 0001
ICTAC2
2007 Basic observables for a calculus for global computing
Rocco De Nicola, Daniele Gorla, Rosario Pugliese
Inf. Comput.3
2007 Global computing in a dynamic network of tuple spaces
Rocco De Nicola, Daniele Gorla, Rosario Pugliese
Sci. Comput. Program.3
2006 A WSDL-Based Type System for WS-BPEL
Alessandro Lapadula, Rosario Pugliese, Francesco Tiezzi 0001
COORDINATION2
2006 Assessing CS1 java skills: a three-year experience
abstract
We describe the approach that has been followed by the authors while teaching the CS1 laboratory course on Java programming at the University of Florence. In particular, we focus on the assessment method that has been utilized: by making use of specific software developed by the teachers themselves, the method allowed them to automatically obtain a preliminary evaluation of the students' performance, which could subsequently be analyzed and modified after a manual exploration of the students' work.
Pierluigi Crescenzi, Michele Loreti, Rosario Pugliese
ITiCSE3
2006 Confining data and processes in global computing applications
Rocco De Nicola, Daniele Gorla, Rosario Pugliese
Sci. Comput. Program.3
2006 On the expressive power of KLAIM-based calculi
Rocco De Nicola, Daniele Gorla, Rosario Pugliese
Theor. Comput. Sci.3
2005 A Process Calculus for QoS-Aware Applications
Rocco De Nicola, Gian-Luigi Ferrari 0002, Ugo Montanari, Rosario Pugliese, Emilio Tuosto
COORDINATION4
2005 Global Computing in a Dynamic Network of Tuple Spaces
Rocco De Nicola, Daniele Gorla, Rosario Pugliese
COORDINATION3
2005 Basic Observables for a Calculus for Global Computing
Rocco De Nicola, Daniele Gorla, Rosario Pugliese
ICALP3
2004 MetaKlaim: a type safe multi-stage language for global computing
abstract
This paper describes the design and semantics of METAKLAIM, which is a higher order distributed process calculus equipped with staging mechanisms. METAKLAIM integrates METAML (an extension of SML for multi-stage programming) and KLAIM (a Kernel Language for Agents Interaction and Mobility), to permit interleaving of meta-programming activities (such as assembly and linking of code fragments), dynamic checking of security policies at administrative boundaries and ‘traditional’ computational activities on a wide area network (such as remote communication and code mobility). METAKLAIM exploits a powerful type system (including polymorphic types á la system F) to deal with highly parameterised mobile components and to enforce security policies dynamically: types are metadata that are extracted from code at run-time and are used to express trustiness guarantees. The dynamic type checking ensures that the trustiness guarantees of wide area network applications are maintained whenever computations interoperate with potentially untrusted components.
Gian-Luigi Ferrari 0002, Eugenio Moggi, Rosario Pugliese
Math. Struct. Comput. Sci.3
2003 Resource Access and Mobility Control with Dynamic Privileges Acquisition
Daniele Gorla, Rosario Pugliese
ICALP2
2002 Trace and Testing Equivalence on Asynchronous Processes
Michele Boreale, Rocco De Nicola, Rosario Pugliese
Inf. Comput.3
2002 Klava: a Java package for distributed and mobile applications
abstract
Abstract Highly distributed networks have now become a common infrastructure for wide‐area distributed applications whose key design principle is network awareness, namely the ability to deal with dynamic changes of the network environment. Network‐aware computing has called for new programming languages that exploit the mobility paradigm as a basic interaction mechanism. In this paper we present the architecture of KLAVA, an experimental Java package for distributed applications and code mobility. We describe how KLAVA permits code mobility by relying on Java and present a few distributed applications that exploit mobile code programmed in KLAVA. Copyright © 2002 John Wiley & Sons, Ltd.
Lorenzo Bettini, Rocco De Nicola, Rosario Pugliese
Softw. Pract. Exp.3
2001 Proof Techniques for Cryptographic Processes
abstract
Contextual equivalences for cryptographic process calculi, like the spi-calculus, can be used to reason about correctness of protocols, but their definition suffers from quantification over all possible contexts. Here, we focus on two such equivalences, namely may-testing and barbed equivalence, and investigate tractable proof methods for them. To this aim, we design an enriched labelled transition system, where transitions are constrained by the knowledge the environment has of names and keys. The new transition system is then used to define a trace equivalence and a weak bisimulation equivalence that avoid quantification over contexts. Our main results are soundness and completeness of trace and weak bisimulation equivalence with respect to may-testing and barbed equivalence, respectively. They lead to more direct proof methods for equivalence checking. The use of these methods is illustrated with a few examples concerning implementation of secure channels and verification of protocol correctness.
Michele Boreale, Rocco De Nicola, Rosario Pugliese
SIAM J. Comput.3
2001 Divergence in testing and readiness semantics
Michele Boreale, Rocco De Nicola, Rosario Pugliese
Theor. Comput. Sci.3
2000 Programming Access Control: The KLAIM Experience
Rocco De Nicola, Gian-Luigi Ferrari 0002, Rosario Pugliese
CONCUR3
2000 Proving the Correctness of Optimising Destructive and Non-destructive Reads over Tuple Spaces
Rocco De Nicola, Rosario Pugliese, Antony I. T. Rowstron
COORDINATION2
2000 Process Algebraic Analysis of Cryptographic Protocols
Michele Boreale, Rocco De Nicola, Rosario Pugliese
FORTE3
2000 Types for access control
Rocco De Nicola, Gian-Luigi Ferrari 0002, Rosario Pugliese, Betti Venneri
Theor. Comput. Sci.3
2000 Linda-based applicative and imperative process algebras
Rocco De Nicola, Rosario Pugliese
Theor. Comput. Sci.2
1999 A Theory of "May" Testing for Asynchronous Languages
Michele Boreale, Rocco De Nicola, Rosario Pugliese
FoSSaCS3
1999 Proof Techniques for Cryptographic Processes
abstract
Contextual equivalences for cryptographic process calculi can be used to reason about correctness of protocols, but their definition suffers from quantification over all possible contexts. Here, we focus on two such equivalences, may-testing and barbed equivalence, and investigate tractable proof methods for them. To this aim, we develop an 'environment-sensitive' labelled transition system, where transitions are constrained by the knowledge the environment has of names and keys. On top of the new transition system, a trace equivalence and a co-inductive weak bisimulation equivalence are defined, both of which avoid quantification over contexts. Our main results are soundness of trace semantics and of weak bisimulation with respect to may-testing and barbed equivalence, respectively. This leads to more direct proof methods for equivalence checking. The use of such methods is illustrated via a few examples concerning implementation of secure channels by means of encrypted public channels. We also consider a variant of the labelled transition system that gives completeness, but is less handy to use.
Michele Boreale, Rocco De Nicola, Rosario Pugliese
LICS3
1999 Basic Observables for Processes
Michele Boreale, Rocco De Nicola, Rosario Pugliese
Inf. Comput.3
1998 Asynchronous Observations of Processes
Michele Boreale, Rocco De Nicola, Rosario Pugliese
FoSSaCS3
1998 KLAIM: A Kernel Language for Agents Interaction and Mobility
abstract
We investigate the issue of designing a kernel programming language for mobile computing and describe KLAIM, a language that supports a programming paradigm where processes, like data, can be moved from one computing environment to another. The language consists of a core Linda with multiple tuple spaces and of a set of operators for building processes. KLAIM naturally supports programming with explicit localities. Localities are first-class data (they can be manipulated like any other data), but the language provides coordination mechanisms to control the interaction protocols among located processes. The formal operational semantics is useful for discussing the design of the language and provides guidelines for implementations. KLAIM is equipped with a type system that statically checks access right violations of mobile agents. Types are used to describe the intentions (read, write, execute, etc.) of processes in relation to the various localities. The type system is used to determine the operations that processes want to perform at each locality, and to check whether they comply with the declared intentions and whether they have the necessary rights to perform the intended operations at the specific localities. Via a series of examples, we show that many mobile code programming paradigms can be naturally implemented in our kernel language. We also present a prototype implementation of KLAIM in Java.
Rocco De Nicola, Gian-Luigi Ferrari 0002, Rosario Pugliese
IEEE Trans. Software Eng.3
1997 Coordinating Mobile Agents via Blackboards and Access Rights
Rocco De Nicola, Gian-Luigi Ferrari 0002, Rosario Pugliese
COORDINATION3
1997 Basic Observables for Processes
Michele Boreale, Rocco De Nicola, Rosario Pugliese
ICALP3
1996 A Process Algebra Based on LINDA
Rocco De Nicola, Rosario Pugliese
COORDINATION2