To see the other types of publications on this topic, follow the link: Lenguajes de programación (Computadores).

Dissertations / Theses on the topic 'Lenguajes de programación (Computadores)'

Create a spot-on reference in APA, MLA, Chicago, Harvard, and other styles

Select a source type:

Consult the top 50 dissertations / theses for your research on the topic 'Lenguajes de programación (Computadores).'

Next to every source in the list of references, there is an 'Add to bibliography' button. Press on it, and we will generate automatically the bibliographic reference to the chosen work in the citation style you need: APA, MLA, Harvard, Chicago, Vancouver, etc.

You can also download the full text of the academic publication as pdf and read online its abstract whenever available in the metadata.

Browse dissertations / theses on a wide variety of disciplines and organise your bibliography correctly.

1

Inca, Chiroque Julita. "Estudio del lenguaje de programación Haskell, ventajas y desventajas con respecto a otros lenguajes de programación." Master's thesis, Pontificia Universidad Católica del Perú, 2012. http://tesis.pucp.edu.pe/repositorio/handle/123456789/4470.

Full text
Abstract:
El trabajo de tesis presenta al lenguaje de programación Haskell y realiza un estudio comparativo con respecto a lenguajes de programación que son promovidos con gran impacto en la actualidad en los ambientes: académico, industrial y científico. Los lenguajes de programación que servirán como puntos de referencia de comparación para el presente estudio son: C/C++, Java y GOlang. Los criterios de comparación tomados en cuenta en el estudio son: fácil escritura, fácil lectura, confiabilidad, soporte de genéricos y reflexión. Se elige comparar los lenguajes mencionados con el lenguaje de programación Haskell, porque es un lenguaje que ha significado un reto para los estudiosos en Ciencias de la Computación de las universidades más prestigiosas del mundo, quienes diseñaron un lenguaje de programación que mejora y supera errores de diseño de lenguajes de programación convencionales. En el primer capítulo se referencia estudios realizados acerca de los lenguajes de programación en las últimas décadas, la popularidad e impacto que tienen en el ámbito académico, industrial y científico, los lenguajes de programación C/C++, Java y GOlang. En el segundo capítulo se referencia estudios realizados acerca de la categorización de los lenguajes de programación a lo largo de la historia de los lenguajes de programación. En el tercer capítulo se detalla cada uno de los lenguajes de programación en mención, su origen, evolución, aplicaciones y tecnologías desarrolladas en las últimas décadas. En el cuarto capítulo se describen los criterios de evaluación de un lenguaje de programación, según autores de prestigio en el campo de las ciencias de la computación. En el quinto capítulo se realiza un estudio y desarrollo de programas en los lenguajes de programación elegidos para poder evaluar las ventajas y desventajas, con respecto a los criterios de evaluación elegidos: fácil escritura, fácil lectura, confiabilidad, soporte de genéricos y reflexión.
Tesis
APA, Harvard, Vancouver, ISO, and other styles
2

Álvarez, Callaú Óscar Edwin. "Empirically-driven design and implementation of Gradualtalk." Tesis, Universidad de Chile, 2015. http://repositorio.uchile.cl/handle/2250/132889.

Full text
Abstract:
Doctor en Ciencias, Mención Computación
Los lenguajes de tipado dinámico permiten un desarrollo ágil, el cual es util para construir prototipos rápidamente. Sin embargo, cuando estos pequeños programas se convierten en aplicaciones grandes, depurar se vuelve una tarea tediosa. Esto se debe principalmente a que los errores son solo detectables en tiempo de ejecución. Smalltalk, al ser un lenguaje de tipado dinámico, sufre de estos problemas. Los sistemas de tipos pueden disminuir ciertos errores de los lenguajes de tipado dinámico. Además, la inserción de tipos mejora la documentación de APIs, provee mejor soporte a los editores y ayuda a optimizar la compilación. Los sistema de tipos, especialmente diseñados para lenguajes existentes, son llamados sistema de tipos retro-alimentados (retrofitted type systems en inglés). Diseñar un sistema de tipos retro-alimentado es una tarea complicada. Esto se debe a que tales sistemas de tipos deben soportar patrones de programación muy particulares (llamados idioms), minimizar la refactorización de código por la inserción de tipos, y proveer una integración entre las partes (ej. módulos) con y sin tipos. Estos problemas son exacerbados cuando el lenguaje destino es altamente dinámico, como Smalltalk. Si bien se ha intentado insertar tipos en Smalltalk, el ejemplo mas notable es Strongtalk, ellos no han sido diseñados de un modo de ser sistemas de tipos retro-alimentados. Ademas Strongtalk es un sistema de tipos opcional, es decir que las garantías estáticas no necesariamente se cumple en tiempo de ejecución. En este trabajo de tesis, nosotros presentamos Gradualtalk, un sistema de tipos retro-alimentado para Smalltalk, que soporta la mayoría de las características particulares e idioms de Smalltalk. En la parte del diseño, nosotros analizamos detalladamente cual es el mejor sistema de tipos gradual y aquellas extensiones que mejor encajan en Gradualtalk. Cada una de estas extensiones son claramente justificadas usando evidencia (empírica) disponible en la literatura o propuesta por nosotros. En detalle, nosotros presentamos como evidencia empirical dos estudios a larga escala sobre las características dinámicas de Smalltalk y sobre los predicados de tipos. Ademas presentamos tres estudios preliminares sobre el uso de self, el uso de variables que pueden representar varios valores de diferente tipos, y el uso de colecciones. Con toda esta información implementamos una primera version de Gradualtalk. Finalmente, validamos Gradualtalk mediante la inserción de tipos de varios proyectos Smalltalk reales.
APA, Harvard, Vancouver, ISO, and other styles
3

Soto, Ridd Gustavo Andrés. "Modular composition of session types." Tesis, Universidad de Chile, 2015. http://repositorio.uchile.cl/handle/2250/137828.

Full text
Abstract:
Magíster en Ciencias, Mención Computación
Ingeniero Civil en Computación
En el campo de los sistemas distribuidos, lograr la coordinación entre diversas unidades de cómputo y sub-sistemas es una tarea compleja, pues cada unidad de computo se comporta distinta a las demás, de forma concurrente y de manera descentralizada. Con el fin de expresar como diversas unidades de computo se comunican unas con otras, se utilizan definiciones de protocolos. Session types son una disciplina de tipos que permite lograr la coordinación entre muchos participantes de un sistema distribuido, mediante la definición de un protocolo coreográfico. La disciplina de tipos impone condiciones sobre la coreografía con el fin de asegurar que el sistema distribuido que la implementa se comporta de la forma en la que fue definido y además posee garantías sobre propiedades de la comunicación. Entre las propiedades importantes se encuentran la ausencia de: deadlocks, mensajes huérfanos y recepciones inesperadas de mensajes. La coreografía es expresada como una entidad global, la cual es projectada a distintos tipos, uno para cada participante involucrado en la coreografía. Dichos tipos son usados para un proceso de typecheck que verifica que las implementaciones de las unidades distribuidas, llamadas procesos, se comportaran en la interacción global como se espera. Se muestra que lograr modularidad en session types no es trivial. Para ello, se presenta un caso de estudio en el que el uso de definiciones modulares para session types introduce problemas en el comportamiento global luego de su composición. Comenzando desde el caso de estudio, se explica como se introducen dichos problemas al componer sub-sessiones. Se muestra como los problemas globales pueden ser evitados gracias al uso de un mecanismo de composición que se basa en interacciones de bloqueo entre participantes. En este trabajo se desarrolla una extensión de un sistema de tipos que permite la composición modular de session types (MCST). MCST se basa en condiciones impuestas sobre definiciones modulares de sub-sessiones, además de un sistema de tipos que permite verificar sub-sessiones por separado, y un mecanismo de composición que produce sistemas bien formados. La solución presentada es modular, dado que mantiene sus definiciones separadas con el fin de reusarlas. Las condiciones para verificar correctitud no dependen del contexto en el cual una sub-session es llamada.El mecanismo de composición reusa conceptos de inlining y composición con ciclos de trabajos previos, haciéndolas aplicables en más casos, lo que resulta en un sistema más expresivo. MCST mantiene las garantías de comunicación de session types mencionadas previamente. Ademas, MCST mejora la expresividad de session types, dado que la nueva disciplina de tipos con el mecanismo de composición permite definir coreografías que no son permitidas en el estado del arte de session types.
APA, Harvard, Vancouver, ISO, and other styles
4

Galdames, Grünberg Daniel Andrés. "Diseño e Implementación de PHANtom, un Lenguaje de Aspectos para Pharo Smalltalk." Tesis, Universidad de Chile, 2011. http://www.repositorio.uchile.cl/handle/2250/104335.

Full text
Abstract:
La programación orientada a aspectos es un paradigma de programación que intenta solucionar el problema de las funcionalidades transversales, esto es, funcionalidades de la aplicación que están dispersas por muchas áreas del código, y no pueden separarse en forma eficiente usando el paradigma de programación orientada a objetos. Un aspecto representa una funcionalidad transversal de la aplicación. Éste incluye en su definición un pointcut, que representa un conjunto de puntos en la ejecución de la aplicación que van a ser capturados por el aspecto, y un advice, que representa la funcionalidad del aspecto, esto es, el código que va a ser ejecutado en los puntos capturados. En este trabajo se diseñó e implementó un lenguaje de aspectos para el lenguaje de programación Pharo Smalltalk, donde se incluyeron características destacadas de otros lenguajes de aspectos, junto a nuevas funcionalidades que le otorgan un mayor control y flexibilidad al lenguaje desarrollado. El lenguaje desarrollado incluye un sistema de definición de patrones para la definición de los pointcuts, reglas de precedencia globales y a nivel de pointcut. También contiene modificadores de clases similares a las inter-type declarationsde AspectJ, y un sistema de control dinámico en el orden de ejecución de los advice. Para el lenguaje desarrollado se implementó el concepto de membranas computacionales. Éstas son una forma de controlar el alcance que tienen los aspectos en el sistema, permitiendo controlar problemas como la reentrancia en los aspectos, esto es, cuando un aspecto captura un evento desencadenado por sí mismo. Junto a esto, las membranas computacionales son capaces de controlar la visibilidad que los aspectos tienen sobre el sistema donde son instalados. Se creó una suite de test usando el framework para test unitarios de Pharo Smalltalk, para comprobar el correcto funcionamiento del lenguaje desarrollado, además, se comprobó el grado de cobertura de la suite de test usando el software Hapao. Finalmente, se comprobó el funcionamiento del lenguaje de aspectos desarrollado, usándolo para refactorizar algunas partes del software de análisis dinámico de código Spy. Se realizaron algunos benchmark para comprobar el sobrecosto generado por la infraestructura de aspectos desarrollada, donde se pudo apreciar un sobrecosto variable, siendo elevado en algunos casos.
APA, Harvard, Vancouver, ISO, and other styles
5

Hirsh, Martínez Layla. "Intérprete y entorno de desarrollo para el aprendizaje de lenguajes de programación estructurada." Bachelor's thesis, Pontificia Universidad Católica del Perú, 2007. http://tesis.pucp.edu.pe/repositorio/handle/123456789/1057.

Full text
Abstract:
Este proyecto tiene como objetivo principal el diseño, desarrollo e implementación de un intérprete de un lenguaje de programación que pueda ser usado en los primeros cursos de introducción a la computación. El trabajo muestra cómo se pueden crear intérpretes, lo que en nuestro país tiene escasa tradición, a diferencia de lo que ocurre en los países más desarrollados. Además, presenta un entorno de desarrollo integrado para facilitar la introducción a la programación, ofreciendo un ambiente amigable y un lenguaje de programación totalmente basado en el idioma español. En opinión de la autora esta segunda característica favorecerá a que el alumno entienda mejor el lenguaje y los procesos de computación. En el capítulo 1 del presente documento se presenta la descripción del problema de escoger un lenguaje adecuado para la enseñanza de los primeros cursos de programación, las opciones que tenemos en nuestra actualidad y una posible solución a este problema. En el capítulo 2 se formula una propuesta que resuelve el problema planteado en el capítulo 1 que permite definir el lenguaje, su funcionamiento y el entorno en el que se ha de ejecutar. El capítulo 3 presenta la implementación del intérprete y la del entorno, propuestos anteriormente. En el capítulo 4 se exponen las observaciones, conclusiones, recomendaciones y trabajos futuros, tanto del intérprete como del entorno.
Tesis
APA, Harvard, Vancouver, ISO, and other styles
6

Bañados, Schwerter Felipe Andrés. "Gradual typing for generic type-and-effect systems." Tesis, Universidad de Chile, 2014. http://www.repositorio.uchile.cl/handle/2250/116891.

