Ángel Herranz-Nieva

dblp:92/6077 · also Ángel Herranz · DBLP profile ↗
← Back
16ranked-venue papers
2as first author
8since 2021 · last 2026
0000-0002-6433-5681ORCID · verified

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

Software engineering, systems software and programming languages · 15 · 2 first-author · 8 since 2021Applied, interdisciplinary, general and emerging computing · 1
YearPublicationVenuePosition
2026 Makina: A QuickCheck state machine library
abstract
This article presents Makina, a library written in the Elixir programming language, and a domain specific language for writing property-based testing models for stateful programs. Models written in the domain specific language are translated into standard QuickCheck state machines. Our main goals with Makina are to facilitate the task of developing correct and maintainable models, and to encourage model reuse. To meet these goals, Makina provides a declarative syntax for defining model states and commands. In particular, Makina encourages the typing of specifications, and ensures that such type information can be used by Elixir type checking tools. Moreover, to promote model reuse, the domain specific language provides constructs that allow models to be defined in terms of collections of previously defined ones. To this end a number of operators for combining models have been defined and implemented in our library. A semantics for Makina models is presented in two steps. First, a novel operational semantics for standard QuickCheck state machine models is provided. Then, a translation from a Makina model to a standard QuickCheck state model is given.
Luis Eduardo Bueso de Barrio, Lars-Åke Fredlund, Ángel Herranz-Nieva, Clara Benac Earle, Julio Mariño-Carballo
J. Log. Algebraic Methods Program.3
2025 Cybersecurity Vulnerabilities Management for Small and Medium Enterprises
José Antonio Calvo-Manzano, Tomás San Feliu Gilabert, Ángel Herranz-Nieva, Julio Mariño-Carballo, Lars-Åke Fredlund, Ricardo Colomo-Palacios, Ana M. Moreno
EuroSPI (1)3
2025 Checking Concurrency Coding Rules
Lars-Åke Fredlund, Ángel Herranz-Nieva, Julio Mariño-Carballo
PADL2
2025 Generation of algebraic data type values using evolutionary algorithms
Ignacio Ballesteros, Clara Benac Earle, Julio Mariño-Carballo, Lars-Åke Fredlund, Ángel Herranz-Nieva
J. Log. Algebraic Methods Program.5
2025 Executable contracts for Elixir
Luis Eduardo Bueso de Barrio, Lars-Åke Fredlund, Ángel Herranz-Nieva, Julio Mariño-Carballo, Clara Benac Earle
J. Log. Algebraic Methods Program.3
2025 CyberESP: An Integrated Cybersecurity Framework for SMEs
abstract
ABSTRACT Cybersecurity is a critical global concern, particularly for small‐ and medium‐sized enterprises (SMEs) with limited resources and expertise. The authors are developing CyberESP, a tailored cybersecurity framework supported by a semi‐automated tool to ensure Spanish SMEs' cybersecurity management. Following the Design Science Research (DSR) methodology and grounded in international standards, the authors identified six requirements to be satisfied by a cybersecurity framework for SMEs, which should support the identification of assets, vulnerabilities, threats, and risks. This paper presents the first part of the CyberESP framework dealing with asset management, particularly their identification and analysis of dimensions and cost. A prototype supporting these activities was developed and validated through a case study in a retail SME, showing the solution's potential and identifying particular improvements. The paper also addresses threats to validity and limitations, noting the framework's focus on hardware, software, and networks. Future work includes vulnerability management and will explore the use of cloud and IoT deployment, positioning CyberESP as a practical solution to enhance SMEs' cybersecurity resilience.
José Antonio Calvo-Manzano, Tomás San Feliu Gilabert, Ángel Herranz-Nieva, Julio Mariño-Carballo, Lars-Åke Fredlund, Ana María Moreno 0001
J. Softw. Evol. Process.3
2024 Towards an Integrated Cybersecurity Framework for Small and Medium Enterprises
José Antonio Calvo-Manzano, Tomás San Feliu Gilabert, Ángel Herranz-Nieva, Julio Mariño-Carballo, Lars-Åke Fredlund, Ricardo Colomo-Palacios, Ana María Moreno 0001
EuroSPI (1)3
2022 Persistence Factories Architectural Design Pattern
Jorge D. Ortiz-Fuentes, Ángel Herranz-Nieva
ECSA2
2019 Synthesis of verifiable concurrent Java components from formal models
Julio Mariño-Carballo, Raúl N. N. Alborodo, Lars-Åke Fredlund, Ángel Herranz-Nieva
Softw. Syst. Model.4
2014 Property-Based Testing of JSON Based Web Services
abstract
This article describes a systematic approach to testing behavioural aspects of Web Services that communicate using the JSON data format. As a key component, the Quviq QuickCheck property-based testing tool is used to automatically generate a large number of test cases from an abstract description of the service behaviour in the form of a finite state machine. The same behavioural description is also used to decide whether the execution of a test case is successful or not. To generate random JSON data for populating tests we have developed a new library, jsongen, which given a characterisation of the JSON data as a JSON schema, automatically derives a QuickCheck generator which is capable of generating an infinite number of JSON values that validate against the schema.
Lars-Åke Fredlund, Clara Benac Earle, Ángel Herranz-Nieva, Julio Mariño-Carballo
ICWS3
2014 Execution and Verification of UML State Machines with Erlang
Ricardo J. Rodríguez, Lars-Åke Fredlund, Ángel Herranz-Nieva, Julio Mariño-Carballo
SEFM3
2013 A model-driven approach to teaching concurrency
abstract
We present an undergraduate course on concurrent programming where formal models are used in different stages of the learning process. The main practical difference with other approaches lies in the fact that the ability to develop correct concurrent software relies on a systematic transformation of formal models of inter-process interaction (so called shared resources ), rather than on the specific constructs of some programming language. Using a resource-centric rather than a language-centric approach has some benefits for both teachers and students. Besides the obvious advantage of being independent of the programming language, the models help in the early validation of concurrent software design, provide students and teachers with a lingua franca that greatly simplifies communication at the classroom and during supervision, and help in the automatic generation of tests for the practical assignments. This method has been in use, with slight variations, for some 15 years, surviving changes in the programming language and course length. In this article, we describe the components and structure of the current incarnation of the course—which uses Java as target language—and some tools used to support our method. We provide a detailed description of the different outcomes that the model-driven approach delivers (validation of the initial design, automatic generation of tests, and mechanical generation of code) from a teaching perspective. A critical discussion on the perceived advantages and risks of our approach follows, including some proposals on how these risks can be minimized. We include a statistical analysis to show that our method has a positive impact in the student ability to understand concurrency and to generate correct code.
Manuel Carro, Ángel Herranz-Nieva, Julio Mariño-Carballo
ACM Trans. Comput. Educ.2
2009 Modeling Concurrent Systems with Shared Resources
Ángel Herranz-Nieva, Julio Mariño-Carballo, Manuel Carro, Juan José Moreno-Navarro
FMICS1
2008 Automatic Coding Rule Conformance Checking Using Logic Programming
Guillem Marpons-Ucero, Julio Mariño-Carballo, Manuel Carro, Ángel Herranz-Nieva, Juan José Moreno-Navarro, Lars-Åke Fredlund
PADL4
2007 Demand analysis with partial predicates
abstract
Abstract To alleviate the inefficiencies caused by the interaction of the logic and functional sides, integrated languages may take advantage ofdemandinformation, i.e. knowing in advance which computations are needed and, to which extent, in a particular context. This work studiesdemand analysis– which is closely related tobackwards strictness analysis– in a semantic framework ofpartial predicates, which in turn are constructive realizations of ideals in a domain. This will allow us to give a concise, unified presentation of demand analysis, to relate it to other analyses based on abstract interpretation or strictness logics, some hints for the implementation, and, more important, to prove the soundness of our analysis based ondemand equations. There are also some innovative results. One of them is that a set constraint-based analysis has been derived in a stepwise manner using ideas taken from the area of program transformation. The other one is the possibility of using program transformation itself to perform the analysis, specially in those domains of properties where algorithms based on constraint solving are too weak.
Julio Mariño-Carballo, Ángel Herranz-Nieva, Juan José Moreno-Navarro
Theory Pract. Log. Program.2
2003 Formal Extreme (and Extremely Formal) Programming
Ángel Herranz-Nieva, Juan José Moreno-Navarro
XP1