533 resultados para Ingenieros antioqueños
Resumo:
La computación con membranas surge como una alternativa a la computación tradicional. Dentro de este campo se sitúan los denominados Sistemas P de Transición que se basan en la existencia de regiones que contienen recursos y reglas que hacen evolucionar a dichos recursos para poder llevar a cada una de las regiones a una nueva situación denominada configuración. La sucesión de las diferentes configuraciones conforman la computación. En este campo, el Grupo de Computación Natural de la Universidad Politécnica de Madrid lleva a cabo numerosas investigaciones al amparo de las cuales se han publicado numerosos artículos y realizado varias tesis doctorales. Las principales vías de investigación han sido, hasta el momento, el estudio del modelo teórico sobre el que se definen los Sistemas P, el estudio de los algoritmos que se utilizan para la aplicación de las reglas de evolución en las regiones, el diseño de nuevas arquitecturas que mejoren las comunicaciones entre las diferentes membranas (regiones) que componen el sistema y la implantación de estos sistemas en dispositivos hardware que pudiesen definir futuras máquinas basadas en este modelo. Dentro de este último campo, es decir, dentro del objetivo de construir finalmente máquinas que puedan llevar a cabo la funcionalidad de la computación con Sistemas P, la presente tesis doctoral se centra en el diseño de dos procesadores paralelos que, aplicando variantes de algoritmos existentes, favorezcan el crecimiento en el nivel de intra-paralelismo a la hora de aplicar las reglas. El diseño y creación de ambos procesadores presentan novedosas aportaciones al entorno de investigación de los Sistemas P de Transición en tanto en cuanto se utilizan conceptos que aunque previamente definidos de manera teórica, no habían sido introducidos en el hardware diseñado para estos sistemas. Así, los dos procesadores mantienen las siguientes características: - Presentan un alto rendimiento en la fase de aplicación de reglas, manteniendo por otro lado una flexibilidad y escalabilidad medias que son dependientes de la tecnología final sobre la que se sinteticen dichos procesadores. - Presentan un alto nivel de intra-paralelismo en las regiones al permitir la aplicación simultánea de reglas. - Tienen carácter universal en tanto en cuanto no depende del carácter de las reglas que componen el Sistema P. - Tienen un comportamiento indeterminista que es inherente a la propia naturaleza de estos sistemas. El primero de los circuitos utiliza el conjunto potencia del conjunto de reglas de aplicación así como el concepto de máxima aplicabilidad para favorecer el intra-paralelismo y el segundo incluye, además, el concepto de dominio de aplicabilidad para determinar el conjunto de reglas que son aplicables en cada momento con los recursos existentes. Ambos procesadores se diseñan y se prueban mediante herramientas de diseño electrónico y se preparan para ser sintetizados sobre FPGAs. ABSTRACT Membrane computing appears as an alternative to traditional computing. P Systems are placed inside this field and they are based upon the existence of regions called “membranes” that contain resources and rules that describe how the resources may vary to take each of these regions to a new situation called "configuration". Successive configurations conform computation. Inside this field, the Natural Computing Group of the Universidad Politécnica of Madrid develops a large number of works and researches that provide a lot of papers and some doctoral theses. Main research lines have been, by the moment, the study of the theoretical model over which Transition P Systems are defined, the study of the algorithms that are used for the evolution rules application in the regions, the design of new architectures that may improve communication among the different membranes (regions) that compose the whole system and the implementation of such systems over hardware devices that may define machines based upon this new model. Within this last research field, this is, within the objective of finally building machines that may accomplish the functionality of computation with P Systems, the present thesis is centered on the design of two parallel processors that, applying several variants of some known algorithms, improve the level of the internal parallelism at the evolution rule application phase. Design and creation of both processors present innovations to the field of Transition P Systems research because they use concepts that, even being known before, were never used for circuits that implement the applying phase of evolution rules. So, both processors present the following characteristics: - They present a very high performance during the application rule phase, keeping, on the other hand, a level of flexibility and scalability that, even known it is not very high, it seems to be acceptable. - They present a very high level of internal parallelism inside the regions, allowing several rule to be applied at the same time. - They present a universal character meaning this that they are not dependent upon the active rules that compose the P System. - They have a non-deterministic behavior that is inherent to this systems nature. The first processor uses the concept of "power set of the application rule set" and the concept of "maximal application" number to improve parallelism, and the second one includes, besides the previous ones, the concept of "applicability domain" to determine the set of rules that may be applied in each moment with the existing resources.. Both processors are designed and tested with the design software by Altera Corporation and they are ready to be synthetized over FPGAs.
Resumo:
En este proyecto de final de carrera se detalla el proceso de diseño, fabricación, montaje y ajuste de un dispositivo electrónico que sirva como sistema de control de tracción de un vehículo y que acoplaremos sobre un monoplaza de carreras que participa en la competición Formula SAE. La Formula SAE (Society of Automotive Engineers - Sociedad de Ingenieros de Automoción), es una competición de coches de carreras monoplaza a nivel universitario que promueve el desarrollo de la ingeniera aplicada a la automoción. Se pretende que este libro sirva de guía para el correcto manejo y desempeño del sistema fabricado. Además se ha pretendido que su lectura resulte fácil y comprensible para que la persona que lea este libro sea capaz de entender el sistema realizado para así poderlo mejorar. Gracias a la colaboración entre la Escuela Técnica Superior de Ingeniería y Sistemas de Telecomunicación (ETSIST) de la Universidad Politécnica de Madrid (UPM), la Escuela de Ingenieros Industriales de esta misma Universidad (ETSII) y el Instituto Universitario de Investigación del Automóvil (INSIA), se sientan las bases de una plataforma docente en la cual se posibilita la formación y desarrollo de un vehículo tipo formula que participa en la ya mencionada competición Formula SAE. Para ello, se formo en el 2003 el equipo UPMRacing, primer representante español en el evento. El equipo se compone de más de 50 alumnos de la UPM y del Máster de Ingeniería en Automoción del INSIA. Es por tanto, en el vehículo fabricado por el equipo UPMRacing, en el que se pretende instalar este sistema de control de tracción. El control de tracción es un sistema de seguridad del automóvil diseñado para prevenir la perdida de adherencia cuando alguna rueda presenta deslizamiento, bien porque el conductor se excede en la aceleración o bien porque el firme este resbaladizo. La unidad de procesamiento del sistema de control de tracción fabricado lee la velocidad de cada rueda del vehículo mediante unos sensores y determina si existe deslizamiento, en tal caso, manda una señal a la centralita para disminuir la potencia hasta que el deslizamiento disminuya a unos valores controlados. El sistema cuenta con un control remoto que sirve como interfaz para que el piloto pueda manejarlo. Por ultimo, el dispositivo es capaz de conectarse a un bus de comunicaciones CAN para configurar ciertos parámetros. El objetivo del sistema es, básicamente, hacer que el coche no derrape en aceleraciones fuertes; concretamente en las salidas desde parado y al tomar una curva, aumentando así la velocidad en circuito y la seguridad del piloto. ABSTRACT. The purpose of this project is to describe the design, manufacture, assembly and adjustment processes of an electronic device acting as the traction control system (TCS) of a vehicle, that we will attach to a single-seater competition formula SAE car. The Formula SAE (Society of Automotive Engineers) is a graduate-level singleseater racing car competition promoting the development of automotive applied engineering. We also intend this work to serve as a technical user guide of the manufactured system. It is drafted clearly and concisely so that it will be easy for all those to whom it is addressed to understand and subject to further improvements. The close partnership among the Escuela Técnica Superior de Ingeniería y Sistemas de Telecomunicación (ETSIST), Escuela de Ingenieros Industriales (ETSII) of Universidad Politécnica de Madrid (UPM), and the Instituto Universitario de Investigación del Automóvil (INSIA), lays the foundation of a teaching platform enabling the training and development of a single-seater racing car taking part in the already mentioned Formula SAE competition. In this respect, UPMRacing team was created back in 2003, first spanish representative in this event. The team consists of more than 50 students of the UPM and of INSIA Master in Automotive Engineering. It is precisely the vehicle manufactured by UPMRacing team where we intend to install our TCS. TCS is an automotive safety system designed to prevent loss of traction when one wheel has slip, either because the driver exceeds the acceleration or because the firm is slippery. The device’s central processing unit is able to detect the speed of each wheel of the vehicle via special sensors and to determine wheel slip. If this is the case, the system sends a signal to the ECU of the vehicle to reduce the power until the slip is also diminished to controlled values. The device has a remote control that serves as an interface for the pilot to handle it. Lastly, the device is able to connect to a communication bus system CAN to set up certain parameters. The system objective is to prevent skidding under strong acceleration conditions: standing-start from the starting grid or driving into a curve, increasing the speed in circuit and pilot’s safety.
Resumo:
El Malware es una grave amenaza para la seguridad de los sistemas. Con el uso generalizado de la World Wide Web, ha habido un enorme aumento en los ataques de virus, haciendo que la seguridad informática sea esencial para todas las computadoras y se expandan las áreas de investigación sobre los nuevos incidentes que se generan, siendo una de éstas la clasificación del malware. Los “desarrolladores de malware” utilizan nuevas técnicas para generar malware polimórfico reutilizando los malware existentes, por lo cual es necesario agruparlos en familias para estudiar sus características y poder detectar nuevas variantes de los mismos. Este trabajo, además de presentar un detallado estado de la cuestión de la clasificación del malware de ficheros ejecutables PE, presenta un enfoque en el que se mejora el índice de la clasificación de la base de datos de Malware MALICIA utilizando las características estáticas de ficheros ejecutables Imphash y Pehash, utilizando dichas características se realiza un clustering con el algoritmo clustering agresivo el cual se cambia con la clasificación actual mediante el algoritmo de majority voting y la característica icon_label, obteniendo un Precision de 99,15% y un Recall de 99,32% mejorando la clasificación de MALICIA con un F-measure de 99,23%.---ABSTRACT---Malware is a serious threat to the security of systems. With the widespread use of the World Wide Web, there has been a huge increase in virus attacks, making the computer security essential for all computers. Near areas of research have append in this area including classifying malware into families, Malware developers use polymorphism to generate new variants of existing malware. Thus it is crucial to group variants of the same family, to study their characteristics and to detect new variants. This work, in addition to presenting a detailed analysis of the problem of classifying malware PE executable files, presents an approach in which the classification in the Malware database MALICIA is improved by using static characteristics of executable files, namely Imphash and Pehash. Both features are evaluated through clustering real malware with family labels with aggressive clustering algorithm and combining this with the current classification by Majority voting algorithm, obtaining a Precision of 99.15% and a Recall of 99.32%, improving the classification of MALICIA with an F-measure of 99,23%.
Resumo:
Inmersos en un mundo digital en el que participan cada vez más personas con diferentes niveles de experiencia en tecnología, ha aparecido la necesidad de diseñar las aplicaciones pensando en el usuario. El principal problema que un desarrollador se encuentra hoy en día es la falta de tiempo o agilidad para conceder al usuario una experiencia a medida. Muchas empresas han conseguido destacar en un mundo donde la competencia es muy grande gracias al aporte de valor añadido de una buena experiencia de usuario. Empezando por el análisis psicológico y las reacciones que tenemos cuando estamos interactuando con un sistema digital se intenta conseguir un método para diseñar la experiencia de usuario de un modo satisfactorio para ambas partes. Con el objetivo de probar el método diseñado, en el cual se incorporan muchas técnicas de otros métodos, se diseña parte de la experiencia de usuario de “ESEM 2014”, una de las conferencias informáticas más importantes del norte de Italia. Los resultados obtenidos en este trabajo son muy favorables, ya que mejoran substancialmente el resultado final y permiten al desarrollador seguir mejorando la aplicación hasta el momento y objetivo deseado. Resumen Español---ABSTRACT---In a world where more people with different level of expertise is engaging with technology, designing for the user has become one of the main concerns for the developers. Lack of time or agility are the main problems from the developers’ point of view in order to provide a good user experience. One of most important differentiators for companies is the provided experience as the technology and knowledge is highly available for everyone. The main goal of this project is to compose a method to include experience design in current agile development where short iterations is the main characteristic. In order to test the designed method, were many parts of other techniques have been included, part of the “ESEM 2014” conference has been designed. The results achieved with this guidelines has been very positive from both sides of the development, users and developers. Having short iterations allows improvement until the desired experience is achieved.
Resumo:
Este trabajo contiene el estudio de las tecnologías que se están usando actualmente en web, tratando de explicar cuáles son sus principales componentes, su objetivo y funcionamiento. En base a un supuesto teórico de un montaje para un servicio web con un número muy alto de usuarios, y basándose en las tecnologías estudiadas, se propone un posible montaje completo de un sistema, que sería capaz de gestionar correctamente todas las peticiones, evitando fallos y tiempos de indisponibilidad. Se a~nade un análisis teórico de los costes deribados de la implantación del sistema, comparándolo con un sistema web convencional, y otro análisis con el funcionamiento de una caché y los benéficos, en carga, derivados de su uso.---ABSTRACT---This work contains a study about new web technologies. Its objective is to explain the web technologies componentes with their particular usage and performance. Based on a theorical postulation about a preparation of a web service with a large number of users, and working with the studied technologies, a complete system assembling is proposed. This system will be able to attend all the incoming requests, without failures nor downtimes. It is attached a theorical study of the derivative costs associated to the system implementation, compared to a traditional one. In addition, another study is included with the work ow of a cache and the benefits derived of its usage in work terms.
Resumo:
Este Trabajo de Fin de Grado (TFG) consiste en el diseño y el desarrollo de una base de datos para almacenar datos de secuenciación genética. Además, también será necesario poder utilizar la herramienta BLAST, que está formada por un conjunto de programas para buscar por similitud y alinear secuencias, con los datos que se encuentran almacenados en dicha base de datos.---ABSTRACT---The aim of this Bachelor’s Thesis is to design and develop a database to store data of genetic sequences. Furthermore, it will be necessary to use BLAST, which is a suite of programs to search and match similarities sequences into a database.
Resumo:
Estudio de los escasos ejemplares de sabina negra localizados en la Comunidad de Madrid , importantes desde el punto de vista corológico por ser los más occidentales del centro peninsular.
Resumo:
El presente trabajo está enfocado a facilitar la realización de prácticas con equipamiento de laboratorio físico, permitiendo que se tenga acceso a diferentes escenarios virtuales (topologías de ejercicios) sin necesidad de variar la configuración física (conexionado) de dos kits de laboratorio oficial para CCNA Routing & Switching[1] y CCNA Security[2]. Para ello se plantea la creación de diferentes escenarios o topologías virtuales que puedan montarse sobre el mismo escenario de conexionado físico. Es necesario revisar y seleccionar los ejercicios prácticos más destacados en términos de importancia de las curriculas de CCNA Routing & Switching y CCNA Security. Naturalmente, estos ejercicios han de variar en sus interfaces, nomenclatura y documentación para que cuadren con las especificaciones disponibles del laboratorio físico, todo ello sin perder nada de su fundamento. Los escenarios físicos deben de ser lo más versátiles posibles para dar soporte a las topologías requeridas en los ejercicios prácticos de los cursos oficiales de CISCO CCNA Routing & Switching y CCNA Security, con el objetivo de realizar los mínimos cambios de configuración física posibles, y poder simultanear la realización de diferentes prácticas y entre alumnos de diferentes asignaturas. También se pretende posibilitar que los profesores desarrollen sus propios ejercicios prácticos compatibles con el conexionado físico escogido. Para ello se utilizará un servidor de acceso (Access Server) para que los alumnos puedan configurar de forma remota los diferentes equipos sin necesidad de acudir en persona al laboratorio, aunque esta también sea una opción más que viable. Los dos escenarios contarán con tres routers, tres switches y un firewall, de forma que han sido montados en su respectivo armario, al igual que sus conexiones y cableado. La deshabilitación de puertos en los diferentes equipos de red que forman el kit de laboratorio (routers, switches y firewalls) dará lugar a los diferentes escenarios virtuales. Se crearán VLANs en los switches para establecer diferentes conexiones. Estos escenarios deberán ofrecer la variedad necesaria para realizar las diferentes prácticas necesarias en las asignaturas “Tecnologías de Red CISCO: CCNA” [3], “Redes y Comunicaciones” [4] y “Diseño y Seguridad de Redes” [5]. Además, para facilitar y agilizar el cambio entre topologías, se debe automatizar la configuración básica de cada escenario virtual (activación/desactivación de puertos) en base a la topología deseada, y el establecimiento de una configuración inicial. De forma que los alumnos puedan comenzar los ejercicios de igual forma a lo que ven en los documentos explicativos, y en el caso de terminar su sesión (o cerrarla voluntariamente) que sus progresos en el mismo se guarden para posteriores sesiones de forma que puedan proseguir su tarea cuando deseen.---ABSTRACT---The present work is aimed at facilitating the experiments with equipment Physical Laboratory, allowing access to different virtual scenarios (topologies exercises) without changing the physical configuration (connection) with two kits of official laboratory for CCNA Routing & Switching[1] and CCNA Security[2]. This requires the creation of different scenarios or virtual topologies that can be mounted on the same physical connection scenario arises. It is necessary to review and select the most prominent practical exercises in terms of importance of curricula of CCNA Routing and Switching, and CCNA Security. Naturally, these exercises must vary in their interfaces, nomenclature and documentation available that fit the specifications of the physical laboratory, all without losing any of its foundation. The physical setting should be as versatile as possible to support topologies required in the practical exercises of official courses CISCO Routing and Switching CCNA, and CCNA Security, in order to make the minimum possible changes in physical configuration, and can simultaneous realization of different practices, and between students of different subjects. It also aims to enable teachers to develop their own practical exercises compatible with the physical connection chosen. For this, we will use an Access Server will be used by the students to access remotely to configure different computers without having to go in person to the laboratory, but this is also an other viable option. The two scenarios have three routers, three switches and a firewall, so that have been mounted in their respective rack, as well as their connections and wiring. Disabling ports on different network equipment that make up the lab kit (routers, switches and firewalls) will lead to different virtual scenarios. These scenarios should provide the variety needed to perform the necessary practices in different subjects "Network Technologies CISCO: CCNA"[3], "Networking and Communications"[4] and "Design and Network Security." [5] Moreover, to facilitate and expedite the exchange topologies, it was necessary to automate the basic configuration of each virtual setting (on/off ports) based on the desired topology, and the establishment of an initial configuration. So that, the students can begin the exercises equally to what they see on explanatory documents, and if they finish their session (or close voluntarily) their progress on the exercise will be saved for future sessions so that they can continue their work when they want.
Resumo:
El siguiente trabajo abarca todo el proceso llevado a cabo para el rediseño de un sistema automático de tutoría que se integra con laboratorios virtuales desarrollados para la realización de prácticas por parte de estudiantes dentro de entornos virtuales tridimensionales. Los principales objetivos de este rediseño son la mejora del rendimiento del sistema automático de tutoría, haciéndolo más eficiente y por tanto permitiendo a un mayor número de estudiantes realizar una práctica al mismo tiempo. Además, este rediseño permitirá que el tutor se pueda integrar con otros motores gráficos con un coste relativamente bajo. Se realiza en primer lugar una introducción a los principales conceptos manejados en este trabajo así como algunos aspectos relacionados con trabajos previos a este rediseño del tutor automático, concretamente la versión anterior del tutor ligada a la plataforma OpenSim. Acto seguido se detallarán qué requisitos funcionales cumplirá así como las ventajas que aportará este nuevo diseño. A continuación, se explicará el desarrollo del trabajo donde se podrá ver cómo se ha reestructurado el antiguo sistema de tutoría, la aplicación de un diseño orientado a objetos y los distintos paquetes y clases que lo conforman. Por último, se detallarán las conclusiones obtenidas durante el desarrollo del trabajo así como la implicación del trabajo aquí mostrado en futuros desarrollos.---ABSTRACT--- The following work shows the process that has been carried out in order to redesign an automatic tutoring system that can be integrated into virtual laboratories developed for supporting students’ practices in 3D virtual environments. The main goals of this redesign are the improvement of automatic tutoring system performance, making it more efficient and therefore allowing more students to perform a practice at the same time. Furthermore, this redesign allows the tutor to be integrated with other graphic engines with a relative low cost. Firstly, we begin with an introduction to the main concepts used in this work and some aspects concerning the related previous works to this automatic tutoring system redesign, such as the previous version of the tutoring system bound to OpenSim. Secondly, it will be detailed what functional requirements are met and what advantages this new tutoring system will provide. Next, it will be explained how this work has been developed, how the previous tutoring system has been restructured, how an object-oriented design is applied and the classes and packages derived from this design. Finally, it will be outlined the conclusions drawn in the development of this work as well as how this work will take part in future works.
Resumo:
El presente Trabajo de Fin de Grado (TFG) es el resultado de la necesidad de la seguridad en la construcción del software ya que es uno de los mayores problemas con que se enfrenta hoy la industria debido a la baja calidad de la misma tanto en software de Sistema Operativo, como empotrado y de aplicaciones. La creciente dependencia de software para que se hagan trabajos críticos significa que el valor del software ya no reside únicamente en su capacidad para mejorar o mantener la productividad y la eficiencia. En lugar de ello, su valor también se deriva de su capacidad para continuar operando de forma fiable incluso de cara de los eventos que la amenazan. La capacidad de confiar en que el software seguirá siendo fiable en cualquier circunstancia, con un nivel de confianza justificada, es el objetivo de la seguridad del software. Seguridad del software es importante porque muchas funciones críticas son completamente dependientes del software. Esto hace que el software sea un objetivo de valor muy alto para los atacantes, cuyos motivos pueden ser maliciosos, penales, contenciosos, competitivos, o de naturaleza terrorista. Existen fuentes muy importantes de mejores prácticas, métodos y herramientas para mejorar desde los requisitos en sus aspectos no funcionales, ciclo de vida del software seguro, pasando por la dirección de proyectos hasta su desarrollo, pruebas y despliegue que debe ser tenido en cuenta por los desarrolladores. Este trabajo se centra fundamentalmente en elaborar una guía de mejores prácticas con la información existente CERT, CMMI, Mitre, Cigital, HP, y otras fuentes. También se plantea desarrollar un caso práctico sobre una aplicación dinámica o estática con el fin de explotar sus vulnerabilidades.---ABSTRACT---This Final Project Grade (TFG) is the result of the need for security in software construction as it is one of the biggest problems facing the industry today due to the low quality of it both OS software, embedded software and applications software. The increasing reliance on software for critical jobs means that the value of the software no longer resides solely in its capacity to improve or maintain productivity and efficiency. Instead, its value also stems from its ability to continue to operate reliably even when facing events that threaten it. The ability to trust that the software will remain reliable in all circumstances, with justified confidence level is the goal of software security. The security in software is important because many critical functions are completely dependent of the software. This makes the software to be a very high value target for attackers, whose motives may be by a malicious, by crime, for litigating, by competitiveness or by a terrorist nature. There are very important sources of best practices, methods and tools to improve the requirements in their non-functional aspects, the software life cycle with security in mind, from project management to its phases (development, testing and deployment) which should be taken into account by the developers. This paper focuses primarily on developing a best practice guide with existing information from CERT, CMMI, Mitre, Cigital, HP, and other organizations. It also aims to develop a case study on a dynamic or static application in order to exploit their vulnerabilities.
Resumo:
Partiendo de una versión beta de la aplicación de la Escuela Técnica Superior de Ingenieros Informáticos para la plataforma Android, se plantea añadir unas nuevas funcionalidades para enriquecer el contenido de información accesible por los alumnos de la Escuela. Estas nuevas funcionalidades son relativas a la información de los calendarios, la localización de instalaciones de la Escuela e información particularizada para cada usuario, pudiendo iniciar sesión en la aplicación. Para ello primero se lleva a cabo un estudio de las herramientas de soporte para la gestión de calendarios. Este estudio se centra en la facilidad de aprendizaje, eficiencia y efectividad del usuario. Así mismo, se diseñan e implementan las nuevas funcionalidades de mapas y perfil. Para evaluar estas funcionalidades se diseñarán y llevaran a cabo actividades de evaluación de usabilidad a alumnos del centro. Con las conclusiones de esa evaluación se realiza un rediseño de las partes de la aplicación que lo necesiten con el nivel de usabilidad requerido por los usuarios finales.---ABSTRACT---Starting from a beta version of the ETSIINF application for the Android platform, it is considered to add some new features to enrich the content of the information accessible by the students of the School. These new features are related to calendar information, School facilities location and particularized information for each user, being able to login to the application. To this end, a study of the support tools for managing calendars is carried out in the first place. This study focuses on the ease to learn, the efficiency and the effectiveness of the user. Likewise, the new maps and profile features will be implemented. To evaluate these features, usability evaluation activities will be designed and carried out to students at the school. With the findings of this evaluation a redesign of the parts of the application that need it with the required level of usability for end users will be performed.
Resumo:
En la Web 2.0, donde usuarios finales sin grandes conocimientos de programación pueden interactuar y crear aplicaciones web utilizando componentes publicados en Internet, ofrecidos por una gran variedad de proveedores de servicio. La selección de estos componentes requiere de un análisis exhaustivo por parte de los usuarios sobre las propiedades de estos componentes en referencia a su calidad. En este proyecto, se presentan dos modelos de calidad según una estructura jerárquica, uno para componentes web como elementos autónomos y otro para componentes utilizados en aplicaciones de mashup, basado en un análisis de la emergente Web 2.0. Además, se define una herramienta de medición y anotación de calidad para los distintos niveles de los modelos. Estas herramientas pretenden ser un útil instrumento para los desarrolladores y usuarios de componentes y mashups.---ABSTRACT---In the Web 2.0, where end users without a technical programming background can interact and develop web applications leveraging web components published on the Internet, offered by a great diversity of service providers. This component selection requires an exhaustive analysis by these end users based on the requirements of these components related to their quality. In this work, two quality models are presented according to a hierarchical structure, one for web components as independent elements and another one for web components as parts of web mashup applications, based on an analysis of the emerging Web 2.0. In addition, a measuring and write down quality framework is defined to weigh the quality of all the levels of the models. These tools intend to provide a useful instrument to components and mashup developers and end users.
Resumo:
La creación de esta aplicación web empresarial surge con la necesidad de optimizar el tiempo en el proceso de creación de una campaña publicitaria de email marketing. El objetivo principal de este trabajo es automatizar el proceso de validación de los campos de un formulario web. Un formulario web [6] es un documento digital en el que los usuarios introducen sus datos personales como nombre, apellido, dirección, documento de identidad, entre otros. Estos datos posteriormente serán procesados y almacenados en un base de datos para luego ser enviados al anunciante. El proceso de validación se refiere a la programación del formulario web en la parte del cliente usando tecnologías web como JavaScript y HTML5, para controlar que los datos introducidos por el usuario en el formulario, sean correctos. Cada campo de un formulario web tiene una validación específica que depende de varios factores, como son el país de lanzamiento de la campaña y el campo a validar. De esta forma dependiendo del tipo de validación se genera un fichero JavaScript con todas las validaciones de dicho formulario. Una de las finalidades de este trabajo es que cualquier usuario de la empresa pueda programar un formulario web, sin tener conocimientos previos de programación, ya que la programación se realiza de forma transparente al usuario. Este es un resumen básico de la aplicación web, sin embargo se debe tener en cuenta una serie de requisitos y parámetros para hacerlo más eficiente y personalizable dependiendo de las necesidades del producto final de cada campaña publicitaria. Todos estos aspectos se explicaran en detalle en los siguientes apartados. Este trabajo se realizó en el corporativo Media Response Group, para la empresa Canalmail S.L, situada en Alcobendas, supervisado por los tutores profesionales Daniel Paz y Jorge Lázaro Molina y por el tutor académico Rafael Fernández Gallego de la Universidad Politécnica de Madrid.---ABSTRACT---The creation of this enterprise Web application arises from the need to optimize the time in the process of creating an online advertising campaign. The main objective of this work is to automate the process of validating fields in a web form. A web form [6] is a digital document that users enter data such as name, surname, address, ID number among others. These data will subsequently be processed and stored in a database and then be sent to the client. These data will subsequently be processed and stored in a database and then be sent to the advertiser. This validation process refers to programming the online form on the client‟s side using web technologies such as JavaScript, HTML5 to control that the data entered by the user in this form are correct. Each field in a web form has a specific validation that depends on several factors; like being a nationwide launch of the campaign and validating data, thus depending on the type of validation a JavaScript file is generated with all validation web form. This file is integrated into the web form by calling the service. One purpose of this work is that any business user can program a web form, without prior knowledge of web programming, since programming is transparent to the user. This is a basic summary of the web application; however we must consider a number of requirements and parameters to make it more efficient and customizable depending on the needs of the end product of each advertising campaign. All these aspects are explained in detail in the following sections. This work was performed in the corporate Media Response Group, for the company Canalmail S.L, located in Alcobendas, supervised by professional tutors Daniel Paz and Jorge Lázaro Molina and PhD Assistant Lecturer at Universidad Politécnica de Madrid. Rafael Fernández Gallego.
Resumo:
A lo largo de este documento se describe el trabajo llevado a cabo para el logro de todos objetivos de este Trabajo Fin de Grado, el cual tiene como objetivo principal la mejora de la herramienta de edición de las conexiones internas de un mashup proporcionada actualmente por la plataforma web WireCloud. WireCloud es una plataforma web centrada en la construcción visual de mashups de aplicaciones a partir de la interconexión de pequeñas aplicaciones web denominadas widgets. Los principales inconvenientes presentes en el actual editor de conexiones que incluye esta plataforma afectan principalmente a sus usuarios con poca experiencia en diseño web. Estos usuarios tienen dificultades a la hora de interpretar el esquema de conexiones de un mashup ajeno y también, de crear el esquema de conexiones de un mashup propio. La mejora realizada supone un cambio en la metáfora utilizada para la creación de las conexiones, que ahora se organiza en torno a unidades conceptuales denominadas comportamientos que representan subconjuntos cohesionados de conexiones con significado (representando por si mismos comportamientos relevantes del mashup). Con este cambio se logra solventar los inconvenientes que presenta el actual sistema, principalmente la necesidad de crear (y visualizar) simultáneamente todas las conexiones requeridas por el mashup, lo cual supone que: a) es difícil identificar con qué propósito se ha creado cada conexión y qué relación guardan unas conexiones con otras. b) existe un riesgo de olvidar alguna conexión, fundamentalmente por ser difícil la interpretación del propósito de cada conexión y por la imposibilidad de identificar y nombrar conjuntos de conexiones que tienen un propósito determinado. Antes de implementar el código fuente se realizó un estudio pormenorizado de las tecnologías que actualmente utiliza WireCloud, además de un estudio en profundidad de la situación del anterior editor y de las nuevas características y ventajas buscadas en este nuevo editor. Con este último propósito se definieron varios casos de estudio que ayudaron a concretar qué se ha de entender por un comportamiento en el diseño de las conexiones de un mashup y también, ayudaron a definir la mejor organización visual del nuevo editor en torno al concepto de comportamiento. El resto del trabajo consistió en la implementación del nuevo editor y en la elaboración de toda la documentación relacionada: principalmente el manual de uso del nuevo editor que estará disponible como parte de la documentación online de WireCloud.---ABSTRACT---This document describes the work carried out for the achievement of all targets of this Final Project, which has as its main objective the improvement of the edition tool of the mashup’s internal connections that is currently provided by WireCloud. WireCloud is a web platform focused on building visual of web mashups from the interconnection of web applications called web widgets. The main drawbacks present in the current web editor of connections, includes on this platform, mainly affect to users with little experience in web design. These users have difficulties for interpreting the wiring diagram of any web mashup and also, creating the wiring diagram of an own web mashup. The improvement made a change in the metaphor used for creating connections, now managing a conceptual units called behaviors that represent subsets of meaningful connections. This change overcomes the drawbacks of the current system, mainly the need to create and display simultaneously all connections required by the web mashup, which means that: a) Difficultly identify what purpose is created each connection and how they relate to each other connections. b) There is the risk of forgetting some connection, mainly for being difficult to interpret the purpose of each connection and the inability to identify and name sets of connections that have a specific purpose. Before deploying the source code, the study of the technologies currently used WireCloud was performed, plus the study of the situation of the previous editor and new features and advantages searched for this new editor was performed too. For the latter purpose was defined several case studies that helped to specify what understood by behavior in the design of the connections of a web mashup and also that helped to define the best visual organization of the new behavior-oriented wiring editor. The rest of the work involved in implementing the new wiring web editor and in the preparation of all documentation related: mainly user manual for using the new wiring web editor that will be available as part of the WireCloud online documentation.
Resumo:
Este documento es una guía para el desarrollo de una aplicación para dispositivos móviles en Android. Dicha aplicación combina las técnicas de visión por computador para calibrar la cámara del dispositivo y localizar un elemento en el espacio en base a esos los parámetros calculados en la calibración. El diseño de la aplicación incluye las decisiones sobre la forma en que se reciben los inputs de la aplicación, que patrones se utilizan en la calibración y en la localización y como se muestran los resultados finales al usuario. También incluye un diagrama de flujo de información que representa el tránsito de esta entre los diferentes módulos. La implementación comienza con la configuración de un entorno para desarrollar aplicaciones con parte nativa en Android, después comenta el código de la aplicación paso por paso incluyendo comentarios sobre los archivos adicionales necesarios para la compilación y finalmente detalla los archivos dedicados a la interfaz. Los experimentos incluyen una breve descripción sobre cómo interpretar los resultados seguidos de una serie de imágenes tomadas de la aplicación con diferentes localizaciones del patrón. En la entrega se incluye también un video. En el capítulo de resultados y conclusiones podemos encontrar observaciones sobre el desarrollo de la práctica, opiniones sobre su utilidad, y posibles mejoras.---ABSTRACT---This document is a guide that describes the development of and application for mobile devices in Android OS. The application combines computer vision techniques to calibrate the device camera and locate an element in the real world based on the parameters of the calibration The design of the application includes the decisions over the way that the application receives its input data, the patterns used in the calibration and localization and how the results are shown to the user. It also includes a flow chart that describes how the information travels along the application modules. The development begins with the steps necessary to configure the environment to develop native Android applications, then it explains the code step by step, including commentaries on the additional files necessary to build the application and details the files of the user interface. The experiments chapter explains the way the results are shown in the experiments before showing samples of different pattern localizations. There is also a video attached. In the conclusions chapter we can find observations on the development of the TFG, opinions about its usefulness, and possibilities of improvement in the future.