Full text
Abstract:
Magíster en Ciencias, Mención Computación
Los sistemas de tipos-y-efectos (type-and-effect systems) permiten a los programadores hacer valer invariantes y restricciones sobre los efectos secundarios que se generan durante la evaluación de un programa. Los sistemas de tipos-y-efectos consideran efectos secundarios tales como estado, excepciones y E/S, entre otros. Desafortunadamente, los sistemas de tipos-y-efectos también obligan al programador a introducir anotaciones de efectos, lo que implica un esfuerzo adicional. En la práctica, los sistemas de tipos-y-efectos no son comúnmente usados. Conjeturamos que una de las razones importantes para la limitada adopción de los sistemas de efectos son las dificultades para realizar la transición desde un sistema donde los efectos secundarios son implícitos hacia una disciplina de efectos totalmente estática. Los tipos graduales (Gradual typing) permiten a los programadores combinar la flexibilidad de los lenguajes dinámicamente tipados con las garantías provistas por los sistemas de tipos estáticos. En lenguajes con tipos graduales, las anotaciones de tipos son parte del lenguaje, pero no son obligatorias. Un sistema de tipos gradual utiliza la información disponible para proveer garantías estáticas, rechazando los programas claramente incoherentes, e introduce verificaciones en tiempo de ejecución cuando la información estática no es suficiente para aceptar o rechazar definitivamente un programa. Esta tesis demuestra que las ideas de diseño detrás de los tipos graduales pueden aplicarse a los sistemas de tipos-y-efectos, tanto para aumentar la expresividad de estos sistemas así como para proveer flexibilidad para migrar programas con efectos secundarios impl ́ıcitos e irrestrictos hacia programas con una disciplina de efectos completamente estática. Se adaptaron ideas de tipos graduales para introducir verificación gradual de efectos para sistemas de tipos-y-efectos. La verificación gradual de efectos habilita al programador para decidir dónde y cuándo introducir anotaciones de efectos, agregando verificaciones en tiempo de ejecución cuando las anotaciones estáticas son insuficientes. Para evitar redefinir la verificación gradual de efectos para cada disciplina de tipos-y-efectos, introducimos verificación gradual de efectos para una plataforma genérica de tipos-y-efectos, en la que se puede instanciar cualquier disciplina de efectos monotónica, produciendo un sistema coherente. Presentamos la verificación gradual de efectos basándonos en conceptos de interpretación abstracta para construir la verificación gradual de efectos genérica. Utilizando verificación gradual de efectos genérica, introducimos tipos graduales para sistemas de tipos-y-efectos: un sistema donde las anotaciones de efectos y de tipos no son obligatorias, y donde se introducen verificaciones en tiempo de ejecución y casts cuando la información estática no es suficiente para asegurar la coherencia de un programa. De la manera definida, los tipos graduales para sistemas de tipos-y-efectos permiten migrar desde sistemas carentes de anotaciones de efectos o de tipos hacia una disciplina estática de tipos-y-efectos de manera segura.
APA, Harvard, Vancouver, ISO, and other styles
7

Jara, Loayza Juan Carlos. "Entorno de desarrollo para la ejecución y traducción de pseudocódigo." Bachelor's thesis, Pontificia Universidad Católica del Perú, 2013. http://tesis.pucp.edu.pe/repositorio/handle/123456789/5401.

Full text
Abstract:
El presente proyecto de fin de carrera corresponde a la construcción de un entorno de desarrollo que permita la ejecución y ejecución de pseudocódigo como herramienta de apoyo a las etapas de diseño, ejecución y validación de un algoritmo. Se permitirá la traducción a VBA, Java, Ruby, Python y c++. El documento presenta siete capítulos, en el primer capítulo se describen generalidades del proyecto como la problemática, objetivo general, objetivos específicos, resultados esperados, alcance, justificación, viabilidad y plan de actividades del proyecto. En el segundo capítulo se presenta el marco conceptual donde se describen los conceptos necesarios para entender el problema que se desea solucionar con el presente proyecto. En el tercer capítulo se presenta el estado del arte. En lo referente al estado del arte se realizó una búsqueda entre productos comerciales y no comerciales que intentan solucionar algunos aspectos del problema a resolver. En el cuarto capítulo, se describe cómo se realizó la definición y la validación de la gramática del pseudocódigo mediante el uso de la notación BNF. En el quinto capítulo se presenta el desarrollo del intérprete que permite la ejecución del pseudocódigo y del traductor que permitirá transformar el pseudocódigo a código en VBA, Java, Ruby, Python y C++. En el sexto capítulo se realiza la descripción del entorno de desarrollo que permitirá la integración del intérprete y traductor para que puedan ser utilizados por el usuario final. En el séptimo capítulo se exponen las conclusiones.
Tesis
APA, Harvard, Vancouver, ISO, and other styles
8

Toro, Ipinza Matías. "Customizable gradual effects for scala." Tesis, Universidad de Chile, 2015. http://repositorio.uchile.cl/handle/2250/134924.

Full text
Abstract:
Magíster en Ciencias, Mención Computación
Operaciones realizadas por un programa de computación pueden producir efectos. Efectos computacionales pueden ser definidos como operaciones que interactúan y que se comunican con su ambiente. Ejemplos de efectos son imprimir en pantalla, leer data de usuarios, asignación de memoria, excepciones, etc. Una función que no produce efectos es llamada una función pura. Los sistemas de efectos ayudan a controlar estos efectos colaterales . Por ejemplo, permite correr funciones puras en paralelo sin temer a obtener carreras de datos. Una function pura también preserva la transparencia referencial, asegurando que si una función es aplicada con los mismos argumentos más de una vez, el resultado sigue siendo el mismo. En este trabajo se diseñó y desarrolló un sistema de efectos genérico que se caracteriza por ser práctico, combinando para ello tres conceptos de efectos fundamentales: efectos graduales, efectos polimórficos y efectos personalizados. Debido a que la verificación estática puede ser demasiada restrictiva (algunos programas válidos son rechazados), Bañados et al propusieron una teoría que mezcla chequeo de efectos dinámico y estático, permitiendo a desarrolladores a adaptar gradualmente una disciplina de efectos en proyectos existentes. Este sistema de efectos graduales da la flexibilidad para moverse entre un sistema completamente anotado con efectos (estático) a uno sin anotaciones de efectos (dinámico), introduciendo chequeos en tiempo de ejecución cuando sea necesario. Rytz et al diseño e implementó un sistema de efectos polimórficos, el cual incrementa la expresividad de los sistemas de efectos usando patrones de orden superior para efectos. Una función es polimórfica en los efectos de su argumento si es que los efectos de la función depende de los efectos de su argumento. Esto permite expresar funciones como map, pura en efectos salvo por los efectos que la función que recibe como argumento pueda producir. En general los dominios de efectos carecen de localidad: tienen un alcance muy general. Por ejemplo: no es necesario considerar toda operación de entrada/salida como un efecto. Los sistemas de efectos no permiten hacer un seguimiento de efectos de operaciones específicas definidas por el usuario. Incorporar y personalizar un sistema de efectos requiere conocimientos previos acerca de sistemas de efectos. Inclusive, con la experiencia adecuada, implementar una disciplina de efectos puede ser difícil o lento. Es necesario un sistema que permita la fácil creación de dominios de efectos. El trabajo de ésta tesis consiste en tres partes. La primera parte extiende la formalización del sistema de efectos graduales añadiendo efectos polimórficos. En la segunda parte se diseña la sintaxis y semántica necesaria para crear dominios de efectos a través de un lenguaje específico de dominio (DSL). El DSL permite la creación de dominios de efectos con estructuras y relaciones complejas, y la especificación de donde los efectos deben ser producidos mediante especificaciones de efectos externa. También se entrega una formalización del DSL extendiendo el sistema de efectos combinado de la primera parte. La tercera y final parte consiste en la implementación del sistema final de efectos y del DSL en el lenguaje de programación Scala a través de plugins para el compilador.
APA, Harvard, Vancouver, ISO, and other styles
9

Gómez, Díaz Renzo Gonzalo, and Guillén Juan Jesús Salamanca. "Intérprete para un lenguaje de programación orientado a objetos, con mecanismos de optimización y modificación dinámica de código." Bachelor's thesis, Pontificia Universidad Católica del Perú, 2012. http://tesis.pucp.edu.pe/repositorio/handle/123456789/1503.

Full text
Abstract:
Este trabajo trata sobre la implementación de un intérprete para un lenguaje propio, que incluye algunas características que no son abordadas en cursos básicos de Desarrollo de Compiladores. Estas características son: lenguaje de programación orientado a objetos, modificación dinámica de código y optimización de código intermedio. El objetivo de este proyecto es presentar estas características, proponer una forma de implementación de las mismas y finalmente proceder a implementarlas. De tal manera que este trabajo contribuya al aprendizaje de construcción de intérpretes o compiladores, sirviendo como un caso de estudio para aquellas personas que tengan como objetivo profundizar en el tema, y por consiguiente un posible punto de partida para futuros trabajos. Por otro lado, es necesario validar los resultados obtenidos por el optimizador, así como la eficiencia de la forma implementación escogida, por lo que se incluye también una experimentación numérica que permite comprobar las hipótesis planteadas al inicio. En la primera parte, se define el problema identificado, luego se describe un breve marco teórico con los principales conceptos involucrados en el desarrollo del proyecto, seguidamente se muestra el estado del arte con relación a compiladores e intérpretes y se describe la solución al problema planteado al inicio. En la segunda parte, principalmente, se describen los objetivos del proyecto, los aportes específicos, los resultados esperados y las hipótesis. Como se mencionó anteriormente, uno de los objetivos que se persigue es que la tesis pueda servir como un caso de estudio para las personas interesadas y una posible base para trabajos futuros; por lo tanto, es necesario explicar la implementación con un nivel de detalle adecuado. En ese sentido, se describe las distintas partes de la implementación escogida: se comienza con la descripción de la gramática del lenguaje, después se describen las estructuras utilizadas, algunas operaciones primitivas, el código intermedio generado, las principales acciones semánticas, la interpretación, la administración de memoria, los algoritmos de optimización, el diseño del IDE y el ambiente de desarrollo.
Tesis
APA, Harvard, Vancouver, ISO, and other styles
10

Hernández, Phillips Carolina Massiel. "Plataforma de comunicación entre Live Robot Programming y el Robot AR.Drone 2.0." Tesis, Universidad de Chile, 2016. http://repositorio.uchile.cl/handle/2250/143362.

Full text
Abstract:
Ingeniera Civil en Computación
La robótica es un área de estudio joven que presenta gran potencial de progreso. Esto incita a expertos de diversas áreas a contribuir en su desarrollo mediante proyectos de investigación y de ingeniería. En este escenario el estudiante Miguel Campusano y el profesor Johan Fabry, ambos integrantes del DCC de la Universidad de Chile, proponen un lenguaje de programación para robots denominado LRP. Este lenguaje es implementado en Pharo Smalltalk, un lenguaje de programación caracterizado por su fuerte orientación a objetos y su poderoso ambiente de desarrollo. Utilizar LRP con un robot determinado requiere una aplicación estilo puente escrita en Pharo, que sirva como interfaz de comunicación entre el lenguaje y el robot. Previo a la realización de este trabajo, sólo dos puentes habían sido implementados. Estos permitieron hacer de pruebas con algunos robots. No obstante, para nes investigativos es muy deseable utilizar el lenguaje LRP con tantos robots como sea posible. El AR.Drone 2.0, de la empresa Parrot, es un cuadricóptero eléctrico no tripulado, controlado remotamente y que cuenta con diversos sensores. Este robot es un excelente caso de prueba para LRP, dada su gran diferencia con los robots utilizados anteriormente. La solución presentada en este trabajo de memoria contempla la implementación de la infraes- tructura necesaria para hacer pruebas utilizando LRP con el AR.Drone y su validación mediante distintos programas de prueba implementados en LRP. Se ha creado una API capaz de comuni- carse con el drone y la aplicación tipo puente requerida. Ambas aplicaciones fueron escritas en Pharo. La API permite establecer una conexión con el drone, recibir los datos que publica y enviar comandos de control y con guración. El puente adapta una serie de métodos de la API y permite utilizarlos desde LRP. Provee además mecanismos intuitivos para que el desarrollador interactúe directamente con el drone durante una sesión de programación. La mayoría de las di cultades enfrentadas durante el desarrollo de la API se debieron a la indocumentación de características o requerimientos impuestos por el rmware del drone. Por otro lado, el desarrollo de esta he- rramienta permitió generar conocimiento técnico especí co sobre el AR.Drone, relevante para trabajos posteriores que utilicen este robot. Los programas de ejemplo creados en LRP evidenciaron que no todas las cualidades de la modalidad de programación en vivo pueden ser aprovechadas trabajando con un robot aéreo. Esto porque es difícil restringir límites para el movimiento del robot, por su limitado tiempo de autonomía y porque la interrupción de una sesión, producto de un choque por ejemplo, implica que el desarrollador deba suspender su trabajo para reposicionar y despegar el robot. Sin embargo, live programming permitió ajustar las variables asociadas a programas ya creados, lo que adquiere gran valor al momento de establecer distancias esperadas para el recorrido del robot. Finalmente, la sintaxis de LRP y sus diagramas de estado animados en vivo facilitaron enormemente el proceso de desarrollo.
APA, Harvard, Vancouver, ISO, and other styles
11

