Cookies Policy
The website need some cookies and similar means to function. If you permit us, we will use those means to collect data on your visits for aggregated statistics to improve our service. Find out More
Accept Reject
  • Menu
About

About

António Nestor Ribeiro is an assistant professor at the Department of Informatics at Minho University, Portugal. He obtained a MSc degree from University do Minho in 1998 and a PhD degree in Computer Science from the same institution in 2008.

He is also a member of the High Assurance Software Laboratory Research Group where he belongs to the Large Scale Distributed Systems Group.

His research interests are focused on object oriented modeling and analysis techniques and on the aspects related to program analysis and understanding.

Actual research topics are related to the quality of requirements gathering models and on the prototyping of requirements on large-scale systems.

He teaches courses on model driven engineering and has supervised several works about middleware and object-relational mapping techniques for large-scale and highly distributed systems.

During the last few years he was involved with several projects around software architectures reengineering and on developing computational platforms for specific applications like test data generators and plugin-oriented business applications.

Interest
Topics
Details

Details

  • Name

    António Nestor Ribeiro
  • Cluster

    Computer Science
  • Role

    Affiliated Researcher
  • Since

    01st November 2011
002
Publications

2021

Development and Validation of a Descriptive Cognitive Model for Predicting Usability Issues in a Low-Code Development Platform

Authors
Silva, C; Vieira, J; Campos, JC; Couto, R; Ribeiro, AN;

Publication
HUMAN FACTORS

Abstract
Objective The aim of the study was the development and evaluation of a Descriptive Cognitive Model (DCM) for the identification of three types of usability issues in a low-code development platform (LCDP). Background LCDPs raise the level of abstraction of software development by freeing end-users from implementation details. An effective LCDP requires an understanding of how its users conceptualize programming. It is necessary to identify the gap between the LCDP end-users' conceptualization of programming and the actions required by the platform. It is also relevant to evaluate how the conceptualization of the programming tasks varies according to the end-users' skills. Method DCMs are widely used in the description and analysis of the interaction between users and systems. We propose a DCM which we called PRECOG that combines task decomposition methods with knowledge-based descriptions and criticality analysis. This DCM was validated using empirical techniques to provide the best insight regarding the users' interaction performance. Twenty programmers (10 experts, 10 novices) were observed using an LCDP and their interactions were analyzed according to our DCM. Results The DCM correctly identified several problems felt by first-time platform users. The patterns of issues observed were qualitatively different between groups. Experts mainly faced interaction-related problems, while novices faced problems attributable to a lack of programming skills. Conclusion By applying the proposed DCM we were able to predict three types of interaction problems felt by first-time users of the LCDP. Application The method is applicable when it is relevant to identify possible interaction problems, resulting from the users' background knowledge being insufficient to guarantee a successful completion of the task at hand.

2021

Addressing Interactive Computing Systems' Concerns in Software Engineering Degrees

Authors
Campos, JC; Ribeiro, AN;

Publication
Sense, Feel, Design - INTERACT 2021 IFIP TC 13 Workshops, Bari, Italy, August 30 - September 3, 2021, Revised Selected Papers

Abstract
This paper arises from experience by the authors in teaching software engineering courses. It discusses the need for adequate coverage of Human-Computer Interaction topics in these courses and the challenges faced when addressing them. Three courses, at both licentiate and master’s levels, are used as triggers for the discussion. The paper argues that the lack of relevant Human-Computer Interaction concepts creates challenges when teaching and learning requirements analysis, design, and implementation of software systems. The approaches adopted to address these challenges are described. © 2022, IFIP International Federation for Information Processing.

2017

Promoting entrepreneurship among informatics engineering students: insights from a case study

Authors
Fernandes, JM; Afonso, P; Fonte, V; Alves, V; Ribeiro, AN;

Publication
EUROPEAN JOURNAL OF ENGINEERING EDUCATION

Abstract
Universities seek to promote entrepreneurship through effective education approaches, which need to be in permanent evolution. Nevertheless, the literature in entrepreneurship education lacks empirical evidence. This article discusses relevant issues related to promoting entrepreneurship in the software field, based on the experience of a 15-European Credit Transfer and Accumulation System course. This course seeks to instil in the students the recognition of the need to reconcile technical and business visions, organisational and commercial aspects, most of which have never been addressed previously. A series of semi-structured interviews made it possible to obtain relevant insights about the teaching-learning process underlying this course and its evolution over a seven-year period. Materials related with this course have been analysed, namely guidelines produced by the teachers and deliverables produced by the students. This article discusses the dimensions that were identified as fundamental for promoting entrepreneurship skills in the field of software, namely teamwork, project engagement, and contact with the market.

2016

Validating an Approach to Formalize Use Cases with Ontologies

Authors
Couto, R; Ribeiro, AN; Campos, JC;

Publication
ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE

Abstract
Use case driven development methodologies put use cases at the center of the software development process. However, in order to support automated development and analysis, use cases need to be appropriately formalized. This will also help guarantee consistency between requirements specifications and developed solutions. Formal methods tend to suffer from take up issues, as they are usually hard to accept by industry. In this context, it is relevant not only to produce languages and approaches to support formalization, but also to perform their validation. In previous works we have developed an approach to formalize use cases resorting to ontologies. In this paper we present the validation of one such approach. Through a three stage study, we evaluate the acceptance of the language and supporting tool. The first stage focusses on the acceptance of the process and language, the second on the support the tool provides to the process, and finally the third one on the tool's usability aspects. Results show test subjects found the approach feasible and useful and the tool easy to use.

2016

An automated model based approach to mobile UI specification and development

Authors
Ribeiro, AN; Araújo, CR;

Publication
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

Abstract
One of the problems of current software development lies on the existence of solutions to address properly the code portability for the increasing number of platforms. To build abstract models is one efficient and correct way to achieve this. The Model-Driven Software Engineering (MDSE) is a development methodology where models are the key for all project lifecycle, from requisites gathering, through modelling and to the development stage, as well as on testing. Pervasive computing demands the use of several technical specifications, such as wireless connections, advanced electronics, and the Internet, as well as it stresses the need to adjust the user interface layer to each one of the platforms. Using a model-driven approach it is possible to reuse software solutions between different targets, since models are not affected by the device diversity and its evolution. This paper reports on a tool, which is highly parameterizable and driven to support Model-2-Model and Model-2-Code transformations. Also, instead of using a predefined technology, the tool was built to be scalable and extensible for many different targets and also by addressing the user interface layer generation. © Springer International Publishing Switzerland 2016.

Supervised
thesis

2021

Mashup de serviços de meteorologia

Author
João Pedro Ferreira Vieira

Institution
UM

2021

Persistência Dinâmica de Dados para Soluções de Business Intelligence

Author
Marcos de Morais Luís

Institution
UM

2021

Patterns and development strategies used on a microservices architecture

Author
Hugo Manuel Coelho de Oliveira

Institution
UM

2021

Criação de aplicações Java a partir de requisitos expressos oralmente

Author
João Nuno Gomes Rodrigues de Almeida

Institution
UM

2020

Programmable Environments for Quick Orchestration of Deployments

Author
Maria Helena Ribeiro Poleri

Institution
UM