Leandro Sales Pinto

dblp:07/9657 · also Leandro Sales 0001 · DBLP profile ↗
← Back
11ranked-venue papers
6as first author
0since 2021 · last 2014
—ORCID · none

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

Software engineering, systems software and programming languages · 10 · 5 first-authorApplied, interdisciplinary, general and emerging computing · 1 · 1 first-author

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
6 papers
Services computing and microservices · 46% Software testing · 27% Requirements engineering and software design · 22%

Topics — the 13 heaviest of 14, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Software testing
test repair
0.322013
TestEvol: a tool for analyzing test-suite evolution · ICSE 2013
Understanding myths and realities of test-suite evolution · SIGSOFT FSE 2012
Software testing › test maintenance
test suite evolution
0.322013
TestEvol: a tool for analyzing test-suite evolution · ICSE 2013
Understanding myths and realities of test-suite evolution · SIGSOFT FSE 2012
Services computing and microservices › service composition
declarative service composition
0.322012
SelfMotion: a declarative language for adaptive service-oriented mobile apps · SIGSOFT FSE 2012
A declarative approach to enable flexible and dynamic service compositions · ICSE 2011
Services computing and microservices
service orchestration
0.322012
Writing dynamic service orchestrations with DSOL · ICSE 2012
A declarative approach to enable flexible and dynamic service compositions · ICSE 2011
Requirements engineering and software design
non-functional requirements
0.212013
Managing non-functional uncertainty via model-driven adaptivity · ICSE 2013
Requirements engineering and software design › software architecture
self-adaptive systems
0.212013
Managing non-functional uncertainty via model-driven adaptivity · ICSE 2013
Requirements engineering and software design
software architecture
0.212013
Managing non-functional uncertainty via model-driven adaptivity · ICSE 2013
Services computing and microservices › service composition
dynamic service composition
0.112012
Writing dynamic service orchestrations with DSOL · ICSE 2012
Services computing and microservices
service composition
0.112012
SelfMotion: a declarative language for adaptive service-oriented mobile apps · SIGSOFT FSE 2012
Program verification › model checking
probabilistic model checking
0.012013
Managing non-functional uncertainty via model-driven adaptivity · ICSE 2013
Software maintenance and evolution › software evolution
software evolution analysis
0.012013
TestEvol: a tool for analyzing test-suite evolution · ICSE 2013
Empirical software engineering
mining software repositories
0.012012
Understanding myths and realities of test-suite evolution · SIGSOFT FSE 2012
Services computing and microservices
service-oriented architecture
0.012011
A declarative approach to enable flexible and dynamic service compositions · ICSE 2011

Methods — techniques the papers use, named apart from their topics

