89 resultados para Metriche del software Stima del software Software embedded Function point Lines of code


Relevância:

100.00% 100.00%

Publicador:

Resumo:

El Análisis de Consumo de Recursos o Análisis de Coste trata de aproximar el coste de ejecutar un programa como una función dependiente de sus datos de entrada. A pesar de que existen trabajos previos a esta tesis doctoral que desarrollan potentes marcos para el análisis de coste de programas orientados a objetos, algunos aspectos avanzados, como la eficiencia, la precisión y la fiabilidad de los resultados, todavía deben ser estudiados en profundidad. Esta tesis aborda estos aspectos desde cuatro perspectivas diferentes: (1) Las estructuras de datos compartidas en la memoria del programa son una pesadilla para el análisis estático de programas. Trabajos recientes proponen una serie de condiciones de localidad para poder mantener de forma consistente información sobre los atributos de los objetos almacenados en memoria compartida, reemplazando éstos por variables locales no almacenadas en la memoria compartida. En esta tesis presentamos dos extensiones a estos trabajos: la primera es considerar, no sólo los accesos a los atributos, sino también los accesos a los elementos almacenados en arrays; la segunda se centra en los casos en los que las condiciones de localidad no se cumplen de forma incondicional, para lo cual, proponemos una técnica para encontrar las precondiciones necesarias para garantizar la consistencia de la información acerca de los datos almacenados en memoria. (2) El objetivo del análisis incremental es, dado un programa, los resultados de su análisis y una serie de cambios sobre el programa, obtener los nuevos resultados del análisis de la forma más eficiente posible, evitando reanalizar aquellos fragmentos de código que no se hayan visto afectados por los cambios. Los analizadores actuales todavía leen y analizan el programa completo de forma no incremental. Esta tesis presenta un análisis de coste incremental, que, dado un cambio en el programa, reconstruye la información sobre el coste del programa de todos los métodos afectados por el cambio de forma incremental. Para esto, proponemos (i) un algoritmo multi-dominio y de punto fijo que puede ser utilizado en todos los análisis globales necesarios para inferir el coste, y (ii) una novedosa forma de almacenar las expresiones de coste que nos permite reconstruir de forma incremental únicamente las funciones de coste de aquellos componentes afectados por el cambio. (3) Las garantías de coste obtenidas de forma automática por herramientas de análisis estático no son consideradas totalmente fiables salvo que la implementación de la herramienta o los resultados obtenidos sean verificados formalmente. Llevar a cabo el análisis de estas herramientas es una tarea titánica, ya que se trata de herramientas de gran tamaño y complejidad. En esta tesis nos centramos en el desarrollo de un marco formal para la verificación de las garantías de coste obtenidas por los analizadores en lugar de analizar las herramientas. Hemos implementado esta idea mediante la herramienta COSTA, un analizador de coste para programas Java y KeY, una herramienta de verificación de programas Java. De esta forma, COSTA genera las garantías de coste, mientras que KeY prueba la validez formal de los resultados obtenidos, generando de esta forma garantías de coste verificadas. (4) Hoy en día la concurrencia y los programas distribuidos son clave en el desarrollo de software. Los objetos concurrentes son un modelo de concurrencia asentado para el desarrollo de sistemas concurrentes. En este modelo, los objetos son las unidades de concurrencia y se comunican entre ellos mediante llamadas asíncronas a sus métodos. La distribución de las tareas sugiere que el análisis de coste debe inferir el coste de los diferentes componentes distribuidos por separado. En esta tesis proponemos un análisis de coste sensible a objetos que, utilizando los resultados obtenidos mediante un análisis de apunta-a, mantiene el coste de los diferentes componentes de forma independiente. Abstract Resource Analysis (a.k.a. Cost Analysis) tries to approximate the cost of executing programs as functions on their input data sizes and without actually having to execute the programs. While a powerful resource analysis framework on object-oriented programs existed before this thesis, advanced aspects to improve the efficiency, the accuracy and the reliability of the results of the analysis still need to be further investigated. This thesis tackles this need from the following four different perspectives. (1) Shared mutable data structures are the bane of formal reasoning and static analysis. Analyses which keep track of heap-allocated data are referred to as heap-sensitive. Recent work proposes locality conditions for soundly tracking field accesses by means of ghost non-heap allocated variables. In this thesis we present two extensions to this approach: the first extension is to consider arrays accesses (in addition to object fields), while the second extension focuses on handling cases for which the locality conditions cannot be proven unconditionally by finding aliasing preconditions under which tracking such heap locations is feasible. (2) The aim of incremental analysis is, given a program, its analysis results and a series of changes to the program, to obtain the new analysis results as efficiently as possible and, ideally, without having to (re-)analyze fragments of code that are not affected by the changes. During software development, programs are permanently modified but most analyzers still read and analyze the entire program at once in a non-incremental way. This thesis presents an incremental resource usage analysis which, after a change in the program is made, is able to reconstruct the upper-bounds of all affected methods in an incremental way. To this purpose, we propose (i) a multi-domain incremental fixed-point algorithm which can be used by all global analyses required to infer the cost, and (ii) a novel form of cost summaries that allows us to incrementally reconstruct only those components of cost functions affected by the change. (3) Resource guarantees that are automatically inferred by static analysis tools are generally not considered completely trustworthy, unless the tool implementation or the results are formally verified. Performing full-blown verification of such tools is a daunting task, since they are large and complex. In this thesis we focus on the development of a formal framework for the verification of the resource guarantees obtained by the analyzers, instead of verifying the tools. We have implemented this idea using COSTA, a state-of-the-art cost analyzer for Java programs and KeY, a state-of-the-art verification tool for Java source code. COSTA is able to derive upper-bounds of Java programs while KeY proves the validity of these bounds and provides a certificate. The main contribution of our work is to show that the proposed tools cooperation can be used for automatically producing verified resource guarantees. (4) Distribution and concurrency are today mainstream. Concurrent objects form a well established model for distributed concurrent systems. In this model, objects are the concurrency units that communicate via asynchronous method calls. Distribution suggests that analysis must infer the cost of the diverse distributed components separately. In this thesis we propose a novel object-sensitive cost analysis which, by using the results gathered by a points-to analysis, can keep the cost of the diverse distributed components separate.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

