18 resultados para Engenharia de software - Métodos experimentais
em Universidad Politécnica de Madrid
Resumo:
Se describe someramente el procedimiento de colocación por fondeo de una tubería de polietileno en un emisario submarino. El problema estructural se plantea en grandes movimientos pero con material elástico y deformaciones pequeñas. Se estudian las distintas acciones actuales: peso propio, inundación del tubo, oleaje, corriente marina, tiro de arrastre y modificaciones del esquema estructural. Algunas de las acciones anteriores son de persecución (follower forces) y por lo tanto, generalmente no son conservativas. Por otra parte, se establecen las pertinentes condiciones de contorno, algunas no lineales con carácter unilateral como es la representada por la existencia del fondo marino. Se determinan los esfuerzos y movimientos en las distintas etapas de un proceso de inmersión del emisario, desde su posición inicial de flotación hasta su colocación en el fondo del mar. El modelo presentado se aplica al estudio de unos casos simples de colocación del emisario en el lecho marino.
Resumo:
En este artículo se muestra la aplicación de un método general de cálculo y dimensionamiento en el E.L.U. de estructuras de hormigón armado bidimensionales. El método presentado utiliza las hipótesis y simplificaciones usuales en el cálculo de vigas de hormigón armado, y su planteamiento desarrollado en [12] se particulariza aquí a estructuras tipo laja, con cargas contenidas en su plano medio. Para establecer los avances que permite el método propuesto se resume el estado actual de los procedimientos de dimensionamiento y comprobación tensional de lajas de hormigón armado. A continuación se indican las hipótesis básicas en las que se fundamenta la teoría y se expone la metodología desarrollada para comprobar y dimensionar una sección. Por último se demuestra la utilidad práctica del método mediante su utilización en la optimización del armado de una serie de elementos estructurales tipo membrana.
Resumo:
Dos aspectos destacan entre los resultados más interesantes de la investigación en la década de los 90 en el campo de la ingeniería del conocimiento. Por un lado, se ha profundizado en el conocimiento sobre cómo las personas resuelven problemas. Esto se ha logrado por la vía empírica mediante un trabajo científico de observación, experimentación por medios computacionales y generalización. Como resultado de esta línea, actualmente se dispone de un primer conjunto de modelos formales, los llamados problem-solving methods (PSM), muy útiles en el campo de la ingeniería informática como plantillas de diseño que guían la construcción de nuevos sistemas. Por otro lado, como logro adicional en este campo de investigación, se ha creado un nuevo lenguaje descriptivo como complemento a las formas de representación tradicionales. Dicho lenguaje, que ha sido aceptado por un amplio número de autores, se sitúa en un mayor nivel de abstracción y permite la formulación de arquitecturas más complejas de sistemas basados en el conocimiento. Como autores que más han contribuido en este aspecto se pueden citar: Luc Steels que propuso los denominados componentes de la experiencia como forma de unificación de trabajos previos en este campo, Bob Wielinga, Guus Schreiber y Jost Breuker en el campo de metodologías de ingeniería del conocimiento y el equipo de Mark Musen respecto a herramientas. Dicho lenguaje descriptivo ha supuesto además el planteamiento de una nueva generación de herramientas software de ayuda a los técnicos desarrolladores para construcción de este tipo de sistemas. El propósito principal del presente texto es servir de base como fuente de información de ambos aspectos recientes del campo de la ingeniería del conocimiento. El texto está dirigido a profesionales y estudiantes del campo de la informática que conocen técnicas básicas tradicionales de representación del conocimiento. La redacción del presente texto se ha orientado en primer lugar para recopilar y uniformizar la descripción de métodos existentes en la literatura de ingeniería de conocimiento. Se ha elegido un conjunto de métodos representativo en este campo que no cubre la totalidad de los métodos existentes pero sí los más conocidos y utilizados en ingeniería del conocimiento, presentando una descripción detallada de carácter tanto teórico como práctico. El texto describe cada método utilizando una notación común a todos ellos, parcialmente basada en los estándares descriptivos seguidos por las metodologías más extendidas. Para cada método se incluyen algoritmos definidos de forma expresa para el presente texto con ejemplos detallados de operación. Ambos aspectos, la uniformización junto a la presentación detallada de la operación, suponen una novedad interesante respecto al estado actual de la literatura sobre este campo, lo que hace el texto muy adecuado para ser utilizado como libro de consulta como apoyo en la docencia de la asignatura de construcción de sistemas inteligentes.
Resumo:
Las enfermedades cardíacas son un problema grave y en aumento en la sociedad actual. El estudio automático del complejo QRS es fundamental en el diagnóstico de enfermedades cardíacas. Para ayudar al diagnóstico se propone una herramienta software que analiza el complejo QRS en señales de electrocardiograma. Los pasos a seguir para diseñar dicha herramienta serán: - Estudio de los diferentes métodos de detección del complejo QRS. - Propuesta de una herramienta de detección del complejo QRS en un electrocardiograma. - Diseño de un paquete software que realice diferentes estudios del complejo QRS con sus "interfaces" gráficas para facilitar la aplicación de la herramienta propuesta a nivel usuario.
Resumo:
El desarrollo de métodos de especificación formal de sistemas software y de los modelos que los informan, ha sido reconocido como una necesidad básica en la ingeniería del software. En la especificación de sistemas software secuenciales, tanto las especificaciones axiomáticas, como las procedentes de abstracciones(ya sean datos o procedimientos)
Resumo:
La educación y los entornos educativos están en constante evolución. Tanto alumnos como educadores cambian de hábitos, de maneras de aprender, de gustos, de dispositivos que manejan y de aplicaciones que usan regularmente entre otras cosas. Todos estos cambios vienen acompañados y fomentados en gran medida por la evolución paralela que experimenta la tecnología, tanto software en los programas utilizados, como hardware en los dispositivos y capacidades de éstos. La educación debe también adaptarse a estos cambios, tanto personales como tecnológicos y sacar el mayor provecho de ellos. El uso de Sistemas de Gestión del Aprendizaje está muy extendido en todos los centros educativos. Estos sistemas poseen un gran número de características y funcionalidades que permiten desde la aplicación de un modelo didáctico totalmente tradicional en el que el profesor imparte un contenido y los alumnos lo reciben a uno totalmente innovador en el que ocurren procesos totalmente diferentes. Por otro lado, el potencial que ofrecen los recursos multimedia no ha sido completamente aprovechado en la educación y supone una gran oportunidad. Esta tesis doctoral propone un conjunto de métodos y herramientas para la creación y el uso de recursos multimedia en la educación. Para ello el desarrollo de esta tesis parte de la definición de un modelo didáctico social, colaborativo y centrado en el alumno que servirá de hilo conductor y que integrará los diferentes y métodos y herramientas estudiados y desarrollados. En un primer paso se identifican varias herramientas y métodos para el aula, tales son la grabación de clases, donde se crea y posteriormente se mejora un carrito portátil de grabación que da muy buen resultado, las herramientas de grabación de screencast y la videoconferencia. Estas herramientas además se integran en una plataforma colaborativa dando lugar a una arquitectura completa y escalable que permite la realización de dichas actividades y la interconexión sencilla con el Sistema de Gestión del Aprendizaje. A continuación y ya en un entorno totalmente online se desarrolla una nueva plataforma de e-learning llamada Virtual Science Hub (ViSH) que consta de cuatro funcionalidades principales, red social, videoconferencia, repositorio educativo y herramienta de autor. En esta plataforma se aplicaron técnicas de recomendación proactiva tanto de recursos educativos como de otros usuarios similares. Por último se validó el modelo educativo completo usando algunas de las herramientas identificadas y desarrolladas en dos escenarios diferentes con gran éxito. Finalmente, esta tesis discute las conclusiones obtenidas a lo largo de la extensa investigación llevada a cabo y que ha propiciado la consecución de una buena base teórica y práctica para la creación de herramientas y métodos para la generación y el uso de recursos multimedia en la educación. ABSTRACT Education and learning environments are constantly evolving. Students and educators change the things their habits, their ways of learning, the things they like or the devices and applications that they use regularly among other things. All these changes are accompanied and fostered by the parallel evolution that technology experiences, both in the software programs used as in the hardware and capabilities of these devices. Education must also adapt to these changes, both personal and technological and get the most out of them. Learning Management Systems are widely used in all educational centers. These systems have a large number of features and functionalities. They allow from the implementation of a traditional teaching model in which the teacher gives content and students receive it to one absolutely innovative teaching model where totally different processes occur. Furthermore, the potential of multimedia resources has not been fully exploited in education and can be a great opportunity. This thesis proposes a set of methods and tools for the creation and use of multimedia in education. The development of this thesis starts with the definition of a social, collaborative and learner-centered model, that serves as a common thread and that integrates different tools and methods studied and developed. In a first step, several tools and methods for the classroom are identified, such as recording, where a portable kit is created and then improved giving very good results, screencast recording and videoconferencing. These tools also are integrated into a collaborative platform resulting in a complete, scalable architecture that enables the execution of such activities and a simple interconnection with the Learning Management System. In an fully online environment a new e-learning platform called Virtual Science Hub (ViSH) is created. It consists of four main features that combine and complement each other, social network, videoconferencing, educational repository and authoring tool. In this platform proactive recommendation of both educational resources and similar users is applied. In a last step the entire educational model using some of the tools identified and developed is successfully validated in two different scenarios. Finally, this thesis discusses the findings obtained during the extensive research carried out and has led to the achievement of a good theoretical and practical basis for the development of tools and methods for the generation and use of multimedia in education.
Resumo:
La innovación en Sistemas Intesivos en Software está alcanzando relevancia por múltiples razones: el software está presente en sectores como automóvil, teléfonos móviles o salud. Las empresas necesitan conocer aquellos factores que afectan a la innovación para incrementar las probabilidades de éxito en el desarrollo de sus productos y, la evaluación de productos sofware es un mecanismo potente para capturar este conocimiento. En consecuencia, las empresas necesitan evaluar sus productos desde la perpectiva de innovación para reducir la distancia entre los productos desarrollados y el mercado. Esto es incluso más relevante en el caso de los productos intensivos en software, donde el tiempo real, la oportunidad, complejidad, interoperabilidad, capacidad de respuesta y compartción de recursos son características críticas de los nuevos sistemas. La evaluación de la innovación de productos ya ha sido estudiada y se han definido algunos esquemas de evaluación pero no son específicos para Sistemas intensivos en Sofwtare; además, no se ha alcanzado consenso en los factores ni el procedimiento de evaluación. Por lo tanto, tiene sentido trabajar en la definición de un marco de evaluación de innovación enfocado a Sistemas intesivos en Software. Esta tesis identifica los elementos necesarios para construir in marco para la evaluación de de Sistemas intensivos en Software desde el punto de vista de la innovación. Se han identificado dos componentes como partes del marco de evaluación: un modelo de referencia y una herramienta adaptativa y personalizable para la realización de la evaluación y posicionamiento de la innovación. El modelo de referencia está compuesto por cuatro elementos principales que caracterizan la evaluación de innovación de productos: los conceptos, modelos de innovación, cuestionarios de evaluación y la evaluación de productos. El modelo de referencia aporta las bases para definir instancias de los modelos de evaluación de innovación de productos que pueden se evaluados y posicionados en la herramienta a través de cuestionarios y que de forma automatizada aporta los resultados de la evaluación y el posicionamiento respecto a la innovación de producto. El modelo de referencia ha sido rigurosamente construido aplicando modelado conceptual e integración de vistas junto con la aplicación de métodos cualitativos de investigación. La herramienta ha sido utilizada para evaluar productos como Skype a través de la instanciación del modelo de referencia. ABSTRACT Innovation in Software intensive Systems is becoming relevant for several reasons: software is present embedded in many sectors like automotive, robotics, mobile phones or heath care. Firms need to have knowledge about factors affecting the innovation to increase the probability of success in their product development and the assessment of innovation in software products is a powerful mechanism to capture this knowledge. Therefore, companies need to assess products from an innovation perspective to reduce the gap between their developed products and the market. This is even more relevant in the case of SiSs, where real time, timeliness, complexity, interoperability, reactivity, and resource sharing are critical features of a new system. Many authors have analysed product innovation assessment and some schemas have been developed but they are not specific to SiSs; in addition, there is no consensus about the factors or the procedures for performing an assessment. Therefore, it has sense to work in the definition of a customized software product innovation evaluation framework. This thesis identifies the elements needed to build a framework to assess software products from the innovation perspective. Two components have been identified as part of the framework to assess Software intensive Systems from the innovation perspective: a reference-model and an adaptive and customizable tool to perform the assessment and to position product innovation. The reference-model is composed by four main elements characterizing product innovation assessment: concepts, innovation models, assessment questionnaires and product assessment. The reference model provides the umbrella to define instances of product innovation assessment models that can be assessed and positioned through questionnaires in the proposed tool that also provides automation in the assessment and positioning of innovation. The reference-model has been rigorously built by applying conceptual modelling and view integration integrated with qualitative research methods. The tool has been used to assess products like Skype through models instantiated from the reference-model.
Resumo:
El presente Trabajo de Fin de Grado (TFG) es el resultado de la necesidad de la seguridad en la construcción del software ya que es uno de los mayores problemas con que se enfrenta hoy la industria debido a la baja calidad de la misma tanto en software de Sistema Operativo, como empotrado y de aplicaciones. La creciente dependencia de software para que se hagan trabajos críticos significa que el valor del software ya no reside únicamente en su capacidad para mejorar o mantener la productividad y la eficiencia. En lugar de ello, su valor también se deriva de su capacidad para continuar operando de forma fiable incluso de cara de los eventos que la amenazan. La capacidad de confiar en que el software seguirá siendo fiable en cualquier circunstancia, con un nivel de confianza justificada, es el objetivo de la seguridad del software. Seguridad del software es importante porque muchas funciones críticas son completamente dependientes del software. Esto hace que el software sea un objetivo de valor muy alto para los atacantes, cuyos motivos pueden ser maliciosos, penales, contenciosos, competitivos, o de naturaleza terrorista. Existen fuentes muy importantes de mejores prácticas, métodos y herramientas para mejorar desde los requisitos en sus aspectos no funcionales, ciclo de vida del software seguro, pasando por la dirección de proyectos hasta su desarrollo, pruebas y despliegue que debe ser tenido en cuenta por los desarrolladores. Este trabajo se centra fundamentalmente en elaborar una guía de mejores prácticas con la información existente CERT, CMMI, Mitre, Cigital, HP, y otras fuentes. También se plantea desarrollar un caso práctico sobre una aplicación dinámica o estática con el fin de explotar sus vulnerabilidades.---ABSTRACT---This Final Project Grade (TFG) is the result of the need for security in software construction as it is one of the biggest problems facing the industry today due to the low quality of it both OS software, embedded software and applications software. The increasing reliance on software for critical jobs means that the value of the software no longer resides solely in its capacity to improve or maintain productivity and efficiency. Instead, its value also stems from its ability to continue to operate reliably even when facing events that threaten it. The ability to trust that the software will remain reliable in all circumstances, with justified confidence level is the goal of software security. The security in software is important because many critical functions are completely dependent of the software. This makes the software to be a very high value target for attackers, whose motives may be by a malicious, by crime, for litigating, by competitiveness or by a terrorist nature. There are very important sources of best practices, methods and tools to improve the requirements in their non-functional aspects, the software life cycle with security in mind, from project management to its phases (development, testing and deployment) which should be taken into account by the developers. This paper focuses primarily on developing a best practice guide with existing information from CERT, CMMI, Mitre, Cigital, HP, and other organizations. It also aims to develop a case study on a dynamic or static application in order to exploit their vulnerabilities.
Resumo:
En la actualidad existe una gran expectación ante la introducción de nuevas herramientas y métodos para el desarrollo de productos software, que permitirán en un futuro próximo un planteamiento de ingeniería del proceso de producción software. Las nuevas metodologías que empiezan a esbozarse suponen un enfoque integral del problema abarcando todas las fases del esquema productivo. Sin embargo el grado de automatización conseguido en el proceso de construcción de sistemas es muy bajo y éste está centrado en las últimas fases del ciclo de vida del software, consiguiéndose así una reducción poco significativa de sus costes y, lo que es aún más importante, sin garantizar la calidad de los productos software obtenidos. Esta tesis define una metodología de desarrollo software estructurada que se puede automatizar, es decir una metodología CASE. La metodología que se presenta se ajusta al modelo de ciclo de desarrollo CASE, que consta de las fases de análisis, diseño y pruebas; siendo su ámbito de aplicación los sistemas de información. Se establecen inicialmente los principios básicos sobre los que la metodología CASE se asienta. Posteriormente, y puesto que la metodología se inicia con la fijación de los objetivos de la empresa que demanda un sistema informático, se emplean técnicas que sirvan de recogida y validación de la información, que proporcionan a la vez un lenguaje de comunicación fácil entre usuarios finales e informáticos. Además, estas mismas técnicas detallarán de una manera completa, consistente y sin ambigüedad todos los requisitos del sistema. Asimismo, se presentan un conjunto de técnicas y algoritmos para conseguir que desde la especificación de requisitos del sistema se logre una automatización tanto del diseño lógico del Modelo de Procesos como del Modelo de Datos, validados ambos conforme a la especificación de requisitos previa. Por último se definen unos procedimientos formales que indican el conjunto de actividades a realizar en el proceso de construcción y cómo llevarlas a cabo, consiguiendo de esta manera una integridad en las distintas etapas del proceso de desarrollo.---ABSTRACT---Nowdays there is a great expectation with regard to the introduction of new tools and methods for the software products development that, in the very near future will allow, an engineering approach in the software development process. New methodologies, just emerging, imply an integral approach to the problem, including all the productive scheme stages. However, the automatization degree obtained in the systems construction process is very low and focused on the last phases of the software lifecycle, which means that the costs reduction obtained is irrelevant and, which is more important, the quality of the software products is not guaranteed. This thesis defines an structured software development methodology that can be automated, that is a CASE methodology. Such a methodology is adapted to the CASE development cycle-model, which consists in analysis, design and testing phases, being the information systems its field of application. Firstly, we present the basic principies on which CASE methodology is based. Secondly, since the methodology starts from fixing the objectives of the company demanding the automatization system, we use some techniques that are useful for gathering and validating the information, being at the same time an easy communication language between end-users and developers. Indeed, these same techniques will detail completely, consistently and non ambiguously all the system requirements. Likewise, a set of techniques and algorithms are shown in order to obtain, from the system requirements specification, an automatization of the Process Model logical design, and of the Data Model logical design. Those two models are validated according to the previous requirement specification. Finally, we define several formal procedures that suggest which set of activities to be accomplished in the construction process, and how to carry them out, getting in this way integrity and completness for the different stages of the development process.
Resumo:
Las normativas que regulan la seguridad de las presas en España han recogido la necesidad de conocer los desplazamientos y deformaciones de sus estructuras y cimientos. A día de hoy, son muchas las presas en explotación que no cuentan con un sistema de auscultación adecuado para controlar este tipo de variables, ya que la instalación de métodos clásicos de precisión en las mismas podría no ser viable técnicamente y, de serlo, supondría un coste económico importante y una dudosa garantía del proceso de ejecución de la obra civil correspondiente. Con el desarrollo de las nuevas tecnologías, la informática y las telecomunicaciones, han surgido nuevos sistemas de auscultación de desplazamientos. Los sistemas GPS actuales, diseñados para el control de estructuras, guiado de maquinaria, navegación y topografía, estabilidad de taludes, subsidencias, etc. permiten alcanzar precisiones centimétricas. El sistema de control de movimientos basado en la tecnología DGPS (GPS diferencial) combinada con un filtro estadístico con el que se alcanzan sensibilidades de hasta ±1 mm en el sistema, suficientes para una auscultación normal de presas según los requerimientos de la normativa actual. Esta exactitud se adapta a los desplazamientos radiales de las presas, donde son muy comunes valores de amplitudes en coronación de hasta 15 mm en las de gravedad y de hasta 45 mm en el caso de las presas bóveda o arco. La presente investigación tiene por objetivo analizar la viabilidad del sistema DGPS en el control de movimientos de presas de hormigón comparando los diferentes sistemas de auscultación y su correlación con las variables físicas y las vinculadas al propio sistema GPS diferencial. Ante la necesidad de dar respuesta a estas preguntas y de validar e incorporar a la mencionada tecnología en la ingeniería civil en España, se ha llevado a cabo un estudio de caso en La Aceña (Ávila). Esta es una de las pocas presas españolas que se está controlando con dicha tecnología y de forma simultánea con los sistemas clásicos de auscultación y algunos otros de reciente aplicación La presente investigación se ha organizado con idea de dar respuesta a varias preguntas que el explotador de presas se plantea y que no se analizan en el estado del arte de la técnica: cómo hacer la configuración espacial del sistema y cuáles son los puntos necesarios que se deben controlar, qué sistemas de comunicaciones son los más fiables, cuáles son los costes asociados, calibración del software, vida útil y mantenimientos requeridos, así como la posibilidad de telecontrolar los datos. Entre las ventajas del sistema DGPS, podemos señalar su bajo coste de implantación y posibilidad de controlarlo de forma remota, así como la exactitud y carácter absoluto de los datos. Además, está especialmente indicado para presas aisladas o mal comunicadas y para aquellas otras en las que el explotador no tiene referencia alguna de la magnitud de los desplazamientos o deformaciones propias de la presa en toda su historia. Entre los inconvenientes de cualquier sistema apoyado en las nuevas tecnologías, destaca la importancia de las telecomunicaciones ya sea en el nivel local en la propia presao desde su ubicación hasta el centro de control de la explotación. Con la experiencia alcanzada en la gestión de la seguridad de presas y sobre la base de la reciente implantación de los nuevos métodos de auscultación descritos, se ha podido analizar cada una de sus ventajas e inconvenientes. En el capítulo 5, se presenta una tabla de decisión para el explotador que servirá como punto de partida para futuras inversiones. El impacto de esta investigación se ha visto reflejado en la publicación de varios artículos en revistas indexadas y en el debate suscitado entre gestores y profesionales del sector en los congresos nacionales e internacionales en los que se han presentado resultados preliminares. All regulations on the safety of dams in Spain have collected the need to know the displacements and deformations of the structure and its foundation. Today there are many dams holding not have an adequate system of auscultation to control variables such as the installation of classical methods of precision in the same might not be technically feasible, and if so, would cost important economic and guarantee the implementation process of the dubious civil works. With the development of new technologies, computing and telecommunications, new displacements auscultation systems have emerged. Current GPS systems designed to control structures, machine guidance, navigation and topography, slope stability, subsidence, etc, allow to reach centimeter-level accuracies. The motion control system based on DGPS technology applies a statistical filter that sensitivities are achieved in the system to ± 1 mm, sufficient for normal auscultation of dams as required by current regulations. This accuracy is adapted to the radial displacement of dams, which are common values in coronation amplitudes up to 15 mm in gravity dams and up to 45 mm in arch or arc dams. This research aims to analyze the feasibility of DGPS system in controlling movements of concrete dams, comparing the different systems auscultation and its correlation with physical variables and linked to differential GPS system itself. Given the need to answer this question and to validate and incorporate this technology to civil engineering in Spain, has conducted a case study in real time at the dam La Aceña (Ávila). This dam is one of the few Spanish companies, which are controlling with this technology and simultaneously with the classic auscultation systems and some other recent application. This research has been organized with a view to responding to questions that the dam operator arises and in the state of the art technique not discussed: how to make spatial configuration of the system and what are the necessary control points what communication systems are the most reliable, what are the associated costs, calibration software, service life and maintenance requirements, possibility of monitoring, etc. Among the advantages we can point to its low cost of implementation, the possibility of remote, high accuracy and absolute nature of the data. It could also be suitable for those isolated or poorly communicated dams and those in which the operator has no reference to the magnitude of displacements or deformations own prey in its history. The disadvantages of any system based on the new technologies we highlight the importance of telecommunications, either locally or from this dam control center of the farm. With the experience gained in the management of dam safety and based on the recent introduction of new methods of auscultation described, it has been possible to analyze each of their advantages and disadvantages. A decision table for the operator, which will serve as a starting point for future investments is presented. The impact of research, has been reflected in the publication of several articles in refereed journals and discussion among managers and professionals in national and international conferences in which they participated.
Resumo:
Los sistemas de tiempo real tienen un papel cada vez más importante en nuestra sociedad. Constituyen un componente fundamental de los sistemas de control, que a su vez forman parte de diversos sistemas de ingeniería básicos en actividades industriales, militares, de comunicaciones, espaciales y médicas. La planificación de recursos es un problema fundamental en la realización de sistemas de tiempo real. Su objetivo es asignar los recursos disponibles a las tareas de forma que éstas cumplan sus restricciones temporales. Durante bastante tiempo, el estado de la técnica en relación con los métodos de planificación ha sido rudimentario. En la actualidad, los métodos de planificación basados en prioridades han alcanzado un nivel de madurez suficiente para su aplicación en entornos industriales. Sin embargo, hay cuestiones abiertas que pueden dificultar su utilización. El objetivo principal de esta tesis es estudiar los métodos de planificación basados en prioridades, detectar las cuestiones abiertas y desarrollar protocolos, directrices y esquemas de realización práctica que faciliten su empleo en sistemas industriales. Una cuestión abierta es la carencia de esquemas de realización de algunos protocolos con núcleos normalizados. El resultado ha sido el desarrollo de esquemas de realización de tareas periódicas y esporádicas de tiempo real, con detección de fallos de temporización, comunicación entre tareas, cambio de modo de ejecución del sistema y tratamiento de fallos mediante grupos de recuperación. Los esquemas se han codificado en Ada 9X y se proporcionan directrices para analizar la planificabilidad de un sistema desarrollado con esta base. Un resultado adicional ha sido la identificación de la funcionalidad mínima necesaria para desarrollar sistemas de tiempo real con las características enumeradas. La capacidad de adaptación a los cambios del entorno es una característica deseable de los sistemas de tiempo real. Si estos cambios no estaban previstos en la fase de diseño o si hay módulos erróneos, es necesario modificar o incluir algunas tareas. La actualización del sistema se suele realizar estáticamente y su instalación se lleva a cabo después de parar su ejecución. Sin embargo, hay sistemas cuyo funcionamiento no se puede detener sin producir daños materiales o económicos. Una alternativa es diseñar el sistema como un conjunto de unidades que se pueden reemplazar, sin interferir con la ejecución de otras unidades. Para tal fin, se ha desarrollado un protocolo de reemplazamiento dinámico para sistemas de tiempo real crítico y se ha comprobado su compatibilidad con los métodos de planificación basados en prioridades. Finalmente se ha desarrollado un esquema de realización práctica del protocolo.---ABSTRACT---Real-time systems are very important now a days. They have become a relevant issue in the design of control systems, which are a basic component of several engineering systems in industrial, telecommunications, military, spatial and medical applications. Resource scheduling is a central issue in the development of real-time systems. Its purpose is to assign the available resources to the tasks, in such a way that their deadlines are met. Historically, hand-crafted techniques were used to develop real-time systems. Recently, the priority-based scheduling methods have reached a sufficient maturity level to be feasible its extensive use in industrial applications. However, there are some open questions that may decrease its potential usefulness. The main goal of this thesis is to study the priority-based scheduling methods, to identify the remaining open questions and to develop protocols, implementation templates and guidelines that will make more feasible its use in industrial applications. One open question is the lack of implementation schemes, based on commercial realtime kernels, of some of the protocols. POSIX and Ada 9X has served to identify the services usually available. A set of implementation templates for periodic and sporadic tasks have been developed with provisión for timing failure detection, intertask coraraunication, change of the execution mode and failure handling based on recovery groups. Those templates have been coded in Ada 9X. A set of guidelines for checking the schedulability of a system based on them are also provided. An additional result of this work is the identification of the minimal functionality required to develop real-time systems based on priority scheduling methods, with the above characteristics. A desirable feature of real-time systems is their capacity to adapt to changes in the environment, that cannot be entirely predicted during the design, or to misbehaving software modules. The traditional maintenance techniques are performed by stopping the whole system, installing the new application and finally resuming the system execution. However this approach cannot be applied to non-stop systems. An alternative is to design the system as a set of software units that can be dynamically replaced within its operative environment. With this goal in mind, a dynamic replacement protocol for hard real-time systems has been defined. Its compatibility with priority-based scheduling methods has been proved. Finally, a execution témplate of the protocol has been implemented.
Resumo:
El presente proyecto tiene como objeto la puesta a punto de métodos de análisis de combustibles basados en la espectrometría atómica, centrándose en un equipo de absorción atómica que, como su nombre indica, funciona bajo el principio de la absorción atómica y un equipo ICP que trabaja por plasma acoplado inductivamente y que se rige bajo el principio espectrométrico de la emisión atómica. La finalidad de la puesta a punto de ambos métodos es llevar un control de calidad periódico sobre los combustibles. Se pondrán a punto dos métodos normalizados de ensayos, uno bajo la norma UNE EN 16135 para la determinación del contenido de manganeso en gasolinas; otro bajo la norma EN 16576 para determinar el contenido de manganeso y de hierro en gasóleos de automoción. La puesta a punto de ambos métodos tiene un procedimiento asociado que se puede resumir en cuatro pasos: lectura de la norma, creación del método en el software informático con el que trabaja el equipo, calibración del mismo y realización del estudio de exactitud del método. Abstract The aim of this project is to tune up analytical methods based on the principle of the atomic spectrometry, focusing on testing equipment which works under the principle of atomic absorption and Inductively Coupled Plasma (ICP) equipment governed under the principle of atomic emission. The purpose of tuning up both methods is to perform a quality control on fuels. Two different standard methods will be developed: One under the standard UNE EN 16135 for measuring the content of manganese in gasolines; the other one under the standard EN 16576 for the determination of manganese and iron content in middle distillate fuels. Tune up of both methods procedure can be summarized in four steps: Reading the standard, creation of the method on the computer software associated to the equipment, calibration of the equipment and completion of accuracy study.
Resumo:
El proyecto UPMSat2 aborda el desarrollo de un micro-satélite que se usará como una plataforma de demostración tecnológica. La mayor parte del proyecto se desarrolla en el Instituto Ignacio de la Riva de la Universidad Politécnica de Madrid, con la colaboración de empresas del sector del espacio. La labor del grupo STRAST se centra en el desarrollo del software de vuelo y del sector de tierra del satélite. Este Trabajo Fin de Grado trata del desarrollo de algunos componentes del software embarcado en el satélite. Los componentes desarrollados son: Manager, Platform y ADCS. El Manager está encargado de dirigir el funcionamiento del satélite y, en concreto, de su modo de operación. El Platform se encarga de monitorizar el estado del satélite, para comprobar que el funcionamiento de los componentes de hardware es el adecuado. Finalmente, el ADCS (Attitude Determination and Control System) trata de asegurar que la posición del satélite, respecto a la tierra, es la adecuada. El desarrollo de este trabajo parte de un diseño existente, creado por alumnos previamente. El trabajo realizado ha consistido en mejorarlos con funcionalidad adicional y realizar una integración de estos subsistemas. El resultado es un sistema operativo, que incluye unas pruebas preliminares. Un trabajo futuro será la realización de pruebas exhaustivas,para validar el funcionamiento de los subsistemas desarrollados. El desarrollo de software se ha basado en un conjunto de tecnologías habituales en los sistemas empotrados de alta integridad. El diseño se ha realizado con la herramienta TASTE, que permite el uso de AADL. El lenguaje Ada se ha utilizado para la implementación, ya que es adecuado para este tipo de sistemas. En concreto, se ha empleado un subconjunto seguro del lenguaje para poder realizar análisis estático y para incrementar la predecibilidad de su comportamiento. La concurrencia se basa en el modelo de Ravenscar,que es conforme con los métodos de análisis de respuesta.
Resumo:
La Ingeniería de Pruebas está especializada en la verificación y validación del Software,y formalmente se define como: “Proceso de desarrollo que emplea métodos rigurosos para evaluar la corrección y calidad del producto a lo largo de todo su ciclo de vida” [3]. Este proceso comprende un conjunto de métodos, procedimientos y técnicas formalmente definidas las cuales, usadas de forma sistemática, facilitan la identificación de la mayor cantidad de errores y fallos posibles de un software. Un software que pase un proceso riguroso de pruebas es un producto de calidad que seguramente facilitará la labor del Ingeniero de Software en la corrección de futuras incidencias, algunas de ellas generadas tras la implantación en el entorno real. Este proceso constituye un área de la Ingeniería del Software y una especialidad por tanto, de la misma. De forma simple, la consecución de una correcta Verificación y Validación del Software requiere de algunas actividades imprescindibles como: - Realizar un plan de pruebas del proyecto. - Actualizar dicho plan y corregirlo en caso necesario. - Revisar los documentos de análisis de requisitos. - Ejecutar las pruebas en las diferentes fases del desarrollo del proyecto. - Documentar el diseño y la ejecución de las pruebas. - Generar documentos con los resultados y anomalías de las pruebas ya ejecutadas. Actualmente, la Ingeniería de Pruebas no es muy reconocida como área de trabajo independiente sino más bien, un área inmersa dentro de la Ingeniería de Software. En el entorno laboral existe el perfil de Ingeniero de Pruebas, sin embargo pocos ingenieros de software tienen claro querer ser Ingenieros de Pruebas (probadores o testers) debido a que nunca han tenido la oportunidad de enfrentarse a actividades prácticas reales dentro de los centros de estudios universitarios donde cursan la carrera. Al ser un área de inherente ejercicio profesional, la parte correspondiente de la Ingeniería de Pruebas suele enfocarse desde un punto de vista teórico más que práctico. Hay muchas herramientas para la creación de pruebas y de ayuda para los ingenieros de pruebas, pero la mayoría son de pago o hechas a medida para grandes empresas que necesitan dicho software. Normalmente la gente conoce lo que es la Ingeniería de Pruebas únicamente cuando se empieza a adquirir experiencia en dicha área en el ejercicio profesional dentro de una empresa. Con lo cual, el acercamiento durante la carrera no necesariamente le ha ofrecido al profesional en Ingeniería, la oportunidad de trabajar en esta rama de la Ingeniería del Software y en algunos casos, NOVATests: Metodología y herramienta software de apoyo para los Ingenieros de Prueba Junior 4 los recién egresados comienzan su vida profesional con algún desconocimiento en este sentido. Es por el conjunto de estas razones, que mi intención en este proyecto es proponer una metodología y una herramienta software de apoyo a dicha metodología, para que los estudiantes de carreras de Ingeniería Software y afines, e ingenieros recién egresados con poca experiencia o ninguna en esta área (Ingenieros de Pruebas Junior), puedan poner en práctica las actividades de la Ingeniería de Pruebas dentro de un entorno lo más cercano posible al ejercicio de la labor profesional. De esta forma, podrían desarrollar las tareas propias de dicha área de una manera fácil e intuitiva, favoreciendo un mayor conocimiento y experiencia de la misma. ABSTRACT The software engineering is specialized in the verification and validation of Software and it is formally defined as: “Development process which by strict methods evaluates and corrects the quality of the product along its lifecycle”. This process contains a number of methods, procedures and techniques formally defined which used systematically make easier the identification of the highest quantity of error and failures within a Software. A software going through this rigorous process of tests will become a quality product that will help the software engineer`s work while correcting incidences. Some of them probably generated after the deployment in a real environment. This process belongs to the Software engineering and therefore it is a specialization itself. Simplifying, the correct verification and validation of a software requires some essential activities such as: -Create a Test Plan of the project - Update this Test Plan and correct if necessary - Check Requirement’s specification documents -Execute the different tests among all the phases of the project - Create the pertinent documentation about design and execution of these tests. - Generate the result documents and all the possible incidences the tests could contain. Currently, the Test engineering is not recognized as a work area but an area immerse within the Software engineering. The professional environment includes the role of Test engineer, but only a few software engineers have clear to become Test engineers (testers) because they have never had the chance to face this activities within the university study centers where they take study of this degree. Since there are little professional environments, this area is focused from a theoretical way instead of a more practical vision. There are plenty of tools helping the Test engineer, but most of them are paid tools or bespoke tools for big companies in need of this software. Usually people know what test engineering is by starting working on it and not before, when people start acquiring experience in this field within a company. Therefore, the degree studied have not approach this field of the Software engineering before and in some cases the graduated students start working without any knowledge in this area. Because of this reasons explained, it is my intention to propose this Project: a methodology and a software tool supporting this methodology so the students of software engineering and similar ones but also graduated students with little experience in this area (Junior Test Engineers), can afford practice in this field and get used to the activities related with the test engineering. Because of this they will be able to carry out the proper tasks of this area easier, enforcing higher and better knowledge and experience of it.
Resumo:
El software se ha convertido en el eje central del mundo actual, una compleja creación humana que influye en la vida, negocios y comunicación de todas las personas pertenecientes a la Sociedad de la Información. El rápido crecimiento experimentado en el ámbito del desarrollo software ha permitido la creación de avanzadas estructuras tecnológicas, denominadas “Sistemas Intensivos Software”, capaces de comunicarse con otros sistemas, dispositivos, sensores y personas. A lo largo de los próximos años los sistemas se enfrentarán a una mayor complejidad, surgida de la necesidad de operar en entornos de grandes dimensiones y de comportamientos no deterministas. Los métodos y herramientas actuales no son lo suficientemente potentes para diseñar, construir,implementar y mantener sistemas intensivos software con estas características, y detener la construcción de sistemas intensivos software o construir sistemas poco flexibles o fiables no es una alternativa real. En el desarrollo de “Sistemas Intensivos Software” pueden llegar a intervenir distintas entidades o compañías software que suelen estar en ubicaciones geográficas distintas y constituidas por grandes equipos de desarrollo, multidisciplinares e incluso multilingües. Debido a la criticidad del resultado de las actividades realizadas de forma independiente en el sistema resultante, éstas se han de controlar y monitorizar para asegurar la correcta integración de todos los elementos del sistema completo. El objetivo de este proyecto es la creación de una herramienta software para dar soporte a la gestión y monitorización de la construcción e integración de sistemas intensivos software, siendo extensible también a proyectos de otra índole. La herramienta resultante se denomina Positioning System, una aplicación web del tipo SPA (Single Page Application) creada con tecnología de última generación como el framework JavaScript AngularJS y tecnología de back-end como SlimPHP. Positioning System provee la funcionalidad necesaria para la creación de proyectos, familias y subfamilias de productos que constituyen los productos software de los proyectos creados, así como la gestión de socios comerciales y gestión de contactos de dichos proyectos. Todas estas funcionalidades son fácilmente monitorizadas y controladas por gráficos estadísticos generados para cada proyecto. ABSTRACT Software has become the backbone of today’s world, a complex human creation that has an important impact in the life, business and communication of all people involved with the Information Society. The quick growth that software development has undergone for last years has enabled the creation of advanced technological structures called “Software Intensive Systems”. They are able to communicate with other systems, devices, sensors and people. Next years, systems will face more complexity. It arises from the need of operating systems of large dimensions with non-deterministic behaviors. Current methods and tools are not powerful enough to design, build, implement and maintain software intensive systems; however stopping the development or developing unreliable and non-flexible systems is not a real alternative. Software Intensive Systems” development may involve different entities or software companies which may be in different geographical locations and may be constituted by large, multidisciplinary and even multilingual development teams. Due to the criticality of the result of each conducted activity, independently in the resulting system, these activities must be controlled and monitored to ensure the proper integration of all the elements within the complete system. The goal of this project is the creation of a software tool to support the management and monitoring of the construction and integration of software intensive systems, being possible to be extended to other kind of projects. The resultant tool is called Positioning System, a web application that follows the SPA (Single Page Application) style. It was created with the latest technologies, such as, the AngularJS framework and SlimPHP. The Positioning System provides the necessary features for the creation of projects, families and subfamilies of products that constitute the software products of the created projects, as well as the management of business partners and contacts of these projects. All these features are easily monitored and controlled by statistical graphs generated for each project.