HASLab - Indexed Articles in Journals

Permanent URI for this collection

Browse

Recent Submissions

Now showing 1 - 5 of 155
  • Item
    Merging Cloned Alloy Models with Colorful Refactorings
    ( 2022) Liu,C ; Nuno Moreira Macedo ; Alcino Cunha ; 5612 ; 5625
  • Item
    Experiences on teaching alloy with an automated assessment platform
    ( 2021) Nuno Moreira Macedo ; Alcino Cunha ; Hugo Pereira Pacheco ; Carvalho,R ; Silva,R ; Ana Cristina Paiva ; Ramalho,MS ; Silva,D ; 5625 ; 5647 ; 5612 ; 6073
  • Item
    An evaluation of Graph Databases and Object-Graph Mappers in CIDOC CRM-compliant digital archives
    ( 2022) Lázaro Gabriel Costa ; Freitas,N ; da Silva,JR ; 7741
    The Portuguese General Directorate for Book, Archives and Libraries (DGLAB) has selected CIDOC CRM as base for its next-generation digital archive management software. Given the ontology foundations of the CRM, a graph database or a triple store were seen as the best candidates to represent a CRM-based data model for the new software. We thus decided to compare several of these databases, based on their maturity, features, performance in standard tasks and, most importantly, the Object-Graph Mappers (OGM) available to interact with each database in an Object-Oriented way. Our conclusions are drawn not only from a systematic review of related works but from an experimental scenario. For our experiment, we designed a simple CRM-compliant graph designed to test the ability of each OGM/database combination to tackle the so-called “Diamond-problem” in Object-Oriented Programming (OOP), to ensure that property instances follow domain and range constraints. Our results show that 1. ontological consistency enforcement in graph databases and triplestores is much harder to achieve than in a relational database, making them more suited to an analytical rather than a transactional role, 2. Object-Graph Mappers are still rather immature solutions and 3. neomodel, an OGM for the Neo4j graph database, is the most mature solution in the study as it satisfies all requirements, although it is also the least performing.
  • Item
    Coalgebra for the working software engineer
    ( 2022) Luís Soares Barbosa ; 5603
    Often referred to as ‘the mathematics of dynamical, state-based systems’, Coalgebra claims to provide a compositional and uniform framework to specify, analyse and reason about state and behaviour in computing. This paper addresses this claim by discussing why Coalgebra matters for the design of models and logics for computational phenomena. To a great extent, in this domain one is interested in properties that are preserved along the system’s evolution, the so-called ‘business rules’ or system’s invariants, as well as in liveness requirements, stating that e.g. some desirable outcome will be eventually produced. Both classes are examples of modal assertions, i.e. properties that are to be interpreted across a transition system capturing the system’s dynamics. The relevance of modal reasoning in computing is witnessed by the fact that most university syllabi in the area include some incursion into modal logic, in particular in its temporal variants. The novelty is that, as it happens with the notions of transition, behaviour, or observational equivalence, modalities in Coalgebra acquire a shape. That is, they become parametric on whatever type of behaviour, and corresponding coinduction scheme, seems appropriate for addressing the problem at hand. In this context, the paper revisits Coalgebra from a computational perspective, focussing on three topics central to software design: how systems are modelled, how models are composed, and finally, how properties of their behaviours can be expressed and verified. © 2022, College Publications. All rights reserved.
  • Item
    Development and Validation of a Descriptive Cognitive Model for Predicting Usability Issues in a Low-Code Development Platform
    ( 2021) Silva,C ; Vieira,J ; José Creissac Campos ; Rui Miguel Couto ; António Nestor Ribeiro ; 5639 ; 5599 ; 6000
    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.