En el presente proyecto se realiza el diseño y cálculo de la instalación eléctrica y el cálculo de luminarias, de un edificio de oficinas y almacén de productos farmacéuticos. Este diseño se precisa para el correcto desarrollo de la actividad de la nave industrial objeto de la instalación. Mediante la utilización de programas informáticos se pretende diseñar una guía para agilizar los procesos de dimensionamiento y cálculo para este tipo de proyectos. Al contar estos programas con una normativa totalmente actualizada, también agilizan el proceso de adecuación a la norma. En el cálculo de luminarias se consigue un cálculo muy aproximado de la potencia requerida, además de asegurar las condiciones lumínicas necesarias. También se tiene un cálculo muy exacto del circuito eléctrico que es fácil modificar a futuras ampliaciones. ABSTRACT The project´s aim is to make the design and calculations of the electrical and lighting installations, for a pharmaceutical warehouse. This design is necessary to ensure proper operational activity of the industrial warehouse, subject to the installation. By means of computer programs, it is intended to design a guide in order to speed up the processes of calculations and sizing of the electric wiring for this type of project. These programs are also fully updated, and therefore, the processes of adaptation to the legislation and regulations are made easier. In the calculation of the lighting, the software achieves a close approximation of the required power as well as ensuring the necessary light conditions. With this software we also achieve a very accurate calculation of the electrical circuit that is easy to modify to future expansions.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Los paneles sándwich de yeso laminado y lana de roca presentan una abundante patología de fisuración debida a flechas excesivas de forjados. Existe, por tanto, la necesidad de avanzar en la simulación y predicción de comportamiento bajo solicitaciones de tracción y cortante de ese tipo de paneles, a pesar de que en las aplicaciones habituales no tienen responsabilidad estructural. El comportamiento de este material puede ser considerado cuasi-frágil, y en base a ello en este trabajo ha sido estudiado haciendo uso de modelos de fisura cohesiva, cuya aplicación a otros materiales cuasifrágiles, como el hormigón, ha aportado resultados muy satisfactorios. En esta comunicación se presenta el trabajo realizado para estudiar el efecto del tamaño del elemento de yeso laminado y lana de roca en su comportamiento mecánico-resistente. Para ello se diseñó una campaña de ensayos en modo mixto sobre probetas de diferente tamaño. Se han realizado ensayos de flexión en tres puntos en modo mixto de unas probetas entalladas, geométricamente similares y de diferente tamaño, obteniéndose las curvas carga-desplazamiento y cargaabertura de la boca de la entalla. Para simular numéricamente el comportamiento en fractura del panel en modo mixto se ha utilizado un modelo de elementos finitos con fisura embebida basado en la fisura cohesiva en el que se introducen como entrada los parámetros obtenidos a partir de la experimentación de trabajos anteriores, obteniéndose un buen ajuste. En función de estos resultados se analiza el efecto del tamaño en los paneles. Sandwich panels of laminated gypsum and rockwool have an abundant pathology of cracking due to excessive slabs deflection. Therefore, it is necessary to progress in the simulation and prediction of behaviour under tensile and shear load of such panels, although in typical applications have no structural responsability. The behaviour of this material may be considered quasi-brittle and, based on this idea, in this work has been studied using a cohesive crack model that has been applied to other quasi-brittle materials, such as concrete, and has provided very satisfactory results. This communication presents the work carried out to study the size effect of the specimen of plasterboard and rockwool in its mechanical and resistant behaviour. The authors designed an experimental campaign under mixed mode composed by testing specimens of different sizes. Assymetrical three-point bending tests have been performed on notched specimens, geometrically similar and of different size, to obtain load-displacement and load-crack moutn opening displacement curves. To numerically simulate the mixed-mode fracture behaviour of the panels we have used a finite element model with embedded crack, based on the cohesive crack model, using as input the experimental parameters obtained in previous work, obtaining a good adjustment. Based on these results we analyze the size effect of the panels

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Access to information and continuous education represent critical factors for physicians and researchers over the world. For African professionals, this situation is even more problematic due to the frequently difficult access to technological infrastructures and basic information. Both education and information technologies (e.g., including hardware, software or networking) are expensive and unaffordable for many African professionals. Thus, the use of e-learning and an open approach to information exchange and software use have been already proposed to improve medical informatics issues in Africa. In this context, the AFRICA BUILD project, supported by the European Commission, aims to develop a virtual platform to provide access to a wide range of biomedical informatics and learning resources to professionals and researchers in Africa. A consortium of four African and four European partners work together in this initiative. In this framework, we have developed a prototype of a cloud-computing infrastructure to demonstrate, as a proof of concept, the feasibility of this approach. We have conducted the experiment in two different locations in Africa: Burundi and Egypt. As shown in this paper, technologies such as cloud computing and the use of open source medical software for a large range of case present significant challenges and opportunities for developing countries, such as many in Africa.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Los paneles sándwich de yeso laminado y lana de roca presentan una abundante patología de fisuración debida a flechas excesivas de forjados. Existe, por tanto, la necesidad de avanzar en la simulación y predicción de comportamiento bajo solicitaciones de tracción y cortante de ese tipo de paneles, a pesar de que en las aplicaciones habituales no tienen responsabilidad estructural. El comportamiento de este material puede ser considerado cuasi-frágil, y en base a ello en este trabajo ha sido estudiado haciendo uso de modelos de fisura cohesiva, cuya aplicación a otros materiales cuasifrágiles, como el hormigón, ha aportado resultados muy satisfactorios. En esta comunicación se presenta el trabajo realizado para estudiar el efecto del tamaño del elemento de yeso laminado y lana de roca en su comportamiento mecánico-resistente. Para ello se diseñó una campaña de ensayos en modo mixto sobre probetas de diferente tamaño. Se han realizado ensayos de flexión en tres puntos en modo mixto de unas probetas entalladas, geométricamente similares y de diferente tamaño, obteniéndose las curvas carga-desplazamiento y cargaabertura de la boca de la entalla. Para simular numéricamente el comportamiento en fractura del panel en modo mixto se ha utilizado un modelo de elementos finitos con fisura embebida basado en la fisura cohesiva en el que se introducen como entrada los parámetros obtenidos a partir de la experimentación de trabajos anteriores, obteniéndose un buen ajuste. En función de estos resultados se analiza el efecto del tamaño en los paneles. Sandwich panels of laminated gypsum and rockwool have an abundant pathology of cracking due to excessive slabs deflection. Therefore, it is necessary to progress in the simulation and prediction of behaviour under tensile and shear load of such panels, although in typical applications have no structural responsability. The behaviour of this material may be considered quasi-brittle and, based on this idea, in this work has been studied using a cohesive crack model that has been applied to other quasi-brittle materials, such as concrete, and has provided very satisfactory results. This communication presents the work carried out to study the size effect of the specimen of plasterboard and rockwool in its mechanical and resistant behaviour. The authors designed an experimental campaign under mixed mode composed by testing specimens of different sizes. Assymetrical three-point bending tests have been performed on notched specimens, geometrically similar and of different size, to obtain load-displacement and load-crack moutn opening displacement curves. To numerically simulate the mixed-mode fracture behaviour of the panels we have used a finite element model with embedded crack, based on the cohesive crack model, using as input the experimental parameters obtained in previous work, obtaining a good adjustment. Based on these results we analyze the size effect of the panels.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

