- -

DYNAMIC EVOLUTION AND RECONFIGURATION OF SOFTWARE ARCHITECTURES THROUGH ASPECTS

RiuNet: Repositorio Institucional de la Universidad Politécnica de Valencia

Compartir/Enviar a

Citas

Estadísticas

  • Estadisticas de Uso

DYNAMIC EVOLUTION AND RECONFIGURATION OF SOFTWARE ARCHITECTURES THROUGH ASPECTS

Mostrar el registro sencillo del ítem

Ficheros en el ítem

dc.contributor.advisor Carsí Cubel, José Ángel es_ES
dc.contributor.advisor Pérez Benedí, Jenifer es_ES
dc.contributor.author Costa Soria, Cristobal es_ES
dc.date.accessioned 2011-06-17T16:32:24Z
dc.date.available 2011-06-17T16:32:24Z
dc.date.created 2011-06-13T08:00:00Z es_ES
dc.date.issued 2011-06-17T16:32:14Z es_ES
dc.identifier.uri http://hdl.handle.net/10251/11038
dc.description.abstract Change is an intrinsic property of software. A software system, during its lifetime, may require several updates, improvements, or new features. If these change requirements are not addressed, the risk of becoming a useless system increases. In fact, this is a challenging issue of safety- and mission-critical software systems, which cannot be stopped to perform maintenance or evolution operations due to their continuous operation. To reduce the aging of these critical systems, they must be provided with mechanisms enabling their dynamic evolution, i.e. the support of changes on their structure and behaviour while they remain in operation. This thesis is concerned with the design of a framework to build architecture-based, dynamically evolvable, software systems. The fact that this framework is a software architecture based approach provides the following advantages: (i) it offers a high-level of abstraction for describing dynamic changes; (ii) it allows varying the level of system description; and (iii) it advantages from the existing support for system modelling, code-generation, and formal analysis provided by architecture description languages. The framework presented in this thesis, called Dynamic PRISMA, is characterized by the combination of two levels of dynamism: Dynamic Reconfiguration, which addresses changes at the configuration level (i.e. the architectural configuration), and Dynamic Type Evolution, which addresses changes at the type-level (i.e. the specification of architectural types and instances). This combination is one of the major contributions of this thesis: thus a system is not only able to reconfigure at runtime the building blocks it is composed of (i.e. architectural types), but also to redefine these building blocks (or introduce new ones) at runtime. Another contribution of the thesis is the identification of the concerns related to dynamic evolution and their integration in the framework through aspects. This improves the separation of concerns and allows us to change reconfiguration specifications, evolution mechanisms, or the business logic independently of each other. A third contribution of this thesis is how this dynamism is supported: reconfiguration through autonomic capabilities, which provides proactivity according to either internal or external stimuli; and type evolution through asynchronous reflection, which enables the modification of a type specification and the transformation of their instances at different rates (i.e. when they are ready for evolution). Specifically, the asynchronous evolution semantics is precisely described by means of graph transformations. This formalism has been chosen because it naturally models both the system architecture and its asynchronous evolution. The work presented in this thesis is illustrated through a case study from the robotics domain; an area which could potentially benefit from the results of this thesis. en_EN
dc.description.abstract El cambio es una propiedad intrínseca del software. Un sistema software, a lo largo de su vida útil, puede necesitar actualizaciones, mejoras o la integración de nuevas características. Si estas necesidades de cambio no son cubiertas, el riesgo de que el sistema software deje de ser útil aumenta. Esto supone un reto para los sistemas críticos, los cuales no pueden ser detenidos para realizar operaciones de mantenimiento o evolución debido a que deben estar continuamente operativos. Para reducir el envejecimiento de dichos sistemas, éstos deben incorporar mecanismos que les permitan evolucionar dinámicamente, i.e. tolerar cambios tanto estructurales como de comportamiento mientras están operativos. Esta tesis aborda el diseño de una infraestructura para la construcción de sistemas software dinámicamente evolucionables y basados en arquitecturas software. Las razones que han motivado el uso de un enfoque basado en arquitecturas software son: (i) proporcionan un alto nivel de abstracción para definir cambios dinámicos; (ii) permiten variar el nivel de descripción del sistema; y (iii) permiten reutilizar las herramientas existentes para modelado de sistemas, generación automática de código, y análisis formal proporcionadas por los lenguajes de descripción de arquitecturas. El marco presentado en esta tesis, llamado Dynamic PRISMA, se caracteriza por la combinación de dos niveles de dinamismo: Reconfiguración Dinámica, que aborda los cambios a nivel de configuración (i.e. la configuración arquitectónica), y Evolución Dinámica de Tipos, que aborda los cambios a nivel de tipos (i.e. la especificación de tipos arquitectónicos e instancias). Esta combinación es una de las mayores contribuciones de esta tesis: así, un sistema no es solamente capaz de reconfigurar durante su ejecución los elementos constructivos que lo forman (i.e. los tipos arquitectónicos), sino también de redefinir dichos elementos constructivos (o introducir otros) durante su ejecución. Otra contribución de la tesis es la identificación de las funcionalidades relacionadas con la evolución dinámica y su integración a través de aspectos. Esto mejora la separación de funcionalidades y permite cambiar de forma independiente entre sí las especificaciones de reconfiguración, los mecanismos de evolución, o la lógica de negocio. Una tercera contribución es cómo este dinamismo se ha soportado: la reconfiguración a través de capacidades autonómicas, aportando así proactividad en función de estímulos internos y/o externos; y la evolución de tipos a través de la reflexión asíncrona, permitiendo así modificar la especificación de un tipo y la transformación de sus instancias en distintos tiempos (i.e. cuando éstas están listas para su evolución). Además, la semántica de la evolución asíncrona se ha formalizado a través de transformaciones de grafos, lo que ha permitido modelar de forma natural tanto la arquitectura de un sistema como su evolución asíncrona. Por último, el trabajo presentado en esta tesis se ha ilustrado a través de un caso de estudio del dominio robótico; un área que podría verse potencialmente beneficiada con los resultados de esta tesis. es_ES
dc.language Inglés es_ES
dc.publisher Universitat Politècnica de València es_ES
dc.rights Reserva de todos los derechos es_ES
dc.source Riunet
dc.subject Evolución dinámica del software es_ES
dc.subject Reconfiguración dinámica es_ES
dc.subject Evolución en tiempo de ejecución es_ES
dc.subject Arquitecturas software es_ES
dc.subject Sistemas auto-gestionados es_ES
dc.subject Desarrollo de software orientado a aspectos es_ES
dc.subject Reflexión computacional es_ES
dc.subject.classification LENGUAJES Y SISTEMAS INFORMATICOS es_ES
dc.title DYNAMIC EVOLUTION AND RECONFIGURATION OF SOFTWARE ARCHITECTURES THROUGH ASPECTS
dc.type Tesis doctoral es_ES
dc.identifier.doi 10.4995/Thesis/10251/11038 es_ES
dc.rights.accessRights Abierto es_ES
dc.contributor.affiliation Universitat Politècnica de València. Departamento de Sistemas Informáticos y Computación - Departament de Sistemes Informàtics i Computació es_ES
dc.description.bibliographicCitation Costa Soria, C. (2011). DYNAMIC EVOLUTION AND RECONFIGURATION OF SOFTWARE ARCHITECTURES THROUGH ASPECTS [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/11038 es_ES
dc.description.accrualMethod Palancia es_ES
dc.type.version info:eu-repo/semantics/acceptedVersion es_ES
dc.relation.tesis 3562 es_ES


Este ítem aparece en la(s) siguiente(s) colección(ones)

Mostrar el registro sencillo del ítem