35 research outputs found

    Lightweight Multilingual Software Analysis

    Full text link
    Developer preferences, language capabilities and the persistence of older languages contribute to the trend that large software codebases are often multilingual, that is, written in more than one computer language. While developers can leverage monolingual software development tools to build software components, companies are faced with the problem of managing the resultant large, multilingual codebases to address issues with security, efficiency, and quality metrics. The key challenge is to address the opaque nature of the language interoperability interface: one language calling procedures in a second (which may call a third, or even back to the first), resulting in a potentially tangled, inefficient and insecure codebase. An architecture is proposed for lightweight static analysis of large multilingual codebases: the MLSA architecture. Its modular and table-oriented structure addresses the open-ended nature of multiple languages and language interoperability APIs. We focus here as an application on the construction of call-graphs that capture both inter-language and intra-language calls. The algorithms for extracting multilingual call-graphs from codebases are presented, and several examples of multilingual software engineering analysis are discussed. The state of the implementation and testing of MLSA is presented, and the implications for future work are discussed.Comment: 15 page

    Innovative low-code tool for Systems Analysis and Design

    Get PDF
    The background of the students coming into Systems Analysis and Design classes is diverse and broad. During the curriculum they are introduced to Unified Modeling Language (UML), Business Process Modeling Notation (BPMN) and other various components to build systems. The tools used to teach these concepts are diverse and sparingly used in the industry. In addition, they do not offer students a tangible and working system solution that resolves business challenges. This disconnect is most noticeable upon graduation when many students are unfamiliar with common integrations used in industry. The Mendix platform allows these concepts to be introduced early on at an applied level; it showcases business and IT alignment in addition to allowing students to develop a working solution within one semester

    Assessing Students’ Object-Oriented Programming Skills with Java: The “Department-Employee” Project

    Get PDF
    Java is arguably today’s most popular and widely used object-oriented programming language. Learning Java is a daunting task for students, and teaching it is a challenging undertaking for instructors. To assess students’ object-oriented programming skills with Java, we developed the “Department-Employee” project. In this article, we review the history of object-oriented programming and provide an overview of object-oriented programming with Java. We also provide the project specification as well as the course background, grading rubric, and score reports. Survey data are presented on students’ backgrounds, as well as students’ perceptions regarding the project. Results from the instructor score reports and student perceptions show that the “Department-Employee” project was effective in assessing students’ object-oriented programming skills with Java

    Aplicando la tecnología como apoyo a la prestación de los servicios básicos municipales: Mapa de Servicios de Concordia

    Get PDF
    En la actualidad, muchos municipios siguen atendiendo reclamos de servicios públicos básicos por vías tradicionales (personal y/o telefónicamente), dificultando controles posteriores adecuados, y dificultando un seguimiento eficaz. Como apoyo a esta tarea, resulta imprescindible la utilización de nuevas tecnologías para el desarrollo de aplicaciones que permitan gestionar de manera adecuada los reclamos generados por los vecinos de Concordia. El presente trabajo proyecta el desarrollo de una aplicación para plataformas móviles que atienda y derive reclamos de contribuyentes respecto a inconvenientes con el suministro de agua, cloacas, iluminación, rotura de calles, basura, semáforos y desmalezamiento. Para determinar el/los lenguaje/s y herramientas asociadas que mejor se adaptan al desarrollo del Mapa de Servicios de Concordia, se adoptaron una serie de recomendaciones establecidas a partir de actividades de colaboración con el Municipio local que prevé el proyecto de investigación “Estudio Comparativo y Análisis de Rendimiento de los Lenguajes de Manipulación de Datos en Bases de Datos Orientadas a Objetos y Bases de Datos Objeto- Relacionales” - Universidad Nacional de Entre Ríos. Los criterios trabajados en la selección fueron: dominio de aplicación web, desarrollo de aplicaciones con interfaces amigables, popularidad, soporte tecnológico, portabilidad, legibilidad, buena documentación, eficiencia, reusabilidad, confiabilidad y orientación a objetos.Sociedad Argentina de Informática e Investigación Operativa (SADIO

    Aplicando la tecnología como apoyo a la prestación de los servicios básicos municipales: Mapa de Servicios de Concordia

    Get PDF
    En la actualidad, muchos municipios siguen atendiendo reclamos de servicios públicos básicos por vías tradicionales (personal y/o telefónicamente), dificultando controles posteriores adecuados, y dificultando un seguimiento eficaz. Como apoyo a esta tarea, resulta imprescindible la utilización de nuevas tecnologías para el desarrollo de aplicaciones que permitan gestionar de manera adecuada los reclamos generados por los vecinos de Concordia. El presente trabajo proyecta el desarrollo de una aplicación para plataformas móviles que atienda y derive reclamos de contribuyentes respecto a inconvenientes con el suministro de agua, cloacas, iluminación, rotura de calles, basura, semáforos y desmalezamiento. Para determinar el/los lenguaje/s y herramientas asociadas que mejor se adaptan al desarrollo del Mapa de Servicios de Concordia, se adoptaron una serie de recomendaciones establecidas a partir de actividades de colaboración con el Municipio local que prevé el proyecto de investigación “Estudio Comparativo y Análisis de Rendimiento de los Lenguajes de Manipulación de Datos en Bases de Datos Orientadas a Objetos y Bases de Datos Objeto- Relacionales” - Universidad Nacional de Entre Ríos. Los criterios trabajados en la selección fueron: dominio de aplicación web, desarrollo de aplicaciones con interfaces amigables, popularidad, soporte tecnológico, portabilidad, legibilidad, buena documentación, eficiencia, reusabilidad, confiabilidad y orientación a objetos.Sociedad Argentina de Informática e Investigación Operativa (SADIO

    Aplicando la tecnología como apoyo a la prestación de los servicios básicos municipales: Mapa de Servicios de Concordia

    Get PDF
    En la actualidad, muchos municipios siguen atendiendo reclamos de servicios públicos básicos por vías tradicionales (personal y/o telefónicamente), dificultando controles posteriores adecuados, y dificultando un seguimiento eficaz. Como apoyo a esta tarea, resulta imprescindible la utilización de nuevas tecnologías para el desarrollo de aplicaciones que permitan gestionar de manera adecuada los reclamos generados por los vecinos de Concordia. El presente trabajo proyecta el desarrollo de una aplicación para plataformas móviles que atienda y derive reclamos de contribuyentes respecto a inconvenientes con el suministro de agua, cloacas, iluminación, rotura de calles, basura, semáforos y desmalezamiento. Para determinar el/los lenguaje/s y herramientas asociadas que mejor se adaptan al desarrollo del Mapa de Servicios de Concordia, se adoptaron una serie de recomendaciones establecidas a partir de actividades de colaboración con el Municipio local que prevé el proyecto de investigación “Estudio Comparativo y Análisis de Rendimiento de los Lenguajes de Manipulación de Datos en Bases de Datos Orientadas a Objetos y Bases de Datos Objeto- Relacionales” - Universidad Nacional de Entre Ríos. Los criterios trabajados en la selección fueron: dominio de aplicación web, desarrollo de aplicaciones con interfaces amigables, popularidad, soporte tecnológico, portabilidad, legibilidad, buena documentación, eficiencia, reusabilidad, confiabilidad y orientación a objetos.Sociedad Argentina de Informática e Investigación Operativa (SADIO

    Selección de lenguajes orientados a objetos para un estudio comparativo y análisis de rendimiento

    Get PDF
    Los lenguajes de programación (LP) han tenido un desarrollo creciente y se han adaptado a las necesidades de diferentes dominios de aplicación, liberando versiones periódicamente y adaptados a estándares. Este crecimiento, generó dentro de los LP, adaptaciones a pautas de diseño e implementación de programas, permitiendo su utilización en el desarrollo de aplicaciones para bases de datos (BD), entre otras. Actualmente, una de las áreas con mayor crecimiento en el desarrollo de sistemas informáticos, es el de la programación Web. Este dominio de aplicación, ha permitido interactuar con un gran número de desarrollos tanto académicos, como comerciales, gubernamentales, industriales y para dispositivos móviles. El presente trabajo, en base a ciertas características, parámetros, encuestas a desarrolladores y rankings de la industria; tiene como objetivo delimitar el universo de posibles lenguajes de programación orientados a objetos que posteriormente serán sometidos al estudio comparativo y análisis de rendimiento en las subsiguientes etapas previstas por el proyecto.Eje: Ingeniería de SoftwareRed de Universidades con Carreras en Informática (RedUNCI

    Selección de lenguajes orientados a objetos para un estudio comparativo y análisis de rendimiento

    Get PDF
    Los lenguajes de programación (LP) han tenido un desarrollo creciente y se han adaptado a las necesidades de diferentes dominios de aplicación, liberando versiones periódicamente y adaptados a estándares. Este crecimiento, generó dentro de los LP, adaptaciones a pautas de diseño e implementación de programas, permitiendo su utilización en el desarrollo de aplicaciones para bases de datos (BD), entre otras. Actualmente, una de las áreas con mayor crecimiento en el desarrollo de sistemas informáticos, es el de la programación Web. Este dominio de aplicación, ha permitido interactuar con un gran número de desarrollos tanto académicos, como comerciales, gubernamentales, industriales y para dispositivos móviles. El presente trabajo, en base a ciertas características, parámetros, encuestas a desarrolladores y rankings de la industria; tiene como objetivo delimitar el universo de posibles lenguajes de programación orientados a objetos que posteriormente serán sometidos al estudio comparativo y análisis de rendimiento en las subsiguientes etapas previstas por el proyecto.Eje: Ingeniería de SoftwareRed de Universidades con Carreras en Informática (RedUNCI

    Selección de lenguajes orientados a objetos para un estudio comparativo y análisis de rendimiento

    Get PDF
    Los lenguajes de programación (LP) han tenido un desarrollo creciente y se han adaptado a las necesidades de diferentes dominios de aplicación, liberando versiones periódicamente y adaptados a estándares. Este crecimiento, generó dentro de los LP, adaptaciones a pautas de diseño e implementación de programas, permitiendo su utilización en el desarrollo de aplicaciones para bases de datos (BD), entre otras. Actualmente, una de las áreas con mayor crecimiento en el desarrollo de sistemas informáticos, es el de la programación Web. Este dominio de aplicación, ha permitido interactuar con un gran número de desarrollos tanto académicos, como comerciales, gubernamentales, industriales y para dispositivos móviles. El presente trabajo, en base a ciertas características, parámetros, encuestas a desarrolladores y rankings de la industria; tiene como objetivo delimitar el universo de posibles lenguajes de programación orientados a objetos que posteriormente serán sometidos al estudio comparativo y análisis de rendimiento en las subsiguientes etapas previstas por el proyecto.Eje: Ingeniería de SoftwareRed de Universidades con Carreras en Informática (RedUNCI
    corecore