En los últimos años hemos sido testigos de la creciente demanda de software para resolver problemas cada vez más complejos y de mayor valor agregado. Bajo estas circunstancias, nos podemos hacer la siguiente pregunta: ¿Está preparada la industria de software para entregar el software que se necesita en los próximos años, de acuerdo con las demandas del cliente? Hoy en día, muchos expertos creen que el éxito de esta industria dependerá de su capacidad para gestionar los proyectos, las personas y los recursos. En este sentido, la gestión de proyectos es un factor clave para el éxito de los proyectos software en todo el mundo. Además, considerando que las Pequeñas y Medianas Empresas de software (PYMEs) representan el 99,87% de las empresas españolas, es vital para este tipo de empresas la implementación de los procesos involucrados con la gestión de proyectos. Es cierto que existen muchos modelos que mejoran la eficacia de la gestión de proyectos, pero la mayoría de ellos se centra únicamente en dos procesos: la planificación del proyecto y la monitorización y control del proyecto, ninguno de los cuales a menudo es asequible para las PYMEs. Estos modelos se basan en el consenso de un grupo de trabajo designado para establecer cómo debe ser gestionado el proceso software. Los modelos son bastante útiles ya que proporcionan lineamientos generales sobre dónde empezar a mejorar la gestión de los proyectos, y en qué orden, a personas que no saben cómo hacerlo. Sin embargo, como se ha dicho anteriormente, la mayoría de estos modelos solamente funcionan en escenarios dentro de las grandes empresas. Por lo tanto, es necesario adaptar los modelos y herramientas para el contexto de PYMEs. Esta tesis doctoral presenta una solución complementaria basada en la aplicación de un metamodelo. Este metamodelo es creado para mejorar la calidad de los procesos de la gestión de proyectos a través de la incorporación de prácticas eficaces identificadas a través del análisis y estudio de los modelos y normas existentes relacionadas con la gestión de proyectos. viii ProMEP – Metamodelo para la gestión de proyectos Por lo tanto, el metamodelo PROMEP (Gestión de Proyectos basada en Prácticas Efectivas) permitirá establecer un proceso estándar de gestión de proyectos que puede adaptarse a los proyectos de cada empresa a través de dos pasos: En primer lugar, para obtener una fotografía instantánea (o base) de los procesos de gestión de proyectos de las PYMEs se creó un cuestionario de dos fases para identificar tanto las prácticas realizadas y como las no realizadas. El cuestionario propuesto se basa en el Modelo de Madurez y Capacidad Integrado para el Desarrollo v1.2 (CMMI-DEV v1.2). Como resultado adicional, se espera que la aplicación de este cuestionario ayude a las PYMEs a identificar aquellas prácticas que se llevan a cabo, pero no son documentadas, aquellas que necesitan más atención, y aquellas que no se realizan debido a la mala gestión o al desconocimiento. En segundo lugar, para apoyar fácilmente y eficazmente las tareas de gestión de proyectos software del metamodelo PROMEP, se diseñó una biblioteca de activos de proceso (PAL) para apoyar la definición de los procesos de gestión de proyectos y realizar una gestión cuantitativa de cada proyecto de las PYMEs. Ambos pasos se han implementado como una herramienta computacional que apoya nuestro enfoque de metamodelo. En concreto, la presente investigación propone la construcción del metamodelo PROMEP para aquellas PYMEs que desarrollan productos software de tal forma que les permita planificar, monitorizar y controlar sus proyectos software, identificar los riesgos y tomar las medidas correctivas necesarias, establecer y mantener un conjunto de activos de proceso, definir un mecanismo cuantitativo para predecir el rendimiento de los procesos, y obtener información de mejora. Por lo tanto, nuestro estudio sugiere un metamodelo alternativo para lograr mayores niveles de rendimiento en los entornos de PYMEs. Así, el objetivo principal de esta tesis es ayudar a reducir los excesos de trabajo y el tiempo de entrega, y aumentar así la calidad del software producido en este tipo de organizaciones. Abstract In recent years we have been witnessing the increasing demand for software to solve more and more complex tasks and greater added value. Under these circumstances, we can ourselves the following question: Is the software industry prepared to deliver the software that is needed in the coming years, according to client demands? Nowadays, many experts believe that the industry’ success will depend on its capacity to manage the projects, people and resources. In this sense, project management is a key factor for software project success around the world. Moreover, taking into account that small and medium-sized software enterprises (SMSe) are the 99.87% of the Spanish enterprises, it is vital for this type of enterprises to implement the processes involved in project management. It is true that there are many models that improve the project management effectiveness, but most of them are focused only on two processes: project planning and project monitoring and control, neither of which is affordable for SMSe. Such models are based on the consensus of a designated working group on how software process should be managed. They are very useful in that they provide general guidelines on where to start improving the project management, and in which order, to people who do not know how to do it. However, as we said, the majority of these models have only worked in scenarios within large companies. So, it is necessary to adapt these models and tools to the context of SMSe. A complementary solution based on the implementation of a metamodel is presented in this thesis. This metamodel is created to improve the quality of project management processes through the incorporation of effective practices identified through the analysis and study of relevant models and standards related to project management. Thus, the PROMEP (PROject Management based on Effective Practices) metamodel will allow establishing a project management standard process to be tailored to each enterprise’s project through two steps: Firstly, to obtain a baseline snapshot of project management processes in SMSe a two-phase questionnaire was created to identify both performed and nonperformed practices. The x ProMEP – Metamodelo para la gestión de proyectos proposed questionnaire is based on Capability Maturity Model Integration for Development v1.2. As additional result, it is expected that the application of the questionnaire to the processes will help SMSe to identify those practices which are performed but not documented, which practices need more attention, and which are not implemented due to bad management or unawareness. Secondly, to easily an effectively support the software project management tasks in the PROMEP metamodel, a Process Asset Library (PAL) is designed to support the definition of project management processes and to achieve quantitative project management in SMSe. Both steps have been implemented as a computational tool that supports our metamodel approach. Concretely, the present research proposes the accomplishment of the PROMEP metamodel for those SMSe which develop software products and enable them to plan, supervise and control their software projects, identify risks and take corrective actions, establish and maintain a set of process assets, define quantitative models that predict the process performance, and provide improvement information. So, our study suggests an alternative metamodel to achieve higher performance levels in the SMSe environments. The main objective of this thesis is help to reduce software overruns and delivery time, and increase software quality in these types of organizations.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Las redes son la esencia de comunidades y sociedades humanas; constituyen el entramado en el que nos relacionamos y determinan cómo lo hacemos, cómo se disemina la información o incluso cómo las cosas se llevan a cabo. Pero el protagonismo de las redes va más allá del que adquiere en las redes sociales. Se encuentran en el seno de múltiples estructuras que conocemos, desde las interaciones entre las proteínas dentro de una célula hasta la interconexión de los routers de internet. Las redes sociales están presentes en internet desde sus principios, en el correo electrónico por tomar un ejemplo. Dentro de cada cliente de correo se manejan listas contactos que agregadas constituyen una red social. Sin embargo, ha sido con la aparición de los sitios web de redes sociales cuando este tipo de aplicaciones web han llegado a la conciencia general. Las redes sociales se han situado entre los sitios más populares y con más tráfico de la web. Páginas como Facebook o Twitter manejan cifras asombrosas en cuanto a número de usuarios activos, de tráfico o de tiempo invertido en el sitio. Pero las funcionalidades de red social no están restringidas a las redes sociales orientadas a contactos, aquellas enfocadas a construir tu lista de contactos e interactuar con ellos. Existen otros ejemplos de sitios que aprovechan las redes sociales para aumentar la actividad de los usuarios y su involucración alrededor de algún tipo de contenido. Estos ejemplos van desde una de las redes sociales más antiguas, Flickr, orientada al intercambio de fotografías, hasta Github, la red social de código libre más popular hoy en día. No es una casualidad que la popularidad de estos sitios web venga de la mano de sus funcionalidades de red social. El escenario es más rico aún, ya que los sitios de redes sociales interaccionan entre ellos, compartiendo y exportando listas de contactos, servicios de autenticación y proporcionando un valioso canal para publicitar la actividad de los usuarios en otros sitios web. Esta funcionalidad es reciente y aún les queda un paso hasta que las redes sociales superen su condición de bunkers y lleguen a un estado de verdadera interoperabilidad entre ellas, tal como funcionan hoy en día el correo electrónico o la mensajería instantánea. Este trabajo muestra una tecnología que permite construir sitios web con características de red social distribuída. En primer lugar, se presenta una tecnología para la construcción de un componente intermedio que permite proporcionar cualquier característica de gestión de contenidos al popular marco de desarrollo web modelo-vista-controlador (MVC) Ruby on Rails. Esta técnica constituye una herramienta para desarrolladores que les permita abstraerse de las complejidades de la gestión de contenidos y enfocarse en las particularidades de los propios contenidos. Esta técnica se usará también para proporcionar las características de red social. Se describe una nueva métrica de reusabilidad de código para demostrar la validez del componente intermedio en marcos MVC. En segundo lugar, se analizan las características de los sitios web de redes sociales más populares, con el objetivo de encontrar los patrones comunes que aparecen en ellos. Este análisis servirá como base para definir los requisitos que debe cumplir un marco para construir redes sociales. A continuación se propone una arquitectura de referencia que proporcione este tipo de características. Dicha arquitectura ha sido implementada en un componente, Social Stream, y probada en varias redes sociales, tanto orientadas a contactos como a contenido, en el contexto de una asociación vecinal tanto como en proyectos de investigación financiados por la UE. Ha sido la base de varios proyectos fin de carrera. Además, ha sido publicado como código libre, obteniendo una comunidad creciente y está siendo usado más allá del ámbito de este trabajo. Dicha arquitectura ha permitido la definición de un nuevo modelo de control de acceso social que supera varias limitaciones presentes en los modelos de control de acceso para redes sociales. Más aún, se han analizado casos de estudio de sitios de red social distribuídos, reuniendo un conjunto de caraterísticas que debe cumplir un marco para construir redes sociales distribuídas. Por último, se ha extendido la arquitectura del marco para dar cabida a las características de redes sociales distribuídas. Su implementación ha sido validada en proyectos de investigación financiados por la UE. Abstract Networks are the substance of human communities and societies; they constitute the structural framework on which we relate to each other and determine the way we do it, the way information is diseminated or even the way people get things done. But network prominence goes beyond the importance it acquires in social networks. Networks are found within numerous known structures, from protein interactions inside a cell to router connections on the internet. Social networks are present on the internet since its beginnings, in emails for example. Inside every email client, there are contact lists that added together constitute a social network. However, it has been with the emergence of social network sites (SNS) when these kinds of web applications have reached general awareness. SNS are now among the most popular sites in the web and with the higher traffic. Sites such as Facebook and Twitter hold astonishing figures of active users, traffic and time invested into the sites. Nevertheless, SNS functionalities are not restricted to contact-oriented social networks, those that are focused on building your own list of contacts and interacting with them. There are other examples of sites that leverage social networking to foster user activity and engagement around other types of content. Examples go from early SNS such as Flickr, the photography related networking site, to Github, the most popular social network repository nowadays. It is not an accident that the popularity of these websites comes hand-in-hand with their social network capabilities The scenario is even richer, due to the fact that SNS interact with each other, sharing and exporting contact lists and authentication as well as providing a valuable channel to publize user activity in other sites. These interactions are very recent and they are still finding their way to the point where SNS overcome their condition of data silos to a stage of full interoperability between sites, in the same way email and instant messaging networks work today. This work introduces a technology that allows to rapidly build any kind of distributed social network website. It first introduces a new technique to create middleware that can provide any kind of content management feature to a popular model-view-controller (MVC) web development framework, Ruby on Rails. It provides developers with tools that allow them to abstract from the complexities related with content management and focus on the development of specific content. This same technique is also used to provide the framework with social network features. Additionally, it describes a new metric of code reuse to assert the validity of the kind of middleware that is emerging in MVC frameworks. Secondly, the characteristics of top popular SNS are analysed in order to find the common patterns shown in them. This analysis is the ground for defining the requirements of a framework for building social network websites. Next, a reference architecture for supporting the features found in the analysis is proposed. This architecture has been implemented in a software component, called Social Stream, and tested in several social networks, both contact- and content-oriented, in local neighbourhood associations and EU-founded research projects. It has also been the ground for several Master’s theses. It has been released as a free and open source software that has obtained a growing community and that is now being used beyond the scope of this work. The social architecture has enabled the definition of a new social-based access control model that overcomes some of the limitations currenly present in access control models for social networks. Furthermore, paradigms and case studies in distributed SNS have been analysed, gathering a set of features for distributed social networking. Finally the architecture of the framework has been extended to support distributed SNS capabilities. Its implementation has also been validated in EU-founded research projects.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Hoy en día, el desarrollo tecnológico en el campo de los sistemas inteligentes de transporte (ITS por sus siglas en inglés) ha permitido dotar a los vehículos con diversos sistemas de ayuda a la conducción (ADAS, del inglés advanced driver assistance system), mejorando la experiencia y seguridad de los pasajeros, en especial del conductor. La mayor parte de estos sistemas están pensados para advertir al conductor sobre ciertas situaciones de riesgo, como la salida involuntaria del carril o la proximidad de obstáculos en el camino. No obstante, también podemos encontrar sistemas que van un paso más allá y son capaces de cooperar con el conductor en el control del vehículo o incluso relegarlos de algunas tareas tediosas. Es en este último grupo donde se encuentran los sistemas de control electrónico de estabilidad (ESP - Electronic Stability Program), el antibloqueo de frenos (ABS - Anti-lock Braking System), el control de crucero (CC - Cruise Control) y los más recientes sistemas de aparcamiento asistido. Continuando con esta línea de desarrollo, el paso siguiente consiste en la supresión del conductor humano, desarrollando sistemas que sean capaces de conducir un vehículo de forma autónoma y con un rendimiento superior al del conductor. En este trabajo se presenta, en primer lugar, una arquitectura de control para la automatización de vehículos. Esta se compone de distintos componentes de hardware y software, agrupados de acuerdo a su función principal. El diseño de la arquitectura parte del trabajo previo desarrollado por el Programa AUTOPIA, aunque introduce notables aportaciones en cuanto a la eficiencia, robustez y escalabilidad del sistema. Ahondando un poco más en detalle, debemos resaltar el desarrollo de un algoritmo de localización basado en enjambres de partículas. Este está planteado como un método de filtrado y fusión de la información obtenida a partir de los distintos sensores embarcados en el vehículo, entre los que encontramos un receptor GPS (Global Positioning System), unidades de medición inercial (IMU – Inertial Measurement Unit) e información tomada directamente de los sensores embarcados por el fabricante, como la velocidad de las ruedas y posición del volante. Gracias a este método se ha conseguido resolver el problema de la localización, indispensable para el desarrollo de sistemas de conducción autónoma. Continuando con el trabajo de investigación, se ha estudiado la viabilidad de la aplicación de técnicas de aprendizaje y adaptación al diseño de controladores para el vehículo. Como punto de partida se emplea el método de Q-learning para la generación de un controlador borroso lateral sin ningún tipo de conocimiento previo. Posteriormente se presenta un método de ajuste on-line para la adaptación del control longitudinal ante perturbaciones impredecibles del entorno, como lo son los cambios en la inclinación del camino, fricción de las ruedas o peso de los ocupantes. Para finalizar, se presentan los resultados obtenidos durante un experimento de conducción autónoma en carreteras reales, el cual se llevó a cabo en el mes de Junio de 2012 desde la población de San Lorenzo de El Escorial hasta las instalaciones del Centro de Automática y Robótica (CAR) en Arganda del Rey. El principal objetivo tras esta demostración fue validar el funcionamiento, robustez y capacidad de la arquitectura propuesta para afrontar el problema de la conducción autónoma, bajo condiciones mucho más reales a las que se pueden alcanzar en las instalaciones de prueba. ABSTRACT Nowadays, the technological advances in the Intelligent Transportation Systems (ITS) field have led the development of several driving assistance systems (ADAS). These solutions are designed to improve the experience and security of all the passengers, especially the driver. For most of these systems, the main goal is to warn drivers about unexpected circumstances leading to risk situations such as involuntary lane departure or proximity to other vehicles. However, other ADAS go a step further, being able to cooperate with the driver in the control of the vehicle, or even overriding it on some tasks. Examples of this kind of systems are the anti-lock braking system (ABS), cruise control (CC) and the recently commercialised assisted parking systems. Within this research line, the next step is the development of systems able to replace the human drivers, improving the control and therefore, the safety and reliability of the vehicles. First of all, this dissertation presents a control architecture design for autonomous driving. It is made up of several hardware and software components, grouped according to their main function. The design of this architecture is based on the previous works carried out by the AUTOPIA Program, although notable improvements have been made regarding the efficiency, robustness and scalability of the system. It is also remarkable the work made on the development of a location algorithm for vehicles. The proposal is based on the emulation of the behaviour of biological swarms and its performance is similar to the well-known particle filters. The developed method combines information obtained from different sensors, including GPS, inertial measurement unit (IMU), and data from the original vehicle’s sensors on-board. Through this filtering algorithm the localization problem is properly managed, which is critical for the development of autonomous driving systems. The work deals also with the fuzzy control tuning system, a very time consuming task when done manually. An analysis of learning and adaptation techniques for the development of different controllers has been made. First, the Q-learning –a reinforcement learning method– has been applied to the generation of a lateral fuzzy controller from scratch. Subsequently, the development of an adaptation method for longitudinal control is presented. With this proposal, a final cruise control controller is able to deal with unpredictable environment disturbances, such as road slope, wheel’s friction or even occupants’ weight. As a testbed for the system, an autonomous driving experiment on real roads is presented. This experiment was carried out on June 2012, driving from San Lorenzo de El Escorial up to the Center for Automation and Robotics (CAR) facilities in Arganda del Rey. The main goal of the demonstration was validating the performance, robustness and viability of the proposed architecture to deal with the problem of autonomous driving under more demanding conditions than those achieved on closed test tracks.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

