Bruno Cabral 0001

dblp:12/337-1 · also Bruno Miguel Brás Cabral · DBLP profile ↗
← Back
23ranked-venue papers
4as first author
6since 2021 · last 2026
0000-0001-9699-1133ORCID · verified

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

Software engineering, systems software and programming languages · 9 · 4 first-author · 3 since 2021Artificial intelligence and machine learning · 5 · 2 since 2021Applied, interdisciplinary, general and emerging computing · 5 · 1 since 2021Databases, data management, data science and information retrieval · 3 · 2 since 2021Systems, architecture and hardware · 2Security and privacy · 2 · 1 first-author · 1 since 2021Human-computer interaction and ubiquitous computing · 1Theory of computation · 1
YearPublicationVenuePosition
2026 Automating the generation of database artifacts: From ER+ to SQL
abstract
Data engineers often need to transform a conceptual understanding of an application into deployable database artifacts spanning operational and analytical layers, heterogeneous locations, and explicit data-transformation pipelines. In this setting, conceptual specifications are valuable not only for the initial authoring of schemas and queries but also for coherently propagating subsequent conceptual changes into implementation artifacts. ER+ offers constructs for grouping, aggregation, line functions, and data transport, but translating these constructs into consistent executable artifacts remains a demanding task. This paper presents an extension of Online Database Architect (ONDA) that supports ER+ and automatically generates relational schemas and executable Structured Query Language (SQL) for both operational and analytical layers. The approach is defined by explicit mapping rules grounded in relational-algebraic semantics and constrained by invariants that ensure deterministic naming, key preservation, referential integrity, and sound compilation of grouping, aggregation, and line-function semantics. In particular, summaries involving line functions and aggregates are compiled through Common Table Expression (CTE)-based SQL patterns that preserve the intended grouping grain and avoid mixed-granularity expressions. We evaluate the approach using two case studies: a handcrafted ER+ model illustrating the end-to-end workflow and a TPC-H Q11-based scenario that represents a realistic analytical pattern. The generated artifacts show that ER+ specifications can be translated systematically into executable relational and analytical structures. A lightweight comparative evaluation further suggests reduced manual effort in the initial production of artifacts, improved consistency of generated analytical SQL, and maintainability when conceptual changes must be propagated into dependent implementations. These results indicate that conceptual models can serve as a practical basis for producing and evolving deployment-ready database artifacts.
Gonçalo Carvalho, Deolinda Rasteiro, Nour Dorgham, Bruno Cabral 0001, Jorge Bernardino, Vasco Pereira
Inf. Syst.4
2022 Herb: Privacy-preserving Random Forest with Partially Homomorphic Encryption
abstract
Building a Machine Learning model requires the use of large amounts of data. Due to privacy and regulatory concerns, these data might be owned by multiple sites and are often not mutually shareable. Our work deals with private learning and inference for the Weighted Random Forest model when data records are vertically distributed among multiple sites. Previous privacy-preserving vertical tree-based frameworks either adapt Secure Multi-party Computation or share intermediate results and are hard to generalize or scale. In contrast, our proposal contains efficient collaborative calculation algorithms of the Gini Index and Entropy for computing the impurity of decision tree nodes while protecting all intermediate values and disclosing minimal information. We offer a learning protocol based on the Paillier Cryptosystem and Digital Envelope. Also, we provide an inference protocol found on the Look-up Table. Our experiments show that the proposed protocols do not cause predictive performance loss while still establishing and utilizing the model within a reasonable time. The results imply that practitioners can overcome the barrier of data sharing and produce random forest models for data-heavy domains with strict privacy requirements, such as Health Prediction, Fraud Detection, and Risk Evaluation.
Qianying Liao, Bruno Cabral 0001, João Paulo Fernandes, Nuno Lourenço 0002
IJCNN2
2022 HERB+: Evolving an Industrial-Strength Privacy-Preserving Machine Learning Framework
abstract
Supervised machine learning does not hold without data. However, the needed data can be distributed in different locations and are non-shareable under privacy constraints. Methods to circumvent disclosure restrictions in collaborative machine learning are in strong demand. Thus, we propose HERB+ (Homomorphic Encryption for Random forest and gradient Boosting plus), a confidential learning framework for tree-based models under the scenario of vertically dispersed data. While previous related work focused on a specific algorithm, this work presents a wide variety of privacy-preserved and distributed tree-based algorithms (i.e., Decision Tree, Random Forest, and Gradient Boosting Decision Trees for both classification and regression tasks). HERB+ provides the most detailed and general discussions on using Fully Homomorphic Encryption for computing distributed tree-based algorithms during the training process. Our experiments show that although the learning protocols' efficiencies are not optimal, the predictive performance and privacy are preserved. The results imply that practitioners can overcome the barrier of data sharing and produce tree-based models for data-heavy domains with strict privacy requirements, such as Health Prediction, Fraud Detection, and Risk Evaluation.
Qianying Liao, Alexandre Cortez Santos, Bruno Cabral 0001, João Paulo Fernandes, Nuno Lourenço 0002
PRDC3
2022 A Functional FMECA Approach for the Assessment of Critical Infrastructure Resilience
abstract
The damage or destruction of Critical Infrastructures (CIs) affect societies’ sustainable functioning. Therefore, it is crucial to have effective methods to assess the risk and resilience of CIs. Failure Mode and Effects Analysis (FMEA) and Failure Mode Effects and Criticality Analysis (FMECA) are two approaches to risk assessment and criticality analysis. However, these approaches are complex to apply to intricate CIs and associated Cyber-Physical Systems (CPS). We provide a top-down strategy, starting from a high abstraction level of the system and progressing to cover the functional elements of the infrastructures. This approach develops from FMECA but estimates risks and focuses on assessing resilience. We applied the proposed technique to a real-world CI, predicting how possible improvement scenarios may influence the overall system resilience. The results show the effectiveness of our approach in benchmarking the CI resilience, providing a cost-effective way to evaluate plausible alternatives concerning the improvement of preventive measures.
Gonçalo Carvalho, Nádia Medeiros, Henrique Madeira, Bruno Cabral 0001
QRS4
2021 A holistic data modeling approach for multi-database systems
abstract
IoT, edge-oriented systems, and the growing ubiquity of access to the Internet have driven the development of the most complex software systems to date. Designing such systems is demanding due to their distributed nature, different technologies, multi-layer, hard-to-meet quality attributes, and the integration of several databases with diverse technologies. This work proposes a data modeling method able to represent holistically these systems’ data structure, data transport, and transformation.
Gonçalo Carvalho, Jorge Bernardino, Vasco Pereira, Bruno Cabral 0001
IEEE BigData4
2021 GreenHub: a large-scale collaborative dataset to battery consumption analysis of android devices
Rui Pereira, Hugo Matalonga, Marco Couto 0001, Fernando Castor Filho, Bruno Cabral 0001, Simão Melo de Sousa, João Paulo Fernandes
Empir. Softw. Eng.5
2020 Computation offloading in Edge Computing environments using Artificial Intelligence techniques
Gonçalo Carvalho, Bruno Cabral 0001, Vasco Pereira, Jorge Bernardino
Eng. Appl. Artif. Intell.2
2019 Driving Profile using Evolutionary Computation
abstract
Road injuries are among the top ten causes of death worldwide. It has been shown that providing feedback to drivers decreases the likeliness of having them engaging into dangerous manoeuvres, such as speeding. It also contributes to reduce the amount of life-threatening incidents related with braking. Due to its ubiquity, smartphones are a great resource for assessing driving behaviour. Several mobile applications have been created with this purpose, but there is no concrete evidence that these approaches offer consistent results over distinct platforms (Operating Systems) and hardware. Providing a model for assessing driver behaviour across distinct devices represents a major challenge, due to the increasing differentiation between platforms and mobile devices' internal sensors (gyroscope, accelerometer, GPS, and magnetometer.) In this study we propose the application of Evolutionary Computation techniques to create models for driving behaviour characterisation over data acquired from mobile devices with distinct sensors. Our experiments show that we are able to evolve models that are robust and can accurately identify the legs of a car journey that have abnormal events. In concrete we are able to evolve predictive models that can successfully create a profile about the driving behaviour of a person.
Nuno Lourenço 0002, Bruno Cabral 0001, Jorge Granjal
CEC2
2019 A Case for Machine Learning in Edge-Oriented Computing to Enhance Mobility as a Service
abstract
The study of human mobility tries to understand human flows and synergies with the geographical environment. Mobility as a Service (MaaS) is a new mobility concept that promises to revolutionize commuting by merging public and private transport providers around a common platform that travelers will use as a service, thus providing new research opportunities for human mobility. One of MaaS main offerings is the ability to calculate both routes and commuting strategies based on the availability of transports and specific user constraints. In this work, we discuss how Edge-Oriented Computing (EOC) and Machine Learning (ML) can contribute to extending the reach of MaaS in the upcoming years. EOC enables technologies to perform computation at the edge of the network, reducing latency and communication overheads, which 5G technologies are committed to further diminish, thus benefitting the proliferation of MaaS. Also, ML techniques are one of the most robust approaches for planning routes and predicting future movements. Finally, we present open research topics that will promote the attractiveness of MaaS.
Gonçalo Carvalho, Bruno Cabral 0001, Vasco Pereira, Jorge Bernardino
DCOSS2
2019 GreenHub farmer: real-world data for Android energy mining
abstract
As mobile devices are supporting more and more of our daily activities, it is vital to widen their battery up-time as much as possible. In fact, according to the Wall Street Journal, 9/10 users suffer from low battery anxiety. The goal of our work is to understand how Android usage, apps, operating systems, hardware and user habits influence battery lifespan. Our strategy is to collect anonymous raw data from devices all over the world, through a mobile app, build and analyze a large-scale dataset containing real-world, day-to-day data, representative of user practices. So far, the dataset we collected includes 12 million+ (anonymous) data samples, across 900+ device brands and 5.000+ models. And, it keeps growing. The data we collect, which is publicly available and by different channels, is sufficiently heterogeneous for supporting studies with a wide range of focuses and research goals, thus opening the opportunity to inform and reshape user habits, and even influence the development of both hardware and software for mobile devices.
Hugo Matalonga, Bruno Cabral 0001, Fernando Castor Filho, Marco Couto 0001, Rui Pereira, Simão Melo de Sousa, João Paulo Fernandes
MSR2
2018 PreX: A predictive model to prevent exceptions
João Ricardo Lourenço, Bruno Cabral 0001, Jorge Bernardino
J. Syst. Softw.2
2018 Overcoming the No Free Lunch Theorem in Cut-off Algorithms for Fork-Join programs
Alcides Fonseca, Bruno Cabral 0001
Parallel Comput.2
2018 Language-Based Expression of Reliability and Parallelism for Low-Power Computing
abstract
Improving the energy-efficiency of computing systems while ensuring reliability is a challenge in all domains, ranging from low-power embedded devices to large-scale servers. In this context, a key issue is that many techniques aiming to reduce power consumption negatively affect reliability, while fault tolerance techniques require computation or state redundancy that increases power consumption, thereby leading to systematic tradeoffs. Managing these tradeoffs requires a combination of techniques involving both the hardware and the software, as it is impractical to focus on a single component or level of the system to reach adequate power consumption and reliability. In this paper, we adopt a language-based approach to express reliability and parallelism, in which programs remain adaptable after compilation and may be executed with different strategies concerning reliability and energy consumption. We implement the proposed programming model, which is named MISO, and perform an experimental analysis aiming to improve the reliability of programs, through fault injection experiments conducted at compile-time, as well as an experimental measurement of power consumption. The results obtained indicate that it is feasible to write programs that remain adaptable after compilation in order to improve the ability to balance reliability, power, and performance.
Alcides Fonseca, Frederico Cerveira, Bruno Cabral 0001, Raul Barbosa
IEEE Trans. Sustain. Comput.3
2017 On the Use of CEP in Safety-critical Systems
abstract
Nos dias de hoje, a informação é um dos principais recursos de qualquer empresa e desempenha um papel importante na tomada de decisão. Para as equipas de gestão, a obtenção de informações importantes o mais rápido possível é uma prioridade, que pode se tornar desafiadora quando existem muitos dados a serem processados. Os mecanismos complexos de processamento de eventos (CEP) são capazes de processar o contínuo fluxo de dados, separando a informação e filtrando os dados de pouca relevância. Assim, os sistemas da CEP são capazes de analisar milhares de registros de dados de forma muito rápida, reduzindo o atraso entre a receção e processamento de dados, tornando-se conveniente para a tomada de decisão. Acreditamos que esta capacidade operacional, poderia beneficiar qualquer sistema atual de gestão de dados. Mas, existem diversos tipos de sistemas de informação, aplicados a uma variedade de áreas empresariais, que operam em diferentes ambientes, além de exigir inúmeros métodos para garantir sua correta operacionalidade. Um tipo desses sistemas, são sistemas críticos, responsáveis por infraestruturas com grande impacto e que podem causar danos elevados às pessoas, à sociedade ou ao meio ambiente. Os sistemas críticos são responsáveis pela realização de operações em ambientes críticos, tais como armazenamento de água, estações de petróleo e atómicas, sistemas de veículos e aviários, dispositivos médicos, etc. Uma vez que esses sistemas são necessários para gerar resposta e alertas em tempo real, é possível que os motores CEP podem ser uma solução para melhorar o desempenho desses sistemas. Mas, os sistemas críticos possuem outros atributos de qualidade, como a proteção, a confiabilidade e a segurança. Neste trabalho, investigamos se os motores CEP podem ser usados em sistemas críticos e se são capazes de lidar com os atributos de qualidade desses sistemas. Depois de descrever os motores CEP, os sistemas críticos e seus atributos de qualidade, nos concentramos em segurança e proteção e fornecemos uma solução para a autenticidade de dados como mecanismo adicionado a um dos motores CEP mais populares, o ESPER. Concluímos que a solução proposta fornece autenticidade de dados, mas também tem um impacto considerável no desempenho
Veronika Abramova, Jorge Bernardino, Bruno Cabral 0001
COMPLEXIS3
2017 Evolving Cut-Off Mechanisms and Other Work-Stealing Parameters for Parallel Programs
Alcides Fonseca, Nuno Lourenço 0002, Bruno Cabral 0001
EvoApplications (1)3
2017 Insider Attacks in a Non-secure Hadoop Environment
Pedro Camacho, Bruno Cabral 0001, Jorge Bernardino
WorldCIST (2)2
2016 A Predictive Model for Exception Handling
João Ricardo Lourenço, Bruno Cabral 0001, Jorge Bernardino
WorldCIST (1)2
2015 A proficient high level programming program as a way to overcome unemployment among graduates
abstract
Unemployment has been a major concern in recent years. This is particular true for young people and in the case of Portugal for youngsters with a Higher Education degree. In this paper we describe the program “Acertar o Rumo”, a two years program to reconvert unemployed graduates in Engineering and Exact and Natural Science in experienced Java programmers. Particularly, we focus on the Programming courses of the program, where the two main programming paradigms, the procedural and the object-oriented, as well as principles and technologies for developing enterprise systems were taught. We describe the main methodologies and approaches followed and report the very positive results obtained with the first edition of the program till now. We finish the paper by proposing some recommendations and improvements for further editions.
Maria José Marcelino, Bruno Cabral 0001, Luís Paquete, António J. Mendes
FIE2
2015 Cooperative Exceptions for Concurrent Objects
abstract
The advent of multi-core systems set off a race to get concurrent programming to the masses. One of the challenging aspects of this type of system is how to deal with exceptional situations, since it is very difficult to assert the precise state of a concurrent program when an exception arises. In this paper we propose an exception-handling model for concurrent systems. Its main quality attributes are simplicity and expressiveness, allowing programmers to deal with exceptional situations in a concurrent setting in a familiar way. The proposal is centered on a new kind of exception type that defines new paths for exception propagation among concurrent threads of execution. In our model, beyond being able to control where exceptions are raised, the developer can define in which thread, and when during its execution, a particular exception will be handled. The proposed model has been implemented in Scala, and we show its application to the construction of concurrent software.
Bruno Cabral 0001, Alcides Fonseca, Jonathan Aldrich
PRDC1
2015 NoSQL Databases: A Software Engineering Perspective
João Ricardo Lourenço, Veronika Abramova, Marco Vieira, Bruno Cabral 0001, Jorge Bernardino
WorldCIST (1)4
2011 A transactional model for automatic exception handling
Bruno Cabral 0001
Comput. Lang. Syst. Struct.1
2008 A Case for Automatic Exception Handling
abstract
Exception handling mechanisms have been around for more than 30 years. Nevertheless, modern exceptions systems are not very different from the early models. Programming languages designers often neglect the exception mechanism and look at it more like an add-on for their language instead of central part. As a consequence, software quality suffers as programmers feel that the task of writing good error handling code is too complex, unattractive and inefficient. We propose a new model that automates the handling of exceptions by the runtime platform. This model frees the programmer from having to write exception handling code and, at the same time, successfully increases the resilience of programs to abnormal situations.
Bruno Cabral 0001
ASE1
2007 Exception Handling: A Field Study in Java and .NET
Bruno Cabral 0001
ECOOP1