
Carlos López Nozal- PhD
- Professor (Assistant) at University of Burgos
Carlos López Nozal
- PhD
- Professor (Assistant) at University of Burgos
About
61
Publications
29,962
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
346
Citations
Introduction
Carlos López-Nozal received his Ph.D. from the University of Valladolid, Spain, in 2013. He has been a lecturer at the University of Burgos, Spain, since 1999. His research is focused on the analysis of improvements in software system development. His thesis was concerned with the detection of design object-oriented problems using code metric values that permit data mining
models (classifiers) to be defined to detect certain design defects. His current interests are in the field of text-mining techniques and their application in the analysis of agile practices: issue
labelling and code review. He is the director of the DIGIT group of teaching innovation at the University of Burgos and has specialized in teaching final-year Projects.
Current institution
Publications
Publications (61)
The automation of industrial quality control based on artificial (computer) vision can avoid some of the problems associated with tedious and repetitive manual procedures that will often originate operator errors. Automatic quality control can also be applied uninterruptedly. However, strategies of that sort have some drawbacks. One is associated w...
Decision trees are one of the most popular tools in machine learning. This is due to their performance and interpretability. Its ability to visually represent the decision-making process allows professionals who do not have much experience in this type of tools, to obtain simple solutions. A single tree-shaped graph, where each node represents a de...
Educational Data Mining and Learning Analytics in virtual environments can be used to diagnose student performance problems at an early stage. Information that is useful for guiding the decisions of teachers managing academic training, so that students can successfully complete their course. However, student interaction patterns may vary depending...
Software reuse by importing packages from centralised repositories is an efficient and increasingly widespread way to develop software. Given the transitivity of dependencies, defects introduced in the repository can have extensive effects on the software ecosystem. Drawing from complex network theory, we define a model of repository vulnerability...
Context
Managing technical debt and developing easy-to-maintain software are very important aspects for technological companies. Integrated development environments (IDEs) and static measurement and analysis tools are used for this purpose. Meanwhile, gamification also is gaining popularity in professional settings, particularly in software develop...
An inherent requirement of teaching using online learning platforms is that the teacher must analyze student activity and performance in relation to course learning objectives. Therefore, all e-learning environments implement a module to collect such information. Nevertheless, these raw data must be processed to perform e-learning analysis and to h...
The prediction of multiple numeric outputs at the same time is called multi-target regression (MTR), and it has gained attention during the last decades. This task is a challenging research topic in supervised learning because it poses additional difficulties to traditional single-target regression (STR), and many real-world problems involve the pr...
Practicum is an essential and meaningful part of teacher education but due to the great diversity of educational programmes worldwide, their nature and quality depend too much on each particular situation. There is an urgent need to unify and upgrade practicum formats. This paper reports a proposal for technology enhancement and structure reconfigu...
One of the main goals of Big Data research, is to find new data mining methods that are able to process large amounts of data in acceptable times. In Big Data classification, as in traditional classification, class imbalance is a common problem that must be addressed, in the case of Big Data also looking for a solution that can be applied in an acc...
The Rotation Forest classifier is a successful ensemble method for a wide variety of data mining applications. However, the way in which Rotation Forest transforms the feature space through PCA, although powerful, penalizes training and prediction times, making it unfeasible for Big Data. In this paper, a MapReduce Rotation Forest and its implement...
This Toolkit offers a compendium of good practices and resources for
trainee-teachers with an innovative approach. The contents of this toolkit fall within the frame of the Erasmus+ VIRTEACH Project, A VIRtual Solution for a comprehensive and coordinated training for foreign language TEACHers in Europe (Project Reference: 2018-1-ES01-KA203-050045)....
Practicum is an essential and meaningful form of teacher training but due to the great diversity of educational programs worldwide, their nature and quality depend too much on each particular situation. For this reason, an Interactive Digital Notepad (hereinafter IDN) prototype, based on Kanban and powered up by Trello, is presented as a solution t...
El Centro Nacional de Investigación sobre la Evolución Humana (CENIEH), se ha incorporado recientemente al proyecto europeo ARIANDEplus. Este tiene como objetivo estimular la investigación en áreas relacionadas con la arqueología mediante la integración de diversas infraestructuras de datos arqueológicas situadas en Europa.
Son muchas las técnicas...
La enseñanza en plataformas de aprendizaje en línea
exige a los docentes analizar la actividad y rendimien-
to de los estudiantes sobre los objetos de aprendizaje
del curso. Todos los entornos virtuales de aprendiza-
je implementan un módulo que permite recoger esta
información. Pero estos datos en crudo necesitan ser
procesados para facilitar el a...
The detection of faulty machinery and its automated diagnosis is an industrial priority because efficient fault diagnosis implies efficient management of the maintenance times, reduction of energy consumption, reduction in overall costs and, most importantly, the availability of the machinery is ensured. Thus, this paper presents a new intelligent...
This Toolkit offers a compendium of good practices and resources for
trainee-teachers with an innovative approach. The contents of this toolkit
fall within the frame of the Erasmus+ VIRTEACH Project, A VIRtual Solution
for a comprehensive and coordinated training for foreign language
TEACHers in Europe (Project Reference: 2018-1-ES01-KA203-050045).
Issue tracking systems are overall change-management tools in software development. The issue-solving life cycle is a complex socio-technical activity that requires team discussion and knowledge sharing between members. In that process, issue classification facilitates an understanding of issues and their analysis. Issue tracking systems permit the...
A software process is a set of related activities that culminates in the production of a software package: specification, design, implementation, testing, evolution into new versions, and maintenance. There are also other supporting activities such as configuration and change management, quality assurance, project management, evaluation of user exp...
Instance selection is a popular preprocessing task in knowledge discovery and data mining. Its purpose is to reduce the size of data sets maintaining their predictive capabilities. The usual emerging problem at this point is that these methods quite often suffer of high computational complexity, which becomes highly inconvenient for processing huge...
The aim of this work is to design, plan, apply and assessment educational activities to help in the teaching-learning process of the concept of refactoring. The teaching methodology used is based on two pillars. The first is a progressive learning of the concept of refactoring by e-activities defined at different levels of knowledge of Bloom’s taxo...
Bachelor and master's qualifications include assignments that involve the preparation of final projects. Their underlying pedagogical model is often based on final or end-of-course projects, which carry a high number of ECTS credits (12 or more), to be completed over one semester. Each project, which simulates a real life professional situation, is...
Este estudio evalúa la utilización, por parte de alumnos y profesores, de la nueva plataforma de apoyo a la docencia de la Universidad de Burgos (UBUVirtual), analizando además las valoraciones de los docentes del proceso de migración desde la antigua plataforma. Los datos se han obtenido de la base de datos de Moodle y mediante encuestas a profeso...
La identificación de defectos de diseño en entidades de código es una de las tareas del proceso de mantenimiento del software que sirve para evaluar la calidad de un sistema. Un defecto de diseño describe una situación que sugiere un problema potencial en la estructura del software. La intención de diseño de la entidad, que puede ser expresada como...
Many approaches and tools have been developed to detect, correct or reduce design smells. This technical report presents a taxon-omy for design smell management approaches, using feature diagrams as a graphical guidance to illustrate it. This taxonomy can help in various ways. Newcomers in the domain can use it to get acquainted with the important...
Tool support for refactoring is widespread nowadays. The most widely known IDEs include refactoring support, and many refactoring-specific tools are also available. Developers are aware of refactoring activities and they do refactor their applications even manually or in an assisted way. For the users of refactoring tools, the current state of the...
The addition of support for genericity to mainstream programming languages has a notable influence in refactoring tools. This also applies to the JAVA programming language. Those versions of the language specification prior to JAVA 5 did not include support for generics. Therefore, refactoring tools had to evolve to modify their refactoring impleme...
Resumen Las herramientas de control de versiones y planificación de tareas permiten monitorizar y recoger información sobre el proceso de desarrollo software. En este trabajo se presenta la utilización de este tipo de herramientas en asignaturas relacionadas con este campo. La idea no es tanto utilizar las herramientas como contenido per se de las...
Resumen El desarrollo de trabajos final de carrera en las actuales titulaciones de informática es una de las materias fundamentales a la conclusión de los estudios. En las propuestas de grado y máster este punto sigue siendo fundamental, no existiendo apenas discusión en la necesidad de realizar un proyecto donde se aglutinen todos los conocimiento...
Current refactoring tools work on a particular lan- guage. Each time it is intended to provide refactoring support for new languages, the same refactoring opera- tions are defined and implemented again from scratch. This approach ignores reuse opportunities in this matter. It is possible to define a way of collecting code information suited for sev...
Using metamodels to keep source code information is one of the current trends in refactoring tools. This representation makes possible to detect refactoring opportunities, and to execute refactorings on metamodel instances. This paper describes an approach to language independent reuse in metamodel based refactoring detection and execution. We use...
This chapter presents a study on the relation of refactoring, bad smells, and metrics. The notions of refactoring and bad smells are revised as well as metrics that can be used as guides in the refactoring process. Connection among those metrics, the usual flaws that could be suggested by them, and the required corrective actions to reduce or erase...
This chapter presents a study on the relation of refactoring, bad smells, and metrics. The notions of refactoring and bad smells are revised as well as metrics that can be used as guides in the refactoring process. Connection among those metrics, the usual flaws that could be suggested by them, and the required corrective actions to reduce or erase...
One of the current trends in refactoring is when and where we should refactor. Until now, most of the proposals establish that the refactoring process starts from the programmer intuition and experience. From the bad smell concept, and using metrics, it is possible to discover refactoring opportunities, not only from a subjective point of view but...
We expose a case study of a bad smell detection through metrics. In practice, bad smell detection emerges from human observa- tions. Metrics allow to obtain an objective view of the software, so they must be used as instruments to detect bad smells. Concretely, we focus in the bad smell: Parallel Inheritance Hierarchy, using a metric subset. Althou...
En este trabajo se presenta una propuesta para incorporar en las titulaciones de informática la docencia relativa a pruebas del software y refactoring.
Se busca introducir de una manera gradual y acorde a las etapas de desarrollo las distintas técnicas y herramientas en dichos campos, fente a la problemática actual de intentar llevar a cabo metodo...
Resumen En este trabajo se presenta el estudio de un conjunto de refactorizaciones desde el punto de vista de un lenguaje modelo. El ob- jetivo es validar la factibilidad de llevar a cabo, sobre un framework que conceptualice las abstracciones del lenguaje modelo, las operaciones de refactorizacion definidas en base a dichas abstracciones. De esta...
To detect flaws, bad smells, etc, we often use quantitative methods: metrics or measures. It is common in practice to use thresholds to set the correctness of the measures. Most of the current tools use generic values. Nevertheless, there is a certain concern about the eects of threshold applications on obtained values. Current research is working...
Resumen En este trabajo se presenta la problemática de la realización de pruebas de caja negra en laboratorios de programación, así como la experiencia realizada con el objetivo de resolver dichos problemas. Explicando las aproximaciones iniciales y experiencias previas efectuadas en cursos anteriores, se propone un proceso de preparación a la real...
Bad Smells define in an informal way code flaws, in order to suggest refactorings, their aim is to improve the design of the code. Current taxonomies group code smells, making use of similarity or cor- relation criteria between them, and leading to a manual revision of the code. By other side, it is suggested the assistance of using metrics in the...
Anomalous measurements are identified in the software measurement process using valid metrics intervals. In the particular case of code measurements, the same intervals are used independently of the nature of the problem solved by the entity being measured. Our proposal is to condition the measurement intervals according to the nature of the proble...
To detect flaws, bad smells, etc, we often use quantitative methods: metrics or measures. It is common in practice to use thresholds setting the correctness of the measures. Most of the current tools use absolute values. Nevertheless, there is a certain concern about threshold applications on obtained values. Current work tries to accomplish case s...
Resumen El presente trabajo presenta la definición de un conjunto de refactorizaciones de especialización sobre clases genéricas. Las refactori-zaciones se definen en función de transformaciones sobre las característi-cas del lenguaje vinculadas con genericidad como: parámetros formales, parámetros reales, instanciaciones genéricas y variantes de a...
Consiste el trabajo en el desarrollo de una herramienta de cálculo de estructuras reticlads planas desarrollado en lenguaje JAVA y un entorno gráfico. Se convierte en una herramienta útil y potente para la asimilación práctica de los conocimientos teóricos impartidos
El trabajo consiste en el desarrollo de una herramienta de cálculo de estructuras reticuladas planas desarrollado en lenguaje JAVA y un entorno gráfico. Se convierte en una herramienta útil y potente para la asimilación práctica de los conocimientos teóricos impartidos
Realizado en la Escuela Politécnica Superior, por 7 profesores del centro. El objetivo era construir una herramienta software que asista al alumno de Ingeniería Técnica en Informática de Gestión e Ingeniería Informática en la elaboración del diseño de diagramas de clases y posterior implementación de sistemas software a través de un mapeo en lengua...