17 resultados para Bugs

em Universidad Politécnica de Madrid


Relevância:

10.00% 10.00%

Publicador:

Resumo:

The technique of Abstract Interpretation has allowed the development of very sophisticated global program analyses which are at the same time provably correct and practical. We present in a tutorial fashion a novel program development framework which uses abstract interpretation as a fundamental tool. The framework uses modular, incremental abstract interpretation to obtain information about the program. This information is used to validate programs, to detect bugs with respect to partial specifications written using assertions (in the program itself and/or in system libraries), to generate and simplify run-time tests, and to perform high-level program transformations such as multiple abstract specialization, parallelization, and resource usage control, all in a provably correct way. In the case of validation and debugging, the assertions can refer to a variety of program points such as procedure entry, procedure exit, points within procedures, or global computations. The system can reason with much richer information than, for example, traditional types. This includes data structure shape (including pointer sharing), bounds on data structure sizes, and other operational variable instantiation properties, as well as procedure-level properties such as determinacy, termination, nonfailure, and bounds on resource consumption (time or space cost). CiaoPP, the preprocessor of the Ciao multi-paradigm programming system, which implements the described functionality, will be used to illustrate the fundamental ideas.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

We have designed and implemented a framework that unifies unit testing and run-time verification (as well as static verification and static debugging). A key contribution of our approach is that a unified assertion language is used for all of these tasks. We first propose methods for compiling runtime checks for (parts of) assertions which cannot be verified at compile-time via program transformation. This transformation allows checking preconditions and postconditions, including conditional postconditions, properties at arbitrary program points, and certain computational properties. The implemented transformation includes several optimizations to reduce run-time overhead. We also propose a minimal addition to the assertion language which allows defining unit tests to be run in order to detect possible violations of the (partial) specifications expressed by the assertions. This language can express for example the input data for performing the unit tests or the number of times that the unit tests should be repeated. We have implemented the framework within the Ciao/CiaoPP system and effectively applied it to the verification of ISO-prolog compliance and to the detection of different types of bugs in the Ciao system source code. Several experimental results are presented that ¡Ilústrate different trade-offs among program size, running time, or levéis of verbosity of the messages shown to the user.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

The technique of Abstract Interpretation has allowed the development of very sophisticated global program analyses which are at the same time provably correct and practical. We present in a tutorial fashion a novel program development framework which uses abstract interpretation as a fundamental tool. The framework uses modular, incremental abstract interpretation to obtain information about the program. This information is used to validate programs, to detect bugs with respect to partial specifications written using assertions (in the program itself and/or in system librarles), to genérate and simplify run-time tests, and to perform high-level program transformations such as múltiple abstract specialization, parallelization, and resource usage control, all in a provably correct way. In the case of validation and debugging, the assertions can refer to a variety of program points such as procedure entry, procedure exit, points within procedures, or global computations. The system can reason with much richer information than, for example, traditional types. This includes data structure shape (including pointer sharing), bounds on data structure sizes, and other operational variable instantiation properties, as well as procedure-level properties such as determinacy, termination, non-failure, and bounds on resource consumption (time or space cost). CiaoPP, the preprocessor of the Ciao multi-paradigm programming system, which implements the described functionality, will be used to illustrate the fundamental ideas.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

We present a generic preprocessor for combined static/dynamic validation and debugging of constraint logic programs. Passing programs through the preprocessor prior to execution allows detecting many bugs automatically. This is achieved by performing a repertoire of tests which range from simple syntactic checks to much more advanced checks based on static analysis of the program. Together with the program, the user may provide a series of assertions which trigger further automatic checking of the program. Such assertions are written using the assertion language presented in Chapter 2, which allows expressing a wide variety of properties. These properties extend beyond the predefined set which may be understandable by the available static analyzers and include properties defined by means of user programs. In addition to user-provided assertions, in each particular CLP system assertions may be available for predefined system predicates. Checking of both user-provided assertions and assertions for system predicates is attempted first at compile-time by comparing them with the results of static analysis. This may allow statically proving that the assertions hold (Le., they are validated) or that they are violated (and thus bugs detected). User-provided assertions (or parts of assertions) which cannot be statically proved ñor disproved are optionally translated into run-time tests. The implementation of the preprocessor is generic in that it can be easily customized to different CLP systems and dialects and in that it is designed to allow the integration of additional analyses in a simple way. We also report on two tools which are instances of the generic preprocessor: CiaoPP (for the Ciao Prolog system) and CHIPRE (for the CHIP CLP(FL>) system). The currently existing analyses include types, modes, non-failure, determinacy, and computational cost, and can treat modules separately, performing incremental analysis.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

We describe some of the novel aspects and motivations behind the design and implementation of the Ciao multiparadigm programming system. An important aspect of Ciao is that it provides the programmer with a large number of useful features from different programming paradigms and styles, and that the use of each of these features can be turned on and off at will for each program module. Thus, a given module may be using e.g. higher order functions and constraints, while another module may be using objects, predicates, and concurrency. Furthermore, the language is designed to be extensible in a simple and modular way. Another important aspect of Ciao is its programming environment, which provides a powerful preprocessor (with an associated assertion language) capable of statically finding non-trivial bugs, verifying that programs comply with specifications, and performing many types of program optimizations. Such optimizations produce code that is highly competitive with other dynamic languages or, when the highest levéis of optimization are used, even that of static languages, all while retaining the interactive development environment of a dynamic language. The environment also includes a powerful auto-documenter. The paper provides an informal overview of the language and program development environment. It aims at illustrating the design philosophy rather than at being exhaustive, which would be impossible in the format of a paper, pointing instead to the existing literature on the system.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

