29 resultados para developer


Relevância:

10.00% 10.00%

Publicador:

Resumo:

Background Gray scale images make the bulk of data in bio-medical image analysis, and hence, the main focus of many image processing tasks lies in the processing of these monochrome images. With ever improving acquisition devices, spatial and temporal image resolution increases, and data sets become very large. Various image processing frameworks exists that make the development of new algorithms easy by using high level programming languages or visual programming. These frameworks are also accessable to researchers that have no background or little in software development because they take care of otherwise complex tasks. Specifically, the management of working memory is taken care of automatically, usually at the price of requiring more it. As a result, processing large data sets with these tools becomes increasingly difficult on work station class computers. One alternative to using these high level processing tools is the development of new algorithms in a languages like C++, that gives the developer full control over how memory is handled, but the resulting workflow for the prototyping of new algorithms is rather time intensive, and also not appropriate for a researcher with little or no knowledge in software development. Another alternative is in using command line tools that run image processing tasks, use the hard disk to store intermediate results, and provide automation by using shell scripts. Although not as convenient as, e.g. visual programming, this approach is still accessable to researchers without a background in computer science. However, only few tools exist that provide this kind of processing interface, they are usually quite task specific, and don’t provide an clear approach when one wants to shape a new command line tool from a prototype shell script. Results The proposed framework, MIA, provides a combination of command line tools, plug-ins, and libraries that make it possible to run image processing tasks interactively in a command shell and to prototype by using the according shell scripting language. Since the hard disk becomes the temporal storage memory management is usually a non-issue in the prototyping phase. By using string-based descriptions for filters, optimizers, and the likes, the transition from shell scripts to full fledged programs implemented in C++ is also made easy. In addition, its design based on atomic plug-ins and single tasks command line tools makes it easy to extend MIA, usually without the requirement to touch or recompile existing code. Conclusion In this article, we describe the general design of MIA, a general purpouse framework for gray scale image processing. We demonstrated the applicability of the software with example applications from three different research scenarios, namely motion compensation in myocardial perfusion imaging, the processing of high resolution image data that arises in virtual anthropology, and retrospective analysis of treatment outcome in orthognathic surgery. With MIA prototyping algorithms by using shell scripts that combine small, single-task command line tools is a viable alternative to the use of high level languages, an approach that is especially useful when large data sets need to be processed.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

En los últimos años el número de dispositivos móviles y smartphones ha aumentado drásticamente, así como el número de aplicaciones destinadas a estos. Los desarrolladores siempre se han visto frenados en la creación de estas aplicaciones debido a la complejidad que supone la diversidad de sistemas operativos (Android, iOS, Windows Phone, etc), que utilizan lenguajes de programación diferentes, haciendo que, para poder desarrollar una aplicación que funcione en estas plataformas, en verdad haya que implementar una aplicación independiente para cada una de las plataformas. Para solucionar este problema han surgido frameworks, como Appcelerator Titanium, que permiten escribir una sola vez la aplicación y compilarla para las diferentes plataformas móviles objetivo. Sin embargo, estos frameworks están aún en estado muy temprano de desarrollo, por lo que no resuelven toda la problemática ni dan una respuesta completa a los desarrolladores. El objetivo de este Trabajo de Fin de Grado ha sido contribuir a la evolución de estos frameworks mediante la creación de un módulo para Appcelerator Titanium que permita construir de manera ágil aplicaciones multiplataforma que hagan uso de visualizadores de información geográfica. Para ello se propone el desarrollo de un módulo de mapa con soporte para capas WMS, rutas y polígonos en WKT, KML y GeoJSON. Se facilitará además que estas aplicaciones puedan acceder a capacidades del hardware como la brújula y el GPS para realizar un seguimiento de la localización, a la vez que se hace uso de la aceleración por el hardware subyacente para mejorar la velocidad y fluidez de la información visualizada en el mapa. A partir de este módulo se ha creado una aplicación que hace uso de todas sus características y posteriormente se ha migrado a la plataforma Wirecloud4Tablet como componente nativo que puede integrarse con otros componentes web (widgets) mediante técnicas de mashup. Gracias a esto se ha podido fusionar por un lado todas las ventajas que ofrece Wirecloud para el rápido desarrollo de aplicaciones sin necesidad de tener conocimientos de programación, junto con las ventajas que ofrecen las aplicaciones nativas en cuanto a rendimiento y características extras. Usando los resultados de este proyecto, se pueden crear de manera ágil aplicaciones composicionales nativas multiplataforma que hagan uso de visualización de información geográfica; es decir, se pueden crear aplicaciones en pocos minutos y sin conocimientos de programación que pueden ejecutar diferentes componentes (como el mapa) de manera nativa en múltiples plataformas. Se facilita también la integración de componentes nativos (como es el mapa desarrollado) con otros componentes web (widgets) en un mashup que puede visualizarse en dispositivos móviles mediante la plataforma Wirecloud. ---ABSTRACT---In recent years the number of mobile devices and smartphones has increased dramatically as well as the number of applications targeted at them. Developers always have been slowed in the creation of these applications due to the complexity caused by the diversity of operating systems (Android, iOS, Windows Phone, etc), each of them using different programming languages, so that, in order to develop an application that works on these platforms, the developer really has to implement a different application for each platform. To solve this problem frameworks such as Appcelerator Titanium have emerged, allowing developers to write the application once and to compile it for different target mobile platforms. However, these frameworks are still in very early stage of development, so they do not solve all the difficulties nor give a complete solution to the developers. The objective of this final year dissertation is to contribute to the evolution of these frameworks by creating a module for Appcelerator Titanium that permits to nimbly build multi-platform applications that make use of geographical information visualization. To this end, the development of a map module with support for WMS layers, paths, and polygons in WKT, KML, and GeoJSON is proposed. This module will also facilitate these applications to access hardware capabilities such as GPS and compass to track the location, while it makes use of the underlying hardware acceleration to improve the speed and fluidity of the information displayed on the map. Based on this module, it has been created an application that makes use of all its features and subsequently it has been migrated to the platform Wirecloud4Tablet as a native component that can be integrated with other web components (widgets) using mashup techniques. As a result, it has been fused on one side all the advantages Wirecloud provides for fast application development without the need of programming skills, along with the advantages of native apps, such as performance and extra features. Using the results of this project, compositional platform native applications that make use of geographical information visualization can be created in an agile way; ie, in a few minutes and without having programming skills, a developer could create applications that can run different components (like the map) natively on multiple platforms. It also facilitates the integration of native components (like the map) with other web components (widgets) in a mashup that can be displayed on mobile devices through the Wirecloud platform.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