El actual proyecto consiste en la creación de una interfaz gráfica de usuario (GUI) en entorno de MATLAB que realice una representación gráfica de la base de datos de HRTF (Head-Related Transfer Function). La función de transferencia de la cabeza es una herramienta muy útil en el estudio de la capacidad del ser humano para percibir su entorno sonoro, además de la habilidad de éste en la localización de fuentes sonoras en el espacio que le rodea. La HRTF biaural (terminología para referirse al conjunto de HRTF del oído izquierdo y del oído derecho) en sí misma, posee información de especial interés ya que las diferencias entre las HRTF de cada oído, conceden la información que nuestro sistema de audición utiliza en la percepción del campo sonoro. Por ello, la funcionalidad de la interfaz gráfica creada presenta gran provecho dentro del estudio de este campo. Las diferencias interaurales se caracterizan en amplitud y en tiempo, variando en función de la frecuencia. Mediante la transformada inversa de Fourier de la señal HRTF, se obtiene la repuesta al impulso de la cabeza, es decir, la HRIR (Head-Related Impulse Response). La cual, además de tener una gran utilidad en la creación de software o dispositivos de generación de sonido envolvente, se utiliza para obtener las diferencias ITD (Interaural Time Difference) e ILD (Interaural Time Difference), comúnmente denominados “parámetros de localización espacial”. La base de datos de HRTF contiene la información biaural de diferentes puntos de ubicación de la fuente sonora, formando una red de coordenadas esféricas que envuelve la cabeza del sujeto. Dicha red, según las medidas realizadas en la cámara anecoica de la EUITT (Escuela Universitaria de Ingeniería Técnica de Telecomunicación), presenta una precisión en elevación de 10º y en azimut de 5º. Los receptores son dos micrófonos alojados en el maniquí acústico llamado HATS (Hats and Torso Simulator) modelo 4100D de Brüel&Kjaer. Éste posee las características físicas que influyen en la percepción del entorno como son las formas del pabellón auditivo (pinna), de la cabeza, del cuello y del torso humano. Será necesario realizar los cálculos de interpolación para todos aquellos puntos no contenidos en la base de datos HRTF, este proceso es sumamente importante no solo para potenciar la capacidad de la misma sino por su utilidad para la comparación entre otras bases de datos existentes en el estudio de este ámbito. La interfaz gráfica de usuario está concebida para un manejo sencillo, claro y predecible, a la vez que interactivo. Desde el primer boceto del programa se ha tenido clara su filosofía, impuesta por las necesidades de un usuario que busca una herramienta práctica y de manejo intuitivo. Su diseño de una sola ventana reúne tanto los componentes de obtención de datos como los que hacen posible la representación gráfica de las HRTF, las HRIR y los parámetros de localización espacial, ITD e ILD. El usuario podrá ir alternando las representaciones gráficas a la vez que introduce las coordenadas de los puntos que desea visualizar, definidas por phi (elevación) y theta (azimut). Esta faceta de la interfaz es la que le otorga una gran facilidad de acceso y lectura de la información representada en ella. Además, el usuario puede introducir valores incluidos en la base de datos o valores intermedios a estos, de esta manera, se indica a la interfaz la necesidad de realizar la interpolación de los mismos. El método de interpolación escogido es el de la ponderación de la distancia inversa entre puntos. Dependiendo de los valores introducidos por el usuario se realizará una interpolación de dos o cuatro puntos, siendo éstos limítrofes al valor introducido, ya sea de phi o theta. Para añadir versatilidad a la interfaz gráfica de usuario, se ha añadido la opción de generar archivos de salida en forma de imagen de las gráficas representadas, de tal forma que el usuario pueda extraer los datos que le interese para cualquier valor de phi y theta. Se completa el presente proyecto fin de carrera con un trabajo de investigación y estudio comparativo de la función y la aplicación de las bases de datos de HRTF dentro del marco científico y de investigación. Esto ha hecho posible concentrar información relacionada a través de revistas científicas de investigación como la JAES (Journal of the Audio Engineering Society) o la ASA (Acoustical Society of America), además, del IEEE ( Institute of Electrical and Electronics Engineers) o la “Web of knowledge” entre otras. Además de realizar la búsqueda en estas fuentes, se ha optado por vías de información más comunes como Google Académico o el portal de acceso “Ingenio” a los todos los recursos electrónicos contenidos en la base de datos de la universidad. El estudio genera una ampliación en el conocimiento de la labor práctica de las HRTF. La mayoría de los estudios enfocan sus esfuerzos en mejorar la percepción del evento sonoro mediante su simulación en la escucha estéreo o multicanal. A partir de las HRTF, esto es posible mediante el análisis y el cálculo de datos como pueden ser las regresiones, siendo éstas muy útiles en la predicción de una medida basándose en la información de la actual. Otro campo de especial interés es el de la generación de sonido 3D. Mediante la base de datos HRTF es posible la simulación de una señal biaural. Se han diseñado algoritmos que son implementados en dispositivos DSP, de tal manera que por medio de retardos interaurales y de diferencias espectrales es posible llegar a un resultado óptimo de sonido envolvente, sin olvidar la importancia de los efectos de reverberación para conseguir un efecto creíble de sonido envolvente. Debido a la complejidad computacional que esto requiere, gran parte de los estudios coinciden en desarrollar sistemas más eficientes, llegando a objetivos tales como la generación de sonido 3D en tiempo real. ABSTRACT. This project involves the creation of a Graphic User Interface (GUI) in the Matlab environment which creates a graphic representation of the HRTF (Head-Related Transfer Function) database. The head transfer function is a very useful tool in the study of the capacity of human beings to perceive their sound environment, as well as their ability to localise sound sources in the area surrounding them. The binaural HRTF (terminology which refers to the HRTF group of the left and right ear) in itself possesses information of special interest seeing that the differences between the HRTF of each ear admits the information that our system of hearing uses in the perception of each sound field. For this reason, the functionality of the graphic interface created presents great benefits within the study of this field. The interaural differences are characterised in space and in time, varying depending on the frequency. By means of Fourier's transformed inverse of the HRTF signal, the response to the head impulse is obtained, in other words, the HRIR (Head-Related Impulse Response). This, as well as having a great use in the creation of software or surround sound generating devices, is used to obtain ITD differences (Interaural Time Difference) and ILD (Interaural Time Difference), commonly named “spatial localisation parameters”. The HRTF database contains the binaural information of different points of sound source location, forming a network of spherical coordinates which surround the subject's head. This network, according to the measures carried out in the anechoic chamber at the EUITT (School of Telecommunications Engineering) gives a precision in elevation of 10º and in azimuth of 5º. The receivers are two microphones placed on the acoustic mannequin called HATS (Hats and Torso Simulator) Brüel&Kjaer model 4100D. This has the physical characteristics which affect the perception of the surroundings which are the forms of the auricle (pinna), the head, neck and human torso. It will be necessary to make interpolation calculations for all those points which are not contained the HRTF database. This process is extremely important not only to strengthen the database's capacity but also for its usefulness in making comparisons with other databases that exist in the study of this field. The graphic user interface is conceived for a simple, clear and predictable use which is also interactive. Since the first outline of the program, its philosophy has been clear, based on the needs of a user who requires a practical tool with an intuitive use. Its design with only one window unites not only the components which obtain data but also those which make the graphic representation of the HRTFs possible, the hrir and the ITD and ILD spatial location parameters. The user will be able to alternate the graphic representations at the same time as entering the point coordinates that they wish to display, defined by phi (elevation) and theta (azimuth). The facet of the interface is what provides the great ease of access and reading of the information displayed on it. In addition, the user can enter values included in the database or values which are intermediate to these. It is, likewise, indicated to the interface the need to carry out the interpolation of these values. The interpolation method is the deliberation of the inverse distance between points. Depending on the values entered by the user, an interpolation of two or four points will be carried out, with these being adjacent to the entered value, whether that is phi or theta. To add versatility to the graphic user interface, the option of generating output files in the form of an image of the graphics displayed has been added. This is so that the user may extract the information that interests them for any phi and theta value. This final project is completed with a research and comparative study essay on the function and application of HRTF databases within the scientific and research framework. It has been possible to collate related information by means of scientific research magazines such as the JAES (Journal of the Audio Engineering Society), the ASA (Acoustical Society of America) as well as the IEEE (Institute of Electrical and Electronics Engineers) and the “Web of knowledge” amongst others. In addition to carrying out research with these sources, I also opted to use more common sources of information such as Academic Google and the “Ingenio” point of entry to all the electronic resources contained on the university databases. The study generates an expansion in the knowledge of the practical work of the HRTF. The majority of studies focus their efforts on improving the perception of the sound event by means of its simulation in stereo or multichannel listening. With the HRTFs, this is possible by means of analysis and calculation of data as can be the regressions. These are very useful in the prediction of a measure being based on the current information. Another field of special interest is that of the generation of 3D sound. Through HRTF databases it is possible to simulate the binaural signal. Algorithms have been designed which are implemented in DSP devices, in such a way that by means of interaural delays and wavelength differences it is possible to achieve an excellent result of surround sound, without forgetting the importance of the effects of reverberation to achieve a believable effect of surround sound. Due to the computational complexity that this requires, a great many studies agree on the development of more efficient systems which achieve objectives such as the generation of 3D sound in real time.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

