2017
Authors
Queirós, R; Simões, A;
Publication
6th Symposium on Languages, Applications and Technologies, SLATE 2017, June 26-27, 2017, Vila do Conde, Portugal
Abstract
Nowadays, we continue to write redundant code which can often be reused from the Web. Reusing programming tasks is beneficial since it speeds up the process of creating applications and reduces the errors related with the task creation from scratch. At the same time, the demands of our applications are increasing, leading to a simple problem having to be solved through several tasks. With the advent of the cloud, there are countless Web services that proliferate on the Web. One solution for developers is to use these Web Services. However, the process of mastering and coordinating all these services manually is time-consuming and error-prone. This paper presents SOS, a Simple Orchestration of Services. The ultimate goal of this tool is to act as a service composer while promoting the separation of concerns for two typical actors in this realm: the developer and the business analyst. The developer must define a service as a SOS task based on a JSON schema and submit it in a Web specialized editor. The business analyst uses the SOS editor, in an interactive way, to chain the required tasks to solve a specific problem. Then, the developer, uses a a simple client API – a SOS engine wrapper – to load a SOS manifest and to iterate over all tasks, without the need to dominate any bureaucratic aspects related with HTTP clients and messages. As a case study, several tasks are instantiated and aggregated in order to generate a composite service for a mobile app whose goal is to give an translated description of a picture taken with a mobile phone. © Ricardo Queirós and Alberto Simões
2017
Authors
Devezas, J; Nunes, S;
Publication
ERCIM NEWS
Abstract
In an information society, people expect to find answers to their questions quickly and with little effort. Sometimes, these answers are locked within textual documents, which often require a manual analysis, after being retrieved from the web using search engines. At FEUP InfoLab, we are researching graph-based models to index combined data (text and knowledge), with the goal of improving entity-oriented search effectiveness.
2017
Authors
Almeida, PS; Baquero, C; Farach Colton, M; Jesus, P; Mosteiro, MA;
Publication
DISTRIBUTED COMPUTING
Abstract
Flow-Updating (FU) is a fault-tolerant technique that has proved to be efficient in practice for the distributed computation of aggregate functions in communication networks where individual processors do not have access to global information. Previous distributed aggregation protocols, based on repeated sharing of input values (or mass) among processors, sometimes called Mass-Distribution (MD) protocols, are not resilient to communication failures (or message loss) because such failures yield a loss of mass. In this paper, we present a protocol which we call Mass-Distribution with Flow-Updating (MDFU). We obtain MDFU by applying FU techniques to classic MD. We analyze the convergence time of MDFU showing that stochastic message loss produces low overhead. This is the first convergence proof of an FU-based algorithm. We evaluate MDFU experimentally, comparing it with previous MD and FU protocols, and verifying the behavior predicted by the analysis. Finally, given that MDFU incurs a fixed deviation proportional to the message-loss rate, we adjust the accuracy of MDFU heuristically in a new protocol called MDFU with Linear Prediction (MDFU-LP). The evaluation shows that both MDFU and MDFU-LP behave very well in practice, even under high rates of message loss and even changing the input values dynamically.
2017
Authors
Restivo, A; Aguiar, A; Moreira, A;
Publication
SOFTWARE TECHNOLOGIES
Abstract
Breaking down applications into smaller modules is a common way for software developers to cope with the increasing complexity of their projects. A common barrier to this endeavor is the presence of crosscutting concerns that prevent reusability and reduce comprehensibility. The promise of AOP (Aspect-Oriented Programming) is that, by using it, developers will be able to organize these crosscutting concerns into their own units of modularity. However, AOP does not tackle the problem of having tangled automatic tests. This paper presents a technique using incremental testing and invasive aspects to modify and adapt tests, enabling the development of unit tests that are free of crosscutting concerns and thus easier to reuse. Using a medium scale project, we will show that without using this technique, due to the presence of invasive aspects, some unit tests would have to be discarded or modified to accommodate the changes made by them.
2017
Authors
Macedo, N; Cunha, A; Pessoa, E;
Publication
Automated Technology for Verification and Analysis - 15th International Symposium, ATVA 2017, Pune, India, October 3-6, 2017, Proceedings
Abstract
The advancement of constraint solvers and model checkers has enabled the effective analysis of high-level formal specification languages. However, these typically handle a specification in an opaque manner, amalgamating all its constraints in a single monolithic verification task, which often proves to be a performance bottleneck. This paper addresses this issue by proposing a solving strategy that exploits user-provided partial knowledge, namely by assigning symbolic bounds to the problem’s variables, to automatically decompose a verification task into smaller ones, which are prone to being independently analyzed in parallel and with tighter search spaces. An effective implementation of the technique is provided as an extension to the Kodkod relational constraint solver. Evaluation shows that, in average, the proposed technique outperforms the regular amalgamated verification procedure. © Springer International Publishing AG 2017.
2017
Authors
Muñoz, I; Garatea, J; Garatea, J; Muñoz, I; Ala, S; Cardoso, F; Paredes, H; Gelautz, M; Seitner, F; Kapeller, C; Brosch, N; Frydrychova, Z; Buresova, I; Bartosova, K; Huteckova, S; Huteckova, S; Buresová, I; Bartosova, K; Frydrychova, Z; Pires, M; Santos, V; Almeida, L; Santos, V; Neiva, H; Marques, M; Travassos, B; Marinho, D; Gil, MH; Marques, MC; Neiva, HP; Sousa, AC; Marinho, DA; Sousa, AC; Travassos, BF; Gil, MH; Neiva, HP; Marinho, DA; Marques, MC; Rocha, T; Reis, A; Paredes, H; Barroso, J; Saffoury, R; Blank, P; Sessner, J; Groh, B; Martindale, C; Dorschky, E; Franke, J; Eskofier, B; Barros, G; Melo, F; Oliveira, R; Borges, J; Reis, A; Santos, V; Barroso, J; Reis, A; Paulino, D; Paredes, H; Filipe, V; Barroso, J; Reis, A; Santos, V; Paredes, H; Filipe, V; Barroso, J; Ribeiro, J; Reis, A; Justino, E; Santos, V; Reis, A; Barroso, J; Amorim, V; Filipe, V; Paulino, D; Reis, A; Paredes, H; Barroso, J;
Publication
BMC SPORTS SCIENCE MEDICINE AND REHABILITATION
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.