This document is the result of a process of web development to create a tool that will allow to Cracow University of Technology consult, create and manage timetables. The technologies chosen for this purpose are Apache Tomcat Server, My SQL Community Server, JDBC driver, Java Servlets and JSPs for the server side. The client part counts on Javascript, jQuery, AJAX and CSS technologies to perform the dynamism. The document will justify the choice of these technologies and will explain some development tools that help in the integration and development of all this elements: specifically, NetBeans IDE and MySQL workbench have been used as helpful tools. After explaining all the elements involved in the development of the web application, the architecture and the code developed are explained through UML diagrams. Some implementation details related to security are also deeper explained through sequence diagrams. As the source code of the application is provided, an installation manual has been developed to run the project. In addition, as the platform is intended to be a beta that will be grown, some unimplemented ideas for future development are also exposed. Finally, some annexes with important files and scripts related to the initiation of the platform are attached. This project started through an existing tool that needed to be expanded. The main purpose of the project along its development has focused on setting the roots for a whole new platform that will replace the existing one. For this goal, it has been needed to make a deep inspection on the existing web technologies: a web server and a SQL database had to be chosen. Although the alternatives were a lot, Java technology for the server was finally selected because of the big community backwards, the easiness of modelling the language through UML diagrams and the fact of being free license software. Apache Tomcat is the open source server that can use Java Servlet and JSP technology. Related to the SQL database, MySQL Community Server is the most popular open-source SQL Server, with a big community after and quite a lot of tools to manage the server. JDBC is the driver needed to put in contact Java and MySQL. Once we chose the technologies that would be part of the platform, the development process started. After a detailed explanation of the development environment installation, we used UML use case diagrams to set the main tasks of the platform; UML class diagrams served to establish the existing relations between the classes generated; the architecture of the platform was represented through UML deployment diagrams; and Enhanced entity–relationship (EER) model were used to define the tables of the database and their relationships. Apart from the previous diagrams, some implementation issues were explained to make a better understanding of the developed code - UML sequence diagrams helped to explain this. Once the whole platform was properly defined and developed, the performance of the application has been shown: it has been proved that with the current state of the code, the platform covers the use cases that were set as the main target. Nevertheless, some requisites needed for the proper working of the platform have been specified. As the project is aimed to be grown, some ideas that could not be added to this beta have been explained in order not to be missed for future development. Finally, some annexes containing important configuration issues for the platform have been added after proper explanation, as well as an installation guide that will let a new developer get the project ready. In addition to this document some other files related to the project are provided: - Javadoc. The Javadoc containing the information of every Java class created is necessary for a better understanding of the source code. - database_model.mwb. This file contains the model of the database for MySQL Workbench. This model allows, among other things, generate the MySQL script for the creation of the tables. - ScheduleManager.war. The WAR file that will allow loading the developed application into Tomcat Server without using NetBeans. - ScheduleManager.zip. The source code exported from NetBeans project containing all Java packages, JSPs, Javascript files and CSS files that are part of the platform. - config.properties. The configuration file to properly get the names and credentials to use the database, also explained in Annex II. Example of config.properties file. - db_init_script.sql. The SQL query to initiate the database explained in Annex III. SQL statements for MySQL initialization. RESUMEN. Este proyecto tiene como punto de partida la necesidad de evolución de una herramienta web existente. El propósito principal del proyecto durante su desarrollo se ha centrado en establecer las bases de una completamente nueva plataforma que reemplazará a la existente. Para lograr esto, ha sido necesario realizar una profunda inspección en las tecnologías web existentes: un servidor web y una base de datos SQL debían ser elegidos. Aunque existen muchas alternativas, la tecnología Java ha resultado ser elegida debido a la gran comunidad de desarrolladores que tiene detrás, además de la facilidad que proporciona este lenguaje a la hora de modelarlo usando diagramas UML. Tampoco hay que olvidar que es una tecnología de uso libre de licencia. Apache Tomcat es el servidor de código libre que permite emplear Java Servlets y JSPs para hacer uso de la tecnología de Java. Respecto a la base de datos SQL, el servidor más popular de código libre es MySQL, y cuenta también con una gran comunidad detrás y buenas herramientas de modelado, creación y gestión de la bases de datos. JDBC es el driver que va a permitir comunicar las aplicaciones Java con MySQL. Tras elegir las tecnologías que formarían parte de esta nueva plataforma, el proceso de desarrollo tiene comienzo. Tras una extensa explicación de la instalación del entorno de desarrollo, se han usado diagramas de caso de UML para establecer cuáles son los objetivos principales de la plataforma; los diagramas de clases nos permiten realizar una organización del código java desarrollado de modo que sean fácilmente entendibles las relaciones entre las diferentes clases. La arquitectura de la plataforma queda definida a través de diagramas de despliegue. Por último, diagramas EER van a definir las relaciones entre las tablas creadas en la base de datos. Aparte de estos diagramas, algunos detalles de implementación se van a justificar para tener una mejor comprensión del código desarrollado. Diagramas de secuencia ayudarán en estas explicaciones. Una vez que toda la plataforma haya quedad debidamente definida y desarrollada, se va a realizar una demostración de la misma: se demostrará cómo los objetivos generales han sido alcanzados con el desarrollo actual del proyecto. No obstante, algunos requisitos han sido aclarados para que la plataforma trabaje adecuadamente. Como la intención del proyecto es crecer (no es una versión final), algunas ideas que se han podido llevar acabo han quedado descritas de manera que no se pierdan. Por último, algunos anexos que contienen información importante acerca de la plataforma se han añadido tras la correspondiente explicación de su utilidad, así como una guía de instalación que va a permitir a un nuevo desarrollador tener el proyecto preparado. Junto a este documento, ficheros conteniendo el proyecto desarrollado quedan adjuntos. Estos ficheros son: - Documentación Javadoc. Contiene la información de las clases Java que han sido creadas. - database_model.mwb. Este fichero contiene el modelo de la base de datos para MySQL Workbench. Esto permite, entre otras cosas, generar el script de iniciación de la base de datos para la creación de las tablas. - ScheduleManager.war. El fichero WAR que permite desplegar la plataforma en un servidor Apache Tomcat. - ScheduleManager.zip. El código fuente exportado directamente del proyecto de Netbeans. Contiene todos los paquetes de Java generados, ficheros JSPs, Javascript y CSS que forman parte de la plataforma. - config.properties. Ejemplo del fichero de configuración que permite obtener los nombres de la base de datos - db_init_script.sql. Las consultas SQL necesarias para la creación de la base de datos.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