En la búsqueda de dispositivos cada vez más eficientes, de larga duración y bajo coste de mantenimiento en el mundo de la iluminación, aparecen los LEDs. Estos pequeños dispositivos van poco a poco sustituyendo a las bombillas tradicionales de incandescencia, tomando un papel cada vez más importante entre las fuentes de iluminación. Las primeras funciones prácticas que tuvieron estos LEDs fueron como indicadores, y sus primeros usos fueron en pantallas de calculadoras, electrodomésticos, etcétera, y más adelante, con el desarrollo de nuevos materiales, se empezaron a utilizar como dispositivos de iluminación. Ha sido en estos últimos años cuando se ha producido un salto cuantitativo gracias a la aparición de los POWER LED (LEDs de potencia) o de alto brillo, que son los que han permitido ampliar el uso de estos dispositivos como fuentes de iluminación en, por ejemplo, hogares, alumbrado público, e incluso llegando a sustituir los faros halógenos de vehículos por iluminación LED en algunos modelos. Es por ello que mientras su potencia lumínica va aumentado, su rango de utilización también lo hace. Para caracterizar estas fuentes lumínicas y otras a las que se les pueden dar diferentes usos, se desarrolla este proyecto mediante el análisis de su espectro. Para ello, además, se hará un análisis del resto de instrumentación necesaria que forma parte del proyecto. Este análisis abarca el estudio del propio espectrómetro tanto a nivel de hardware como de software, que modificaremos según los intereses del proyecto. También se estudiará la fibra óptica y el driver para controlar los dispositivos LEDs de potencia, así como los propios LEDs. Para ello se medirán las características de estos LEDs y se compararán con las facilitadas por el fabricante. ABSTRACT. Searching for more efficient, long lasting an low-maintenance devices in lighting world, LEDs appear. These small devices are gradually replacing traditional incandescent bulbs. LEDs are taking an increasingly important role between the light sources. At the begining they were only used as indicators and their first use were in screens calculators, appliances, etc., and later, with the development of new materials, were progressively used as lighting devices. Nowadays a great development has happened in LED lighting with the apparition of the POWER LED or high bright. Power LEDs are allowed to extend the use of these devices as lighting sources for example for homes, street lighting, and even coming to replace halogen headlights LED lighting in vehicles of some models. That's the reason the more their lighting power increases the more their use increases too. The aim of this project is to characterize these light sources and others that can be given different uses by analyzing its spectrum. Moreover, necessary instruments will also be analysed. This study involves both hardware and software spectrometer analysis itself by modifying its software according to the interests of the project. Furthermore, optical fiber and the driver to control LED power devices will be studied by measuring LEDs characteristics and comparing with those provided by the manufacturer.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

