2017
Authors
Cunha, A; Kindler, E;
Publication
Journal of Object Technology
Abstract
2017
Authors
Maia, F;
Publication
13th European Dependable Computing Conference, EDCC 2017, Geneva, Switzerland, September 4-8, 2017
Abstract
2017
Authors
Halder, R; Proenca, J; Macedo, N; Santos, A;
Publication
2017 IEEE/ACM 5TH INTERNATIONAL FME WORKSHOP ON FORMAL METHODS IN SOFTWARE ENGINEERING (FORMALISE) PROCEEDINGS
Abstract
Robotic technologies are continuously transforming the domestic and the industrial environments. Recently the Robotic Operating System (ROS), has been widely adopted both by industry and academia, becoming one of the most popular middleware frameworks for developing robot applications. Guaranteeing the correct behaviour of robotic systems is, however, challenging due to their potential for parameterization and heterogeneity. Although different approaches exist, focusing on concrete domain spaces for specific scenarios, no general approach to reason about ROS systems has yet arisen. This paper proposes an approach to model and verify ROS systems using real time properties, focusing on one of the main features of ROS, the communication between nodes. It takes low-level parameters into account, such as queue sizes and timeouts, and uses timed automata as the modelling language. The robot Kobuki is used as a complex case study, over which properties are automatically verified using the UPPAAL model checker, enabling the identification of problematic parameter combinations.
2017
Authors
Galster, M; Weyns, D; Goedicke, M; Zdun, U; Cunha, J; Chavarriaga, J;
Publication
ACM SIGSOFT Software Engineering Notes
Abstract
2017
Authors
Campinhos, J; Seco, JC; Cunha, J;
Publication
2nd IEEE/ACM International Workshop on Variability and Complexity in Software Design, VACE@ICSE 2017, Buenos Aires, Argentina, May 27, 2017
Abstract
Applications based on micro or web services have had significant growth due to the exponential increase in the use of mobile devices. However, using such kind of loosely coupled interfaces provides almost no guarantees to the developer in terms of evolution. Changes to service interfaces can be introduced at any moment, which may cause the system to fail due to mismatches between communicating parts. In this paper, we present a programming model that allows the development of web service applications, server end-points and their clients, in such a way that the evolution of services' implementation does not cause the disruption of the client. Our approach is based on a type based code slicing technique that ensures that each version only refers to type compatible code, of the same version or of a compatible version, and that each client request is redirected to the most recent type compatible version implemented by the server. We abstract the notion of version and parametrize type compatibility on the relation between versions. The relation between versions is tagged with compatibility levels, so to capture the common conventions used in software development. Our implementation allows multiple versions of a service to be deployed simultaneously, while reusing code between versions in a type safe way. We describe a prototype framework, based on code transformation, for server-side JavaScript code, and using Flow as verification tool. © 2017 IEEE.
2017
Authors
Cunha, J; Fernandes, JP; Lämmel, R; Saraiva, J; Zaytsev, V;
Publication
Lecture Notes in Computer Science
Abstract
The access to the final selection minute is only available to applicants.
Please check the confirmation e-mail of your application to obtain the access code.