habilidades de comprensión y resolución de problemas. Tanto es así que se puede afirmar con rotundidad que no existe el método perfecto para cada una de las etapas de desarrollo y tampoco existe el modelo de ciclo de vida perfecto: cada nuevo problema que se plantea es diferente a los anteriores en algún aspecto y esto hace que técnicas que funcionaron en proyectos anteriores fracasen en los proyectos nuevos. Por ello actualmente se realiza un planteamiento integrador que pretende utilizar en cada caso las técnicas, métodos y herramientas más acordes con las características del problema planteado al ingeniero. Bajo este punto de vista se plantean nuevos problemas. En primer lugar está la selección de enfoques de desarrollo. Si no existe el mejor enfoque, ¿cómo se hace para elegir el más adecuado de entre el conjunto de los existentes? Un segundo problema estriba en la relación entre las etapas de análisis y diseño. En este sentido existen dos grandes riesgos. Por un lado, se puede hacer un análisis del problema demasiado superficial, con lo que se produce una excesiva distancia entre el análisis y el diseño que muchas veces imposibilita el paso de uno a otro. Por otro lado, se puede optar por un análisis en términos del diseño que provoca que no cumpla su objetivo de centrarse en el problema, sino que se convierte en una primera versión de la solución, lo que se conoce como diseño preliminar. Como consecuencia de lo anterior surge el dilema del análisis, que puede plantearse como sigue: para cada problema planteado hay que elegir las técnicas más adecuadas, lo que requiere que se conozcan las características del problema. Para ello, a su vez, se debe analizar el problema, eligiendo una técnica antes de conocerlo. Si la técnica utiliza términos de diseño entonces se ha precondicionado el paradigma de solución y es posible que no sea el más adecuado para resolver el problema. En último lugar están las barreras pragmáticas que frenan la expansión del uso de métodos con base formal, dificultando su aplicación en la práctica cotidiana. Teniendo en cuenta todos los problemas planteados, se requieren métodos de análisis del problema que cumplan una serie de objetivos, el primero de los cuales es la necesidad de una base formal, con el fin de evitar la ambigüedad y permitir verificar la corrección de los modelos generados. Un segundo objetivo es la independencia de diseño: se deben utilizar términos que no tengan reflejo directo en el diseño, para que permitan centrarse en las características del problema. Además los métodos deben permitir analizar problemas de cualquier tipo: algorítmicos, de soporte a la decisión o basados en el conocimiento, entre otros. En siguiente lugar están los objetivos relacionados con aspectos pragmáticos. Por un lado deben incorporar una notación textual formal pero no matemática, de forma que se facilite su validación y comprensión por personas sin conocimientos matemáticos profundos pero al mismo tiempo sea lo suficientemente rigurosa para facilitar su verificación. Por otro lado, se requiere una notación gráfica complementaria para representar los modelos, de forma que puedan ser comprendidos y validados cómodamente por parte de los clientes y usuarios. Esta tesis doctoral presenta SETCM, un método de análisis que cumple estos objetivos. Para ello se han definido todos los elementos que forman los modelos de análisis usando una terminología independiente de paradigmas de diseño y se han formalizado dichas definiciones usando los elementos fundamentales de la teoría de conjuntos: elementos, conjuntos y relaciones entre conjuntos. Por otro lado se ha definido un lenguaje formal para representar los elementos de los modelos de análisis – evitando en lo posible el uso de notaciones matemáticas – complementado con una notación gráfica que permite representar de forma visual las partes más relevantes de los modelos. El método propuesto ha sido sometido a una intensa fase de experimentación, durante la que fue aplicado a 13 casos de estudio, todos ellos proyectos reales que han concluido en productos transferidos a entidades públicas o privadas. Durante la experimentación se ha evaluado la adecuación de SETCM para el análisis de problemas de distinto tamaño y en sistemas cuyo diseño final usaba paradigmas diferentes e incluso paradigmas mixtos. También se ha evaluado su uso por analistas con distinto nivel de experiencia – noveles, intermedios o expertos – analizando en todos los casos la curva de aprendizaje, con el fin de averiguar si es fácil de aprender su uso, independientemente de si se conoce o no alguna otra técnica de análisis. Por otro lado se ha estudiado la capacidad de ampliación de modelos generados con SETCM, para comprobar si permite abordar proyectos realizados en varias fases, en los que el análisis de una fase consista en ampliar el análisis de la fase anterior. En resumidas cuentas, se ha tratado de evaluar la capacidad de integración de SETCM en una organización como la técnica de análisis preferida para el desarrollo de software. Los resultados obtenidos tras esta experimentación han sido muy positivos, habiéndose alcanzado un alto grado de cumplimiento de todos los objetivos planteados al definir el método.---ABSTRACT---Software development is an inherently complex activity, which requires specific abilities of problem comprehension and solving. It is so difficult that it can even be said that there is no perfect method for each of the development stages and that there is no perfect life cycle model: each new problem is different to the precedent ones in some respect and the techniques that worked in other problems can fail in the new ones. Given that situation, the current trend is to integrate different methods, tools and techniques, using the best suited for each situation. This trend, however, raises some new problems. The first one is the selection of development approaches. If there is no a manifestly single best approach, how does one go about choosing an approach from the array of available options? The second problem has to do with the relationship between the analysis and design phases. This relation can lead to two major risks. On one hand, the analysis could be too shallow and far away from the design, making it very difficult to perform the transition between them. On the other hand, the analysis could be expressed using design terminology, thus becoming more a kind of preliminary design than a model of the problem to be solved. In third place there is the analysis dilemma, which can be expressed as follows. The developer has to choose the most adequate techniques for each problem, and to make this decision it is necessary to know the most relevant properties of the problem. This implies that the developer has to analyse the problem, choosing an analysis method before really knowing the problem. If the chosen technique uses design terminology then the solution paradigm has been preconditioned and it is possible that, once the problem is well known, that paradigm wouldn’t be the chosen one. The last problem consists of some pragmatic barriers that limit the applicability of formal based methods, making it difficult to use them in current practice. In order to solve these problems there is a need for analysis methods that fulfil several goals. The first one is the need of a formal base, which prevents ambiguity and allows the verification of the analysis models. The second goal is design-independence: the analysis should use a terminology different from the design, to facilitate a real comprehension of the problem under study. In third place the analysis method should allow the developer to study different kinds of problems: algorithmic, decision-support, knowledge based, etc. Next there are two goals related to pragmatic aspects. Firstly, the methods should have a non mathematical but formal textual notation. This notation will allow people without deep mathematical knowledge to understand and validate the resulting models, without losing the needed rigour for verification. Secondly, the methods should have a complementary graphical notation to make more natural the understanding and validation of the relevant parts of the analysis. This Thesis proposes such a method, called SETCM. The elements conforming the analysis models have been defined using a terminology that is independent from design paradigms. Those terms have been then formalised using the main concepts of the set theory: elements, sets and correspondences between sets. In addition, a formal language has been created, which avoids the use of mathematical notations. Finally, a graphical notation has been defined, which can visually represent the most relevant elements of the models. The proposed method has been thoroughly tested during the experimentation phase. It has been used to perform the analysis of 13 actual projects, all of them resulting in transferred products. This experimentation allowed evaluating the adequacy of SETCM for the analysis of problems of varying size, whose final design used different paradigms and even mixed ones. The use of the method by people with different levels of expertise was also evaluated, along with the corresponding learning curve, in order to assess if the method is easy to learn, independently of previous knowledge on other analysis techniques. In addition, the expandability of the analysis models was evaluated, assessing if the technique was adequate for projects organised in incremental steps, in which the analysis of one step grows from the precedent models. The final goal was to assess if SETCM can be used inside an organisation as the preferred analysis method for software development. The obtained results have been very positive, as SETCM has obtained a high degree of fulfilment of the goals stated for the method.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Since the memristor was first built in 2008 at HP Labs, no end of devices and models have been presented. Also, new applications appear frequently. However, the integration of the device at the circuit level is not straightforward, because available models are still immature and/or suppose high computational loads, making their simulation long and cumbersome. This study assists circuit/systems designers in the integration of memristors in their applications, while aiding model developers in the validation of their proposals. We introduce the use of a memristor application framework to support the work of both the model developer and the circuit designer. First, the framework includes a library with the best-known memristor models, being easily extensible with upcoming models. Systematic modifications have been applied to these models to provide better convergence and significant simulations speedups. Second, a quick device simulator allows the study of the response of the models under different scenarios, helping the designer with the stimuli and operation time selection. Third, fine tuning of the device including parameters variations and threshold determination is also supported. Finally, SPICE/Spectre subcircuit generation is provided to ease the integration of the devices in application circuits. The framework provides the designer with total control overconvergence, computational load, and the evolution of system variables, overcoming usual problems in the integration of memristive devices.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Research into software engineering teams focuses on human and social team factors. Social psychology deals with the study of team formation and has found that personality factors and group processes such as team climate are related to team effectiveness. However, there are only a handful of empirical studies dealing with personality and team climate and their relationship to software development team effectiveness. Objective We present aggregate results of a twice replicated quasi-experiment that evaluates the relationships between personality, team climate, product quality and satisfaction in software development teams. Method Our experimental study measures the personalities of team members based on the Big Five personality traits (openness, conscientiousness, extraversion, agreeableness, neuroticism) and team climate factors (participative safety, support for innovation, team vision and task orientation) preferences and perceptions. We aggregate the results of the three studies through a meta-analysis of correlations. The study was conducted with students. Results The aggregation of results from the baseline experiment and two replications corroborates the following findings. There is a positive relationship between all four climate factors and satisfaction in software development teams. Teams whose members score highest for the agreeableness personality factor have the highest satisfaction levels. The results unveil a significant positive correlation between the extraversion personality factor and software product quality. High participative safety and task orientation climate perceptions are significantly related to quality. Conclusions First, more efficient software development teams can be formed heeding personality factors like agreeableness and extraversion. Second, the team climate generated in software development teams should be monitored for team member satisfaction. Finally, aspects like people feeling safe giving their opinions or encouraging team members to work hard at their job can have an impact on software quality. Software project managers can take advantage of these factors to promote developer satisfaction and improve the resulting product.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

