Papers by Marcela Daniele

En la actualidad existe una gran cantidad de proyectos o aplicaciones que disponen de una API RES... more En la actualidad existe una gran cantidad de proyectos o aplicaciones que disponen de una API REST, una nueva opción o estilo de uso de los Servicios Web (Web Services, WS), para la creación de servicios profesionales. Twitter, YouTube, los sistemas de identificación con Facebook, y cientos de empresas generan negocio gracias a REST y las APIs REST. REST es una interfaz entre sistemas que usa HTTP para obtener datos o generar operaciones sobre esos datos en todos los formatos posibles, como XML, JSON, HTTP, etc. En los últimos años logró un gran impacto en la web que prácticamente logró desplazar a SOAP y las interfaces basadas en WSDL por tener un estilo bastante más simple de utilizar y sobre todo por su eficiencia. La línea de investigación propone un mecanismo de generación de API REST a partir de versiones existentes de API Java, en el contexto del desarrollo dirigido por modelos (Model-Driven Development, MDD), para la construcción de WSs. Aplicar esta técnica mediante la tran...

Model Driver Architecture (MDA) define un proceso de construc- cion del software basado en la pro... more Model Driver Architecture (MDA) define un proceso de construc- cion del software basado en la produccion y transformacion de modelos. MDA se fundamenta en los principios de abstraccion, automatizacion y estandariza- cion. Vinculado con la filosofia MDA, la Object Management Group (OMG) ha definido el estandar Query/View/Transformation (QVT) para la definicion y transformacion de modelos de software. Por otro lado, el Proceso Unificado (PU), tambien define un proceso de construccion del software generando distin- tas vistas o modelos. En este trabajo se sientan las bases para la integracion de MDA y el PU. Se propone un conjunto de reglas QVT que establecen una trans- formacion de forma automatica entre los modelos producidos en las etapas de Captura de Requisitos y Analisis. El objetivo del trabajo es la definicion del conjunto completo de reglas QVT que posibiliten la transicion desde la etapa de Captura de Requerimientos a la etapa de Analisis.
Se presenta un análisis de las habilidades de Pensamiento Computacional que poseen docentes de ni... more Se presenta un análisis de las habilidades de Pensamiento Computacional que poseen docentes de nivel primario, que en la actualidad cursan la Especialización Docente de Nivel Superior en Didáctica en Ciencias de la Computación, en la ciudad de Río Cuarto. Como herramienta de recolección de datos se utilizaron los Problemas Bebras para medir habilidades de Pensamiento Computacional que poseen estos docentes, detectando que un alto porcentaje, pudo resolver problemas de complejidad media que implican habilidades, tales como, abstracción, reconocimiento de patrones, modelos y simulación, algoritmos y descomposición.

Resumen Los Sistemas de Administracion de Workflow permiten automatizar la ejecucion de los proce... more Resumen Los Sistemas de Administracion de Workflow permiten automatizar la ejecucion de los procesos de negocio sobre uno o mas motores Workflow. Para lograr su comunicacion con las aplicaciones externas, la WfMC definio la Interfaz de Aplicaciones Invocadas, la cual requiere que la informacion acerca de la aplicacion y su invocacion sea codificada en tiempo de desarrollo, y no sea posible en tiempo de ejecucion acceder a otra aplicacion diferente que ofrezca el mismo servicio. En trabajos anteriores se propuso una alternativa para optimizar la comunicacion del motor workflow con las aplicaciones externas, permitiendo invocar una aplicacion a partir de los servicios web disponibles que satisfacen su requerimiento. Pero UDDI, protocolo utilizado para registrar y localizar los servicios web, presenta algunos inconvenientes al momento de seleccionar un servicio, ya que el registro del mismo no tiene en cuenta su semantica, dificultando asi el descubrimiento de mas de un servicio que sa...

