Miguel Correia

DC
h-index42
4papers
645citations
Novelty45%
AI Score26

4 Papers

1.2DCJul 31, 2022
Learning to generate Reliable Broadcast Algorithms

Diogo Vaz, David R. Matos, Miguel L. Pardal et al.

Modern distributed systems are supported by fault-tolerant algorithms, like Reliable Broadcast and Consensus, that assure the correct operation of the system even when some of the nodes of the system fail. However, the development of distributed algorithms is a manual and complex process, resulting in scientific papers that usually present a single algorithm or variations of existing ones. To automate the process of developing such algorithms, this work presents an intelligent agent that uses Reinforcement Learning to generate correct and efficient fault-tolerant distributed algorithms. We show that our approach is able to generate correct fault-tolerant Reliable Broadcast algorithms with the same performance of others available in the literature, in only 12,000 learning episodes.

5.3SENov 29, 2020
A Survey on Business Process View Integration

Rafael Belchior, Sérgio Guerreiro, André Vasconcelos et al.

The complexity of a business environment often causes organizations to produce several inconsistent views on the same business process, leading to fragmentation and inefficiencies. Business process view integration attempts to produce an integrated view from different views of the same model, facilitating the management of models. To study trends around business process view integration, we conduct a systematic literature review to summarize findings since the 1970s, up to its potential novel applications. With a starting corpus of 798 documents, this survey draws up a systematic inventory of solutions used in academia and in the industry. By narrowing it down to 51 articles, we discuss in-depth 15 business process integration techniques papers. After that, we classify existing solutions according to their practicality. Our study shows that most integrated views are constructed by annotation, using formal merging rules. Finally, we explore possible future research directions. We highlight the application of view integration to the blockchain research area, where stakeholders can have different views on the same blockchain. We expect that this study contributes to interdisciplinary research across view integration.

17.8DCMay 28, 2020
A Survey on Blockchain Interoperability: Past, Present, and Future Trends

Rafael Belchior, André Vasconcelos, Sérgio Guerreiro et al.

Blockchain interoperability is emerging as one of the crucial features of blockchain technology, but the knowledge necessary for achieving it is fragmented. This fact makes it challenging for academics and the industry to seamlessly achieve interoperability among blockchains. Given the novelty and potential of this new domain, we conduct a literature review on blockchain interoperability, by collecting 262 papers, and 70 grey literature documents, constituting a corpus of 332 documents. From those 332 documents, we systematically analyzed and discussed 80 documents, including both peer-reviewed papers and grey literature. Our review classifies studies in three categories: Cryptocurrency-directed interoperability approaches, Blockchain Engines, and Blockchain Connectors. Each category is further divided into sub-categories based on defined criteria. We discuss not only studies within each category and subcategory but also across categories, providing a holistic overview of blockchain interoperability, paving the way for systematic research in this domain. Our findings show that blockchain interoperability has a much broader spectrum than cryptocurrencies. The present survey leverages an interesting approach: we systematically contacted the authors of grey literature papers and industry solutions to obtain an updated view of their work. Finally, this paper discusses supporting technologies, standards, use cases, open challenges, and provides several future research directions.

4.9CROct 12, 2019
Statically Detecting Vulnerabilities by Processing Programming Languages as Natural Languages

Ibéria Medeiros, Nuno Neves, Miguel Correia

Web applications continue to be a favorite target for hackers due to a combination of wide adoption and rapid deployment cycles, which often lead to the introduction of high impact vulnerabilities. Static analysis tools are important to search for bugs automatically in the program source code, supporting developers on their removal. However, building these tools requires programming the knowledge on how to discover the vulnerabilities. This paper presents an alternative approach in which tools learn to detect flaws automatically by resorting to artificial intelligence concepts, more concretely to natural language processing. The approach employs a sequence model to learn to characterize vulnerabilities based on an annotated corpus. Afterwards, the model is utilized to discover and identify vulnerabilities in the source code. It was implemented in the DEKANT tool and evaluated experimentally with a large set of PHP applications and WordPress plugins. Overall, we found several hundred vulnerabilities belonging to 12 classes of input validation vulnerabilities, where 62 of them were zero-day.