Palomino, Masco Jairo Abner. "Implementación de una herramienta de traducción y verificación de programas diseñados en diagrama de flujo utilizando como paso intermedio pseudocódigo." Bachelor's thesis, Pontificia Universidad Católica del Perú, 2014. http://tesis.pucp.edu.pe/repositorio/handle/123456789/5726.

Full text
Abstract:
Este proyecto de fin de carrera parte de la ausencia de herramientas que sirvan de ayuda para aquellos alumnos que quieran aprender a programar. Si bien existen programas que permiten generar diagramas de flujo y luego exportarlos a un lenguaje de programación, estos no poseen un compilador que permita detectar errores de sintaxis, que pueda poseer la solución. Por ello se plantea implementar un proceso de traducción y verificación de programas diseñados en diagrama de flujo utilizando como paso intermedio pseudocódigo, para que el alumno pueda preocuparse más en la lógica de su solución, que en la sintaxis o estructura del lenguaje de programación, a codificar. Para realizar este proyecto se definió una serie de objetivos específicos. En primer lugar se desarrolló un entorno para dibujar diagramas de flujo, para ello se adaptaron las librerías de Microsoft office que ofrecen las herramientas necesarias para la creación del entorno de trabajo. Luego, se definió la gramática que almacena la sintaxis del pseudocódigo utilizando la notación Backus-Naur Form (BNF). Después se implementó el método de conversión del formato XML de Microsoft office, representación del diagrama de flujo, a pseudocódigo utilizando la sintaxis definida anteriormente y un editor de texto en el cual se muestre el resultado de la conversión al usuario. Finalmente se implementó el intérprete que utiliza la gramática para verificar que el código se encuentre léxicamente, sintácticamente y semánticamente correcto. De esta manera los alumnos podrán obtener a partir de un diagrama, el cual al ser gráfico es de fácil entendimiento, el código de su programa sin necesidad de conocer la sintaxis del mismo y validado.
Tesis
APA, Harvard, Vancouver, ISO, and other styles
12

Cabrera, Hormazabal Carlos Sebastián. "Control de Reentrancia de Aspectos en AspectJ." Tesis, Universidad de Chile, 2010. http://repositorio.uchile.cl/handle/2250/103835.

Full text
Abstract:
La programación orientada a aspectos (POA) es un paradigma de programación. Permite encapsular funcionalidad que se encuentra dispersa en un sistema. Para ello utiliza pointcuts, predicados que definen eventos del programa, y advices, el código que es ejecutado en los eventos definidos por un pointcut. Un aspecto es una entidad que agrupa pointcuts y advices. AspectJ es un lenguaje de programación para POA. Está diseñado como una extensión de Java, de forma que cualquier programa Java es también un programa AspectJ válido. Además del compilador oficial del proyecto AspectJ existen otros, de los cuales AspectBench Compiler (abc) es el más avanzado. La reentrancia de aspectos ocurre cuando la ejecución de un aspecto desencadena nuevamente su propia ejecución; produciéndose bucles infinitos. Actualmente la reentrancia se soluciona utilizando chequeos y patrones adhoc. La introducción de niveles de ejecución evita la reentrancia de aspectos. La ejecución del programa se separa en distintos niveles. Por defecto, la computación base ocurre en el nivel 0, mientras que los aspectos que observan esta ejecución se ubican en el nivel 1. La ejecución en el nivel 1 sólo puede ser observada desde el nivel 2, y así sucesivamente. Esta estructura para la ejecución de los programas soluciona casi todos los casos de reentrancia. Para el caso faltante, se utiliza un mecanismo adicional de control de reentrancia. Para esta memoria se extendió el compilador abc para incorporar una adaptación de niveles de ejecución. El lenguaje soportado por el compilador extendido incorpora nueva sintaxis para ello. Y los programas compilados contienen rutinas adicionales que agregan la estructura de niveles de ejecución y el control de reentrancia. Además, es posible controlar el nivel de ejecución en que se ejecutará una expresión, si fuese necesario. Se hicieron distintas pruebas para validar el trabajo realizado. Se confeccionaron tests para las distintas funcionalidades que, en conjunto, implementan niveles de ejecución. También se verificó la correcta compilación y ejecución de AJHotDraw, un framework para interfaces gráficas de programas de dibujo. Adicionalmente se probó el compilador con RacerAJ, una herramienta para la detección de data races implementada en AspectJ. RacerAJ es de interés porque incorpora pointcuts para evitar la ocurrencia de reentrancia de aspectos; removidos estos pointcuts, el programa funciona correctamente al ser compilado con esta versión extendida de abc. Además se realizó un ligero análisis de performance para medir el impacto en los programas compilados. Para ello se utilizó una suite de benchmarks para AspectJ. Se compararon los tiempos de ejecución logrados al utilizar el compilador desarrollado y la versión original.
APA, Harvard, Vancouver, ISO, and other styles
13

Toro, Ipinza Matías. "Abstracting gradual typing: Metatheory and applications." Tesis, Universidad de Chile, 2019. http://repositorio.uchile.cl/handle/2250/170935.

Full text
Abstract:
Tesis para optar al grado de Doctor en Ciencias, Mención Computación
Han habido muchos enfoques para integrar tipado estático y dinámico. Uno de los enfoques más notables es el del tipado gradual. El enfoque clásico para diseñar lenguajes graduales es usualmente ad-hoc, pero existen metodologías que sistematizan este proceso. Una de ellas es la Abstracting Gradual Typing (AGT), que ayuda a construir sistemáticamente lenguajes graduales a partir de lenguajes estáticamente tipados usando interpretación abstracta al nivel de tipos. A pesar que se a mostrado que AGT a sido efectiva en diferentes contextos, hay aún muchas preguntas abiertas: ¿AGT escala a mecanismos de lenguaje y disciplinas de tipos complejos? ¿Que lenguajes obtienen al usar abstracciones más ricas, o al introducir imprecisión de una manera poco convencional? ¿Cómo se compara el lenguaje gradual resultante con lo existente en la literatura? ¿Que propiedades AGT garantiza de preservar por construcción? ¿Podemos aplicar AGT a un lenguaje gradual derivado con AGT? En esta tesis se trata de responder a estas preguntas, aplicando AGT a disciplinas de tipos y mecanismos de lenguaje complejos. Primero, se aplica AGT a un cálculo lambda con tipado simple y referencias mutables, donde se muestra que una directa aplicación de AGT no garantiza una semántica eficiente respecto al espacio. Se prueba equivalencia contextual con uno de los lenguajes graduales con referencias encontrados en la literatura. Segundo, se aplica AGT a un lenguaje con tipado de seguridad y referencias, introduciendo imprecisión solo en las etiquetas de seguridad de los tipos. Se aprende que una aplicación directa de AGT sólo garantiza preservar por construcción la seguridad de tipos y los criterios refinados de lenguajes graduales. En orden de satisfacer no-interferencia, la propiedad semántica crucial del lenguaje estático, se deben refinar las abstracciones usadas en la semántica dinámica. Pero debido a las referencias mutables, se agrega un chequeo extra en la regla de reducción de asignaciones para prevenir flujos implícitos de información a través de la memoria. Este chequeo extra rompe la garantía gradual dinámica, la cual es parte de los criterios refinados de los lenguajes graduales. Tercero, se aplica AGT para introducir una nueva forma de imprecisión en los tipos, llamada unión gradual, un diseño original de tipos de unión que combina ambos beneficios de uniones etiquetadas y no etiquetadas. Se descubre que las uniones graduales interactúan con el tipo desconocido en una forma que exige un enfoque estratificado para AGT, dependiendo de la composición de dos interpretaciones de abstracción distintas en orden de recuperar optimalidad. Cuarto, se aplica AGT a System F, un lenguaje que soporta polimorfismo paramétrico. Se descubre que una aplicación directa de AGT rompe parametricidad, una propiedad semántica crucial de System F. En orden de recuperar parametricidad, se refinan las abstracciones (y se personalizan ciertas operaciones) usadas en la semántica dinámica. Esta personalización ayuda a preservar parametricidad pero a costa de la violar la garantía gradual dinámica. Esta garantía fue dejada como una conjetura en todos los trabajos previos; aquí se prueba que es simplemente incompatible con la noción clásica de parametricidad. Sin embargo, se establece una propiedad más débil que permite refutar varias afirmaciones acerca de teoremas graduales gratis, clarificando el tipo de razonamiento soportado por la parametricidad gradual.
CONICYT-PCHA/Doctorado Nacional/2015-21150510
APA, Harvard, Vancouver, ISO, and other styles
14

Sandoval, Alcocer Juan. "Horizontal profiling: A sampling technique to identify performance regressions." Tesis, Universidad de Chile, 2016. http://repositorio.uchile.cl/handle/2250/143666.

Full text
Abstract:
Doctor en Ciencias, Mención Computación
Los cambios continuos en el código fuente de un programa pueden inadvertidamente introducir una regresión de rendimiento en tiempo de ejecución. Dichas regresiones se refieren a situaciones donde el rendimiento de un programa se degrada en comparación de versiones anteriores del mismo, aunque la nueva versión funcione correctamente. Ejecutar puntos de referencia en cada versión de un programa es una técnica tradicional utilizada para identificar regresiones en etapas tempranas. A pesar de ser efectiva, esta técnica exhaustiva es difícil de llevar a cabo en la práctica, principalmente por la alta sobrecarga que esta actividad demanda. En esta tesis, realizamos un estudio empírico sobre una variedad de programas, con el fin de evaluar cómo el rendimiento de un programa evoluciona en el tiempo, a medida que es modificado. Guiados por este estudio, proponemos Horizontal Profiling, una técnica de muestreo para inferir si una nueva versión de un programa introduce una variación de rendimiento, usando información de la ejecución de versiones anteriores. El objetivo de Horizontal Profiling es reducir la sobrecarga que requiere monitorear el rendimiento de cada versión, ejecutando los puntos de referencia solo en las versiones que contengan cambios costosos de código fuente. Presentamos una evaluación en la cual aplicamos Horizontal Profiling para identificar regresiones de rendimiento en un número de programas escritos en en el lenguaje de programación Pharo. En base a las aplicaciones que analizamos, encontramos que Horizontal Profiling es capaz de detectar más del 80% de las regresiones de rendimiento, ejecutando los puntos de referencia en menos del 20% de las versiones. Adicionalmente, describimos los patrones identificados durante nuestro estudio empírico, y detallamos cómo abordamos los numerosos desafíos que enfrentamos para completar nuestros experimentos.
Este trabajo ha sido parcialmente financiado por CONICYT a través de la beca CONICYT-PCHA/Doctorado Nacional para extranjeros/2013-63130199, OBJECT PROFILE y LAM RESEARCH
APA, Harvard, Vancouver, ISO, and other styles
15

Infante, Rica Alejandro José. "Discovering memory optimization opportunities by analyzing shareable objects." Tesis, Universidad de Chile, 2017. http://repositorio.uchile.cl/handle/2250/147381.

Full text
Abstract:
Magíster en Ciencias, Mención Computación. Ingeniero Civil en Computación
Los lenguajes modernos de programación orientada a objetos han aliviado de manera impor- tante a los programadores la tarea de administrar memoria. A pesar de la eficiencia de los recolectores de basura y herramientas de análisis de programas en tiempo real, aún existe una porción importante de memoria siendo desaprovechada. El desaprovechamiento de memoria en software posee graves consecuencias, incluyendo frecuentes interrupciones en la ejecución debido a la presión ejercida sobre el recolector de basura y el uso ineficiente de dependencias entre objetos. Hemos descubierto que supervisar los lugares de producción de objetos y la equivalencia de los objetos producidos es clave para identificar ineficiencias causadas por objetos redundantes. Hemos implementado optimizaciones para reducir el consumo de memoria de seis aplicaciones industriales, obteniendo una reducción superior al 40% en el uso de memoria en la mitad de las aplicaciones sin poseer conocimiento previo de las mismas. Nuestros resultados replican parcialmente los resultados obtenidos por Marinov y O Callahan y exploran nuevas formas de identificar objetos redundantes.
Este trabajo ha sido parcialmente financiado por CONICYT-PCHA/Magíster-Nacional/2015-22150809
APA, Harvard, Vancouver, ISO, and other styles
16