La implantación de la televisión digital en España ha supuesto un conjunto de desafíos técnicos y de orden práctico que se han ido acometiendo en multitud de ámbitos, desde la legislación que normaliza las infraestructuras comunes de telecomunicación hasta los cambios en las instalaciones y receptores donde el usuario final recibe los servicios. Por la complejidad y el carácter interdisciplinar de los conocimientos necesarios el aprendizaje de los titulados dentro del ámbito de la Telecomunicación supone también un reto importante. Este proyecto realiza una primera aproximación a un conjunto de herramientas hardware y software de ayuda a la enseñanza de esta amplia disciplina. El proyecto se ha realizado en torno a Labmu laboratorio multiusuario para prácticas de televisión digital de la empresa Xpertia. Se ha realizado para conocer y documentar sus posibilidades. También se ha documentado la tarjeta moduladora DTA-111 y el software para Windows StreamXpress. Estos sistemas ofrecen muchas posibilidades para la docencia de la televisión digital en todas las áreas desde la codificación fuente hasta la decodificación en el usuario final. En particular para ambos sistemas se han realizado pruebas en radiofrecuencia de emisiones de TDT. También se han establecido algunas ideas para trabajo futuro con estos sistemas. El proyecto se divide en seis capítulos: Capitulo 1: En el primer capítulo titulado Introducción se presenta el proyecto. Capítulo 2: En el segundo capítulo titulado Composición Hardware Labmu se presentan todos los componentes del laboratorio Labmu con la descripción de cada componente y sus características técnicas. Así mismo se presenta el interconexionado y configuración con que se ha trabajado. Capítulo 3: En el tercer capítulo titulado Software Labmu se describe como manual de usuario todos los componentes y posibilidades de software de Labmu. Capítulo 4: En el cuarto capítulo titulado Medidas con Labmu se realiza las medidas de MER, CBER, VBER, C/N y potencia de canal de los canales emitidos en la Comunidad de Madrid, comparando estas medidas con el analizador Promax Prodig-5. Capítulo 5: En el quinto capítulo titulado Tarjeta receptora y software se describe la tarjeta DTA-111 y el software StreamXpress, realizando medidas con el analizador Promax Prodig-5 introduciendo errores a la señal emitida por la tarjeta, y estudiando los niveles límites de visualización correcta. Capítulo 6: En el sexto y último capítulo titulado Conclusiones se presentan las conclusiones del proyecto y un plan de trabajo futuro ABSTRACT. The implantation of Digital Television in Spain (TDT) has implied a number of technical and practical challenges in several scopes. These challenges range from recommendations that standardize common telecommunications infrastructure to the changes in facilities where the end user receives digital services. The complexity and the interdisciplinary nature of skills that graduate Telecommunications students need to learn, is also a major challenge. This project is a first approach of a set of hard ware and software tools to help in the task of teaching this broad range discipline. The project has been carried out on Labmu, a multiuser Digital Television laboratory created by the Xpertia company. Its objectives are to understand and document this range of possibilities. DTA-111 modulator card and software for Windows StreamXpress have also been documented. These systems offer many options for teaching digital television in all areas, from source coding to end user decoding. In particular, both systems were tested on RF emissions in TDT. More over some ideas for future work with these systems have also foreseen. The project is structured in six chapters: Chapter1: This section Introduces the project. Chapter2: Titled “The Composition Hardware Labmu” presents Labmu lab components and provides descriptions for each component and its technical characteristics. It also presents the interconnection and configuration we have been using. Chapter3: Titled “Software Labmu” is a user manual, describing all components and software possibilities Labmu offers. Chapter4: Titled “Measures to Labmu” presents MER, CBER, VBER, C /N and channel power measures provided by Labmu in comparison with Promax Prodig-5 measures for all channels broad casting digital television services in the Community of Madrid. Chapter 5 Titled “Receiver card and software” describes DTA-111 card and software StreamXpress. Also the effects of errors insertion performed by this card are measured with the PromaxProdig-5 meter. Threes hold levels for correct reception are also studied. Chapter6: Entitled Conclusions presents the conclusions of the project and a plan for future work.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Las pruebas de software (Testing) son en la actualidad la técnica más utilizada para la validación y la evaluación de la calidad de un programa. El testing está integrado en todas las metodologías prácticas de desarrollo de software y juega un papel crucial en el éxito de cualquier proyecto de software. Desde las unidades de código más pequeñas a los componentes más complejos, su integración en un sistema de software y su despliegue a producción, todas las piezas de un producto de software deben ser probadas a fondo antes de que el producto de software pueda ser liberado a un entorno de producción. La mayor limitación del testing de software es que continúa siendo un conjunto de tareas manuales, representando una buena parte del coste total de desarrollo. En este escenario, la automatización resulta fundamental para aliviar estos altos costes. La generación automática de casos de pruebas (TCG, del inglés test case generation) es el proceso de generar automáticamente casos de prueba que logren un alto recubrimiento del programa. Entre la gran variedad de enfoques hacia la TCG, esta tesis se centra en un enfoque estructural de caja blanca, y más concretamente en una de las técnicas más utilizadas actualmente, la ejecución simbólica. En ejecución simbólica, el programa bajo pruebas es ejecutado con expresiones simbólicas como argumentos de entrada en lugar de valores concretos. Esta tesis se basa en un marco general para la generación automática de casos de prueba dirigido a programas imperativos orientados a objetos (Java, por ejemplo) y basado en programación lógica con restricciones (CLP, del inglés constraint logic programming). En este marco general, el programa imperativo bajo pruebas es primeramente traducido a un programa CLP equivalente, y luego dicho programa CLP es ejecutado simbólicamente utilizando los mecanismos de evaluación estándar de CLP, extendidos con operaciones especiales para el tratamiento de estructuras de datos dinámicas. Mejorar la escalabilidad y la eficiencia de la ejecución simbólica constituye un reto muy importante. Es bien sabido que la ejecución simbólica resulta impracticable debido al gran número de caminos de ejecución que deben ser explorados y a tamaño de las restricciones que se deben manipular. Además, la generación de casos de prueba mediante ejecución simbólica tiende a producir un número innecesariamente grande de casos de prueba cuando es aplicada a programas de tamaño medio o grande. Las contribuciones de esta tesis pueden ser resumidas como sigue. (1) Se desarrolla un enfoque composicional basado en CLP para la generación de casos de prueba, el cual busca aliviar el problema de la explosión de caminos interprocedimiento analizando de forma separada cada componente (p.ej. método) del programa bajo pruebas, almacenando los resultados y reutilizándolos incrementalmente hasta obtener resultados para el programa completo. También se ha desarrollado un enfoque composicional basado en especialización de programas (evaluación parcial) para la herramienta de ejecución simbólica Symbolic PathFinder (SPF). (2) Se propone una metodología para usar información del consumo de recursos del programa bajo pruebas para guiar la ejecución simbólica hacia aquellas partes del programa que satisfacen una determinada política de recursos, evitando la exploración de aquellas partes del programa que violan dicha política. (3) Se propone una metodología genérica para guiar la ejecución simbólica hacia las partes más interesantes del programa, la cual utiliza abstracciones como generadores de trazas para guiar la ejecución de acuerdo a criterios de selección estructurales. (4) Se propone un nuevo resolutor de restricciones, el cual maneja eficientemente restricciones sobre el uso de la memoria dinámica global (heap) durante ejecución simbólica, el cual mejora considerablemente el rendimiento de la técnica estándar utilizada para este propósito, la \lazy initialization". (5) Todas las técnicas propuestas han sido implementadas en el sistema PET (el enfoque composicional ha sido también implementado en la herramienta SPF). Mediante evaluación experimental se ha confirmado que todas ellas mejoran considerablemente la escalabilidad y eficiencia de la ejecución simbólica y la generación de casos de prueba. ABSTRACT Testing is nowadays the most used technique to validate software and assess its quality. It is integrated into all practical software development methodologies and plays a crucial role towards the success of any software project. From the smallest units of code to the most complex components and their integration into a software system and later deployment; all pieces of a software product must be tested thoroughly before a software product can be released. The main limitation of software testing is that it remains a mostly manual task, representing a large fraction of the total development cost. In this scenario, test automation is paramount to alleviate such high costs. Test case generation (TCG) is the process of automatically generating test inputs that achieve high coverage of the system under test. Among a wide variety of approaches to TCG, this thesis focuses on structural (white-box) TCG, where one of the most successful enabling techniques is symbolic execution. In symbolic execution, the program under test is executed with its input arguments being symbolic expressions rather than concrete values. This thesis relies on a previously developed constraint-based TCG framework for imperative object-oriented programs (e.g., Java), in which the imperative program under test is first translated into an equivalent constraint logic program, and then such translated program is symbolically executed by relying on standard evaluation mechanisms of Constraint Logic Programming (CLP), extended with special treatment for dynamically allocated data structures. Improving the scalability and efficiency of symbolic execution constitutes a major challenge. It is well known that symbolic execution quickly becomes impractical due to the large number of paths that must be explored and the size of the constraints that must be handled. Moreover, symbolic execution-based TCG tends to produce an unnecessarily large number of test cases when applied to medium or large programs. The contributions of this dissertation can be summarized as follows. (1) A compositional approach to CLP-based TCG is developed which overcomes the inter-procedural path explosion by separately analyzing each component (method) in a program under test, stowing the results as method summaries and incrementally reusing them to obtain whole-program results. A similar compositional strategy that relies on program specialization is also developed for the state-of-the-art symbolic execution tool Symbolic PathFinder (SPF). (2) Resource-driven TCG is proposed as a methodology to use resource consumption information to drive symbolic execution towards those parts of the program under test that comply with a user-provided resource policy, avoiding the exploration of those parts of the program that violate such policy. (3) A generic methodology to guide symbolic execution towards the most interesting parts of a program is proposed, which uses abstractions as oracles to steer symbolic execution through those parts of the program under test that interest the programmer/tester most. (4) A new heap-constraint solver is proposed, which efficiently handles heap-related constraints and aliasing of references during symbolic execution and greatly outperforms the state-of-the-art standard technique known as lazy initialization. (5) All techniques above have been implemented in the PET system (and some of them in the SPF tool). Experimental evaluation has confirmed that they considerably help towards a more scalable and efficient symbolic execution and TCG.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

