Derivación semisupervisada de especificaciones arquitectónicas por medio del análisis de requerimientos expresados en lenguaje natural

Autores
Lomagno, Cristian
Año de publicación
2016
Idioma
español castellano
Tipo de recurso
tesis de grado
Estado
versión aceptada
Colaborador/a o director/a de tesis
Soria, Álvaro
Rodriguez, Guillermo
Descripción
Los sistemas de software modernos se caracterizan principalmente por su creciente complejidad y tamaño. Por esta razón, el diseño arquitectónico de software se ha convertido en un aspecto esencial en el éxito de la mayoría de los proyectos. Una de las transiciones más complejas del proceso de desarrollo de software es la que ocurre entre la especificación de los requerimientos y su diseño arquitectónico. En este sentido, se cuenta con pocos métodos disponibles para asistir o guiar a los arquitectos de software en esa tarea, quienes deben seguir su intuición y experiencia para concebir la arquitectura del sistema. Este trabajo final propone un enfoque para ayudar a reducir la brecha entre las especificaciones de requerimientos y el diseño arquitectónico, a través de la generación asistida de Use Case Maps. En primer lugar se realizará la clasificación de los requerimientos del sistema para poder discriminar entre funcionales y no funcionales. Para realizar la clasificación de los mismos, se exploraron técnicas de clasificación como KNN y Naive-Bayes usando un conjunto de requerimientos previamente clasificados de forma manual para el entrenamiento de los clasificadores. Entre estos algoritmos, los resultados obtenidos indicaron que KNN es mejor para realizar la clasificación, obteniendo un accuracy superior al 98% y un recall superior al 82% para la identificación de requerimientos funcionales. Una vez clasificados, se analizarán los requerimientos funcionales con el objetivo de obtener un conjunto de responsabilidades que deberá cumplir el sistema para contemplar todas las funcionalidades del mismo. Para ello se utilizaron técnicas propias del procesamiento del lenguaje natural como Part of Speech Tagging para identificar las responsabilidades. Usando 5 proyectos de ejemplo, los resultados indicaron un accuracy entre 71% para el peor caso y un 100% para el mejor caso. Entre estos proyectos, el recall obtenido fue de 63% para el peor caso y 100% para el mejor caso. Finalmente, en base a estas responsabilidades se generarán Use Case Maps que ayudarán al arquitecto durante las etapas iniciales del diseño del sistema. Para ello se usarán técnicas del procesamiento del lenguaje natural, analizando los tiempos verbales, las preposiciones y las frases condicionales contenidas en los requerimientos para encontrar relaciones entre las responsabilidades identificadas. A la hora de buscar las menciones de responsabilidades en las diferentes oraciones de los requerimientos, se propusieron 2 estrategias. La primera consistió en usar “string matching” para buscar menciones de los verbos o sustantivos de las responsabilidades en las oraciones. La segunda fue la de incluir el uso de ontologías para la detección de las menciones de dichas responsabilidades en las oraciones. Es importante aclarar que en ambas estrategias, se acude al usuario para validar las relaciones detectadas. Al analizar ambas estrategias, usando 3 proyectos de estudio, la segunda estrategia que hace uso de ontologías obtuvo valores más altos de recall para los 3 proyectos, dando un promedio de 92% contra 68 %. En cuanto al accuracy obtenido, el uso de ontologías demostró comportarse mejor para 2 de los 3 proyectos, dando un promedio de 81% para la estrategia con ontologías contra 73% para la estrategia sin uso de ontologías. Sin embargo en el caso del proyecto en donde dio un accuracy inferior a la primera estrategia, la diferencia fue de tan solo del 5% para dicho proyecto. Adicionalmente, en ésta etapa se intentarán identificar los componentes del sistema y las responsabilidades de cada uno de ellos. En esta tarea se propuso 2 estrategias: la primera consiste en usar el algoritmo de clústering KMeans para agrupar las distintas responsabilidades en componentes conceptuales, en donde se obtuvo entropías superiores al 64 %; la segunda consiste en hacer uso de ontologías para determinar relaciones entre las responsabilidades y diferentes componentes definidos en la ontología, en donde la entropía obtenida fue de 0% para todos los casos. Sin embargo, luego de la evaluación de las 2 estrategias, se decidió excluir el uso de KMeans para la identificación de los componentes. Esto se decidió no solo por los resultados de entropía obtenidos, sino por que conceptualmente los componentes identificados no se corresponderían con los componentes arquitectónicos del sistema. El simple hecho de que el agrupamiento tome como entrada únicamente las responsabilidades(las cuales fueron obtenidas a partir de los requerimientos funcionales) indica que no se tuvieron en cuenta los requerimientos no-funcionales. Esto generaría que los componentes identificados no se correlacionen con los atributos de calidad requeridos por el sistema. Luego de evaluar cada uno de los procesos de dicha estrategia, se concluyó que la misma resultó muy flexible en cuanto al formato de entrada de los requerimientos. También resultó muy buena en cuanto a la posibilidad de incluir información del contexto del proyecto gracias al uso de las ontologías. Sin embargo, la herramienta resultó ser muy sensible a los errores ortográficos, tanto léxicos como sintácticos. También es importante aclarar que la misma se encuentra limitada al idioma inglés.
Fil: Lomagno, Cristian. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina
Fil: Soria, Álvaro. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina
Fil: Rodriguez, Guillermo. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina
Materia
Ingeniería de sistemas
Lenguaje natural
Arquitectura-computación
Diseño de software
Software
Ingeniería del software
Nivel de accesibilidad
acceso abierto
Condiciones de uso
http://creativecommons.org/licenses/by-nc-nd/2.5/ar/
Repositorio
RIDAA (UNICEN)
Institución
Universidad Nacional del Centro de la Provincia de Buenos Aires
OAI Identificador
oai:ridaa.unicen.edu.ar:123456789/757