repository mining · 0.2probabilistic automaton · 0.2model-driven engineering · 0.2workflow language design · 0.1tool implementation · 0.1empirical study · 0.1domain-specific language · 0.1declarative language design · 0.1
YearPublicationVenuePosition
2014 SelfMotion: A declarative approach for adaptive service-oriented mobile applications
Gianpaolo Cugola, Carlo Ghezzi, Leandro Sales Pinto, Giordano Tamburrelli
J. Syst. Softw.3
2013 Managing non-functional uncertainty via model-driven adaptivity
abstract
Modern software systems are often characterized by uncertainty and changes in the environment in which they are embedded. Hence, they must be designed as adaptive systems. We propose a framework that supports adaptation to non-functional manifestations of uncertainty. Our framework allows engineers to derive, from an initial model of the system, a finite state automaton augmented with probabilities. The system is then executed by an interpreter that navigates the automaton and invokes the component implementations associated to the states it traverses. The interpreter adapts the execution by choosing among alternative possible paths of the automaton in order to maximize the system's ability to meet its non-functional requirements. To demonstrate the adaptation capabilities of the proposed approach we implemented an adaptive application inspired by an existing worldwide distributed mobile application and we discussed several adaptation scenarios.
Carlo Ghezzi, Leandro Sales Pinto, Paola Spoletini, Giordano Tamburrelli
ICSE2
2013 TestEvol: a tool for analyzing test-suite evolution
abstract
Test suites, just like the applications they are testing, evolve throughout their lifetime. One of the main reasons for test-suite evolution is test obsolescence: test cases cease to work because of changes in the code and must be suitably repaired. There are several reasons why it is important to achieve a thorough understanding of how test cases evolve in practice. In particular, researchers who investigate automated test repair - an increasingly active research area - can use such understanding to develop more effective repair techniques that can be successfully applied in real-world scenarios. More generally, analyzing testsuite evolution can help testers better understand how test cases are modified during maintenance and improve the test evolution process, an extremely time consuming activity for any nontrivial test suite. Unfortunately, there are no existing tools that facilitate investigation of test evolution. To tackle this problem, we developed TestEvol, a tool that enables the systematic study of test-suite evolution for Java programs and JUnit test cases. This demonstration presents TestEvol and illustrates its usefulness and practical applicability by showing how TestEvol can be successfully used on real-world software and test suites. Demo video at http://www.cc.gatech.edu/~orso/software/testevol/.
Leandro Sales Pinto, Saurabh Sinha 0003, Alessandro Orso
ICSE1
2012 Writing dynamic service orchestrations with DSOL
abstract
We present the workflow language DSOL, its runtime system and the tools available to support the development of dynamic service orchestrations. DSOL aims at supporting dynamic, self-managed service compositions that can adapt to changes occurring at runtime.
Leandro Sales Pinto, Gianpaolo Cugola, Carlo Ghezzi
ICSE1
2012 Adaptive Service-Oriented Mobile Applications: A Declarative Approach
Gianpaolo Cugola, Carlo Ghezzi, Leandro Sales Pinto, Giordano Tamburrelli
ICSOC3
2012 QoS-Aware Adaptive Service Orchestrations
abstract
Service Oriented Computing enables distributed applications that orchestrate existing services exported by remote providers. This paradigm requires to explicitly handle possible changes that may affect the orchestration. They include changes that impact its functional behavior (e.g., services being retired by their providers), but also changes in the non-functional behavior of the orchestrated services (e.g., an increased execution time). In the past we developed DSOL: it combines a declarative language to model the orchestration with planning mechanisms to decide at run-time the best flow of actions. In this paper we extend DSOL to support QoS attributes and requirements. In particular, we combine the DSOL planning techniques with a linear optimizer to calculate the optimal plan w.r.t. the QoS requirements. Moreover, we leverage the DSOL ability to adapt the orchestration flow at run-time, to further optimize the QoS perceived by the end users depending on the actual situations encountered.
Gianpaolo Cugola, Leandro Sales Pinto, Giordano Tamburrelli
ICWS2
2012 SelfMotion: a declarative language for adaptive service-oriented mobile apps
abstract
In this demo we present SelfMotion: a declarative language and a run-time system conceived to support the development of adaptive, mobile applications, built as compositions of ad-hoc components, existing services and third party applications. The advantages of the approach and the adaptive capabilities of SelfMotion are demonstrated in the demo by designing and executing a mobile application inspired by an existing, worldwide distributed, mobile application.
Gianpaolo Cugola, Carlo Ghezzi, Leandro Sales Pinto, Giordano Tamburrelli
SIGSOFT FSE3
2012 Understanding myths and realities of test-suite evolution
abstract
Test suites, once created, rarely remain static. Just like the application they are testing, they evolve throughout their lifetime. Test obsolescence is probably the most known reason for test-suite evolution---test cases cease to work because of changes in the code and must be suitably repaired. Repairing existing test cases manually, however, can be extremely time consuming, especially for large test suites, which has motivated the recent development of automated test-repair techniques. We believe that, for developing effective repair techniques that are applicable in real-world scenarios, a fundamental prerequisite is a thorough understanding of how test cases evolve in practice. Without such knowledge, we risk to develop techniques that may work well for only a small number of tests or, worse, that may not work at all in most realistic cases. Unfortunately, to date there are no studies in the literature that investigate how test suites evolve. To tackle this problem, in this paper we present a technique for studying test-suite evolution, a tool that implements the technique, and an extensive empirical study in which we used our technique to study many versions of six real-world programs and their unit test suites. This is the first study of this kind, and our results reveal several interesting aspects of test-suite evolution. In particular, our findings show that test repair is just one possible reason for test-suite evolution, whereas most changes involve refactorings, deletions, and additions of test cases. Our results also show that test modifications tend to involve complex, and hard-to-automate, changes to test cases, and that existing test-repair techniques that focus exclusively on assertions may have limited practical applicability. More generally, our findings provide initial insight on how test cases are added, removed, and modified in practice, and can guide future research efforts in the area of test-suite evolution.
Leandro Sales Pinto, Saurabh Sinha 0003, Alessandro Orso
SIGSOFT FSE1
2011 A declarative approach to enable flexible and dynamic service compositions
abstract
Service Oriented Architecture (SOA) is considered the best solution to develop distributed applications that compose existing services to provide new added-value services for their users. However, we claim that the fully potential of SOA is still to be reached and it is our belief that this is caused by the same tools used to build service orchestrations. To overcome this situation we are developing a new declarative language for service orchestration, enhanced with an innovative runtime system which simplifies the development of flexible and robust service compositions.
Leandro Sales Pinto
ICSE1
2010 G2CL: A Generic Group Communication Layer for Clustered Applications
Leandro Sales Pinto, Henrique Teofilo, Nabor das Chagas Mendonça
DAIS1
2009 Performance Impact Analysis of Two Generic Group Communication APIs
abstract
This paper presents an analysis of the performance impact of two generic group communication APIs, namely Hedera and jGCS. The analysis was carried out in a four-node cluster by comparing the performance of different configurations of two well-known group communication middleware systems (i.e., JGroups and Spread), under different message sizes, both in standalone mode and when used as plug-ins for the two generic APIs. The results show that there are significant variations in the performance overhead imposed by each generic API on both JGroups and Spread, and that those differences are strongly related to variations in message size and the way each generic API is implemented. The paper also discusses whether it would be worth migrating from a standalone group communication implementation to a generic API.
Leandro Sales Pinto, Henrique Teofilo, Jonathan D'Orleans, Nabor das Chagas Mendonça, Rafael G. Barbosa, Fernando A. M. Trinta
COMPSAC (2)1