El Pensamiento Computacional es definido como un proceso mental utilizado para formular problemas... more El Pensamiento Computacional es definido como un proceso mental utilizado para formular problemas y soluciones de manera que puedan ser llevadas adelante por un agente de proceso de información. Estudios y tendencias a nivel mundial dan cuenta de la importancia de incorporar y desarrollar el Pensamiento Computacional (PC) en el sistema educativo obligatorio. El PC define un proceso de resolución de problemas fortaleciendo capacidades de organización lógica, abstracción, secuenciamiento, verificación de errores, entre otras. Por otro lado, los Trastornos del Espectro Autista (TEA) se definen como una disfunción neurológica del desarrollo que afecta principalmente capacidades sociales y ejecutivas. La función ejecutiva puede ser definida como el proceso que interviene en el control y monitoreo de los pensamientos y acciones, tomando dentro de esto la planeación, autorregulación, organización del pensamiento, flexibilidad cognitiva, detección y corrección de errores, inhibición y resi...
Ma r c e l o Uv a , Ma r c e l a Da n i e l e y Da r i o As t o r g a Un i v e r s i d a d Na c i... more Ma r c e l o Uv a , Ma r c e l a Da n i e l e y Da r i o As t o r g a Un i v e r s i d a d Na c i o n a l d e R í o C u a r t o { u v a , ma r c e l a , a s t o r g a d } @d c. e x a. u n r c. e d u. a r

La industria del software crece y se expande a nuevos ámbitos permanentemente, generando nuevas m... more La industria del software crece y se expande a nuevos ámbitos permanentemente, generando nuevas metodologías de desarrollo y de trabajo, adopción de herramientas Open Source para automatizar y mejorar las actividades de gestión, planificación, diseño, implementación y automatización de pruebas que hacen a la producción del software. Se hace necesario entonces una constante revisión y reflexión sobre las prácticas de enseñanza y los procesos de aprendizaje que se llevan a cabo en las carreras de computación de la Universidad. Este trabajo involucra a docentes y asignaturas compartidas por el último año de Analista en Computación, y tercer año de la Licenciatura en Ciencias de la Computación. En ellas se abordan contenidos curriculares desde el punto de vista teórico, práctico, y actitudinal, que contribuyen al desarrollo de estrategias y habilidades para el trabajo grupal e individual en la industria del desarrollo de software. Nos interesa conocer si los contenidos, actividades, est...
The results of a research on Computational Thinking skills in primary-level teachers, who complet... more The results of a research on Computational Thinking skills in primary-level teachers, who completed a specialization in computer science didactics, are presented. The methodology was mixed – qualitative and quantitative. As data collection instruments, two tests based on the Bebras Problems were used. To analyze the texts written by the teachers on how they solve the problems, content analysis was used. It was found that a high percentage of teachers managed to solve problems of medium complexity that involve skills such as abstraction, pattern recognition, models and simulation, algorithms and decomposition. Moreover, it was observed that teachers manifest significant difficulties in describing and explaining when writing the process of solving the problems posed.

[10 p.]Durante la última década, la relación entre la Universidad y la industria de software se h... more [10 p.]Durante la última década, la relación entre la Universidad y la industria de software se ha vuelto cada vez más estrecha. Pequeñas, medianas y grandes empresas se acercan continuamente a las universidades en busca de recursos humanos calificados. Los dinámicos avances tecnológicos y su aplicación a numerosos ámbitos del mercado, han generado la necesidad de adoptar nuevas herramientas, nuevas metodologías de desarrollo de software y nuevas modalidades de trabajo, como outsourcing y freelance, entre otros. Estos permanentes cambios, generan un trabajo constante de adaptación de los métodos de enseñanza y aprendizaje utilizados, principalmente en asignaturas de Ingeniería de Software, procurando generar graduados altamente capacitados y aprestos a insertarse de manera inmediata en el mercado laboral. En este trabajo se expone una experiencia desarrollada durante los dos últimos años en las asignaturas de Ingeniería de Software que favorece la necesaria proximidad entre la formación académica brindada a los graduados y las necesidades del mercado laboral. Esta propuesta se basa principalmente en el desarrollo de un proyecto integrador donde los estudiantes deben analizar, seleccionar y aplicar un conjunto de herramientas y tecnologías, fuertemente utilizadas en la industria de desarrollo de software, a un proyecto de software concreto.Fil: Daniele, Marcela. Universidad Católica de Salta. Facultad de Ingeniería e Informática; Argentina.Fil: Uva, Marcelo. Universidad Católica de Salta. Facultad de Ingeniería e Informática; Argentina.Fil: Arsaute, Ariel. Universidad Católica de Salta. Facultad de Ingeniería e Informática; Argentina.Fil: Brusatti, Franco. Universidad Católica de Salta. Facultad de Ingeniería e Informática; Argentina
Resumen La enseñanza y el aprendizaje de conceptos y técnicas de ingeniería de software, presenta... more Resumen La enseñanza y el aprendizaje de conceptos y técnicas de ingeniería de software, presenta un importante desafío en las carreras de informática. Este trabajo propone una metodología para la enseñanza y el aprendizaje de temas vinculados a la Gestión de Proyectos de Software.La implementación de esta metodología en un curso de Ingeniería de Software, brinda al alumno la posibilidad de solidificar los conocimientos teóricos aprendidos en la carrera, a través de su aplicación en proyectos reales y con un uso intensivo de herramientas que faciliten su futuro desempeño profesional.