PAMELA (Phased Array Monitoring for Enhanced Life Assessment) SHMTM System is an integrated embedded ultrasonic guided waves based system consisting of several electronic devices and one system manager controller. The data collected by all PAMELA devices in the system must be transmitted to the controller, who will be responsible for carrying out the advanced signal processing to obtain SHM maps. PAMELA devices consist of hardware based on a Virtex 5 FPGA with a PowerPC 440 running an embedded Linux distribution. Therefore, PAMELA devices, in addition to the capability of performing tests and transmitting the collected data to the controller, have the capability of perform local data processing or pre-processing (reduction, normalization, pattern recognition, feature extraction, etc.). Local data processing decreases the data traffic over the network and allows CPU load of the external computer to be reduced. Even it is possible that PAMELA devices are running autonomously performing scheduled tests, and only communicates with the controller in case of detection of structural damages or when programmed. Each PAMELA device integrates a software management application (SMA) that allows to the developer downloading his own algorithm code and adding the new data processing algorithm to the device. The development of the SMA is done in a virtual machine with an Ubuntu Linux distribution including all necessary software tools to perform the entire cycle of development. Eclipse IDE (Integrated Development Environment) is used to develop the SMA project and to write the code of each data processing algorithm. This paper presents the developed software architecture and describes the necessary steps to add new data processing algorithms to SMA in order to increase the processing capabilities of PAMELA devices.An example of basic damage index estimation using delay and sum algorithm is provided.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