id RIDUNICEN_5112525902c6d81ec14fed4b0aad3038
oai_identifier_str oai:ridaa.unicen.edu.ar:123456789/757
network_acronym_str RIDUNICEN
repository_id_str a
network_name_str RIDAA (UNICEN)
spelling Derivación semisupervisada de especificaciones arquitectónicas por medio del análisis de requerimientos expresados en lenguaje naturalLomagno, CristianIngeniería de sistemasLenguaje naturalArquitectura-computaciónDiseño de softwareSoftwareIngeniería del softwareLos sistemas de software modernos se caracterizan principalmente por su creciente complejidad y tamaño. Por esta razón, el diseño arquitectónico de software se ha convertido en un aspecto esencial en el éxito de la mayoría de los proyectos. Una de las transiciones más complejas del proceso de desarrollo de software es la que ocurre entre la especificación de los requerimientos y su diseño arquitectónico. En este sentido, se cuenta con pocos métodos disponibles para asistir o guiar a los arquitectos de software en esa tarea, quienes deben seguir su intuición y experiencia para concebir la arquitectura del sistema. Este trabajo final propone un enfoque para ayudar a reducir la brecha entre las especificaciones de requerimientos y el diseño arquitectónico, a través de la generación asistida de Use Case Maps. En primer lugar se realizará la clasificación de los requerimientos del sistema para poder discriminar entre funcionales y no funcionales. Para realizar la clasificación de los mismos, se exploraron técnicas de clasificación como KNN y Naive-Bayes usando un conjunto de requerimientos previamente clasificados de forma manual para el entrenamiento de los clasificadores. Entre estos algoritmos, los resultados obtenidos indicaron que KNN es mejor para realizar la clasificación, obteniendo un accuracy superior al 98% y un recall superior al 82% para la identificación de requerimientos funcionales. Una vez clasificados, se analizarán los requerimientos funcionales con el objetivo de obtener un conjunto de responsabilidades que deberá cumplir el sistema para contemplar todas las funcionalidades del mismo. Para ello se utilizaron técnicas propias del procesamiento del lenguaje natural como Part of Speech Tagging para identificar las responsabilidades. Usando 5 proyectos de ejemplo, los resultados indicaron un accuracy entre 71% para el peor caso y un 100% para el mejor caso. Entre estos proyectos, el recall obtenido fue de 63% para el peor caso y 100% para el mejor caso. Finalmente, en base a estas responsabilidades se generarán Use Case Maps que ayudarán al arquitecto durante las etapas iniciales del diseño del sistema. Para ello se usarán técnicas del procesamiento del lenguaje natural, analizando los tiempos verbales, las preposiciones y las frases condicionales contenidas en los requerimientos para encontrar relaciones entre las responsabilidades identificadas. A la hora de buscar las menciones de responsabilidades en las diferentes oraciones de los requerimientos, se propusieron 2 estrategias. La primera consistió en usar “string matching” para buscar menciones de los verbos o sustantivos de las responsabilidades en las oraciones. La segunda fue la de incluir el uso de ontologías para la detección de las menciones de dichas responsabilidades en las oraciones. Es importante aclarar que en ambas estrategias, se acude al usuario para validar las relaciones detectadas. Al analizar ambas estrategias, usando 3 proyectos de estudio, la segunda estrategia que hace uso de ontologías obtuvo valores más altos de recall para los 3 proyectos, dando un promedio de 92% contra 68 %. En cuanto al accuracy obtenido, el uso de ontologías demostró comportarse mejor para 2 de los 3 proyectos, dando un promedio de 81% para la estrategia con ontologías contra 73% para la estrategia sin uso de ontologías. Sin embargo en el caso del proyecto en donde dio un accuracy inferior a la primera estrategia, la diferencia fue de tan solo del 5% para dicho proyecto. Adicionalmente, en ésta etapa se intentarán identificar los componentes del sistema y las responsabilidades de cada uno de ellos. En esta tarea se propuso 2 estrategias: la primera consiste en usar el algoritmo de clústering KMeans para agrupar las distintas responsabilidades en componentes conceptuales, en donde se obtuvo entropías superiores al 64 %; la segunda consiste en hacer uso de ontologías para determinar relaciones entre las responsabilidades y diferentes componentes definidos en la ontología, en donde la entropía obtenida fue de 0% para todos los casos. Sin embargo, luego de la evaluación de las 2 estrategias, se decidió excluir el uso de KMeans para la identificación de los componentes. Esto se decidió no solo por los resultados de entropía obtenidos, sino por que conceptualmente los componentes identificados no se corresponderían con los componentes arquitectónicos del sistema. El simple hecho de que el agrupamiento tome como entrada únicamente las responsabilidades(las cuales fueron obtenidas a partir de los requerimientos funcionales) indica que no se tuvieron en cuenta los requerimientos no-funcionales. Esto generaría que los componentes identificados no se correlacionen con los atributos de calidad requeridos por el sistema. Luego de evaluar cada uno de los procesos de dicha estrategia, se concluyó que la misma resultó muy flexible en cuanto al formato de entrada de los requerimientos. También resultó muy buena en cuanto a la posibilidad de incluir información del contexto del proyecto gracias al uso de las ontologías. Sin embargo, la herramienta resultó ser muy sensible a los errores ortográficos, tanto léxicos como sintácticos. También es importante aclarar que la misma se encuentra limitada al idioma inglés.Fil: Lomagno, Cristian. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; ArgentinaFil: Soria, Álvaro. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; ArgentinaFil: Rodriguez, Guillermo. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; ArgentinaUniversidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias ExactasSoria, ÁlvaroRodriguez, Guillermo2016-062016-10-13T14:01:16Zinfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/acceptedVersionhttp://purl.org/coar/resource_type/c_7a1finfo:ar-repo/semantics/tesisDeGradoapplication/pdfapplication/pdfhttp://www.ridaa.unicen.edu.ar/xmlui/handle/123456789/757https://www.ridaa.unicen.edu.ar/handle/123456789/757spahttp://creativecommons.org/licenses/by-nc-nd/2.5/ar/info:eu-repo/semantics/openAccessreponame:RIDAA (UNICEN)instname:Universidad Nacional del Centro de la Provincia de Buenos Aires2025-10-23T11:15:36Zoai:ridaa.unicen.edu.ar:123456789/757instacron:UNICENInstitucionalhttps://www.ridaa.unicen.edu.ar/Universidad públicaNo correspondehttps://www.ridaa.unicen.edu.ar/oailleiboff@rec.unicen.edu.ar;gimeroni@rec.unicen.edu.ar;lvarela@rec.unicen.edu.ar ;ArgentinaNo correspondeNo correspondeNo correspondeopendoar:a2025-10-23 11:15:36.404RIDAA (UNICEN) - Universidad Nacional del Centro de la Provincia de Buenos Airesfalse
dc.title.none.fl_str_mv Derivación semisupervisada de especificaciones arquitectónicas por medio del análisis de requerimientos expresados en lenguaje natural
title Derivación semisupervisada de especificaciones arquitectónicas por medio del análisis de requerimientos expresados en lenguaje natural
spellingShingle Derivación semisupervisada de especificaciones arquitectónicas por medio del análisis de requerimientos expresados en lenguaje natural
Lomagno, Cristian
Ingeniería de sistemas
Lenguaje natural
Arquitectura-computación
Diseño de software
Software
Ingeniería del software
title_short Derivación semisupervisada de especificaciones arquitectónicas por medio del análisis de requerimientos expresados en lenguaje natural
title_full Derivación semisupervisada de especificaciones arquitectónicas por medio del análisis de requerimientos expresados en lenguaje natural
title_fullStr Derivación semisupervisada de especificaciones arquitectónicas por medio del análisis de requerimientos expresados en lenguaje natural
title_full_unstemmed Derivación semisupervisada de especificaciones arquitectónicas por medio del análisis de requerimientos expresados en lenguaje natural
title_sort Derivación semisupervisada de especificaciones arquitectónicas por medio del análisis de requerimientos expresados en lenguaje natural
dc.creator.none.fl_str_mv Lomagno, Cristian
author Lomagno, Cristian
author_facet Lomagno, Cristian
author_role author
dc.contributor.none.fl_str_mv Soria, Álvaro
Rodriguez, Guillermo
dc.subject.none.fl_str_mv Ingeniería de sistemas
Lenguaje natural
Arquitectura-computación
Diseño de software
Software
Ingeniería del software
topic Ingeniería de sistemas
Lenguaje natural
Arquitectura-computación
Diseño de software
Software
Ingeniería del software
dc.description.none.fl_txt_mv Los sistemas de software modernos se caracterizan principalmente por su creciente complejidad y tamaño. Por esta razón, el diseño arquitectónico de software se ha convertido en un aspecto esencial en el éxito de la mayoría de los proyectos. Una de las transiciones más complejas del proceso de desarrollo de software es la que ocurre entre la especificación de los requerimientos y su diseño arquitectónico. En este sentido, se cuenta con pocos métodos disponibles para asistir o guiar a los arquitectos de software en esa tarea, quienes deben seguir su intuición y experiencia para concebir la arquitectura del sistema. Este trabajo final propone un enfoque para ayudar a reducir la brecha entre las especificaciones de requerimientos y el diseño arquitectónico, a través de la generación asistida de Use Case Maps. En primer lugar se realizará la clasificación de los requerimientos del sistema para poder discriminar entre funcionales y no funcionales. Para realizar la clasificación de los mismos, se exploraron técnicas de clasificación como KNN y Naive-Bayes usando un conjunto de requerimientos previamente clasificados de forma manual para el entrenamiento de los clasificadores. Entre estos algoritmos, los resultados obtenidos indicaron que KNN es mejor para realizar la clasificación, obteniendo un accuracy superior al 98% y un recall superior al 82% para la identificación de requerimientos funcionales. Una vez clasificados, se analizarán los requerimientos funcionales con el objetivo de obtener un conjunto de responsabilidades que deberá cumplir el sistema para contemplar todas las funcionalidades del mismo. Para ello se utilizaron técnicas propias del procesamiento del lenguaje natural como Part of Speech Tagging para identificar las responsabilidades. Usando 5 proyectos de ejemplo, los resultados indicaron un accuracy entre 71% para el peor caso y un 100% para el mejor caso. Entre estos proyectos, el recall obtenido fue de 63% para el peor caso y 100% para el mejor caso. Finalmente, en base a estas responsabilidades se generarán Use Case Maps que ayudarán al arquitecto durante las etapas iniciales del diseño del sistema. Para ello se usarán técnicas del procesamiento del lenguaje natural, analizando los tiempos verbales, las preposiciones y las frases condicionales contenidas en los requerimientos para encontrar relaciones entre las responsabilidades identificadas. A la hora de buscar las menciones de responsabilidades en las diferentes oraciones de los requerimientos, se propusieron 2 estrategias. La primera consistió en usar “string matching” para buscar menciones de los verbos o sustantivos de las responsabilidades en las oraciones. La segunda fue la de incluir el uso de ontologías para la detección de las menciones de dichas responsabilidades en las oraciones. Es importante aclarar que en ambas estrategias, se acude al usuario para validar las relaciones detectadas. Al analizar ambas estrategias, usando 3 proyectos de estudio, la segunda estrategia que hace uso de ontologías obtuvo valores más altos de recall para los 3 proyectos, dando un promedio de 92% contra 68 %. En cuanto al accuracy obtenido, el uso de ontologías demostró comportarse mejor para 2 de los 3 proyectos, dando un promedio de 81% para la estrategia con ontologías contra 73% para la estrategia sin uso de ontologías. Sin embargo en el caso del proyecto en donde dio un accuracy inferior a la primera estrategia, la diferencia fue de tan solo del 5% para dicho proyecto. Adicionalmente, en ésta etapa se intentarán identificar los componentes del sistema y las responsabilidades de cada uno de ellos. En esta tarea se propuso 2 estrategias: la primera consiste en usar el algoritmo de clústering KMeans para agrupar las distintas responsabilidades en componentes conceptuales, en donde se obtuvo entropías superiores al 64 %; la segunda consiste en hacer uso de ontologías para determinar relaciones entre las responsabilidades y diferentes componentes definidos en la ontología, en donde la entropía obtenida fue de 0% para todos los casos. Sin embargo, luego de la evaluación de las 2 estrategias, se decidió excluir el uso de KMeans para la identificación de los componentes. Esto se decidió no solo por los resultados de entropía obtenidos, sino por que conceptualmente los componentes identificados no se corresponderían con los componentes arquitectónicos del sistema. El simple hecho de que el agrupamiento tome como entrada únicamente las responsabilidades(las cuales fueron obtenidas a partir de los requerimientos funcionales) indica que no se tuvieron en cuenta los requerimientos no-funcionales. Esto generaría que los componentes identificados no se correlacionen con los atributos de calidad requeridos por el sistema. Luego de evaluar cada uno de los procesos de dicha estrategia, se concluyó que la misma resultó muy flexible en cuanto al formato de entrada de los requerimientos. También resultó muy buena en cuanto a la posibilidad de incluir información del contexto del proyecto gracias al uso de las ontologías. Sin embargo, la herramienta resultó ser muy sensible a los errores ortográficos, tanto léxicos como sintácticos. También es importante aclarar que la misma se encuentra limitada al idioma inglés.
Fil: Lomagno, Cristian. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina
Fil: Soria, Álvaro. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina
Fil: Rodriguez, Guillermo. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina
description Los sistemas de software modernos se caracterizan principalmente por su creciente complejidad y tamaño. Por esta razón, el diseño arquitectónico de software se ha convertido en un aspecto esencial en el éxito de la mayoría de los proyectos. Una de las transiciones más complejas del proceso de desarrollo de software es la que ocurre entre la especificación de los requerimientos y su diseño arquitectónico. En este sentido, se cuenta con pocos métodos disponibles para asistir o guiar a los arquitectos de software en esa tarea, quienes deben seguir su intuición y experiencia para concebir la arquitectura del sistema. Este trabajo final propone un enfoque para ayudar a reducir la brecha entre las especificaciones de requerimientos y el diseño arquitectónico, a través de la generación asistida de Use Case Maps. En primer lugar se realizará la clasificación de los requerimientos del sistema para poder discriminar entre funcionales y no funcionales. Para realizar la clasificación de los mismos, se exploraron técnicas de clasificación como KNN y Naive-Bayes usando un conjunto de requerimientos previamente clasificados de forma manual para el entrenamiento de los clasificadores. Entre estos algoritmos, los resultados obtenidos indicaron que KNN es mejor para realizar la clasificación, obteniendo un accuracy superior al 98% y un recall superior al 82% para la identificación de requerimientos funcionales. Una vez clasificados, se analizarán los requerimientos funcionales con el objetivo de obtener un conjunto de responsabilidades que deberá cumplir el sistema para contemplar todas las funcionalidades del mismo. Para ello se utilizaron técnicas propias del procesamiento del lenguaje natural como Part of Speech Tagging para identificar las responsabilidades. Usando 5 proyectos de ejemplo, los resultados indicaron un accuracy entre 71% para el peor caso y un 100% para el mejor caso. Entre estos proyectos, el recall obtenido fue de 63% para el peor caso y 100% para el mejor caso. Finalmente, en base a estas responsabilidades se generarán Use Case Maps que ayudarán al arquitecto durante las etapas iniciales del diseño del sistema. Para ello se usarán técnicas del procesamiento del lenguaje natural, analizando los tiempos verbales, las preposiciones y las frases condicionales contenidas en los requerimientos para encontrar relaciones entre las responsabilidades identificadas. A la hora de buscar las menciones de responsabilidades en las diferentes oraciones de los requerimientos, se propusieron 2 estrategias. La primera consistió en usar “string matching” para buscar menciones de los verbos o sustantivos de las responsabilidades en las oraciones. La segunda fue la de incluir el uso de ontologías para la detección de las menciones de dichas responsabilidades en las oraciones. Es importante aclarar que en ambas estrategias, se acude al usuario para validar las relaciones detectadas. Al analizar ambas estrategias, usando 3 proyectos de estudio, la segunda estrategia que hace uso de ontologías obtuvo valores más altos de recall para los 3 proyectos, dando un promedio de 92% contra 68 %. En cuanto al accuracy obtenido, el uso de ontologías demostró comportarse mejor para 2 de los 3 proyectos, dando un promedio de 81% para la estrategia con ontologías contra 73% para la estrategia sin uso de ontologías. Sin embargo en el caso del proyecto en donde dio un accuracy inferior a la primera estrategia, la diferencia fue de tan solo del 5% para dicho proyecto. Adicionalmente, en ésta etapa se intentarán identificar los componentes del sistema y las responsabilidades de cada uno de ellos. En esta tarea se propuso 2 estrategias: la primera consiste en usar el algoritmo de clústering KMeans para agrupar las distintas responsabilidades en componentes conceptuales, en donde se obtuvo entropías superiores al 64 %; la segunda consiste en hacer uso de ontologías para determinar relaciones entre las responsabilidades y diferentes componentes definidos en la ontología, en donde la entropía obtenida fue de 0% para todos los casos. Sin embargo, luego de la evaluación de las 2 estrategias, se decidió excluir el uso de KMeans para la identificación de los componentes. Esto se decidió no solo por los resultados de entropía obtenidos, sino por que conceptualmente los componentes identificados no se corresponderían con los componentes arquitectónicos del sistema. El simple hecho de que el agrupamiento tome como entrada únicamente las responsabilidades(las cuales fueron obtenidas a partir de los requerimientos funcionales) indica que no se tuvieron en cuenta los requerimientos no-funcionales. Esto generaría que los componentes identificados no se correlacionen con los atributos de calidad requeridos por el sistema. Luego de evaluar cada uno de los procesos de dicha estrategia, se concluyó que la misma resultó muy flexible en cuanto al formato de entrada de los requerimientos. También resultó muy buena en cuanto a la posibilidad de incluir información del contexto del proyecto gracias al uso de las ontologías. Sin embargo, la herramienta resultó ser muy sensible a los errores ortográficos, tanto léxicos como sintácticos. También es importante aclarar que la misma se encuentra limitada al idioma inglés.
publishDate 2016
dc.date.none.fl_str_mv 2016-06
2016-10-13T14:01:16Z
dc.type.none.fl_str_mv info:eu-repo/semantics/bachelorThesis
info:eu-repo/semantics/acceptedVersion
http://purl.org/coar/resource_type/c_7a1f
info:ar-repo/semantics/tesisDeGrado
format bachelorThesis
status_str acceptedVersion
dc.identifier.none.fl_str_mv http://www.ridaa.unicen.edu.ar/xmlui/handle/123456789/757
https://www.ridaa.unicen.edu.ar/handle/123456789/757
url http://www.ridaa.unicen.edu.ar/xmlui/handle/123456789/757
https://www.ridaa.unicen.edu.ar/handle/123456789/757
dc.language.none.fl_str_mv spa
language spa
dc.rights.none.fl_str_mv http://creativecommons.org/licenses/by-nc-nd/2.5/ar/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv http://creativecommons.org/licenses/by-nc-nd/2.5/ar/
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
application/pdf
dc.publisher.none.fl_str_mv Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas
publisher.none.fl_str_mv Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas
dc.source.none.fl_str_mv reponame:RIDAA (UNICEN)
instname:Universidad Nacional del Centro de la Provincia de Buenos Aires
reponame_str RIDAA (UNICEN)
collection RIDAA (UNICEN)
instname_str Universidad Nacional del Centro de la Provincia de Buenos Aires
repository.name.fl_str_mv RIDAA (UNICEN) - Universidad Nacional del Centro de la Provincia de Buenos Aires
repository.mail.fl_str_mv lleiboff@rec.unicen.edu.ar;gimeroni@rec.unicen.edu.ar;lvarela@rec.unicen.edu.ar ;
_version_ 1846785151572377600
score 12.982451