Allende, Prieto Esteban Armando. "Improving the efficiency and reliability of gradual typing." Tesis, Universidad de Chile, 2015. http://repositorio.uchile.cl/handle/2250/132317.

Full text
Abstract:
Doctor en Ciencias, Mención Computación
Gradual Typing permite a un programador aplicar tipos estáticos a ciertas partes de un programa, dejando el resto dinámicamente tipeado. Sin embargo, esto viene con un costo en el rendimiento. Una razón es que el runtime tiene que realizar siempre un casteo en el borde entre tipos estáticos y dinámicos. Otra razón es que el borde puede ser creado accidentalmente. Esto también trae un efecto lateral de reducir la fiabilidad del código estático, porque ahora el programador no puede garantizar que su código no arrojará errores de tipo en tiempo de ejecución. En este trabajo de tesis, mejoramos el rendimiento y la fiabilidad de los programas gradualmente tipeados. Para esto, desarrollamos un lenguaje gradualmente tipeado, Gradualtalk, y luego presentamos dos novedosas ideas: hybrid strategy y Confined Gradual Typing. La hybrid strategy es una nueva forma de insertar los casts al invocar métodos que combina dos estrategias existentes, permitiendo obtener el mejor rendimiento de ambas. Validamos esta afirmación con benchmarks. Confined Gradual Typing refina gradual typing con anotaciones para prohibir explícitamente ciertos cruces de frontera entre el código estáticamente y dinámicamente tipeado. Nosotros desarrollamos formalmente dos variantes de CGT que capturan diferentes compromisos entre flexibilidad/garantías. Probamos que CGT es type sound y que las anotaciones ofrecen las garantías esperadas.
APA, Harvard, Vancouver, ISO, and other styles
17

Delgado, Bustamante Abel, and Perea Raúl Garreaud. "Software Libre: una nueva alternativa tecnológica." Universidad de San Martín de Porres. Programa Cybertesis PERÚ, 2007. http://cybertesis.usmp.edu.pe/usmp/2005/delgado_ab/html/index-frames.html.

Full text
Abstract:
Desarrolla un estudio sobre la implementación de la infraestructura tecnológica para un negocio, según su requerimiento, cuyo objetivo primordial es la demostración de la viabilidad de implementar un centro de cómputo o área de informática, incluyendo las alternativas de evaluación el software libre.
APA, Harvard, Vancouver, ISO, and other styles
18

Díaz, Troncoso Tomás Ignacio. "Sistema de validación para el desarrollo incremental de un intérprete de R en Coq." Tesis, Universidad de Chile, 2018. http://repositorio.uchile.cl/handle/2250/168360.

Full text
Abstract:
Ingeniero Civil en Computación
El lenguaje de programación R es muy popular para desarrollar programas estadísticos y de análisis de datos, gracias a sus numerosas librerías y amplia comunidad, su sintaxis concisa y expresiva, así como soporte para su uso interactivo. Aún así, su semántica es bastante compleja y contiene numerosos casos de borde, y no está formalmente especificada, lo que hace difícil confiar plenamente en los programas desarrollados en R. Esto tiene como consecuencia que, en el año 2017, se inicie el proyecto CoqR, que busca formalizar la semántica de R, definiendo para ello una semántica natural en la forma de un intérprete implementado en el asistente de pruebas Coq. Como primera fuente de confianza, para validar la formalización, se utiliza una codificación monádica, que permite establecer una correspondencia visual directa entre el código en Coq y el intérprete de referencia implementado en C, GNU R, de tal forma que una o dos líneas de CoqR equivalen a una o dos de GNU R. El sistema desarrollado en esta memoria sirve como infraestructura para ejecutar bancos de pruebas y poder comparar, de manera sistemática, el comportamiento de CoqR y GNU R, proporcionando una segunda fuente de confianza para validar la formalización. Además, pro- porciona herramientas para apoyar el proceso iterativo de desarrollo, permitiendo identificar y detectar tanto las funcionalidades más relevantes a implementar, como los errores que puedan surgir durante esta fase. De esta manera, el sistema se integra directamente al proceso de desarrollo y a la validación de CoqR, logrando que, en su versión actual, cubra cerca del 30 % de los casos de pruebas, tanto de GNU R como de otro proyecto relevante, FastR.
APA, Harvard, Vancouver, ISO, and other styles
19

Florencio, Inga Pedro Pablo. "Desarrollo del software de un sistema SCADA para la distribución de agua potable en la quebrada de Manchay." Bachelor's thesis, Pontificia Universidad Católica del Perú, 2012. http://tesis.pucp.edu.pe/repositorio/handle/123456789/1541.

Full text
Abstract:
En la actualidad los sistemas de distribución de agua potable implementados son monitoreados, controlados y supervisados desde un Centro de Control, para lo cual se emplean los sistemas SCADA. El objetivo del presente trabajo es desarrollar la aplicación en el software del sistema SCADA, para el proyecto de distribución de agua potable en la quebrada de Manchay. La distribución de agua se realiza a través de 23 estaciones de bombeo distribuidas a lo largo de todo el pueblo. El sistema de distribución de agua potable en Manchay consiste de 4 partes fundamentales: telecomunicaciones, instrumentación, sistema eléctrico y el sistema de control y automatización, esta última parte se relaciona directamente con el presente trabajo, el cual incluye el desarrollo de la programación para realizar el monitorio, control y supervisión de las estaciones de bombeo. Como parte de la implementación del sistema, se hizo configuración de instrumentos para que puedan transmitir la información a los controladores para tener lecturas del proceso como presión, flujo y nivel. Se procedió con el desarrollo de aplicaciones para los Paneles de Operador o Interfaces Hombre Maquina (HMI) con el propósito de realizar un control y monitoreo local de los equipos instalados en cada estación. Se realizaron pruebas en el Centro de Control para verificar el enlace de las señales de campo, así como pruebas con los equipos en las estaciones de bombeo que realizan el control automático y remoto (comandos desde el Centro de Control) del proceso de distribución de agua.
Tesis
APA, Harvard, Vancouver, ISO, and other styles
20

Cumpa, Torres José Moisés. "Evaluación de motores de videojuegos: caso Andengine y LibGDX." Bachelor's thesis, Universidad Nacional Mayor de San Marcos, 2014. https://hdl.handle.net/20.500.12672/8702.

Full text
Abstract:
Publicación a texto completo no autorizada por el autor
Propone una guía que permita a desarrolladores interesados elegir un motor de videojuegos adecuado y en tiempo óptimo. En el desarrollo de videojuegos los cambios a nuevas tecnologías son frecuentes. Actualmente está en auge los juegos móviles y eso implica que existan también varios motores de videojuegos para estas plataformas móviles. Ante la existencia de varios motores de videojuegos tanto open source como propietarios es un reto decidir qué motor se va a utilizar por eso es que en este trabajo se propone una guía que permita resolver esa duda. En esta investigación se incide en la lectura de varios papers que contienen temas de investigación acerca de los motores de videojuegos. Se usan como ejemplo dos motores para plataforma Android y con ellos se presenta un caso práctico que pone en ejecución la propuesta de la guía.
Trabajo de suficiencia profesional
APA, Harvard, Vancouver, ISO, and other styles
21

Landa, Torrejón Luis Ignacio. "Construcción de un editor de mapas para el juego "1814: la rebelión del Cuzco"." Bachelor's thesis, Pontificia Universidad Católica del Perú, 2017. http://tesis.pucp.edu.pe/repositorio/handle/123456789/9065.

Full text
Abstract:
En el 2014, el grupo de investigación AVATAR lanzó su juego de estrategia en tiempo real “1814: La rebelión del Cuzco”, y ahora desean expandir el contenido del juego con nuevos mapas y niveles. Sin embargo, crear contenido de este tipo requiere iniciar un ciclo de desarrollo extenso y costoso, el cual produce una cantidad limitada de mapas. Frente a esta necesidad, se propone un editor de mapas para el juego. Una herramienta que permite crear una cantidad ilimitada de mapas y, a diferencia de un algoritmo de generación de niveles, aprovecha la creatividad de los jugadores para generar nuevo contenido e interés en el juego. El editor se construyó siguiendo la estructura de un compilador que recibe como entrada un lenguaje visual. Se elaboró primero una interfaz gráfica donde se edita el mapa de forma intuitiva, el cual luego es procesado por el compilador y traducido a una estructura de datos interpretable por el motor de juego. Por último, se realizó una prueba con usuarios para validar la usabilidad del editor y el correcto funcionamiento de los mapas editados. Al finalizar el proyecto de fin de carrera se logró construir satisfactoriamente un editor de mapas para “1814: La rebelión del Cuzco”, capaz de ser utilizado, tanto por jugadores expertos como casuales, para crear fácilmente nuevos mapas y luego integrarlos al juego.
Tesis
APA, Harvard, Vancouver, ISO, and other styles
22

Schkolnik, Müller Demian Aley. "Desarrollo de una herramienta gráfica de exploración de robots con ROS." Tesis, Universidad de Chile, 2015. http://repositorio.uchile.cl/handle/2250/137944.

Full text
Abstract:
Ingeniero Civil en Computación
ROS, un middleware para robots, ofrece gran variedad de herramientas para su utilización. Sin embargo, carece de una importante herramienta: Algo que permita visualizar de forma dinámica sus componentes, y poder así entender sistemas complejos de mejor forma. Esta memoria consistió en desarrollar una herramienta, que es capaz de visualizar, mediante un grafo, un sistema completo creado en ROS, pudiendo ver cuáles son sus distintos componentes y cómo interactúan. Además, la herramienta incluye la opción de visualizar tres tipos de mensajes comunes presentes en ROS. El trabajo se realizó en el lenguaje de programación Smalltalk, y usando el ambiente de desarrollo Pharo. Para las visualizaciones se utilizó el motor de visualizaciones Roassal, basado en Pharo. El trabajo se dividió en cuatro grandes etapas. La primera etapa consistió en un trabajo de investigación, haciendo una revisión de las herramienta a usar en el desarrollo, junto a un análisis de los mensajes comunes de ROS y como se representaban. Esto sería usado en la segunda etapa. La segunda etapa consistió en el desarrollo de una API, que permitiera comunicación entre Pharo y ROS. Para ello se hizo uso de las herramientas de consola presentes en ROS. Junto a la API, se desarrollaron una serie de tests, a modo de robustecer la API frente a posibles cambios en ROS. La tercera etapa consistió en la creación del grafo general de ROS. Este grafo nos muestra el sistema completo creado en ROS, indicándonos también de qué forma interactúan los componentes entre ellos. En esta etapa, la comunicación con ROS se hace exclusivamente a través de la API implementada en la segunda etapa. La cuarta y última etapa consistió en la creación de las visualizaciones para tres mensajes comunes de ROS. Estas visualizaciones son dinámicas, es decir, cambian en tiempo real cuando los mensajes cambian. El presente trabajo presenta primero el estudio previo, explicando las herramientas, lenguajes y funcionalidades que se usarán en el desarrollo. Esta sección también incluye información de herramientas similares existentes, y explica las falencias de éstas y la justificación de la creación de una nueva herramienta. La segunda parte de este trabajo contiene el desarrollo de la herramienta, comenzando por la API, para luego seguir con el grafo general y las visualizaciones. A modo de conclusión, la herramienta creada presenta una manera eficaz y usable de explorar robots creados con ROS, y fue creada de manera modular y extensible, generando algunas visualizaciones de ejemplo. Puede servir como base para un trabajo futuro, que genere más visualizaciones así como también incluya un sistema de inserción de mensajes.
APA, Harvard, Vancouver, ISO, and other styles
23

Ramiro, Cid Víctor Alejandro. "Un Modelo Abierto de Proximidad para el Descubrimiento de Servicios en Computación Pervasiva." Tesis, Universidad de Chile, 2009. http://www.repositorio.uchile.cl/handle/2250/102137.

Full text
APA, Harvard, Vancouver, ISO, and other styles
24

Meneses, Cortés Matías Ignacio. "Desclasificación basada en tipos en DART: Implementación y elaboración de herramientas de inferencia." Tesis, Universidad de Chile, 2018. http://repositorio.uchile.cl/handle/2250/168368.