We provide an overall description of the Ciao multiparadigm programming system emphasizing some of the novel aspects and motivations behind its design and implementation. An important aspect of Ciao is that, in addition to supporting logic programming (and, in particular, Prolog), it provides the programmer with a large number of useful features from different programming paradigms and styles and that the use of each of these features (including those of Prolog) can be turned on and off at will for each program module. Thus, a given module may be using, e.g., higher order functions and constraints, while another module may be using assignment, predicates, Prolog meta-programming, and concurrency. Furthermore, the language is designed to be extensible in a simple and modular way. Another important aspect of Ciao is its programming environment, which provides a powerful preprocessor (with an associated assertion language) capable of statically finding non-trivial bugs, verifying that programs comply with specifications, and performing many types of optimizations (including automatic parallelization). Such optimizations produce code that is highly competitive with other dynamic languages or, with the (experimental) optimizing compiler, even that of static languages, all while retaining the flexibility and interactive development of a dynamic language. This compilation architecture supports modularity and separate compilation throughout. The environment also includes a powerful autodocumenter and a unit testing framework, both closely integrated with the assertion system. The paper provides an informal overview of the language and program development environment. It aims at illustrating the design philosophy rather than at being exhaustive, which would be impossible in a single journal paper, pointing instead to previous Ciao literature.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

We present in a tutorial fashion CiaoPP, the preprocessor of the Ciao multi-paradigm programming system, which implements a novel program development framework which uses abstract interpretation as a fundamental tool. The framework uses modular, incremental abstract interpretation to obtain information about the program. This information is used to validate programs, to detect bugs with respect to partial specifications written using assertions (in the program itself and/or in system libraries), to generate and simplify run-time tests, and to perform high-level program transformations such as multiple abstract specialization, parallelization, and resource usage control, all in a provably correct way. In the case of validation and debugging, the assertions can refer to a variety of program points such as procedure entry, procedure exit, points within procedures, or global computations. The system can reason with much richer information than, for example, traditional types. This includes data structure shape (including pointer sharing), bounds on data structure sizes, and other operational variable instantiation properties, as well as procedure-level properties such as determinacy, termination, non-failure, and bounds on resource consumption (time or space cost).

Relevância:

10.00% 10.00%

Publicador:

Resumo:

We present a framework for the application of abstract interpretation as an aid during program development, rather than in the more traditional application of program optimization. Program validation and detection of errors is first performed statically by comparing (partial) specifications written in terms of assertions against information obtained from static analysis of the program. The results of this process are expressed in the user assertion language. Assertions (or parts of assertions) which cannot be verified statically are translated into run-time tests. The framework allows the use of assertions to be optional. It also allows using very general properties in assertions, beyond the predefined set understandable by the static analyzer and including properties defined by means of user programs. We also report briefly on an implementation of the framework. The resulting tool generates and checks assertions for Prolog, CLP(R), and CHIP/CLP(fd) programs, and integrates compile-time and run-time checking in a uniform way. The tool allows using properties such as types, modes, non-failure, determinacy, and computational cost, and can treat modules separately, performing incremental analysis. In practice, this modularity allows detecting statically bugs in user programs even if they do not contain any assertions.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

BACKGROUND: Knowledge of pesticide selectivity to natural enemies is necessary for a successful implementation of biological and chemical control methods in integrated pest management (IPM) programs. Diacylhydrazine (DAH)-based ecdysone agonists also known as molting-accelerating compounds (MACs) are considered a selective group of insecticides, and their compatibility with predatory Heteroptera, which are used as biological control agents, is known. However, their molecular mode of action has not been explored in beneficial insects such as Orius laevigatus (Fieber) (Hemiptera: Anthocoridae). RESULTS: In this project in vivo toxicity assays demonstrated that the DAH-based RH-5849, tebufenozide and methoxyfenozide have no toxic effect against O. laevigatus. The ligand-binding domain (LBD) of the ecdysone receptor (EcR) of O. laevigatus was sequenced and a homology protein model was constructed which confirmed a cavity structure with 12 ?-helixes, harboring the natural insect molting hormone 20-hydroxyecdysone. However, docking studies showed that a steric clash occurred for the DAH-based insecticides due to a restricted extent of the ligand-binding cavity of the EcR of O. laevigatus. CONCLUSIONS: The insect toxicity assays demonstrated that MACs are selective for O. laevigatus. The modeling/docking experiments are indications that these pesticides do not bind with the LBD-EcR of O. laevigatus and support that they show no biological effects in the predatory bug. These data help in explaining the compatible use of MACs together with predatory bugs in IPM programs. Keywords: Orius laevigatus, selectivity, diacylhydrazine insecticides, ecdysone receptor, homology modelling, docking studies.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

We have designed and implemented a framework that unifies unit testing and run-time verification (as well as static verification and static debugging). A key contribution of our approach is that a unified assertion language is used for all of these tasks. We first propose methods for compiling runtime checks for (parts of) assertions which cannot be verified at compile-time via program transformation. This transformation allows checking preconditions and postconditions, including conditional postconditions, properties at arbitrary program points, and certain computational properties. The implemented transformation includes several optimizations to reduce run-time overhead. We also propose a minimal addition to the assertion language which allows defining unit tests to be run in order to detect possible violations of the (partial) specifications expressed by the assertions. This language can express for example the input data for performing the unit tests or the number of times that the unit tests should be repeated. We have implemented the framework within the Ciao/CiaoPP system and effectively applied it to the verification of ISO-prolog compliance and to the detection of different types of bugs in the Ciao system source code. Several experimental results are presented that illustrate different trade-offs among program size, running time, or levels of verbosity of the messages shown to the user.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