The mobile apps market is a tremendous success, with millions of apps downloaded and used every day by users spread all around the world. For apps’ developers, having their apps published on one of the major app stores (e.g. Google Play market) is just the beginning of the apps lifecycle. Indeed, in order to successfully compete with the other apps in the market, an app has to be updated frequently by adding new attractive features and by fixing existing bugs. Clearly, any developer interested in increasing the success of her app should try to implement features desired by the app’s users and to fix bugs affecting the user experience of many of them. A precious source of information to decide how to collect users’ opinions and wishes is represented by the reviews left by users on the store from which they downloaded the app. However, to exploit such information the app’s developer should manually read each user review and verify if it contains useful information (e.g. suggestions for new features). This is something not doable if the app receives hundreds of reviews per day, as happens for the very popular apps on the market. In this work, our aim is to provide support to mobile apps developers by proposing a novel approach exploiting data mining, natural language processing, machine learning, and clustering techniques in order to classify the user reviews on the basis of the information they contain (e.g. useless, suggestion for new features, bugs reporting). Such an approach has been empirically evaluated and made available in a web-­‐based tool publicly available to all apps’ developers. The achieved results showed that the developed tool: (i) is able to correctly categorise user reviews on the basis of their content (e.g. isolating those reporting bugs) with 78% of accuracy, (ii) produces clusters of reviews (e.g. groups together reviews indicating exactly the same bug to be fixed) that are meaningful from a developer’s point-­‐of-­‐view, and (iii) is considered useful by a software company working in the mobile apps’ development market.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