Full text
Abstract:
Ingeniero Civil en Computación
La protección de la confidencialidad de la información manipulada por los programas computacionales es abordada a nivel del código fuente con distintas técnicas. Una de ellas es tipado de seguridad para el control de flujo, que controla el nivel de seguridad donde fluye la información agregando anotaciones a las variables tipadas. La propiedad de seguridad fundamental de control de flujo es conocida como no-interferencia (noninterference), que establece que un observador público no puede obtener conocimiento desde datos confidenciales. A pesar de ser una propiedad muy atractiva, los sistemas reales la vulneran fácilmente, y necesitan mecanismos para desclasificar selectivamente alguna información. En esta dirección, Cruz et al. proponen una forma de desclasificación basada en tipos (type-based declassification), en donde se utilizan las relaciones de subtipos del lenguaje para expresar las políticas de desclasificación de los datos que maneja el programa, en una forma simple y expresiva. A pesar de que el fundamento teórico de la desclasificación basada en tipos está bien descrito, carece de una implementación que permita comprobar la utilidad práctica de la propuesta. En este trabajo, se implementa el análisis de la desclasificación basada en tipos para un subconjunto del lenguaje Dart, un lenguaje de programación de propósito general orientado a objetos desarrollado por Google. Además, se implementó un sistema de inferencia de políticas de desclasificación y una extensión para ambientes de desarrollo, con el objetivo de facilitar el trabajo al programador y mejorar su experiencia.
APA, Harvard, Vancouver, ISO, and other styles
25

Fernández, Salas Pablo Andrés. "Integración e Implementación de Modelos de Apoyo a Decisiones de Mantenimiento para Flota de Aviones F-16 de la Fuerza Aérea de Chile." Tesis, Universidad de Chile, 2009. http://www.repositorio.uchile.cl/handle/2250/103371.

Full text
Abstract:
No autorizada por el autor para ser publicada a texto completo
Esta memoria tuvo como objetivo generar un sistema de apoyo a decisiones de mantenimiento, basado en una aplicación computacional. El sistema permite orientar en forma objetiva al tomador de decisiones de mantenimiento. Se consideraron 3 tomas de decisiónes cruciales: selección de sistemas críticos, intervalos entre reemplazo preventivo y optimización de la gestión de inventarios de repuestos. Los criterios usados fueron: disponibilidad, confiabilidad y costos. Para implementar estos modelos, se utilizó como herramientas el lenguaje de programación Java y distintos modelos matemáticos obtenidos de la bibliografía correspondiente. El apoyo de FACh permitió contar con datos de historial de fallas, costos e índices de desempeño (disponibilidad deseada, horas de vuelo anual, costos de operación, etc.), para desarrollar estudios de casos sobre la flota de aviones de combate F-16. Adicionalmente se hizo un estudio en la flota de aviones C-130. El sistema de apoyo a decisiones desarrollado se denomina Plataforma Unificada de Mantenimiento Aeronáutico, PUMA. Así, se implementó un módulo de priorización de componentes por Criterio de Dispersión de Costos, Indisponibilidad, Tiempo Fuera de Servicio y Frecuencia de Falla. El sistema cuenta con un módulo de Análisis de Confiabilidad, el cual permite conocer el nivel de riesgo para la operación del componente que se estudia. Para apoyar la decisión de una estrategia de tipo preventiva, se implementó un módulo de reemplazo preventivo, bajo criterios de Costos de intervención y Disponibilidad. Se implementaron 4 modelos para el apoyo a la gestión de repuestos, donde se consideran los repuestos de tipos reparables y consumibles. El diseño de PUMA considera el concepto de proceso de mejoramiento continuo de mantenimiento y la usabilidad de software, facilitando al usuario el ingreso de datos, manuales de ayuda rápida, reconocimiento de resultados e interacción con la interfaz. La validación se efectuó utilizando el historial de falla de la flota de aviones F-16 y la bibliografía correspondiente. Como conclusión, PUMA es un importante apoyo a la toma de decisiones, aporta nuevas Metodologías para el uso de los recursos de la organización, permite contar con análisis cuantitativos en base a la evidencia observada y se perfila como una herramienta útil para la gestión de activos de defensa.
APA, Harvard, Vancouver, ISO, and other styles
26

Ludeña, Caballero de Rodríguez Margarita. "Evaluación formativa y su influencia en el aprendizaje de lenguaje de programación de los estudiantes de la Facultad de Ingeniería Electrónica y Eléctrica de la Universidad Nacional Mayor de San Marcos, Lima - 2011." Master's thesis, Universidad Nacional Mayor de San Marcos, 2012. https://hdl.handle.net/20.500.12672/14286.

Full text
Abstract:
Publicación a texto completo no autorizada por el autor
Presenta el resultado del trabajo investigativo durante el año 2011 en un grupo de 31 estudiantes de Ingeniería que han conformado el Grupo Experimental y, de otra cifra similar, que se ha denominado Grupo Control. Es una investigación experimental con diseño cuasi experimental, en razón que los grupos han estado establecidos previamente. La variable independiente: Evaluación formativa, ha sido aplicada (manipulada) durante varias sesiones de aprendizaje al grupo experimental, en tanto los del grupo control no ha recibido este tipo de evaluación, sino las convencionales (sumativa, entre otros). El instrumento de colecta de datos (prueba de conocimientos) aplicado mediante la evaluación, ha sido suministrada a ambos grupos antes (pre test) y después (post test) de la experimentación al GE. Dicho instrumento ha sido validado con dos expertos, cuyos resultados los colocan en el nivel “muy bueno” con un promedio de 83 puntos. Asimismo, al determinarse el análisis de fiabilidad con el SPSS (alphade Cronbach) se obtiene un índice de α = 0,677 lo que indica que el instrumento es confiable. Los resultados de la investigación demuestran que los estudiantes que han sido sometidos a evaluación formativa obtienen mayor nivel de conocimientos en Lenguaje de Programación (11,194 puntos en promedio) que aquellos universitarios que no han sido sometidos a este tipo de evaluación (08,419 puntos). Al tenerse una significancia de 0,000 la misma que se halla dentro del valor permitido (donde p < de 0.01)se acepta la hipótesis planteada en la investigación en el sentido que la evaluación formativa mejora significativamente el aprendizaje en Lenguaje de Programación en estudiantes de la Facultad de Ingeniería Electrónica y Eléctrica de la Universidad Nacional Mayor de San Marcos.
Tesis
APA, Harvard, Vancouver, ISO, and other styles
27

Allende, Prieto Esteban Armando. "Portando AmbientTalk a Dispositivos Móviles Livianos." Tesis, Universidad de Chile, 2010. http://repositorio.uchile.cl/handle/2250/103823.

Full text
Abstract:
El objetivo general del presente trabajo es poder interpretar un subconjunto del lenguaje de programación AmbientTalk en un dispositivo móvil liviano que sea capaz de interactuar con otros programas desarrollados en AmbientTalk alojados en otros dispositivos que no sean necesariamente del mismo tipo de equipo. El dispositivo móvil liviano usado para esta memoria es un Sun SPOT. El intérprete oficial de AmbientTalk está desarrollado para Java ME CDC, mientras que los Sun SPOT poseen como plataforma de desarrollo Java ME CLDC. Una de las diferencias importantes entre ambos es que tanto reflexión como serialización no están presentes en CLDC, mientras que si lo están en CDC. Ambas son características muy usadas y muy imprescindibles para el intérprete oficial, por lo que se hace necesario replantear un nuevo intérprete para los Sun SPOT. Debido a las capacidades de cómputo limitadas de un Sun SPOT, se decidió separar la plataforma en dos aplicaciones que corren en máquinas distintas: un compilador que lea código fuente AmbientTalk y que genere un archivo binario, y un intérprete AmbientTalk que lea ese archivo binario e interprete el programa almacenado en él en un Sun SPOT. A cada una de las aplicaciones se le realizó un diseño de arquitectura lógica, separando los componentes en módulos semi desacoplados. Luego se realizó una validación al intérprete, realizando para tal efecto una aplicación ejemplo de programación distribuida consistente en un sistema controlador de luces remotas. Se realizó esta aplicación tanto para Java ME CLDC, como para AmbientTalk, mostrando que mientras la aplicación en Java ME CLDC es más eficiente, la aplicación en AmbientTalk fue más simple de desarrollar. Finalmente se concluye que esta plataforma es un paso para tener una implementación de AmbientTalk en toda la gama de dispositivos con Java y que AmbientTalk permite disminuir el tiempo de programación para aplicaciones distribuidas en un Sun SPOT.
APA, Harvard, Vancouver, ISO, and other styles
28

Sologuren, Gutiérrez Felipe Leopoldo. "Combinado Indexación y Compresión en Texto Semi-Estructurado." Tesis, Universidad de Chile, 2009. http://www.repositorio.uchile.cl/handle/2250/103488.

Full text
Abstract:
El almacenamiento digital de la información debe abordar tanto el problema de la incorporación de datos al sistema como su recuperación, y debe hacer un catálogo acorde con las consultas que sobre ellos quiera hacerse. El espacio ocupado para el almacenamiento y el tiempo necesario para ingresar la información, y para recuperala, depende directamente de la estructura utilizada en el repositorio. De este modo, cuando nos referimos a información que ya cuenta cion un grado de estructuración, la indexación debe ser coherente con la estructuta formal de la misma, para favorecer así la consulta. En el presente estudio se aborda el problema de la compresión estática de información semi-estructurada combinada con una indezación tendiente a soportar uin conjunto de consultas sobre los datos, con un fuerte énfasis en el almacenamiento en memoria secundaria. El ámbito de desarrollo de la aplicación propuesta se enmarca dentro de la documentación XML y su lenguaje de consulta XQuery. El modelo utilizado en la implementación está basado en la propuestas desarrolladas por Baeza-Yates y Navarro en Proximal Nodes. La implementación corresponde a un desarrollo posterior de un procesador destinado a soportar consultas en el lenguaje XPath desarrollado por Manuel Ortega como memoria de Ingeniería. El desarrollo de la capa de almacenamiento del prototipo actual se enfoca en la resolución de problemas en tres áreas: recuperación del archivo fuente, consulta eficiente sobre la estructura del documento, y búsqueda de texto en lenguaje natural. Las estructuras diseñadas adhieren a técnicas recientes en el área de la compresión y de recuperación de la información en XML. El resultado de esta memoria es un autoíndice XML con gran desempeño en colecciones de tamaño pequeño y mediano, con capacidad de abordar colecciones de gran tamaño con resucesos limitados de memoria principal, y con un gran potencial de adaptación para colecciones en un nuevo contexto dinámico. El prototipo presenta un desempeño altamente competitivo con las alternativas existentes en el estado del arte.
APA, Harvard, Vancouver, ISO, and other styles
29

Zarco, Maldonado Rosa Isela. "Comparativa sintáctica entre los lenguajes de programación Java y Groovy." Tesis de Licenciatura, Universidad Autónoma del Estado de México, 2015. http://hdl.handle.net/20.500.11799/59166.

Full text
Abstract:
El presente trabajo realiza una comparativa sintáctica sobre los lenguajes de programación Java y Groovy, dichos lenguajes mantienen determinada relación en cuanto a sus propósitos, además de que cuentan con gran similitud en su sintaxis, los puntos anteriores han sido motivo por el cual se presentó interés en conocer más sobre ambos. La idea no es destacar a uno sobre el otro, sino más bien, es dar a conocer a los interesados lo que ofrece cada uno para facilitar la toma de alguna de estos y desarrollar de una manera más eficiente de acuerdo a sus necesidades.
APA, Harvard, Vancouver, ISO, and other styles
30

Maguiña, Agurto Lucero Lizeth. "Implantación de VRP - Solver aplicando la heurística de Clarke Wright para el ruteo del transporte terrestre en el área de distribución caso de estudio: industrias alimentarias." Bachelor's thesis, Universidad Nacional Mayor de San Marcos, 2016. https://hdl.handle.net/20.500.12672/5954.

Full text
Abstract:
El presente trabajo tiene como objetivo la implantación del VRP Solver para poder minimizar las distancias utilizadas en el envío de productos de una empresa distribuidora. Para la determinación de la solución que se adapta al problema, se realiza evaluaciones por criterios de los modelos, heurísticas, y algoritmos analizados, lo cual da como resultado, que el modelo que se adapta a la solución del problema es el modelo VRP, con la heurística de Clarke Wright y el algoritmo de Búsqueda Tabú. El software implantado precisamente utiliza la heurística de Clarke Wright para minimizar distancias, tomando como datos de entradas, la ubicación de cada cliente y dando como resultados las rutas optimas, con las pruebas realizadas, se logra disminuir en un 10% la distancia total utilizada en las rutas de la empresa del caso de estudio.
Tesis
APA, Harvard, Vancouver, ISO, and other styles
31

Sánchez, Álvarez Daniel. "Elementos de Semántica Denotacional de Lenguajes de Programación con Datos Borrosos." Doctoral thesis, Universidad de Murcia, 1999. http://hdl.handle.net/10803/10932.