En el día a día, el ingeniero de software se enfrenta con problemas que pertenecen a diferentes c... more En el día a día, el ingeniero de software se enfrenta con problemas que pertenecen a diferentes contextos de aplicación pero presentan un comportamiento similar. Situaciones en las que el ingeniero debe esforzarse por plantear soluciones genéricas, que sean instanciadas y den solución a problemas específicos similares. Los patrones de software representan soluciones reusables en problemas recurrentes, definidos como una descripción de clases y objetos comunicándose entre sí, adaptada para resolver un problema de diseño general en un contexto particular. Las especificación de las plantillas genéricas para la definición de casos de uso en problemas de inserción, eliminación, modificación y búsqueda de elemento representan un patrón de solución a ese tipo de problemas. Su principal propósito es que los alumnos aprendan a construir modelos que representen una solución para el problema planteado, y resulten en soluciones genéricas reusables. Este trabajo propone la construcción de un framework genérico distribuido, que extiende la especificación de las plantillas genéricas para la definición de casos de uso, utilizando tecnología de servicios web y aprovechando sus ventajas provistas en sistemas distribuidos. Este framework facilita la inclusión de temas vinculados a patrones de diseño y tecnologías distribuidas, ayudando a los estudiantes, futuros ingenieros de software, la comprensión de dichos temas.
The Design Patterns constitute one of the innovations of more impact on the oriented-objects deve... more The Design Patterns constitute one of the innovations of more impact on the oriented-objects development, and their use is more and more required by the software engineers. For this reason, the use of design patterns is considered a basic ability that should acquire the students in Computer Sciences. In this work has been developed a framework for the development of final works of the computation careers, applying different design patterns (mediator, dates transfer object, registry) in the layers of the system. This framework allows to work with distributed objects applying concepts like persistence, remote procedure call (RPC) and client-server, and its construction is the result of the evolution of the generic template for the description of use cases.

Journal of Computational Methods in Sciences and Engineering, 2011
ABSTRACT The Workflow Reference Model standardizes workflow application development, in order to ... more ABSTRACT The Workflow Reference Model standardizes workflow application development, in order to achieve the interoperability of different workflows. The web services technology allows optimizing the invocation of applications from the workflow engine, so that the workflow engine does not need to know the location of the application to invoke, and that any application can be relocated without involving a change in its invocation. But UDDI, the protocol used to register and locate web services, has some problems in establishing the correspondence between requester requirements and the specifying of services that have the same semantic behavior, even with different syntactic description. Furthermore, in the selection of a web service their quality attributes (QoS) are not considered. This proposal applies to the case study OpenUP/Basic, focusing on the quality attributes of web services for optimal selection and invocation.
La Ingenieria de Software (IS) es la disciplina o area de la informatica que ofrece metodos y tec... more La Ingenieria de Software (IS) es la disciplina o area de la informatica que ofrece metodos y tecnicas para el desarrollo y mantenimiento de software de calidad. A pesar de todos los esfuerzos realizados, en las sucesivas etapas del desarrollo y en las actividades de gestion de proyectos de software, ocurren problemas como: carencia de fiabilidad, necesidad de mantenimiento permanente, etc. Las dinamicas de los procesos de desarrollo de software exigen una actualizacion constante de tecnicas y tecnologias. Esta tarea es favorecida por la utilizacion de herramientas CASE que asisten a todos los involucrados en la construccion del software.
Uploads
Papers by Marcela Daniele