The verification and validation activity plays a fundamental role in improving software quality. Determining which the most effective techniques for carrying out this activity are has been an aspiration of experimental software engineering researchers for years. This paper reports a controlled experiment evaluating the effectiveness of two unit testing techniques (the functional testing technique known as equivalence partitioning (EP) and the control-flow structural testing technique known as branch testing (BT)). This experiment is a literal replication of Juristo et al. (2013).Both experiments serve the purpose of determining whether the effectiveness of BT and EP varies depending on whether or not the faults are visible for the technique (InScope or OutScope, respectively). We have used the materials, design and procedures of the original experiment, but in order to adapt the experiment to the context we have: (1) reduced the number of studied techniques from 3 to 2; (2) assigned subjects to experimental groups by means of stratified randomization to balance the influence of programming experience; (3) localized the experimental materials and (4) adapted the training duration. We ran the replication at the Escuela Politécnica del Ejército Sede Latacunga (ESPEL) as part of a software verification & validation course. The experimental subjects were 23 master?s degree students. EP is more effective than BT at detecting InScope faults. The session/program andgroup variables are found to have significant effects. BT is more effective than EP at detecting OutScope faults. The session/program and group variables have no effect in this case. The results of the replication and the original experiment are similar with respect to testing techniques. There are some inconsistencies with respect to the group factor. They can be explained by small sample effects. The results for the session/program factor are inconsistent for InScope faults.We believe that these differences are due to a combination of the fatigue effect and a technique x program interaction. Although we were able to reproduce the main effects, the changes to the design of the original experiment make it impossible to identify the causes of the discrepancies for sure. We believe that further replications closely resembling the original experiment should be conducted to improve our understanding of the phenomena under study.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