Full text
Abstract:
A fin de diseñar e implementar lenguajes de programación que tengan en cuenta el paradigma borroso modificaremos el lambda cálculo clásico, adjuntando a cada término un grado, y redefiniendo la beta-reducción, obteniendo que para que el nuevo cálculo verifique la propiedad de Church-Rosser la transmisión de los grados debe hacerse por medio de una función que sea una t-norma o s-conorma. Utilizando esta nueva herramienta diseñamos un lenguaje no determinista que satisface los requerimientos de la programación con datos borrosos.
With the aim of designing and implementing programming languages that take into account the fuzzy paradigm we will modify the classical lambda calculus by adding a degree to each term and by redefining the b-reduction. Thus, for the new calculus to verify the Church-Rosser property, the degree computed with can be made through a function that is a t-norm or an s-conorm. With this new tool we design a nondeterminist language that satisfies fuzzy dataprogramming requirements, and an example of its behaviour is shown.
APA, Harvard, Vancouver, ISO, and other styles
32

Ascona, Briceño John Wilmer. "Gestión de un sistema E-Learning y aplicación del B-Learning para la capacitación de personal en el lenguaje ABAP." Bachelor's thesis, Universidad Nacional Mayor de San Marcos, 2013. https://hdl.handle.net/20.500.12672/9564.

Full text
Abstract:
Publicación a texto completo no autorizada por el autor
Pretende gestionar un sistema E-learning usando una herramienta de software libre como es Chamilo aplicando el método B-learning considerando algunos aspectos de las teorías de aprendizaje de Vitgosky, Bruner, Ausubel y Jean Piaget para redactar el contenido que se adecúe al modelo de la herramienta usada que permitirá la capacitación de personal en el lenguaje ABAP y de esta manera incentivar la investigación del lenguaje ABAP en los estudiantes de algún lenguaje de programación. Este lenguaje es uno de los más utilizados en las empresas que usan el producto SAP-ERP, con este hecho se presenta una mayor oportunidad de desarrollo profesional para los estudiantes que optan por investigar y aprender el lenguaje ABAP.
Trabajo de suficiencia profesional
APA, Harvard, Vancouver, ISO, and other styles
33

Barba, Escudero Jorge Enrique. "Registro de imágenes para agricultura de precisión usando lenguaje C." Bachelor's thesis, Pontificia Universidad Católica del Perú, 2012. http://tesis.pucp.edu.pe/repositorio/handle/123456789/1276.

Full text
Abstract:
La tesis expuesta abarca la elaboración de un sistema de registro para imágenes que fueron tomadas por un aeromodelo sobre un campo de cultivo de papa, el cual es parte de un ambicioso proyecto de agricultura de precisión que actualmente se esta realizando el CIP (Centro Internacional de la Papa) y la PUCP. Dicho sistema generará un mosaico con las imágenes obtenidas en los espectros infrarrojo y rojo visible que posteriormente serán procesadas para obtener mapas de productividad, los cuales brindan información espacial detallada acerca la zona de cultivo con el objetivo de reducir el consumo innecesario y el impacto ambiental. En el primer capítulo se expondrá el estado del arte del proyecto a nivel global, posteriormente a nivel local y nalmente se analizarán las necesidades, las cuales enmarcan el objetivo del presente estudio. En el segundo capítulo se exponen las tecnologías vigentes para la solución del problema, considerando ventajas y desventajas se seleccionará la más e ciente que cumpla con las especi caciones y los objetivos para solucionar el problema propuesto. En el tercer capítulo se dará fundamento teórico a la solución propuesta y se detallará la implementación. Finalmente en el cuarto capítulo se someterá al algoritmo a diversas pruebas usando imágenes con cambios en el punto de vista, cambios de escala, desenfoque, compresión JPEG e iluminación.
Tesis
APA, Harvard, Vancouver, ISO, and other styles
34

Coletti, Romero Erwin Ededualdo. "Balance de línea de producción en una empresa de calzado mediante la metaheurística búsqueda tabú." Bachelor's thesis, Universidad Nacional Mayor de San Marcos, 2014. https://hdl.handle.net/20.500.12672/11002.

Full text
Abstract:
Publicación a texto completo no autorizada por el autor
Explica los problemas de balance en línea de producción en una fábrica de calzado. Se aplica la metaheurística búsqueda tabú, encontrados un modelo de distribución de trabajadores a las actividades de producción que logro mejorar la eficiencia en un 75%. Asimismo los reprocesos por fallas tuvieron una reducción del 8.21% obteniéndose con ello un ahorro para la empresa en estudio. Para la implementación de la búsqueda tabú se realizó un programa computacional en visual c++ 2008.
Tesis
APA, Harvard, Vancouver, ISO, and other styles
35

Salas, Casapino Carlos Alberto. "Implementation of a four probes measuring system to determine the resistivity of thin lms with temperature dependence." Master's thesis, Pontificia Universidad Católica del Perú, 2017. http://tesis.pucp.edu.pe/repositorio/handle/123456789/8900.

Full text
Abstract:
Resistivity measurements in thin film samples depending on the temperature and on the film thickness is always a subject of interest, above all when it comes to new materials. This work presents the implementation of a measuring system for thin film resistivity based on four probes showing the dependency of the resistivity on the temperature as well as on the film thickness. In order to change the temperature of the samples, a heat source based on a Peltier element was implemented into the measuring system. A Graphical User Interface using a LabVIEW software controls all the devices of the measuring system and allows the user to calculate the thin film resistivity choosing between four measuring method: Van der Pauw, Modified Van der Pauw, Linear Van der Pauw and Linear Four Probes methods. Resistivity in aluminum and tungsten thin film samples with 100, 300, and 600 nm thickness were measured at temperatures between 303K and 373K with increments of 5 K. The results obtained are higher than bulk resistivity values and agrees with the present theory. Moreover, it is shown that the resistivity values obtained and its corresponding temperature coefficients increases as the film thickness decreases.
Tesis
APA, Harvard, Vancouver, ISO, and other styles
36

Kong, Moreno Martín Richard. "Intérprete de páginas Web dinámicas para el servidor Apache." Bachelor's thesis, Pontificia Universidad Católica del Perú, 2004. http://tesis.pucp.edu.pe/repositorio/handle/123456789/353.

Full text
Abstract:
El presente trabajo tiene como objetivo explicar cómo funciona la tecnología Server-Side Scripting en la generación de páginas web dinámicas, desarrollando dos versiones de un intérprete basado en las reglas del lenguaje Pascal. La primera de estas versiones corre como un módulo DSO (Dynamic Shared Object) integrada al servidor Apache, mientras que la segunda es un intérprete independiente que genera las páginas dinámicamente interactuando con el servidor Apache vía CGI.
Tesis
APA, Harvard, Vancouver, ISO, and other styles
37

Iborra, López José. "Termination of Narrowing: Automated Proofs and Modularity Properties." Doctoral thesis, Universitat Politècnica de València, 2013. http://hdl.handle.net/10251/19251.

