60 research outputs found
Automatic generation of software interfaces for supporting decisionmaking processes. An application of domain engineering & machine learning
[EN] Data analysis is a key process to foster knowledge generation in particular domains
or fields of study. With a strong informative foundation derived from the analysis of
collected data, decision-makers can make strategic choices with the aim of obtaining
valuable benefits in their specific areas of action. However, given the steady growth
of data volumes, data analysis needs to rely on powerful tools to enable knowledge
extraction.
Information dashboards offer a software solution to analyze large volumes of
data visually to identify patterns and relations and make decisions according to the
presented information. But decision-makers may have different goals and,
consequently, different necessities regarding their dashboards. Moreover, the variety
of data sources, structures, and domains can hamper the design and implementation
of these tools.
This Ph.D. Thesis tackles the challenge of improving the development process of
information dashboards and data visualizations while enhancing their quality and
features in terms of personalization, usability, and flexibility, among others.
Several research activities have been carried out to support this thesis. First, a
systematic literature mapping and review was performed to analyze different
methodologies and solutions related to the automatic generation of tailored
information dashboards. The outcomes of the review led to the selection of a modeldriven
approach in combination with the software product line paradigm to deal with
the automatic generation of information dashboards.
In this context, a meta-model was developed following a domain engineering
approach. This meta-model represents the skeleton of information dashboards and
data visualizations through the abstraction of their components and features and has
been the backbone of the subsequent generative pipeline of these tools.
The meta-model and generative pipeline have been tested through their
integration in different scenarios, both theoretical and practical. Regarding the theoretical dimension of the research, the meta-model has been successfully
integrated with other meta-model to support knowledge generation in learning
ecosystems, and as a framework to conceptualize and instantiate information
dashboards in different domains.
In terms of the practical applications, the focus has been put on how to transform
the meta-model into an instance adapted to a specific context, and how to finally
transform this later model into code, i.e., the final, functional product. These practical
scenarios involved the automatic generation of dashboards in the context of a Ph.D.
Programme, the application of Artificial Intelligence algorithms in the process, and
the development of a graphical instantiation platform that combines the meta-model
and the generative pipeline into a visual generation system.
Finally, different case studies have been conducted in the employment and
employability, health, and education domains. The number of applications of the
meta-model in theoretical and practical dimensions and domains is also a result itself.
Every outcome associated to this thesis is driven by the dashboard meta-model, which
also proves its versatility and flexibility when it comes to conceptualize, generate, and
capture knowledge related to dashboards and data visualizations
Capturing high-level requirements of information dashboards' components through meta-modeling
[EN]Information dashboards are increasing their sophistication to match new necessities and adapt to the high quantities of generated data nowadays.These tools support visual analysis, knowledge generation, and thus, are crucial systems to assist decision-making processes.However, the design and development processes are complex, because several perspectives and components can be involved.Tailoringcapabilities are focused on providing individualized dashboards without affecting the time-to-market through the decrease of the development processes' time. Among the methods used to configure these tools, the software product lines paradigm and model-driven development can be found. These paradigms benefit from the study of the target domain and the abstraction of features, obtaining high-level models that can be instantiated into concrete models. This paper presents a dashboard meta-model that aims to be applicable to any dashboard. Through domain engineering, different features of these tools are identified and arranged into abstract structuresand relationships to gain a better understanding of the domain. The goal of the meta-model is to obtain a framework for instantiating any dashboard to adapt them to different contexts and user profiles.One of the contexts in which dashboards are gaining relevance is Learning Analytics, as learning dashboards are powerful tools for assisting teachers and students in their learning activities.To illustrate the instantiation process of the presented meta-model, a small example within this relevant context (Learning Analytics) is also provided
Automatic generation of software interfaces for supporting decision-making processes. An application of domain engineering and machine learning
Information dashboards are sophisticated tools. Although they
enable users to reach useful insights and support their decisionmaking
challenges, a good design process is essential to obtain
powerful tools. Users need to be part of these design processes,
as they will be the consumers of the information displayed. But
users are very diverse and can have different goals, beliefs,
preferences, etc., and creating a new dashboard for each
potential user is not viable. There exist several tools that allow
users to configure their displays without requiring programming
skills. However, users might not exactly know what they want to
visualize or explore, also becoming the configuration process a
tedious task. This research project aims to explore the automatic
generation of user interfaces for supporting these decisionmaking
processes. To tackle these challenges, a domain
engineering, and machine learning approach is taken. The main
goal is to automatize the design process of dashboards by
learning from the context, including the end-users and the target
data to be displayed
Aplicación de ingeniería de dominio para la generación de dashboards personalizados
Trabajo de Fin de Máster en Ingeniería Informática. Curso 2017-2018[ES]Los paneles de información (dashboards, en inglés), juegan un papel clave en el proceso de análisis y visualización de datos sobre un tema o dominio específico. En esencia, los dashboards muestran información y permiten a los usuarios generar conocimiento y llegar a conclusiones para poder realizar una toma de decisiones con una consistente base informativa. Sin embargo, los usuarios finales pueden presentar una serie significativa de necesidades que difieren entre sí, incluyendo la información mostrada, características de diseño o incluso funcionalidades. Aplicar un enfoque de ingeniería de dominio (dentro del paradigma de las líneas de productos software) trae consigo valiosos beneficios, permitiendo producir dashboards personalizados y adaptados a los requisitos particulares de cada usuario (o grupo de usuarios) implicado mediante la identificación de similitudes y puntos de variabilidad de cada producto que podría ser parte de la línea. A través de la parametrización de características y la configuración de los componentes de presentación y fuentes de datos, es posible obtener una línea de productos software de paneles de control, donde podrán irse variando los diversos componentes que conforman el panel, así como sus funcionalidades o fuentes de datos. La creación de esta línea de productos puede llegar a incrementar la productividad, la mantenibilidad y la trazabilidad en cuanto a la evolución de los requisitos de los dashboards, junto a otros beneficios. Para validar esta aplicación, se ha realizado un caso de estudio en el contexto del Observatorio de Empleabilidad y Empleo Universitarios, donde los usuarios (universidades españolas y administradores), podrán controlar sus propios dashboards para explorar datos sobre la empleabilidad y el empleo de sus graduados. Dichos dashboards serán generados automáticamente a través de un lenguaje específico de dominio (DSL), donde se podrán especificar los requisitos de cada usuario, y un generador de código basado en plantillas
What Do We Mean by GenAI? A Systematic Mapping of The Evolution, Trends, and Techniques Involved in Generative AI
Artificial Intelligence has become a focal point of interest across various sectors due to its ability to generate creative and realistic outputs. A specific subset, generative artificial intelligence, has seen significant growth, particularly in late 2022. Tools like ChatGPT, Dall-E, or Midjourney have democratized access to Large Language Models, enabling the creation of human-like content. However, the concept 'Generative Artificial Intelligence lacks a universally accepted definition, leading to potential misunderstandings. While a model that produces any output can be technically seen as generative, the Artificial Intelligent research community often reserves the term for complex models that generate high-quality, human-like material. This paper presents a literature mapping of AI-driven content generation, analyzing 631 solutions published over the last five years to better understand and characterize the Generative Artificial Intelligence landscape. Our findings suggest a dichotomy in the understanding and application of the term "Generative AI". While the broader public often interprets "Generative AI" as AI-driven creation of tangible content, the AI research community mainly discusses generative implementations with an emphasis on the models in use, without explicitly categorizing their work under the term "Generative AI"
Beneficios de la aplicación del paradigma de líneas de productos software para generar dashboards en contextos educativos
Data are crucial to improve decision-making and to obtain greater benefits in any type of activity. However, the large amount of information generated by new technologies has made data analysis and knowledge generation a complex task. Numerous tools have emerged to facilitate this knowledge generation, such as dashboards. Although dashboards are very powerful tools, their effectiveness can be affected by a bad design or by not taking into account the context in which they are placed. Therefore, it is necessary to design and create tailored dashboards according to the audience and data domain. Creating tailored dashboards can be very beneficial, but also a costly process in terms of time and resources. This paper presents an application of the software product line paradigm to generate dashboards adapted to any context in a more straightforward way by reusing both software components and knowledge. One of the contexts that can be especially favored by this approach is the educational context, where analítica del aprendizaje and the analysis of student performance to improve learning methodologies are becoming very popular. Having tailored dashboards for any role (student, teacher, administrator, etc.) can improve decision making processes by showing each user the information that interests them most in the way that best enables them to understand it.Los datos son cruciales para mejorar la toma de decisiones y obtener mayores beneficios en cualquier tipo de actividad. Sin embargo, la gran cantidad de información generada debido a las nuevas tecnologías ha convertido el análisis de los datos y la generación de conocimiento a partir de ellos en una tarea compleja. Numerosas herramientas han surgido para facilitar esta generación de conocimiento, como es el caso de los dashboards o paneles de información. Aunque los paneles de control sean herramientas muy potentes, su efectividad puede verse afectada por un mal diseño o por no tener en cuenta el contexto en el que se encuadran. Por ello, es necesario diseñar y crear paneles de control a medida en función de la audiencia y dominio de los datos. Crear paneles de control personalizados puede ser muy beneficioso, pero también un proceso costoso en lo que al tiempo y recursos se refiere. Este trabajo presenta una aplicación del paradigma de líneas de productos software para generar paneles de control adaptados a cualquier contexto de manera más sencilla, reutilizando tanto componentes software como conocimiento. Uno de los contextos que puede verse especialmente favorecido por este enfoque es el contexto educativo, donde la analítica del aprendizaje y el análisis de datos sobre el rendimiento de los estudiantes se está popularizando. Contar con paneles de control personalizables para cualquier rol (estudiante, profesor, administrador, etc.) puede mejorar los procesos de toma de decisiones, mostrando a cada usuario la información que más le interesa de la forma que mejor le permita comprenderla
Addressing Fine-Grained Variability in User-Centered Software Product Lines: A Case Study on Dashboards
Software product lines provide a theoretical framework to generate
and customize products by studying the target domain and by capturing the
commonalities among the potential products of the family. This domain
knowledge is subsequently used to implement a series of configurable core
assets that will be systematically reused to obtain products with different features
to match particular user requirements. Some kind of interactive systems,
like dashboards, require special attention as their features are very fine-grained.
Having the capacity of configuring a dashboard product to match particular user
requirements can improve the utility of these products by providing the support
to users to reach useful insights, in addition to a decrease in the development
time and an increase in maintainability. Several techniques for implementing
features and variability points in the context of SPLs are available, and it is
important to choose the right one to exploit the SPL paradigm benefits to the
maximum. This work addresses the materialization of fine-grained variability in
SPL through code templates and macros, framed in the particular domain of
dashboards
C4 model in a Software Engineering subject to ease the comprehension of UML and the software development process
Software engineering provides the competences
and skills to design and develop robust, secure and efficient
applications that solve real problems. Students have to develop
their abstract thinking to find solutions taking into account not
only technical development, but economic and social impact. In
previous years, different changes have been introduced in the
teaching methods with significant outcomes. However, students
are still facing difficulties with one of the core contents of the
subject, UML. For this reason, the present work aims to
introduce C4 model as a complement of the existing UML
diagrams. This proposal uses the two first levels of the C4
model to complement the requirements elicitation process,
traditionally based only on use cases, to let students start the
design of their systems without going into greater technical
details
Towards a Technological Ecosystem to Provide Information Dashboards as a Service: A Dynamic Proposal for Supplying Dashboards Adapted to Specific Scenarios
[EN]Data are crucial to improve decision-making and obtain greater benefits in any type of
activity. However, the large amount of information generated by new technologies has made data
analysis and knowledge generation a complex task. Numerous tools have emerged to facilitate
this generation of knowledge, such as dashboards. Although dashboards are useful tools, their
effectiveness can be affected by poor design or by not taking into account the context in which
they are placed. Therefore, it is necessary to design and create custom dashboards according to
the audience and data domain. This paper presents an application of the software product line
paradigm and the integration of this approach into a web service to allow users to request source
code for customized information dashboards. The main goal is to introduce the idea of creating a
holistic ecosystem of different services to craft and integrate information visualizations in a variety of
contexts. One of the contexts that can be especially favored by this approach is the educational context,
where learning analytics, data analysis of student performance, and didactic tools are becoming very
relevant. Three different use cases of this approach are presented to illustrate the benefits of the
developed generative service
Taking advantage of the software product line paradigm to generate customized user interfaces for decision-making processes: a case study on university employability
[EN]University employment and, specifically, employability has gained relevance since research in these fields can lead to improvement in the quality of life of individual citizens. However, empirical research is still insufficient to make significant decisions, and relying on powerful tools to explore data and reach insights on these fields is paramount. Information dashboards play a key role in analyzing and visually exploring data about a specific topic or domain, but end users can present several necessities that differ from each other, regarding the displayed information itself, design features and even functionalities. By applying a domain engineering approach (within the software product line paradigm), it is possible to produce customized dashboards to fit into particular requirements, by the identification of commonalities and singularities of every product that could be part of the product line. Software product lines increase productivity, maintainability and traceability regarding the evolution of the requirements, among other benefits. To validate this approach, a case study of its application in the context of the Spanish Observatory for University Employability and Employment system has been developed, where users (Spanish universities and administrators) can control their own dashboards to reach insights about the employability of their graduates. These dashboards have been automatically generated through a domain specific language, which provides the syntax to specify the requirements of each user. The domain language fuels a template-based code generator, allowing the generation of the dashboards' source code. Applying domain engineering to the dashboards' domain improves the development and maintainability of these complex software products given the variety of requirements that users might have regarding their graphical interfaces
- …