La nueva legislación en materia fitosanitaria se dirige hacia una Gestión Integrada de Plagas (GIP). Estos programas dan preferencia a aquellos métodos más respetuosos y sostenibles con el medio ambiente, siendo piezas claves en ellos el control biológico, el físico y otros de carácter no químico. Sin embargo, el uso de insecticidas selectivos es a veces necesario para el adecuado manejo de plagas en cultivos hortícolas. Por ello, el objetivo general de este estudio es aportar conocimientos para mejorar el control de plagas en cultivos hortícolas, mediante la integración de tres estrategias de lucha: biológica, física y química. Una parte de este trabajo ha consistido en el estudio de los posibles efectos que mallas tratadas con insecticida (bifentrin) pudieran provocar mediante diferentes ensayos de laboratorio, invernadero y campo, en los enemigos naturales Orius laevigatus (Fieber) (Hemiptera: Anthocoridae) (depredador de trips), Nesidiocoris tenuis (Reuter) (Hemiptera: Miridae) (depredador de mosca blanca y Tuta absoluta (Meirick) (Lepidoptera: Gelechiidae)), y otros agentes de biocontrol comúnmente usados en cultivos hortícolas protegidos. Este tipo de mallas se han empleado con éxito en entomología médica para controlar mosquitos vectores de la malaria, y actualmente se está trabajando en su desarrollo para uso agrícola como método de exclusión, y método directo de control de plagas. En los ensayos realizados en laboratorio, O. laevigatus y N. tenuis no fueron capaces de detectar la presencia de bifentrin en el ensayo de preferencia. Además, no se produjo mortalidad a corto plazo (72 horas) en ambos chinches depredadores. Por el contrario, se registró una elevada mortalidad cuando se expusieron por contacto a la malla tratada durante 72 horas en cajas de dimensiones reducidas (10 cm de diámetro X 3 cm de altura). En ensayos llevados a cabo bajo condiciones más reales de exposición, en un invernadero experimental con jaulas de 25 X 25 X 60 cm de altura, no se produjo ningún efecto en la mortalidad a corto plazo (72 horas) o en los parámetros reproductivos de O. laevigatus y N. tenuis. Finalmente, en ensayos de campo realizados en túneles semi-comerciales (8 m de largo X 6,5 m de ancho X 2,6 m de altura), ni las condiciones ambientales [temperatura, humedad relativa, radiación ultravioleta (UV) y fotosintéticamente activa (PAR)], ni los enemigos naturales, se vieron afectados por la presencia de la malla tratada con bifentrin en el cultivo. Sin embargo, los resultados no fueron concluyentes, debido al bajo establecimiento de los agentes de biocontrol liberados. Por lo tanto, más estudios son necesarios en invernaderos comerciales para confirmar los resultados preliminares de compatibilidad. Además, en este trabajo se han evaluado los efectos letales (mortalidad) y subletales (parámetros reproductivos) de seis modernos insecticidas sobre los chinches depredadores O. laevigatus y N. tenuis, mediante ensayos de laboratorio y persistencia. Los ensayos se realizaron por contacto residual, aplicando los insecticidas a la dosis máxima de campo sobre placas de cristal (laboratorio) o plantas (persistencia). Los productos fitosanitarios se seleccionaron por representar a un grupo de modernos plaguicidas con modos de acción en principio más selectivos para los enemigos naturales que antiguos plaguicidas como organoclorados, oroganofosforados o carbamatos, y por su uso frecuente en cultivos hortícolas donde O. laevigatus y N. tenuis están presentes. Todos ellos están incluidos o en proceso de inclusión en la lista comunitaria de sustancias activas para uso agrícola, Anexo I de la Directiva 91/414/CEE: abamectina y emamectina (avermectinas neurotóxicas, activadoras del canal del cloro), deltametrina (piretroide neurotóxico, modulador del canal del sodio, control positivo), flubendiamida (neurotóxico, modulador del receptor de rianodina), spinosad (naturalito neurotóxico, agonistas/antagonistas del receptor de nicotínico acetilcolina) y spiromesifen (inhibidor de la acetil CoA carboxilasa). El estudio mostró que O. laevigatus fue más susceptible a los insecticidas que N. tenuis. Además, los resultados revelaron que flubendiamida y spiromesifen fueron compatibles con los dos enemigos naturales estudiados, y por tanto se podrían usar en programas de GIP. Por el contrario, los insecticidas abamectina, deltametrina, emamectina y spinosad no fueron selectivos para ninguno de los chinches depredadores. Sin embargo, los estudios de persistencia demostraron que a pesar de que estos insecticidas no proporcionaron selectividad fisiológica, pueden proporcionar selectividad ecológica en algunos casos. Abamectina, deltametrina, emamectina y spinosad podrían ser compatibles con N. tenuis si el enemigo natural es introducido en el cultivo 4 días después de su aplicación. En el caso de O. laevigatus, abamectina, deltametrina y spinosad se clasificaron como persistentes, por lo tanto es necesario completar el estudio con experimentos de semi-campo y campo que determinen si es posible su uso conjunto en programas de GIP. Por otro lado, emamectina podría ser compatible con O. laevigatus si el enemigo natural es introducido en el cultivo 7 días después de su aplicación. Por último, se ha comprobado la selectividad de tres insecticidas aceleradores de la muda (MACs) (metoxifenocida, tebufenocida y RH-5849) sobre O. laevigatus y N. tenuis. Además de realizar estudios para evaluar la toxicidad en laboratorio de los insecticidas por contacto residual e ingestión (principal modo de acción de los MAC´s), se extrajo RNA de los insectos y con el cDNA obtenido se secuenció y clonó el dominio de unión al ligando (LBD) del receptor de ecdisona correspondiente a O. laevigatus (OlEcR-LBD) y N. tenuis (NtEcR-LBD). Posteriormente, se obtuvo la configuración en tres dimensiones del LBD y se estudió el acoplamiento de las moléculas de los tres insecticidas en la cavidad que forman las 12 α-hélices que constituyen el EcR-LBD. En el caso de N. tenuis se debe mencionar que no fue posible la obtención de la secuencia completa del LBD. Sin embargo, se obtuvo una secuencia parcial (hélice 6-hélice 11), que mostró una alta conservación de aminoácidos con respecto a la obtenida en O. laevigatus. Los ensayos de toxicidad mostraron que metoxifenocida, tebufenocida y RH-5849 no produjeron ningún efecto nocivo en ambos depredadores. Además, los estudios de modelado por homología y acoplamiento molecular llevados a cabo con O. laevigatus, también indicaron que los MACs no produjeron ningún efecto deletéreo en este enemigo natural. Por lo tanto, estos compuestos pueden ser aplicados de manera segura en programas de GIP en los cuales O. laevigatus y N. tenuis estén presentes. ABSTRACT The new pesticide legislation on pest control is aimed at integrated pest management (IPM). These programs are based on the most environmentally sustainable approaches, where biological, physical control and other non-chemical methods are the cornerstone. However, selective pesticides are often required for pest management on horticultural crops. Therefore, the main goal of this study is to provide knowledge to improve pest control on horticultural crops through the integration of three strategies: biological, physical and chemical. Firstly, the effects of insecticide treated nets (bifenthrin) were evaluated in different laboratory, greenhouse and field experiments on the natural enemies Orius laevigatus (Fieber) (Hemiptera: Anthocoridae) (predator of thrips), Nesidiocoris tenuis (Reuter) (Hemiptera: Miridae) (predator of whiteflies and Tuta absoluta (Meirick) (Lepidoptera: Gelechiidae)), and other biocontrol agents commonly used on protected horticultural crops. These types of nets have been successfully used in medical entomology to control mosquito malaria vectors, and work is currently being done on their use as exclusion barriers and as a direct method of pest control in agriculture. In experiments made under laboratory conditions, O. laevigatus and N. tenuis were not able to detect the presence of bifenthrin in a dual-choice test. Furthermore, no shortterm mortality (72 hours) was recorded on both predatory bugs. In contrast, a high mortality rate was found when they were exposed by contact to the bifenthrin-treated net for 72 hours in small cages (10 cm diameter X 3 cm high). In assays carried out under more realistic conditions of exposure, in an experimental greenhouse with cages of 25 X 25 X 60 cm high, short-term mortality (72 hours) and reproductive parameters were not affected. Lastly, in field experiments carried out in semi-commercial tunnels (8 m long X 6.5 m width X 2.6 m high), neither environmental conditions [temperature, relative humidity, ultraviolet (UV) and photosynthetically active radiation (PAR)] nor natural enemies were affected by the presence of the bifenthrin-treated net on the crop. However, results were not conclusive, mainly due to a low settlement of the released biocontrol agents, and further studies are needed in commercial greenhouses to confirm our preliminary results of compatibility. Secondly, the lethal (mortality) and sublethal effects (reproductive parameters) of six modern pesticides on the predatory bugs O. laevigatus and N. tenuis has been evaluated through laboratory and persistence experiments. Trials were carried out by residual contact, applying the insecticides to the maximum field recommended concentration on glass plates (laboratory) or plants (persistence). Insecticides were chosen as representatives of modern pesticides with a more selective mode of action on natural enemies than organochlorine, organophosphorus and carbamate insecticides. Moreover, they were also chosen because of their frequent use on horticultural crops where O. laevigatus and N. tenuis are present. All of them have been included or have been requested for inclusion in the community list of active substances on the agricultural market, Annex I of the European Directive 91/414/EEC: abamectin and emamectin (neurotoxic avermectins, chloride channel activators), deltamethrin (neutotoxic pyrethroid, sodium channel modulator, positive commercial standard), flubendiamide (neurotoxic, rianodine receptor modulator), spinosad (neurotoxic naturalyte, nicotinic acetylcholine receptor allosteric activator) and spiromesifen (inhibitors of acetyl CoA carboxylase). The study showed that O. laevigatus was more susceptible to all the studied pesticides than N. tenuis. In addition, the research results indicated no impact of flubendiamide and spiromesifen on the two natural enemies studied under laboratory conditions. Consequently, both pesticides are candidates to be included in IPM programmes where these biocontrol agents are present. On the other hand, abamectin, deltamethrin, emamectin and spinosad were not selective for both predatory bugs in laboratory experiments. However, persistence test demonstrated that in spite of the lack of physiological selectivity, these pesticides can provide ecological selectivity in some cases. Abamectin, deltamethrin, emamectin and spinosad could be compatible with N. tenuis if the mirid bug is released 4 days after the insecticide treatment on the crop. With regard to O. laevigatus, abamectin, deltamethrin and spinosad were classified as persistent in our assays, thus the study should be completed with semi-field and field experiments in order to ascertain their possible joint use in IPM programs. In contrast, emamectin could be compatible with O. laevigatus if the pirate bug is released 7 days after the insecticide treatment on the crop. Finally, the selectivity of three moulting accelerating compounds (MACs) (methoxyfenozide, tebufenozide and RH-5849) has also been evaluated on O. laevigatus and N. tenuis. In addition to laboratory experiments to evaluate the toxicity of the insecticides by residual contact and ingestion, molecular approaches were used as well. RNA of both insects was isolated, cDNA was subsequently synthesized and the complete sequence of the ligand binding domain (LBD) of the ecdysone receptor of O. laevigatus (OlEcR-LBD) and N. tenuis (NtEcR-LBD) were determined. Afterwards, the three dimensional structure of LBD was constructed. Finally, the docking of the insecticide molecules in the cavity delineated by the 12 α-helix that composed the EcRLBD was performed. In the case of N. tenuis, it should be noted that in spite of intensive efforts, we did not manage to complete the sequence for the LBD.However, a partial sequence of the LBD was obtained (helix 6-helix 11), and a strong conservation between the amino acids of N. tenuis and O. laevigatus was observed. Results showed no biological activity of methoxyfenozide, tebufenozide and RH-5849, on both predatory bugs. Moreover, modeling of the OlEcR-LBD and docking experiments also suggested that MACs were devoid of any deleterious effect on O. laevigatus. Therefore, our results indicate that these compounds could be safely applied in IPM programs in which O. laevigatus and N. tenuis are present.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Antecedentes Europa vive una situación insostenible. Desde el 2008 se han reducido los recursos de los gobiernos a raíz de la crisis económica. El continente Europeo envejece con ritmo constante al punto que se prevé que en 2050 habrá sólo dos trabajadores por jubilado [54]. A esta situación se le añade el aumento de la incidencia de las enfermedades crónicas, relacionadas con el envejecimiento, cuyo coste puede alcanzar el 7% del PIB de un país [51]. Es necesario un cambio de paradigma. Una nueva manera de cuidar de la salud de las personas: sustentable, eficaz y preventiva más que curativa. Algunos estudios abogan por el cuidado personalizado de la salud (pHealth). En este modelo las prácticas médicas son adaptadas e individualizadas al paciente, desde la detección de los factores de riesgo hasta la personalización de los tratamientos basada en la respuesta del individuo [81]. El cuidado personalizado de la salud está asociado a menudo al uso de las tecnologías de la información y comunicación (TICs) que, con su desarrollo exponencial, ofrecen oportunidades interesantes para la mejora de la salud. El cambio de paradigma hacia el pHealth está lentamente ocurriendo, tanto en el ámbito de la investigación como en la industria, pero todavía no de manera significativa. Existen todavía muchas barreras relacionadas a la economía, a la política y la cultura. También existen barreras puramente tecnológicas, como la falta de sistemas de información interoperables [199]. A pesar de que los aspectos de interoperabilidad están evolucionando, todavía hace falta un diseño de referencia especialmente direccionado a la implementación y el despliegue en gran escala de sistemas basados en pHealth. La presente Tesis representa un intento de organizar la disciplina de la aplicación de las TICs al cuidado personalizado de la salud en un modelo de referencia, que permita la creación de plataformas de desarrollo de software para simplificar tareas comunes de desarrollo en este dominio. Preguntas de investigación RQ1 >Es posible definir un modelo, basado en técnicas de ingeniería del software, que represente el dominio del cuidado personalizado de la salud de una forma abstracta y representativa? RQ2 >Es posible construir una plataforma de desarrollo basada en este modelo? RQ3 >Esta plataforma ayuda a los desarrolladores a crear sistemas pHealth complejos e integrados? Métodos Para la descripción del modelo se adoptó el estándar ISO/IEC/IEEE 42010por ser lo suficientemente general y abstracto para el amplio enfoque de esta tesis [25]. El modelo está definido en varias partes: un modelo conceptual, expresado a través de mapas conceptuales que representan las partes interesadas (stakeholders), los artefactos y la información compartida; y escenarios y casos de uso para la descripción de sus funcionalidades. El modelo fue desarrollado de acuerdo a la información obtenida del análisis de la literatura, incluyendo 7 informes industriales y científicos, 9 estándares, 10 artículos en conferencias, 37 artículos en revistas, 25 páginas web y 5 libros. Basándose en el modelo se definieron los requisitos para la creación de la plataforma de desarrollo, enriquecidos por otros requisitos recolectados a través de una encuesta realizada a 11 ingenieros con experiencia en la rama. Para el desarrollo de la plataforma, se adoptó la metodología de integración continua [74] que permitió ejecutar tests automáticos en un servidor y también desplegar aplicaciones en una página web. En cuanto a la metodología utilizada para la validación se adoptó un marco para la formulación de teorías en la ingeniería del software [181]. Esto requiere el desarrollo de modelos y proposiciones que han de ser validados dentro de un ámbito de investigación definido, y que sirvan para guiar al investigador en la búsqueda de la evidencia necesaria para justificarla. La validación del modelo fue desarrollada mediante una encuesta online en tres rondas con un número creciente de invitados. El cuestionario fue enviado a 134 contactos y distribuido en algunos canales públicos como listas de correo y redes sociales. El objetivo era evaluar la legibilidad del modelo, su nivel de cobertura del dominio y su potencial utilidad en el diseño de sistemas derivados. El cuestionario incluía preguntas cuantitativas de tipo Likert y campos para recolección de comentarios. La plataforma de desarrollo fue validada en dos etapas. En la primera etapa se utilizó la plataforma en un experimento a pequeña escala, que consistió en una sesión de entrenamiento de 12 horas en la que 4 desarrolladores tuvieron que desarrollar algunos casos de uso y reunirse en un grupo focal para discutir su uso. La segunda etapa se realizó durante los tests de un proyecto en gran escala llamado HeartCycle [160]. En este proyecto un equipo de diseñadores y programadores desarrollaron tres aplicaciones en el campo de las enfermedades cardio-vasculares. Una de estas aplicaciones fue testeada en un ensayo clínico con pacientes reales. Al analizar el proyecto, el equipo de desarrollo se reunió en un grupo focal para identificar las ventajas y desventajas de la plataforma y su utilidad. Resultados Por lo que concierne el modelo que describe el dominio del pHealth, la parte conceptual incluye una descripción de los roles principales y las preocupaciones de los participantes, un modelo de los artefactos TIC que se usan comúnmente y un modelo para representar los datos típicos que son necesarios formalizar e intercambiar entre sistemas basados en pHealth. El modelo funcional incluye un conjunto de 18 escenarios, repartidos en: punto de vista de la persona asistida, punto de vista del cuidador, punto de vista del desarrollador, punto de vista de los proveedores de tecnologías y punto de vista de las autoridades; y un conjunto de 52 casos de uso repartidos en 6 categorías: actividades de la persona asistida, reacciones del sistema, actividades del cuidador, \engagement" del usuario, actividades del desarrollador y actividades de despliegue. Como resultado del cuestionario de validación del modelo, un total de 65 personas revisó el modelo proporcionando su nivel de acuerdo con las dimensiones evaluadas y un total de 248 comentarios sobre cómo mejorar el modelo. Los conocimientos de los participantes variaban desde la ingeniería del software (70%) hasta las especialidades médicas (15%), con declarado interés en eHealth (24%), mHealth (16%), Ambient Assisted Living (21%), medicina personalizada (5%), sistemas basados en pHealth (15%), informática médica (10%) e ingeniería biomédica (8%) con una media de 7.25_4.99 años de experiencia en estas áreas. Los resultados de la encuesta muestran que los expertos contactados consideran el modelo fácil de leer (media de 1.89_0.79 siendo 1 el valor más favorable y 5 el peor), suficientemente abstracto (1.99_0.88) y formal (2.13_0.77), con una cobertura suficiente del dominio (2.26_0.95), útil para describir el dominio (2.02_0.7) y para generar sistemas más específicos (2_0.75). Los expertos también reportan un interés parcial en utilizar el modelo en su trabajo (2.48_0.91). Gracias a sus comentarios, el modelo fue mejorado y enriquecido con conceptos que faltaban, aunque no se pudo demonstrar su mejora en las dimensiones evaluadas, dada la composición diferente de personas en las tres rondas de evaluación. Desde el modelo, se generó una plataforma de desarrollo llamada \pHealth Patient Platform (pHPP)". La plataforma desarrollada incluye librerías, herramientas de programación y desarrollo, un tutorial y una aplicación de ejemplo. Se definieron cuatro módulos principales de la arquitectura: el Data Collection Engine, que permite abstraer las fuentes de datos como sensores o servicios externos, mapeando los datos a bases de datos u ontologías, y permitiendo interacción basada en eventos; el GUI Engine, que abstrae la interfaz de usuario en un modelo de interacción basado en mensajes; y el Rule Engine, que proporciona a los desarrolladores un medio simple para programar la lógica de la aplicación en forma de reglas \if-then". Después de que la plataforma pHPP fue utilizada durante 5 años en el proyecto HeartCycle, 5 desarrolladores fueron reunidos en un grupo de discusión para analizar y evaluar la plataforma. De estas evaluaciones se concluye que la plataforma fue diseñada para encajar las necesidades de los ingenieros que trabajan en la rama, permitiendo la separación de problemas entre las distintas especialidades, y simplificando algunas tareas de desarrollo como el manejo de datos y la interacción asíncrona. A pesar de ello, se encontraron algunos defectos a causa de la inmadurez de algunas tecnologías empleadas, y la ausencia de algunas herramientas específicas para el dominio como el procesado de datos o algunos protocolos de comunicación relacionados con la salud. Dentro del proyecto HeartCycle la plataforma fue utilizada para el desarrollo de la aplicación \Guided Exercise", un sistema TIC para la rehabilitación de pacientes que han sufrido un infarto del miocardio. El sistema fue testeado en un ensayo clínico randomizado en el cual a 55 pacientes se les dio el sistema para su uso por 21 semanas. De los resultados técnicos del ensayo se puede concluir que, a pesar de algunos errores menores prontamente corregidos durante el estudio, la plataforma es estable y fiable. Conclusiones La investigación llevada a cabo en esta Tesis y los resultados obtenidos proporcionan las respuestas a las tres preguntas de investigación que motivaron este trabajo: RQ1 Se ha desarrollado un modelo para representar el dominio de los sistemas personalizados de salud. La evaluación hecha por los expertos de la rama concluye que el modelo representa el dominio con precisión y con un balance apropiado entre abstracción y detalle. RQ2 Se ha desarrollado, con éxito, una plataforma de desarrollo basada en el modelo. RQ3 Se ha demostrado que la plataforma es capaz de ayudar a los desarrolladores en la creación de software pHealth complejos. Las ventajas de la plataforma han sido demostradas en el ámbito de un proyecto de gran escala, aunque el enfoque genérico adoptado indica que la plataforma podría ofrecer beneficios también en otros contextos. Los resultados de estas evaluaciones ofrecen indicios de que, ambos, el modelo y la plataforma serán buenos candidatos para poderse convertir en una referencia para futuros desarrollos de sistemas pHealth. ABSTRACT Background Europe is living in an unsustainable situation. The economic crisis has been reducing governments' economic resources since 2008 and threatening social and health systems, while the proportion of older people in the European population continues to increase so that it is foreseen that in 2050 there will be only two workers per retiree [54]. To this situation it should be added the rise, strongly related to age, of chronic diseases the burden of which has been estimated to be up to the 7% of a country's gross domestic product [51]. There is a need for a paradigm shift, the need for a new way of caring for people's health, shifting the focus from curing conditions that have arisen to a sustainable and effective approach with the emphasis on prevention. Some advocate the adoption of personalised health care (pHealth), a model where medical practices are tailored to the patient's unique life, from the detection of risk factors to the customization of treatments based on each individual's response [81]. Personalised health is often associated to the use of Information and Communications Technology (ICT), that, with its exponential development, offers interesting opportunities for improving healthcare. The shift towards pHealth is slowly taking place, both in research and in industry, but the change is not significant yet. Many barriers still exist related to economy, politics and culture, while others are purely technological, like the lack of interoperable information systems [199]. Though interoperability aspects are evolving, there is still the need of a reference design, especially tackling implementation and large scale deployment of pHealth systems. This thesis contributes to organizing the subject of ICT systems for personalised health into a reference model that allows for the creation of software development platforms to ease common development issues in the domain. Research questions RQ1 Is it possible to define a model, based on software engineering techniques, for representing the personalised health domain in an abstract and representative way? RQ2 Is it possible to build a development platform based on this model? RQ3 Does the development platform help developers create complex integrated pHealth systems? Methods As method for describing the model, the ISO/IEC/IEEE 42010 framework [25] is adopted for its generality and high level of abstraction. The model is specified in different parts: a conceptual model, which makes use of concept maps, for representing stakeholders, artefacts and shared information, and in scenarios and use cases for the representation of the functionalities of pHealth systems. The model was derived from literature analysis, including 7 industrial and scientific reports, 9 electronic standards, 10 conference proceedings papers, 37 journal papers, 25 websites and 5 books. Based on the reference model, requirements were drawn for building the development platform enriched with a set of requirements gathered in a survey run among 11 experienced engineers. For developing the platform, the continuous integration methodology [74] was adopted which allowed to perform automatic tests on a server and also to deploy packaged releases on a web site. As a validation methodology, a theory building framework for SW engineering was adopted from [181]. The framework, chosen as a guide to find evidence for justifying the research questions, imposed the creation of theories based on models and propositions to be validated within a scope. The validation of the model was conducted as an on-line survey in three validation rounds, encompassing a growing number of participants. The survey was submitted to 134 experts of the field and on some public channels like relevant mailing lists and social networks. Its objective was to assess the model's readability, its level of coverage of the domain and its potential usefulness in the design of actual, derived systems. The questionnaires included quantitative Likert scale questions and free text inputs for comments. The development platform was validated in two scopes. As a small-scale experiment, the platform was used in a 12 hours training session where 4 developers had to perform an exercise consisting in developing a set of typical pHealth use cases At the end of the session, a focus group was held to identify benefits and drawbacks of the platform. The second validation was held as a test-case study in a large scale research project called HeartCycle the aim of which was to develop a closed-loop disease management system for heart failure and coronary heart disease patients [160]. During this project three applications were developed by a team of programmers and designers. One of these applications was tested in a clinical trial with actual patients. At the end of the project, the team was interviewed in a focus group to assess the role the platform had within the project. Results For what regards the model that describes the pHealth domain, its conceptual part includes a description of the main roles and concerns of pHealth stakeholders, a model of the ICT artefacts that are commonly adopted and a model representing the typical data that need to be formalized among pHealth systems. The functional model includes a set of 18 scenarios, divided into assisted person's view, caregiver's view, developer's view, technology and services providers' view and authority's view, and a set of 52 Use Cases grouped in 6 categories: assisted person's activities, system reactions, caregiver's activities, user engagement, developer's activities and deployer's activities. For what concerns the validation of the model, a total of 65 people participated in the online survey providing their level of agreement in all the assessed dimensions and a total of 248 comments on how to improve and complete the model. Participants' background spanned from engineering and software development (70%) to medical specialities (15%), with declared interest in the fields of eHealth (24%), mHealth (16%), Ambient Assisted Living (21%), Personalized Medicine (5%), Personal Health Systems (15%), Medical Informatics (10%) and Biomedical Engineering (8%) with an average of 7.25_4.99 years of experience in these fields. From the analysis of the answers it is possible to observe that the contacted experts considered the model easily readable (average of 1.89_0.79 being 1 the most favourable scoring and 5 the worst), sufficiently abstract (1.99_0.88) and formal (2.13_0.77) for its purpose, with a sufficient coverage of the domain (2.26_0.95), useful for describing the domain (2.02_0.7) and for generating more specific systems (2_0.75) and they reported a partial interest in using the model in their job (2.48_0.91). Thanks to their comments, the model was improved and enriched with concepts that were missing at the beginning, nonetheless it was not possible to prove an improvement among the iterations, due to the diversity of the participants in the three rounds. From the model, a development platform for the pHealth domain was generated called pHealth Patient Platform (pHPP). The platform includes a set of libraries, programming and deployment tools, a tutorial and a sample application. The main four modules of the architecture are: the Data Collection Engine, which allows abstracting sources of information like sensors or external services, mapping data to databases and ontologies, and allowing event-based interaction and filtering, the GUI Engine, which abstracts the user interface in a message-like interaction model, the Workow Engine, which allows programming the application's user interaction ows with graphical workows, and the Rule Engine, which gives developers a simple means for programming the application's logic in the form of \if-then" rules. After the 5 years experience of HeartCycle, partially programmed with pHPP, 5 developers were joined in a focus group to discuss the advantages and drawbacks of the platform. The view that emerged from the training course and the focus group was that the platform is well-suited to the needs of the engineers working in the field, it allowed the separation of concerns among the different specialities and it simplified some common development tasks like data management and asynchronous interaction. Nevertheless, some deficiencies were pointed out in terms of a lack of maturity of some technological choices, and for the absence of some domain-specific tools, e.g. for data processing or for health-related communication protocols. Within HeartCycle, the platform was used to develop part of the Guided Exercise system, a composition of ICT tools for the physical rehabilitation of patients who suffered from myocardial infarction. The system developed using the platform was tested in a randomized controlled clinical trial, in which 55 patients used the system for 21 weeks. The technical results of this trial showed that the system was stable and reliable. Some minor bugs were detected, but these were promptly corrected using the platform. This shows that the platform, as well as facilitating the development task, can be successfully used to produce reliable software. Conclusions The research work carried out in developing this thesis provides responses to the three three research questions that were the motivation for the work. RQ1 A model was developed representing the domain of personalised health systems, and the assessment of experts in the field was that it represents the domain accurately, with an appropriate balance between abstraction and detail. RQ2 A development platform based on the model was successfully developed. RQ3 The platform has been shown to assist developers create complex pHealth software. This was demonstrated within the scope of one large-scale project, but the generic approach adopted provides indications that it would offer benefits more widely. The results of these evaluations provide indications that both the model and the platform are good candidates for being a reference for future pHealth developments.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Se presentan las mejoras introducidas en un código de transporte de radiación acoplada a la hidrodinámica llamado ARWEN para el estudio de sistemas en el rango de física de alta densidad de energía (High Energy Density Physics). Los desarrollos introducidos se basan en las siguientes áreas: ít>,~ Ecuaciones de estado: se desarrolla una nueva metodología mediante la cual es posible ajustar los resultados de un modelo simple de ecuaciones de estado como QEOS a datos experimentales y resultados de AIMD. Esta metodología tiene carácter general para poder ser aplicada en gran cantidad de materuales de interés y amplia la flexibilidad de ajuste de los métodos de los que ha partido como base este trabajo. En segundo lugar, se ha desarrollado una librería para la gestión de tablas de datos de ecuaciones de estado que también incluye la gestión de tablas con datos de opacidades y de ionización. Esta nueva librería extiende las capacidades de la anterior al tener llamadas más específicas que aceleran los cálculos, y posibilidad de uso de varias tablas a la vez. Solver de difusión: se ha desarrollado un nuevo paquete para resolver la ecuación de difusión que se aplicará a la conducción de calor dentro del plasma. El método anterior no podía ser ejecutado en paralelo y producía resultados dependientes de la resolución de la malla, mientras que este método es paralelizable y además obtiene una solución con mejor convergencia, lo que supone una solución que no depende del refinamiento del mallado. Revisión del paquete de radiación: en primer lugar se ha realizado una revisión de la implementación del modelo de radiación descubriendo varios errores que han sido depurados. También se ha incluido la nueva librería de gestión de tablas de opacidades que permiten la obtención de las propiedades ópticas del plasma en multigrupos de energía. Por otra parte se ha extendido el cálculo de los coeficientes de transporte al esquema multimaterial que ha introducido David Portillo García en el paquete hidrodinámico del código de simulación. Por último se ha revisado el esquema de resolución del transporte y se ha modificado para hacerlo paralelizable. • Se ha implementado un paquete de trazado de rayos para deposición láser que extiende la utilidad del anterior al ser en 3D y poder utilizar entonces diferentes configuraciones. • Una vez realizadas todas estas tareas se ha aplicado el código ARWEN al estudio de la astrofísica de laboratorio simulando los experimentos llevados a cabo en la instalación PALS por Chantal Stehlé acerca de ondas de choque radiativas. Se han comparado los resultados experimentales frente a las predicciones del código ARWEN obteniéndose una gran concordancia en la velocidad de la onda de choque generada y en las dimensiones del precursor. El código de simulación sobre el que se ha trabajado, junto con los desarrollos aportados por otros investigadores durante la realización de esta tesis, ha permitido participar en colaboraciones con laboratorios de Francia o Japón y se han producido resultados científicos publicados basados en el trabajo descrito en esta tesis. ABSTRACT Improvements in radiation hydrodynamic code ARWEN for the study of systems in the range of physics high energy density (High Energy Density Physics) are presented. The developments introduced are based on the following áreas: • Equations of state: a new methodology was developed to adjust the results of a simple Equation of State model like QEOS to experimental data and results of AIMD. This methodology can be applied to a large amount of materials and it increases the flexibility and range of the previous methods used as basis for this work. Also a new computer library has been developed to manage data tables of thermodynamic properties as well as includes the management of opacity and ionization data tables. This new library extends the capabilities of the previous one with more specific routines, and the possibility of using múltiple tables for several materials. • Diffusion solver: a new package has been developed to solve the diffusion equation applied to the heat conduction of the plasma. The previous method is not parallelizable and it produced mesh dependent results, while this new package can be executed in parallel and achieves a more converged solution that does not depend on the refinement of the mesh. • Radiation package: the check of the radiation model rose several bugs in the implementation that had been removed. The new computer library for EOS managing includes capabilities to store opacity tables for multigroups of energy. Moreover the transport coefficients calculations have been extended for the new multimaterial hydrodynamic package developed by David Portillo García. Also the solving methodology for the transport equation has been modified to make the code run in parallel. • A new ray tracing package has been introduced to extend the previous one to 3D. Once all these tasks has been implemented, the ARWEN code has been applied to study laboratory astrophysics systems. Simulations have been done in order to reproduce the results of the experiments carried out in PALS facility by Chantal Stehlé in radiative shock production. Experimental results are in cióse agreement to the ARWEN estimations of the speed of the shock wave and the length of the precursor. The simulation code used in this thesis, including the work done in ARWEN by other colleagues at the time of this research, allowed the collaboration with other research institution in France and Japan and some of the results presented in this thesis have been published in scientific journals.

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:

Este documento presenta las mejoras y las extensiones introducidas en la herramienta de visualización del modelo predictivo del comportamiento del estudiante o Student Behavior Predictor Viewer (SBPV), implementada en un trabajo anterior. El modelo predictivo del comportamiento del estudiante es parte de un sistema inteligente de tutoría, y se construye a partir de los registros de actividad de los estudiantes en un laboratorio virtual 3D, como el Laboratorio Virtual de Biotecnología Agroforestal, implementado en un trabajo anterior, y cuyos registros de actividad de los estudiantes se han utilizado para validar este trabajo fin de grado. El SBPV es una herramienta para visualizar una representación gráfica 2D del grafo extendido asociado con cualquiera de los clusters del modelo predictivo del estudiante. Además de la visualización del grafo extendido, el SBPV controla la navegación a través del grafo por medio del navegador web. Más concretamente, el SBPV permite al usuario moverse a través del grafo, ampliar o reducir el zoom del gráfico o buscar un determinado estado. Además, el SBPV también permite al usuario modificar el diseño predeterminado del grafo en la pantalla al cambiar la posición de los estados con el ratón. Como parte de este trabajo fin de grado, se han corregido errores existentes en la versión anterior y se han introducido una serie de mejoras en el rendimiento y la usabilidad. En este sentido, se han implementado nuevas funcionalidades, tales como la visualización del modelo de comportamiento de cada estudiante individualmente o la posibilidad de elegir el método de clustering para crear el modelo predictivo del estudiante; así como ha sido necesario rediseñar la interfaz de usuario cambiando el tipo de estructuras gráficas con que se muestran los elementos del modelo y mejorando la visualización del grafo al interaccionar el usuario con él. Todas estas mejoras se explican detenidamente en el presente documento.---ABSTRACT---This document presents the improvements and extensions made to the visualization tool Student Behavior Predictor Viewer (SBPV), implemented in a previous job. The student behavior predictive model is part of an intelligent tutoring system, and is built from the records of students activity in a 3D virtual laboratory, like the “Virtual Laboratory of Agroforestry Biotechnology” implemented in a previous work, and whose records of students activity have been used to validate this final degree work. The SBPV is a tool for visualizing a 2D graphical representation of the extended graph associated with any of the clusters of the student predictive model. Apart from visualizing the extended graph, the SBPV supports the navigation across the graph by means of desktop devices. More precisely, the SBPV allows user to move through the graph, to zoom in/out the graphic or to locate a given state. In addition, the SBPV also allows user to modify the default layout of the graph on the screen by changing the position of the states by means of the mouse. As part of this work, some bugs of the previous version have been fixed and some enhancements have been implemented to improve the performance and the usability. In this sense, we have implemented new features, such as the display of the model behavior of only one student or the possibility of selecting the clustering method to create the student predictive model; as well as it was necessary to redesign the user interface changing the type of graphic structures that show model elements and improving the rendering of the graph when the user interacts with it. All these improvements are explained in detail in the next sections.