El presente trabajo se propone determinar la distribución de tamaño y número de partículas nanométricas provenientes de motores diésel con equipos embarcados en tráfico extraurbano. Para ello, se utilizaron equipos de medición de última generación en condiciones promedio de conducción en tráfico extraurbano por más de 800 km a lo largo del trayecto Madrid-Badajoz-Madrid mediante un vehículo característico del parque automotor español y se implementaron métodos novedosos y pioneros en el registro de este tipo de emisiones. Todo ello abre el camino para líneas de investigación y desarrollo que contribuirán a entender, dimensionar y cualificar el comportamiento de las partículas, así como su impacto en la calidad de vida de la población. El estudio hace dos grandes aportes al campo. Primero, permite registrar las emisiones en condiciones transitorias propias del tráfico real. Segundo, permite mantener controladas las condiciones de medición y evita la formación aleatoria de partículas provenientes de material volátil, gracias al sistema de adecuación de la muestra de gases de escape incorporado. Como resultado, se obtuvo una muestra abundante y confiable que permitió construir modelos matemáticos para calcular la emisión de partículas nanométricas, ultrafinas, finas y totales sobre las bases volumétrica, espacial y temporal en función de la pendiente del perfil orográfico de la carretera, siempre y cuando esté dentro del intervalo ±5.0%. Estos modelos de cálculo de emisiones reducen tanto los costos de experimentación como la complejidad de los equipos necesarios, y fundamentaron el desarrollo de la primera versión de una aplicación informática que calcula las partículas emitidas por un motor diésel en condiciones de tráfico extraurbano ("Partículas Emitidas por Motores Diésel, PEMDI). ABSTRACT The purpose of this research is to determine the distribution of size and number of nanometric particles that come from diesel engines by means of on-board equipment in extra-urban traffic. In order to do this, cutting-edge measuring equipment was used under average driving conditions in extra-urban traffic for more than 800 km along the Madrid-Badajoz-Madrid route using a typical vehicle from Spain's automotive population and innovative, groundbreaking registering methods for this type of emissions were used. All this paves the way for lines of research and development which should help understand, measure and characterize the behavior of such particles, as well as their impact in the quality of life of the general population. The study makes two important contributions to the field. First, it makes it possible to register emissions under transient conditions, which are characteristic to real traffic. Secondly, it provides a means to keep the measuring conditions under control and prevents the random formation of particles of volatile origin through the built-in adjustment system of the exhaust gas sample. As a result, an abundant and reliable sample was gathered, which enabled the building of mathematical models to estimate the emission of nanometric, ultrafine, fine and total particles on volumetric, spatial and temporal bases as a function of the orographic outline of the road within a ±5.0% range. These emission estimating models lower both the experimentation costs and the required equipment's complexity, and they provided the basis for the development of a first software application version that estimates the particles emitted from diesel engines under extra-urban traffic conditions (Partículas Emitidas por Motores Diésel, PEMDI).

Relevância:

100.00% 100.00%

Publicador:

Resumo:

En este proyecto se han analizado distintas imágenes de fragmentos de rocas de distintas granulometrías correspondientes a una serie de voladuras de una misma cantera. Cada una de las voladuras se componen de 20 imágenes. A posteriori utilizando el programa Split Desktop en su versión 3.1, se delimitaron los fragmentos de roca de los que está compuesta la imagen, obteniéndose posteriormente la curva granulométrica correspondiente a dicha imagen. Una vez se calculan las curvas granulométricas correspondientes a cada imagen, se calcula la curva media de todas ellas, pudiéndose considerar por tanto la curva media de cada voladura. Se han utilizado las distintas soluciones del software, manual, online y automático, para realizar los análisis de dichas imágenes y a posteriori comparar sus resultados. Dichos resultados se muestran a través de una serie de gráficos y tablas que se explican con detalle para la comprensión del estudio. De dichos resultados es posible afirmar que, el tratamiento de imágenes realizado de manera online y automático por Split, desemboca en el mismo resultado, al no haber una diferencia estadística significativa. Por el contrario, el sistema manual es diferente de los otros dos, no pudiéndose afirmar cual es mejor de los dos. El manual depende del operario que trabaje las imágenes y el online de los ajustes realizados y por tanto, ambos tienen ciertas incertidumbres difíciles de solucionar. Abstract In this project, different images of rock fragments of different grain sizes corresponding to a series of blasts from the same quarry have been analyzed. To study each blast, 20 images has been used and studied with the software Split Desktop 3.1. Rock fragments from each image has been delimitated with the software, obtaining a grading curve of each one. Once these curves are calculated, the mean curve of these data set is obtained and can be considered the mean curve of each blast. Different software solutions as manual, online and automatic, has been used for the analysis of these images. Then the results has been compared between them. These results are shown through a series of graphs and tables, that are explained in detail, to enhance the understanding of the study. From these results, it can be said that the image processing with online and automatic options from Split, leads to the same result, after an statistical study. On the contrary, the manual Split mode is different from the others; however is not possible to assert what will be the best. The manual Split mode depends on the operator ability and dedication, although the online mode depends on the software settings, so therefore, both have some uncertainties that are difficult to solve.