El proyecto nace de un proyecto anterior donde se construyó un modelo para representar la información de los estudios superiores mediante una red de ontologías, proporcionando una definición común de conceptos importantes. Este proyecto consiste en desarrollar una herramienta capaz de generar datos educativos, a partir de la red de ontologías mencionadas anteriormente, siguiendo el paradigma de Linked Data [1]. La herramienta deberá extraer datos de diferentes fuentes educativas y transformará dichos datos educativos a datos enlazados (Linked Data). Para llevar a cabo esta labor se ha utilizado GATE Developer [2], es un entorno de desarrollo que proporciona un completo conjunto de herramientas gráficas interactivas para la creación, medición y mantenimiento de componentes de software para el procesamiento del lenguaje humano.---ABSTRACT---The project arises from a previous project in which a model was constructed to represent information of higher education through a network of ontologies, providing a common definition of important concepts. This project is to develop a tool capable of generating educational data from the ontology network mentioned above, following the paradigm of Linked Data [1]. The tool will extract data from different educational sources and transform said data to linked data (linked data). To carry out this work has been used GATE Developer [2]. It is a development environment that provides a comprehensive set of interactive graphical tools for creating, measuring and maintenance of software components for human language processing.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Durante el siglo XXI hemos sido testigos de cambios con una gran trascendencia en el campo de las tecnologías tanto a nivel de hardware como software, aunque uno de los más notables ha sido el cambio del paradigma de la distribución del software, donde la instalación de herramientas de escritorio queda relegada a un segundo plano y toman fuerza las aplicaciones que consumen servicios web o que, simplemente, son aplicaciones web, que no requieren de un proceso de instalación y siempre que tengamos una conexión a internet activa podremos acceder a nuestra aplicación y datos, sin importar desde donde nos conectemos. Gracias a este cambio, últimamente han proliferado distintas tecnologías para la creación de aplicaciones web, entre estas encontramos los componentes web basados en tecnología Polymer como herramienta para el desarrollo de aplicaciones modulares y componentes reutilizables en distintos sitios web, modificando y añadiendo funcionalidad a las etiquetas de HTML, de esta manera una vez desarrollado un componente, volver a utilizarlo es realizar un trabajo de unos cuantos segundo añadiendo la etiqueta necesaria en nuestro código HTML, esta ventaja es la principal característica de Polymer. En paralelo al desarrollo de tecnologías web, y gracias a su masificación, se han generado herramientas y frameworks a través de los cuales se pueden desarrollar aplicaciones para dispositivos móviles mediante tecnologías web, esto beneficia directamente a los ecosistemas de desarrolladores, herramientas, frameworks y aplicaciones ya que los hace más amplios y accesibles a todo aquel que sea capaz de programar una aplicación web basada en HTML, CSS y Javascript. El objetivo de este trabajo es generar un canal de movilidad definiendo una metodología eficaz para portar las ventajas de los componentes web de Polymer a entornos móviles, conservando su capacidad de ser reutilizados de manera sencilla y sin perder, dentro de lo posible, la usabilidad de los mismos teniendo en cuenta las particularidades de los dispositivos móviles, esto se realizará mediante pruebas de usabilidad para posteriormente validar la metodología generada aplicándola a un caso real.---ABSTRACT---During 21st century we have witness the important changes in technologies field, involving both hardware and software level, but one of the most relevant ones has been the software distribution paradigm change, where desktop tools has lost their importance to benefit web services or just web applications, among which the web components are included. Web components are based on Polymer technology as its main tool for developing modular applications and reusable components in different web sites, adding and modifying functionality to HTML tags. So, when a components is developed, reusing it is possible just adding its correspondant tag inour HTML code. This is the main Polymer feature. As web technologies grow, different tools and frameworks has been created. They can be used to develop applications for web devices though web technologies, which is a benefit for developer, tools, frameworks and applications ecosystems, in such a way this new tools make them wider and more accessible for every one able to develop web applications with HTML, CSS and Javascript languages. The goal of this work is to generate a mobility channel defining an efficient methodology to carry the Polymer web components advantages to mobile environments, keeping their features of being reused in an easy way and without losing, when possible, their usability being aware the special features of mobile devices. This work will be evaluated through usability tests to validate then the generated methodology applying it to a real case.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Para entender el proyecto de una manera muy simplificada lo podríamos resumir de la siguiente forma: Se trata de una aplicación que permite a los usuarios imputar las horas de las tareas que realizan de una forma sencilla, y que los gestores de estos usuarios, mediante informes ejecutivos, puedan analizar las dedicaciones y costes de los proyectos que éstos gestionan. Además se dispondrá de pantallas para administrar todas las entidades que están implicadas en las imputaciones. Las imputaciones se realizarán agrupándolas por el concepto “Parte”. Los Partes dividen los meses en grupos de 10 días, así cada usuario tendrá que imputar las horas que realiza cada 10 días, enviando a su supervisor el parte para que este pueda revisarlo y analizar los resultados de las imputaciones a través de los informes. Vamos a resumir las entidades que intervienen en la aplicación y sus relaciones de la siguiente forma: - Los usuarios tendrán asignados una serie de cargos, los cuales definirán las posibles tareas que podrán realizar categorizadas en los conceptos Proceso y Subproceso. Un ejemplo de esta relación podría ser el cargo “Programador” podrá realizar tareas de tipo Proceso “Desarrollo” y tipos de Subproceso “Programación” y “Pruebas unitarias” - También se asignarán a los usuarios los proyectos en los que trabajan. Estos proyectos pertenecerán a una unidad (se podría equiparar el concepto unidad por ejemplo a clientes, departamentos, etc). - También se podrán asignar a los usuarios las peticiones concretas de proyectos en los que intervienen. Una petición podría ser una incidencia detectada en un proyecto, una mejora concreta en un proyecto de mantenimiento, un soporte realizado para arreglar unos datos incorrectos, etc. - A los usuarios se le asignarán unos costes que podrán ser distintos por periodos de tiempo con el fin de conocer el coste exacto de una hora realizada en la fecha en la que fue realizada. - A los usuarios se les asignará un Perfil de usuario. Este perfil de usuario definirá los permisos sobre los módulos disponibles de la herramienta. Habrá un permiso por cada entidad, dividiéndolos en Alta, Baja, Modificación y Consulta. Además de estos permisos habrá permisos especiales sobre módulos que no se refieran al manteniendo de entidades pero que sí requieran de un permiso especial para poder ejecutarse como por ejemplo poder ejecutar los informes de costes, poder realizar y consultar partes de otros usuarios además de los propios del usuario, etc. Los perfiles serán dinámicos. Se podrán crear tantos perfiles como se requieran, cada uno con los permisos que se le asignen. - Los usuarios imputarán las horas que realizan categorizando por tarea los siguientes conceptos: Proyecto, Petición (opcional), Proceso, Subproceso, Descripción de la tarea y horas invertidas en los días de la decena. La aplicación permite poder adaptarse a las necesidades de diseño de la organización que la utilice y pueden crearse tantas instancias de la aplicación como se necesiten, compartiendo ono la base de datos entre varias de las instancias, sin necesidad de duplicar el código en el servidor, lo que facilita el mantenimiento de la aplicación cuando se añaden mejoras y se solucionan incidencias. También facilita el poder vender licencias de uso de la aplicación a otras entidades teniendo una sola versión de la aplicación en la nube, lo que hace muy bajo el coste de la venta de licencias aumentando así los beneficios por venta. ABSTRACT To understand the project in a very simplified way we could summarize as follows: Its an application that allows users to charge the hours of tasks that they realize in a easy way, and that the managers of these users, by executive reports, can analyze dedications and costs of projects that they manage. Furthermore screens will be available to manage all entities that are involved in the charge of hours. The charge of hours will be grouped by the concept "Timesheet". The Timesheets divided the months in groups of 10 days, so each user will have to charge the hours every 10 days by sending his supervisor the thimesheet so that it can review it and analyze the results of the charges of hours by reports.Let's summarize the entities involved in the application and their relationships as follows: - Users will be assigned to one or more positions, which define the possible tasks that can perform categorized into concepts Process and Subprocess. An example of this relationship could be the position "Developer" may do tasks of process type "Development" and subprocess types "Programming" and "Unit Testing" - Users will also be assigned to projects in which they work. These projects belongs to a unit (Some possible examples of unit could be customers, departments, ...). - You can also assign users to specific requests for projects thar they are involved. A request could be an issue detected in a project, a concrete improvement in a maintenance project, a support made to fix some incorrect data, ... - Users will be assigned to one or more costs that may be different for periods of time in order to know the exact cost of an hour on the date on which it was made. - Users will be assigned to a User Profile. This user profile define the available permissions on modules of tool. There will be a permission for each entity, dividing them into Insert, Delete, Modify and Read. In addition to these permissions will be special permissions on modules that are not related to maintaining entities but if require special permission to execute such as to execute the cost reports, to make and read Timesheets of others users in addition to themselve user, etc. The profiles will be dynamic. We can create many profiles as we required, each with the permissions that are assigned. - Users charge the hours that they work categorizing per task the following: Project, Request (optional), Process, Subprocess, task description and the hours that they used in the ten days period. The application allows to adapt to the needs of design of the organization that use the application and allows create many instances of the application as needed, yes or not sharing the database among multiple instances without duplicating the code on the server, which facilitates maintenance of the application when improvements are added and incidents are resolved. It also facilitates to sell licenses to use the application to other organizations having a single version of the application in the cloud, making it very low cost from the sale of licenses and increasing profits per sale.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