Full text
Abstract:
En 1936 Alan Turing demostro que el halting problem, esto es, el problema de decidir si un programa termina o no, es un problema indecidible para la inmensa mayoria de los lenguajes de programacion. A pesar de ello, la terminacion es un problema tan relevante que en las ultimas decadas un gran numero de tecnicas han sido desarrolladas para demostrar la terminacion de forma automatica de la maxima cantidad posible de programas. Los sistemas de reescritura de terminos proporcionan un marco teorico abstracto perfecto para el estudio de la terminacion de programas. En este marco, la evaluaci on de un t ermino consiste en la aplicacion no determinista de un conjunto de reglas de reescritura. El estrechamiento (narrowing) de terminos es una generalizacion de la reescritura que proporciona un mecanismo de razonamiento automatico. Por ejemplo, dado un conjunto de reglas que denan la suma y la multiplicacion, la reescritura permite calcular expresiones aritmeticas, mientras que el estrechamiento permite resolver ecuaciones con variables. Esta tesis constituye el primer estudio en profundidad de las propiedades de terminacion del estrechamiento. Las contribuciones son las siguientes. En primer lugar, se identican clases de sistemas en las que el estrechamiento tiene un comportamiento bueno, en el sentido de que siempre termina. Muchos metodos de razonamiento automatico, como el analisis de la semantica de lenguajes de programaci on mediante operadores de punto jo, se benefician de esta caracterizacion. En segundo lugar, se introduce un metodo automatico, basado en el marco teorico de pares de dependencia, para demostrar la terminacion del estrechamiento en un sistema particular. Nuestro metodo es, por primera vez, aplicable a cualquier clase de sistemas. En tercer lugar, se propone un nuevo metodo para estudiar la terminacion del estrechamiento desde un termino particular, permitiendo el analisis de la terminacion de lenguajes de programacion. El nuevo metodo generaliza los
Iborra López, J. (2010). Termination of Narrowing: Automated Proofs and Modularity Properties [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/19251
Palancia
APA, Harvard, Vancouver, ISO, and other styles
38

Baila, Guillen Jennifer Geraldine. "Sistema Blended Learning para capacitación a personal de estaciones de servicio." Bachelor's thesis, Universidad Nacional Mayor de San Marcos, 2013. https://hdl.handle.net/20.500.12672/9565.

Full text
Abstract:
Publicación a texto completo no autorizada por el autor
Manifiesta que en la actualidad las empresas de estaciones de servicio tienen la apremiante necesidad de capacitar a su personal administrativo y técnico, luego de la implantación de una solución de software que controla los procesos de las estaciones de servicio. La realización del presente estudio se justifica, en que con la implantación de un sistema blended learning, se reducen costo y tiempo de capacitación al personal, convirtiéndose este en el objetivo primordial de esta investigación. Se realizó una evaluación comparativa de plataformas e-learning, metodologías e-learning, modelos blended learning y modelos de diseño instruccional. La plataforma e-learning seleccionada es MOODLE, la metodología e-learning elegida es una metodología e-learning de ingeniería de sistemas de Gilbert dentro de la cual también se desarrolla el curso modelo según el modelo de diseño instruccional ADDIE y por último el modelo blended learning seleccionado es modelo de aprendizaje ecológico para Blended Learning, de Mike S. Wenger y Chuck Ferguson.
Trabajo de suficiencia profesional
APA, Harvard, Vancouver, ISO, and other styles
39

Ortín, Soler Francisco. "Sistema Computacional de Programación Flexible diseñado sobre una Máquina Abstracta Reflectiva No Restrictiva." Doctoral thesis, Universidad de Oviedo, 2002. http://hdl.handle.net/10803/11135.

Full text
Abstract:
Esta tesis describe el modo en el que distintas técnicas de reflectividad pueden ser empleadas para el desarrollo de un sistema computacional de programación extensible y adaptable dinámicamente, sin sufrir dependencia alguna de un lenguaje de programación específico, y empleando para ello una plataforma virtual heterogénea.Se diseña una máquina abstracta, de tamaño y complejidad semántica reducida, como la raíz computacional del sistema, que otorga primitivas básicas de reflectividad. Tanto su tamaño restringido como su capacidad introspectiva, la hacen susceptible de ser implantada en entornos computacionales heterogéneos, constituyendo adicionalmente un entorno computacional independiente de la plataforma.Haciendo uso de las facultades reflectivas ofrecidas por la máquina abstracta su nivel de abstracción computacional podrá ser extendido dinámicamente, utilizando para ello su propio lenguaje de programación sin necesidad de modificar la implementación reducida de la máquina virtual, y, por tanto, sin perder portabilidad de su código. El empleo de su capacidad extensible se utilizará, a modo de ejemplo, en el diseño de abstracciones propias de persistencia, distribución, planificación controlada de hilos y recolección de basura. Todas las abstracciones ofrecidas mediante la extensión de la plataforma, utilizando su propio lenguaje, son adaptables para cualquier aplicación, en tiempo de ejecución.Se diseña un sistema de procesamiento genérico de lenguajes disponiendo de las características reflectivas de la plataforma, dando lugar a una independencia global del lenguaje de programación seleccionado por el programador. Cualquier aplicación podrá interactuar con otra bajo el modelo computacional de objetos ofrecido por la máquina abstracta, independientemente del lenguaje en el que hayan sido creadas.La flexibilidad dinámica del sistema creado es superior, tanto en expresividad como en el espectro de facetas computacionales adaptables, a los actualmente existentes. La estructura de las aplicaciones en ejecución, y la especificación léxica, sintáctica y semántica del lenguaje de programación, son parámetros configurables dinámicamente, tanto por la propia aplicación -en cualquiera que sea su lenguaje de programación-, como por cualquier otro programa. El sistema reflectivo ofrecido no posee restricción alguna respecto a las características computacionales a configurar, ni respecto al modo de expresar su adaptación. Toda la flexibilidad ofrecida es dinámica, no siendo necesario finalizar la ejecución de una aplicación para su configuración, pudiéndose adaptar ésta a requisitos surgidos dinámicamente, imprevisibles en tiempo de desarrollo.
APA, Harvard, Vancouver, ISO, and other styles
40

Tasato, Cánepa Kenjy. "Desarrollo de una infraestructura de software para realizar pruebas automatizadas de sistemas de información desarrollados en lenguaje Cobol en el contexto bancario." Bachelor's thesis, Pontificia Universidad Católica del Perú, 2013. http://tesis.pucp.edu.pe/repositorio/handle/123456789/5424.

Full text
Abstract:
El presente proyecto de fin de carrera corresponde al desarrollo de una infraestructura de software para realizar pruebas automatizadas de sistemas de información desarrollados en lenguaje cobol en el contexto bancario. La propuesta de esta infraestructura surge como resultado del análisis de la realidad del proceso de pruebas dentro del área de Certificación de un banco. La infraestructura propuesta es configurable, escalable y adaptable para las diferentes versiones de cobol con las que se cuenten. El presente documento ha sido estructurado en 7 capítulos como se describe a continuación: En el capítulo 1 se presenta la problemática de donde se extrajo el problema que tuvo como resultado la propuesta del presente proyecto de fin de carrera, el objetivo general, objetivos específicos y resultados esperados. Se detallan las metodologías utilizadas en el proyecto tanto metodologías del proceso de construcción como la gestión del proyecto. Finalmente se menciona el alcance y limitaciones. En el capítulo 2 se presentan los conceptos y definiciones escenciales para el desarrollo del proyecto. En el capítulo 3 se revisan las soluciones actuales al problema identificado, se mencionan herramientas y finalmente se hace una comparación entre ellas. En el capítulo 4 se mencionan los requerimientos funcionales y no funcionales de la infraestructura. En el capítulo 5 se presenta la arquitectura de la solución, así como diagramas de actores entre otros, que permitirán comprender la forma de la infraestructura. En el capítulo 6 se presenta las distintas funcionalidades de la infraestructura ayudado de capturas de pantalla. En el capítulo 7 se presentan las observaciones, conclusiones y recomendaciones del presente proyecto de fin de carrera.
Tesis
APA, Harvard, Vancouver, ISO, and other styles
41

Morillo, Torres Daniel. "Eficiencia energética en la programación de tareas con recursos restringidos." Doctoral thesis, Universitat Politècnica de València, 2017. http://hdl.handle.net/10251/90654.

Full text
Abstract:
In the field of operations research, the set of scheduling problems of activities is considered as one of the most relevant ones due to its great applicability and complexity. Within the broad variety of problems in this set, it is remarkable the Resource-Constrained Project Scheduling Problem (RCPSP), since it is regarded as the most important-base problem in this area and it has been the object of study in countless research projects. Basically, this problem consists of a project split into sets of activities that are related to each other by means of precedence-constraints, and require an amount of each limited resource, to be performed. The objective, then, is to allocate in the most efficient way those resources to the activities in order to optimize a scoring function such as the makespan. Similar in importance is the multimodal-version of the RCPSP, called MRCPSP, in which for each activity there exists multiple execution modes that involve a different combination of limited resources, giving rise to a different execution time. In the literature, it has been addressed widely these two problems with both exact methods and approximation methods, being these latter the most successful. These research works have focused mainly on obtaining economic advantages such as costs and project time minimization. However, with the accelerating globalization and the fast countries' growing economies, the race for power resources have increased sharply. In fact, the importance of taking into account the energy consumption on modeling has become so important that it is now considered as important as other performance measures such as productivity and costs. Hence, the main goal of this Ph.D. dissertation is to develop a new RCPSP and MRCPSP approach based on the energetic efficiency, which is aimed at searching for sustainable solutions in terms of time and energy consumption. To this end, it has been proposed an extension of the RCPSP, named MRCPSP-ENERGY, which considers besides the traditional resources of the RCPSP, a variable energetic consumption that generates different execution modes for the activities. This proposal includes a new optimization criterion based on the energetic efficiency of a project, which considers simultaneously the minimization of both the total duration and the energy consumption of such project. Moreover, in order to assess the solution methods for the MRCPSP-ENERGY, the standard library mostly used for this purpose has been extended and a new one has been proposed, called PSPLIB-ENERGY. In order to solve the proposed problem, firstly, the most successful metaheuristics methods, which address the RCPSP, were analyzed. Secondly, it was shown that these methods lead to redundant solutions, hindering the search. Therefore, an evolutive method was proposed, whose main contribution is the development of a new mutation operator that reduces the number of redundant solutions. Similarly, in the multimodal case, it was determined that the most widespread searching methods are also focused on the activity list representation and therefore they yield redundant solutions. As a solution alternative for the MRCPSP-ENERGY, it was shown that such search can be carried out by focusing on the mode list representation, as different mode lists also reach diverse solutions, giving rise to a less number of redundant solutions. Keeping in mind this finds, it was proposed a new evolutive method for solving the MRCPSP-ENERGY, which unifies both searching methods such that the search is conducted with two optimization phases. Based on the obtained results given by the PSPLIB-ENERGY library, the proposed method proved to be able to reach highly efficient solutions.
En la investigación operativa, el conjunto de problemas de secuenciación de actividades es considerado como uno de los más relevantes debido a su gran aplicabilidad y complejidad. Dentro de la amplia variedad de problemas en este conjunto, destaca el problema de programación de tareas con recursos restringidos (RCPSP por su sigla en inglés), pues es considerado como el problema base más importante en esta área y ha sido objeto de estudio de numerosas investigaciones. Básicamente, consiste de un proyecto subdividido en un conjunto de actividades que se encuentran relacionadas mediante restricciones de precedencia y requieren, para ser ejecutadas, una cantidad de cada tipo de recurso cuya disponibilidad máxima se encuentra limitada. El objetivo es asignar los recursos a las actividades de la manera más eficiente posible para optimizar una medida de desempeño, por ejemplo, la duración total del proyecto. Igualmente importante es la versión multi-modal del RCPSP, llamada MRCPSP, en la que para cada actividad existen múltiples modos de ejecución que involucran una combinación diferente de recursos limitados, dando origen a un tiempo de ejecución distinto. En la literatura se han abordado ampliamente estos dos problemas tanto con métodos exactos como de aproximación, siendo estos últimos los más exitosos. Estos trabajos se han centrado principalmente en la obtención de beneficios económicos, como la minimización de los costes o la obtención de la mínima duración del proyecto. Sin embargo, con la aceleración de la globalización y el rápido desarrollo de los países, la competencia por recursos energéticos ha aumentado drásticamente. Incluso, la importancia de tener en cuenta el consumo de energía en los modelos ha crecido de tal manera que, ahora es considerado con la misma relevancia que otras medidas de desempeño como la productividad y los costes. Así, el objetivo principal de esta tesis es desarrollar un nuevo enfoque del RCPSP y del MRCPSP, basado en la eficiencia energética, la cual busca soluciones sostenibles en términos de tiempo y de consumo energético. Para este fin, se ha propuesto una extensión del RCPSP denominada MRCPSP-ENERGY, la cual considera, además de los recursos tradicionales del RCPSP, un consumo de energía variable que da origen a distintos modos de ejecución de las actividades. Esta propuesta incluye un nuevo criterio de optimización basado en la eficiencia energética del proyecto, que tiene en cuenta de manera simultánea la minimización de la duración del proyecto y el consumo total de energía. Adicionalmente, con el objetivo de evaluar los métodos de solución para el MRCPSP-ENERGY, se ha ampliado la librería estándar de prueba más extendida para el RCPSP y se ha propuesto una nueva librería, denominada PSPLIB-ENERGY. Para encontrar solución al problema propuesto, primero se analizaron los mejores métodos metaheurísticos que abordan el RCPSP. Luego, se identificó que estos métodos conducen a soluciones redundantes, entorpeciendo la búsqueda. Por tanto, se propuso un método evolutivo cuya principal aportación es el desarrollo de un nuevo operador de mutación que disminuye la generación de soluciones redundantes. Similarmente, en el caso multi-modal se detectó que los principales métodos de búsqueda también se centran en la representación de lista de actividades y por tanto generan soluciones redundantes. Como alternativa de solución para el MRCPSP-ENERGY, se mostró que la búsqueda puede realizarse enfocándose en la lista de modos, ya que diferentes listas de modos también pueden alcanzar soluciones distintas, generando un menor número de soluciones redundantes. Teniendo en cuenta estos hallazgos, se propuso un nuevo método evolutivo para resolver el MRCPSP-ENERGY, que unifica ambos métodos de búsqueda para realizarla en dos fases de optimización. Basándose en los resultados obtenidos en la PSPLIB-ENERGY, se concluye que el m
En la investigació operativa, el conjunt de problemes de seqüenciació d'activitats és considerat com un dels més rellevants a causa de la seua gran aplicabilitat i complexitat. Dins de l'àmplia varietat de problemes en este conjunt, destaca el problema de programació de tasques amb recursos restringits (RCPSP per la seua sigla en anglés) , perquè és considerat com el problema base més important en esta àrea i ha sigut objecte d'estudi de nombroses investigacions. Bàsicament, consistix d'un projecte subdividit en un conjunt d'activitats que es troben relacionades per mitjà de restriccions de precedència i requerixen, per a ser executades, una quantitat de cada tipus de recurs la disponibilitat màxima de la qual es troba limitada. L'objectiu és assignar els recursos a les activitats de la manera més eficient possible per a optimitzar una mesura d'exercici, per exemple, la duració total del projecte. Igualment important és la versió multi- modal del RCPSP, crida MRCPSP, en la que per a cada activitat hi ha múltiples modes d'execució que involucren una combinació diferent de recursos limitats, donant origen a un temps d'execució distint. En la literatura s'han abordat àmpliament estos dos problemes tant amb mètodes exactes com d'aproximació, sent estos últims els més reeixits. Estos treballs s'han centrat principalment en l'obtenció de beneficis econòmics, com la minimització dels costos o l'obtenció de la mínima duració del projecte. No obstant això, amb l'acceleració de la globalització i el ràpid desenrotllament dels països, la competència per recursos energètics ha augmentat dràsticament. Inclús, la importància de tindre en compte el consum d'energia en els models ha crescut de tal manera que, ara és considerat amb la mateixa rellevància que altres mesures d'exercici com la productivitat i els costos. Així, l'objectiu principal d'esta tesi és desenrotllar un nou enfocament del RCPSP i del MRCPSP, basat en l'eficiència energètica, la qual busca solucions sostenibles en termes de temps i de consum energètic. Per a este fi, s'ha proposat una extensió del RCPSP denominada MRCPSP- ENERGY, la qual considera, a més dels recursos tradicionals del RCPSP, un consum d'energia variable que dóna origen a distints modes d'execució de les activitats. Esta proposta inclou un nou criteri d'optimització basat en l'eficiència energètica del projecte, que té en compte de manera simultània la minimització de la duració del projecte i el consum total d'energia. Addicionalment, amb l'objectiu d'avaluar els mètodes de solució per al MRCPSP-ENERGY, s'ha ampliat la llibreria estàndard de prova més estesa per al RCPSP i s'ha proposat una nova llibreria, denominada PSPLIB-ENERGY. Per a trobar solució al problema proposat, primer es van analitzar els millors mètodes metaheurísticos que aborden el RCPSP. Després, es va identificar que estos mètodes conduïxen a solucions redundants, entorpint la busca. Per tant, es va proposar un mètode evolutiu la principal aportació del qual és el desenrotllament d'un nou operador de mutació que disminuïx la generació de solucions redundants. Semblantment, en el cas multi- modal es va detectar que els principals mètodes de busca també se centren en la representació de llista d'activitats i per tant generen solucions redundants. Com a alternativa de solució per al MRCPSP-ENERGY, es va mostrar que la busca pot realitzar-se enfocant-se en la llista de modes, ja que diferents llistes de modes també poden aconseguir solucions distintes, generant un menor nombre de solucions redundants. Tenint en compte estes troballes, es va proposar un nou mètode evolutiu per a resoldre el MRCPSP-ENERGY, que unifica ambdós mètodes de busca per a realitzar-la en dos fases d'optimització. Basant-se en els resultats obtinguts en la PSPLIB-ENERGY, es conclou que el mètode proposat és capaç d'aconseguir solucions altament eficients.
Morillo Torres, D. (2017). Eficiencia energética en la programación de tareas con recursos restringidos [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/90654
TESIS
APA, Harvard, Vancouver, ISO, and other styles
42

Calderón, Garay Giancarlo Roberto. "Análisis, diseño e implementación de un comparador y sincronizador de bases de datos relacionales de distintos manejadores." Bachelor's thesis, Pontificia Universidad Católica del Perú, 2009. http://tesis.pucp.edu.pe/repositorio/handle/123456789/332.

Full text
Abstract:
El presente proyecto consiste en el análisis, diseño e implementación de un sincronizador de bases de datos relacionales de distintos manejadores, cuya finalidad es realizar la comparación de objetos entre dos bases de datos y sincronizar dichos objetos de acuerdo a las diferencias encontradas.
Tesis
APA, Harvard, Vancouver, ISO, and other styles
43

Rodríguez, Reátegui Julio Diego. "Diseño e implementación de un sistema de automatización de ensayos característicos de máquinas eléctricas asíncronas: diseño e implementación de un instrumento virtual para el análisis de los resultados de los ensayos característicos de un motor asíncrono trifásico en entorno LabVIEW." Bachelor's thesis, Pontificia Universidad Católica del Perú, 2013. http://tesis.pucp.edu.pe/repositorio/handle/123456789/4569.

Full text
Abstract:
En la actualidad, la utilización de los instrumentos virtuales ha venido incrementándose en aplicaciones enfocadas a las ciencias e ingeniería. Esto se debe a que, a diferencia de los instrumentos tradicionales de laboratorio, estas son herramientas basadas en software, las cuales utilizan el hardware de una computadora o estación de trabajo para realizar las tareas para las cuales han sido diseñadas, lo cual le da grandes ventajas como una mayor portabilidad, personalización, adaptabilidad e interconectividad con otros sistemas. El objetivo de la tesis es la utilización de un entorno de desarrollo creado por la empresa National Instruments, llamado LabVIEW. En dicho entorno, se diseñará e implementará un instrumento virtual, cuyo propósito es el de ser usado para el análisis de los resultados obtenidos en el proceso de ejecución de los ensayos característicos realizados a un motor asíncrono trifásico. Para ello, el instrumento virtual deberá ser capaz de establecer una comunicación con un hardware externo encargado de llevar a cabo dichos ensayos de forma automática. Dicha comunicación enlazará al instrumento virtual con una tarjeta de adquisición de datos, lo cual permitirá al usuario del instrumento, ingresar datos de placa y parámetros de ensayo pertinentes, para que estos sean enviados al resto del sistema para la correcta realización de los ensayos. Así mismo, el instrumento virtual debe ser capaz de usar esta comunicación para recibir valores correspondientes a los resultados de los ensayos realizados en dicha máquina eléctrica, provenientes de la tarjeta de adquisición de datos mencionada. Utilizando los valores obtenidos durante el desarrollo de los ensayos, el instrumento realizará cálculos matemáticos pre-programados con la finalidad de poder mostrar en pantalla los parámetros del circuito eléctrico equivalente y las gráficas características correspondientes para el análisis del motor asíncrono trifásico ensayado con el fin de describir, de forma gráfica, su comportamiento y eficiencia.
Tesis
APA, Harvard, Vancouver, ISO, and other styles
44

Ibáñez, Pozo Matías Nicolás. "Implementación de un framework para la programación de componentes auto-adaptables." Tesis, Universidad de Chile, 2015. http://repositorio.uchile.cl/handle/2250/133867.

Full text
Abstract:
Ingeniero Civil en Computación
La Service Oriented Arquitecture (SOA) ha sido introducida para fomentar una interacción dinámica y de bajo acoplamiento entre servicios ofrecidos por diferentes proveedores, permitiendo el desarrollo de sistemas distribuidos altamente escalables. Para abordar la complejidad de este tipo de aplicaciones se ha propuesto la Service Componente Arquitecture (SCA), un conjunto de especificaciones tecnológicamente agnósticas que combina la programación basada en componentes con la orientación a servicios. Sin embargo, la SCA no considera modificaciones en la aplicación durante el tiempo de ejecución y, por lo tanto, las tareas de monitoreo y administración deben ser manejadas por la plataforma que implementa la SCA. Ante esta problemática se propuso un framework de monitoreo y reconfiguración inspirado en la computación autonómica, iniciativa que promueve sistemas capaces de administrarse a si mismos dados algunos objetivos de alto nivel. De esta manera, se hizo posible diseñar aplicaciones SCA basadas en componentes auto-adaptables; componentes cuyo comportamiento puede ser programado para adaptarse a diferentes requisitos de administración. Actualmente existe una implementación de referencia de este framework, sin embargo, esta implementación esta inconclusa y carece de una API que facilite su utilización en la practica. Por lo tanto, en este trabajo de memoria se retoma dicha iniciativa para completar la implementación de un framework para la programación del comportamiento autoadaptable de componentes. Adicionalmente, en esta implementación se propone una API simple para la definición y modificación del comportamiento auto-adaptable de componentes, API que permitirá modificar el comportamiento auto-adaptable en tiempo de ejecución. Para esto, se realiza un análisis de la propuesta original de este framework y se definen formalmente los objetivos de alto nivel que determinarán el comportamiento auto-adaptable del componente. Luego, se terminan de implementar los elementos que hacen posible las reconfiguraciones autonómicas y se integran con las herramientas de reconfiguración propias de la plataforma SCA sobre la cual se basa esta implementación. Finalmente, se muestra la efectividad y capacidades de este framework a través la API propuesta mediante la experimentación con una aplicación SCA real. Para esto, se implementa un crackeador de contraseñas distribuido y se muestra como utilizar esta API para proveer un comportamiento auto-adaptable en dos sentidos; en la capacidad de reconfigurarse autonómicamente para distribuir su trabajo en las proporciones óptimas cada vez que cambien las condiciones del ambiente distribuido, y en la capacidad de modificar su arquitectura autonómicamente para cumplir con la calidad de servicio esperada.
APA, Harvard, Vancouver, ISO, and other styles
45

Valladares, Loyola Alex Alberto. "Desarrrollo y gestión de intranet institucional para la dirección general del crédito prendario." Tesis, Universidad de Chile, 2013. http://repositorio.uchile.cl/handle/2250/133316.

Full text
APA, Harvard, Vancouver, ISO, and other styles
46

Alvaro, Aguilar Oscar. "Integración de aplicaciones empresariales mediante el enterprise service bus, caso de uso: Programa Nacional de Apoyo Directo a los Más Pobres-PCM." Bachelor's thesis, Universidad Nacional Mayor de San Marcos, 2010. https://hdl.handle.net/20.500.12672/15380.

Full text
Abstract:
Pretende dar una solución a la problemática del área de tecnología de información se enfrenta a entornos cambiantes orientados por los cambios tecnológicos y organizaciones dinámicas, requiriéndose respuestas en tiempos aceptables, dentro de costos estimados y con productos de calidad, este contexto a motivado a la creación de un conjunto de sistemas en distintas arquitecturas, lenguajes, base de datos y software base, obteniendo distintas aplicaciones para dar soporte a los procesos de negocio que son cambiantes en el tiempo, tornando compleja la administración de los sistemas; esta propuesta de solución es el uso de una capa común a todas las aplicaciones la cual se denomina Bus de Servicios Empresariales (ESB por sus siglas en ingles), quien se encargará de estandarizar la comunicación que viaja en él y orquestar las funcionalidades del software para dar soporte a los procesos del negocio.
Trabajo de suficiencia profesional
APA, Harvard, Vancouver, ISO, and other styles
47

Bueno, Pacheco Diego Ricardo. "Diseño de módulo para la navegación autónoma de un vehículo aéreo no tripulado en espacios interiores." Bachelor's thesis, Pontificia Universidad Católica del Perú, 2019. http://hdl.handle.net/20.500.12404/14287.

Full text
APA, Harvard, Vancouver, ISO, and other styles
48

Moreno, Valverde Ginés Damián. "Reglas y estrategias de transformación para programas lógico-funcionales." Doctoral thesis, Universitat Politècnica de València, 2009. http://hdl.handle.net/10251/4701.

Full text
Abstract:
El problema de la integración d ela programación lógica y funcional estaá considerado como uno de los más importantes en el área de investigación sobre programación declarativa. Para que los lenguajes declarativos sean útiles y puedan utilizarse en aplicaciones reales, es necesario que el grado de eficiencia de su ejecución se aproxime al de los lenguajes imperativos. Para ello, es imprescindible el desarrollo de herramientas potentes para el análisis y transformacón de los programas, capaces de optimizar las implementaciones existentes. Esta tesis se centra en el desarrollo de tales técnicas, adoptándose la aproximación conocida como "reglas + estrategias" para la optimización de programas en un tentexto lógico-funcional unificado. Las reglas básicas que se usan son el plegado y el desplegado que aquí se definen en términos del Narrowing y sus refinamientos. Gracias a la propagación bidireccional de parámetros realizadas por el mecanismo de unificación del narrowing, se obtienen optimizaciones apreciables y es posible explotar la sinergía existente entre la sintaxis funcional (anidamientos funcionales, evaluaciones perezosas, etc.) y el uso de variables lógicas. Esta fisión unificada de ejecución y transformación de programas nos permite explotar los resultados conocidos en ambos campos, funcional y lógico, y desarrollar un esquema simple y potente para mejorar un programa con respecto a su capacidad para computar tanto valores a funciones como respuestas a objetivos. Presentamos algunas aplicaciones de las reglas de plegado y desplegado (semánticas formales pr desplegado y relaciones con las técnicas de evalación parcial). Además, mostramos que su combinación con otras reglas para la introducción y eliminación de difiniciones y reglas de abstracción permite obtener programas eficicientes cuando son dirigidas por estrategias adecuadas como son la composición o la formación de Tuplas. El esquema presentado constituye la primera aproximación correcta y completa ....
Moreno Valverde, GD. (2000). Reglas y estrategias de transformación para programas lógico-funcionales [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/4701
Palancia
APA, Harvard, Vancouver, ISO, and other styles
49

Retamozo, Sánchez Miguel Ángel. "Predicción de puntos de vista de imágenes 2D usando deep learning." Master's thesis, Pontificia Universidad Católica del Perú, 2019. http://hdl.handle.net/20.500.12404/14521.

Full text
Abstract:
El objetivo de este artículo es predecir los ángulos que describen los puntos de vista de objetos como (sillas, carros, sofás y televisores) en imágenes reales usando Deep Learning. Para lograrlo se desarrolló un renderizador de imágenes 2D en lenguaje C y se usó la API de openGL como librería gráfica el cual genera imágenes a partir de modelos de objetos 3D del repositorio ModelNet. El presente artículo contribuye con dos métodos para renderizar las imágenes, el primero fue llamado método esférico ya que usa coordenadas esféricas para describir la rotación del objeto y consiste en mantener fijo el objeto 3D en el origen para trasladar la posición de la cámara describiendo círculos de diferente radio a lo largo del eje Z circunscritos en una esfera de radio R, el segundo fue llamado método euleriano ya que usa los ángulos de euler y consiste en mantener fija la posición de la cámara a una distancia R sobre el eje Z y rotar 3 veces por iteración respecto a los ejes Z, X’ y Z”. Se diseñó una red neuronal convolucional basada en la arquitectura de la red VGG la cual fue entrenada con imágenes generada por el renderizador.
Trabajo de investigación
APA, Harvard, Vancouver, ISO, and other styles
50

Varas, Acevedo Roberto Augusto. "Desarrollo de Componentes Reutilizables de Software sobre Framework Java EE." Tesis, Universidad de Chile, 2010. http://www.repositorio.uchile.cl/handle/2250/103977.

Full text
Abstract:
El principal objetivo del presente trabajo es la obtención de un grupo de componentes re-utilizables que permitan reducir los costos de desarrollo de una empresa particular. La selección de estos últimos debe basarse en los proyectos ya construidos por la empresa y su uso debe reducirse a la utilización de una jerarquía de clases que permita que los desarrolladores se abstraigan de la lógica de aplicación en cada proyecto, enfocando sus esfuerzos en la lógica de negocio. Es posible abordar estos objetivos mediante la factorización del código que se escribe repetidamente en todos los proyectos. Este trabajo se enmarca en el contexto del desarrollo de un framework para aplicaciones web, usando la plataforma Java EE. El esquema de desarrollo sigue la línea expresada en el trabajo de Don Roberts y Ralph Johnson en “Evolve Frameworks into Domain-Specific Languages”, enfocándose en la fase de obtención de una biblioteca de componentes. Para validar el impacto del uso de componentes de este tipo, se ha desarrollado una estructura genérica para proyectos web, provista de un componente asociado a la construcción de mantenedores de entidades. La validación ha sido realizada sobre un proyecto real. Los resultados han sido satisfactorios y ha sido posible constatar la reducción en el costo de desarrollo. Se ha estimado un ahorro cercano al 75% con respecto a un escenario sin componentes. Se espera que a futuro se concluya el desarrollo de todos los componentes identificados y que la herramienta crezca a medida que se utiliza para el desarrollo de nuevos proyectos.
APA, Harvard, Vancouver, ISO, and other styles
We offer discounts on all premium plans for authors whose works are included in thematic literature selections. Contact us to get a unique promo code!

To the bibliography