El proyecto “Aplicación móvil y web para la gestión de lugares geolocalizados (www.midiez.com)” tiene como objetivo principal crear un repositorio de listas categorizadas de sitios para su uso en el ámbito personal o comercial. Tanto la aplicación web como la aplicación móvil desarrollada en Android tienen el propósito de gestionar listas de lugares de interés (Restaurantes, tiendas,..) o con propósitos específicos (Organización de viajes) o simplemente como una forma de anotar aquellos sitios que nos comentan y que nos gustaría visitar. El desarrollo de este proyecto además permitirá contrastar las distintas alternativas y la evolución de las distintas herramientas que se han ido desarrollando para la gestión del ocio en los últimos años desde el sistema Android y plataformas web. Todo el proyecto ha sido realizado usando software libre (PHP para el lenguaje web servidor y Java para la programación móvil). La principal finalidad desde el punto de vista del desarrollador es: aprovechar las sinergias de la programación móvil y la programación web de manera que las mismas capas de negocio de Datos sean usadas por ambas plataformas. Asimismo crear una aplicación distribuida y fácilmente escalable. Las herramientas que se han usado para desarrollar han sido: la SDK proporcionada por Google, una JDK de Java y un IDE de desarrollo Java como es Eclipse y otro similar para el desarrollo de la parte PHP. La BBDD elegida ha sido MySQL. El proyecto pretende mostrar el potencial de las aplicaciones móviles geolocalizadas desde el punto de vista del ocio y compararlas con el estado del arte actual. Por lo tanto la mayor parte del tiempo dedicado al proyecto ha sido empleado en el desarrollo de la aplicación web, la aplicación móvil y en la base de datos pero también he dedicado una pequeña parte del trabajo para realizar un estudio sobre las consecuencias que esta tecnología está teniendo en nuestros cerebros. ABSTRACT The project "Web and Mobile App for managing geolocation places” has as main objective managing of places lists in order to use them in the leisure time scope. Nowadays the use of GPS is being a constant in mobile applications so that is already part of our daily life. We used to know where we are always and at the same time we can find locations using the technology of our mobile phones. Now it is very difficult to get lost outside but also is difficult to explain somebody how to get to anywhere without using Google Maps. Google Maps, Geolocation, gps navigators, … all that kind of stuff are making our life easier and less complicated but also are making our brains lazier. Furthermore, the development of this project will use the potential of locate places into maps to avoid annotate every spot we would like to visit or a brand new restaurant. The project itself shows the location features of Google Maps combined with an places data base in order to create, and manage places lists and use them to get to them as well as to share those places with our contacts. Also, the main purpose from the point of view of the developer is to combine different programming languages and use the resulting synergies in a easily scalable and portable environment. The tools that have been used to develop are: the SDK provided by Google, one JDK Java and Java development IDE such as Eclipse and similar to the development of the PHP part. The DB has been chosen MySQL. Finally, this project aims to show, from an educational point of view, the use and potential of this technology. Thus, it has been devoted a large amount of time of the project (and, consequently, its documentation) on develop the Android app, the data base and the web app but also but also to highlight the consequences of using technology.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

La presente tesis doctoral desarrolla la obra del arquitecto Antonio Vallejo Álvarez (n. 1903, t. 1928, f. 2002) cuya larga carrera profesional permite observar una evolución que tiene como fondo la de la arquitectura española desde los planteamientos academicistas de principios del siglo XX, pasando por el primer racionalismo, hasta la influencia del Movimiento Moderno. Antonio Vallejo nació en Almonacid de Zorita, un pueblo de la provincia de Guadalajara pequeño pero singular ya que entonces se construía el Salto de Bolarque, instalación energética crucial en la época que albergaba además elementos de arquitectura culta. La familia le envió a Madrid a estudiar en las Escuelas Pías de San Fernando y luego en la vieja escuela de arquitectura de la calle Escritorios perteneciente a la Real Academia de Bellas Artes de San Fernando. Terminada la carrera realizó unas primeras edificaciones de corte historicista con relativa abundancia de estilemas academicista que van desapareciendo paulatinamente a la vez que evolucionan hacia el “decó”. De esta depuración, que puede observarse muy bien en los números 69,73 y 62 de la calle Viriato de Madrid, resulta un primer racionalismo en el que las balconadas y cuerpos volados se apoyan sobre una trama racionalista ortogonal cada vez más rígida. Simultáneamente trabajó en esta época en la Oficina de Información sobre la Ciudad del Ayuntamiento de Madrid junto a Bernardo Giner de los Ríos y Fernando García Mercadal, entre otros. Más tarde se incorporó a las órdenes del primero a la Oficina de Construcciones escolares donde se mantuvo hasta el estallido de la guerra civil. Al amparo de la Ley Salmón fundó la empresa promotora de viviendas Ar-In donde realizó una arquitectura en la que la trama racionalista cobra una gran fuerza expresiva, matizada y potenciada por grandes balcones aterrazados de corte higienista. Sus exponentes máximos son el conjunto en la calle Narváez esquina a Alcalde Sáinz de Baranda, y la manzana de Guzmán el Bueno, 75 de Madrid. La guerra civil interrumpe el proceso y tras ella nuestro autor ensaya la supervivencia del racionalismo mediante la superposición de la trama en grandes cuerpos de alzado de ladrillo ocupando las plantas de pisos, sobre un basamento de granito en la planta baja y una especie de pórtico enmarcando los huecos del ático a modo de remate. En las ventanas se colocan embocaduras de caliza de diversas formas. Esta arquitectura, muy en la línea del gusto de la época, será sublimada mediante un magnífico ejemplo de manierismo en su gran obra de la Residencia de los Agustinos Recoletos y la Iglesia de Santa Rita de Madrid. Superados los al menos tres lustros de postguerra, Vallejo inicia un proceso que podríamos llamar estructuralista en la medida en que la asunción de la situación de la estructura en el edificio y el módulo por ella creada definen sus características formales. Aquí, tras trabajar el hormigón armado en algunos edificios como los del Residencial Bellas Vistas de Madrid, lo hace con mucho más convencimiento en edificios con estructuras de acero como el colegio del Sagrado Corazón de Guadalajara. Es también importante hablar de la provincia de Almería, a cuya capital llega nuestro arquitecto inmediatamente después de la guerra civil para alejarse de las indeseables consecuencias que hubiera podido tener su fidelidad al gobierno de la República con el que colaboró hasta el último momento. En la ciudad desarrolló una extensa labor como constructor a través de Duarín SA, que se había formado sobre los restos de su promotora. También como arquitecto, con una labor paralela a la madrileña pero con menor presión ambiental, lo que contribuyó a que en cierta medida el proceso de afloramiento de su arquitectura estructuralista, heredera lejana de su primer racionalismo, fuese más rápido, como prueban realizaciones como los edificios de la calle Juan Pérez, 18 y del Paseo de la Estación, 19. ABSTRACT This thesis deals with the works in architecture from Antonio Vallejo Álvarez (b. 1903, g. 1928, d. 2002) whose long career enables us to concentrate on the evolution of the Spanish Architecture from the Academicism taking place at the beginning of XXth century , until the influence of the Modern Movement, taking also into account Racionalism. Antonio Vallejo was born in Almonacid de Zorita, a village in the province of Guadalajara small but unique because then Salto de Bolarque the crucial energy facility at the time also housed elements of classical architecture is built. His family sent him to study to Madrid in Escuelas Pías de San Fernando first, and then he attended lessons in the old Architecture school from Escritorios street belonging this last one to la Real Academia de Bellas Artes de San Fernando. Once he finished his degree on Architecture, he worked on some historicist buildings with a great use of academicist stylemes which will be disappearing little by little, turning into “deco”. From this depurationn, whose traces can be found in 69, 73, 62 at Viriato street in Madrid, our architect ends up with a first racionalism in which balconies and flown bodies are suspended on a racionalist and orthogonal more and more rigid. At that time, he was also working in the Information Office in Madrid Town Hall together with Bernardo Giner de los Ríos y Fernando García Mercadal, among others. Later, he worked for Bernardo Giner de los Ríos in the School Building Offices until the breaking out of the Civil War. Under Salmón law, he founded a developer for buildings named Ar-In, where he developed a type of Architecture in which racionalism develops a magnificent expressive force, empowered by great terraced balconies with higienistain court. His great masterpieces at this time are the buildings from Narvaez opposite to Alcalde Sáinz de Baranda and the block in 75 Guzmán El Bueno, in Madrid. Civil war interrupts somehow his process and once the war is over, our architect works on the survival of racionalism by overlapping on large bodies of brick elevation occupying different floor plants, on a base of granite on the ground floor and a sort of portico framing the gaps in the attic by way of auction. On the Windows he se colocan embocaduras de caliza de diversas formas. This type of architecture, very much enjoyed at that time, will be sublimed as a great example of manierism in his great work such as the case of Agustinos Recoletos Residence and Santa Rita Church in Madrid. About fifteen years after the war, in the post-war era, Vallejo starts a process which we could call structuralist, as lons as the asumption from the situation of the structure in the building and the created module define his main features. Here, once our architect works with reinforce concrete in some of his buildings such as Residencial Bellas Vistas de Madrid, he improves his technique with steel strucutres such as the on in the school Sagrado Corazón in Guadalajara. It is also remarkable to speak about the province of Almería, where our architect arrives inmediately after the civil war, to get rid of the consequences of his loyalty to the Republic movement to which he collaborated until his death. He developed a great career as a builder there through Duarín SA, which was launched though his former enterprise. Similary as the way he worked in Madrid,he, also as an arquitect, did his work in Almería with less environmental pressure though, fact which contributed to the flourishing of the structuralist architecture, as an heir from his first racionalism, as it can be shown from buildings in streets such as 18 Juan Pérez, and 19 Paseo de la Estación.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

A partir de la segunda mitad del siglo XX, Nueva York experimenta una apertura al público de espacios nuevos, transformados u olvidados mediante la adaptación de mecanismos, ya sean formales o informales, de caracter permanente o temporal, para la incorporación de uso público en un contexto urbano limitado y congestionado. Estos recursos espaciales son mediadores entre el espacio público y el privado, y son el resultado físico de la negociación entre la legislación urbana, los interes privados de los promotores y las demandas de los ciudadanos. La tesis estudia una selección de obras, entre los años 1950 y 2015, que incorporan notables oportunidades para el uso colectivo, pero que han propiciado la creación de dos tipos de espacios: los “espaciosoasis”, aquellos que potencian una verdadera interacción social entre los usuarios; y los “espacios-vitrina”, para ver y no tocar, en los que el usuario participa indirectamente y, sin promover interacción alguna, atraen al público foráneo y rechazan al local. La diversidad de usos, la sensibilidad social, la supervisión cercana y la facilidad de mantenimiento de la pequeña escala posibilitan que los “espacios-oasis” sean claves a la hora de mantener el fragil y vulnerable equilibrio de la vida urbana. La tesis profundiza en la contextualización de las obras en relación con el apoyo de las políticas públicas y contexto cíclico de los constantes altibajos económicos. El papel del alcalde neoyorkino es clave a la hora decidir el mayor o mejor respaldo de la administración local a las obras que tienen una incidencia en el ámbito de lo público, por lo que la tesis estructura las obras en relación a las transiciones entre las alcaldías más importantes. La presión del mercado inmobiliario, los intereses privados y políticos, la excesiva comercialización y programación de estos espacios dificultan el lento y opaco proceso de la incorporación de uso público en la ciudad y compremeten el verdadero carácter cívico del espacio abierto urbano. La investigación estudia estos factores a través de una reflexión sobre el verdadero sentido de la revitalización de lo público, entendida en relación con las interacciones que fomenta y que se producen más allá de las intenciones del proyecto arquitectónico. El objetivo y el alcance de esta investigación permite reflexionar, discutir y explorar el uso y la participación cívica en el entorno construido, para de esta forma poder entender la evolución de las condiciones sociales, económicas, arquitectónicas y urbanas del espacio público. ABSTRACT During the second half of the twentieth century, New York experienced a launch of new spaces, changed or forgotten through the adoption of mechanisms, whether formal or informal, permanent or temporary, for the incorporation of spaces for public use in a limited and congested urban context. These assets are mediators between the public and private space, and are the physical result of negotiations between the urban legislation, the private interests of the developer and the demands of citizens. The dissertation examines a selection of projects, between 1950 and 2015, that incorporate remarkable spatial opportunities for collective use, which led to the creation of two types of spaces: “oasis-space”, those that enhance social interaction between patrons; and “vitrinespace”, space to be seen but not touched, where the user participates indirectly and does not promote any interaction, attracting an outside public and rejecting the local. Diversity of uses, social sensitivity, close supervision and ease of maintenance that enable small-scale “oasis spaces” are key when it comes to keeping the fragile and vulnerable balance of urban life. The investigation explains the contextualization of the projects in relation with the support of public politics and the cyclical context of constantly changing economics. The role of the New York mayor is key at the time of deciding the level of administrative support for the projects that occur at a point of overlap between the public and the private, which is why the thesis analyzes the projects in relationship to the transitions between the cities most influential mayors. Pressure from the housing market, private and political interests, excessive commercialization and programming of these spaces impede the slow and opaque process of incorporating them for public use in the city and compromise the true civic character open urban space. The research explores these factors by reflecting on the true meaning of the revitalization of the public, understood in relation to interactions it encourages and that occur outside of the intentions of the architectural project. The objective and scope of this study allows for reflecting on, discussing and exploring civic participation and use of the built environment, as a way to understand the evolution of social, economic, architectural and urban conditions of public space.