Uma ferramenta formal para especificação e análise de arquiteturas de software

Detalhes bibliográficos
Autor(a) principal: Rademaker, Alexandre
Data de Publicação: 2005
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da Universidade Federal Fluminense (RIUFF)
Texto Completo: https://app.uff.br/riuff/handle/1/17811
Resumo: Complex computational systems can be organized as components, that execute in a concurrent and possibly in a distributed way. The modeling of such systems has to consider coordination requirements comprising inter-component interaction styles, and intra-component concurrency and synchronization aspects. In the CR RIO framework, which makes use of meta-level and architecture configuration techniques, the coordination aspects can be treated at the software architecture level using the CBabel architecture description language (ADL). CBabel is an ADL that, besides the usual architectural primitives such as components and ports, provides contracts as first class constructions. In that way, coordination aspects can be described with CBabel contracts. Coordination aspects are encapsulated in connectors that mediate all interactions among functional modules. With this approach, one separates coordination aspects concerns from functional aspects, which do not need to be included in the design or implementation of functional modules. The use of a ADL for the specification of a system allows the system to be described in an appropriate level of abstraction allowing the analysis and verifications of architecture level properties in the initial phases of the project. But for the accomplishment of analysis of an architecture it is necessary that both the ADL and the properties to be verified have a formal semantics that gives precise and not-ambiguous meaning for them. Rewriting logic is a logic and semantic framework to which several models of computation, logics and specification languages have been mapped to, due to its unified view of computation and logic. In this dissertation, we present a formal semantics of CBabel in rewriting logic. We also present the implementation of this semantics, the tool Maude CBabel tool, a prototype executable environment for CBabel. Maude CBabel tool is implemented on top of the Maude system, a fast realization of rewriting logic with support to reflection and with a good variety of analysis tools. With Maude CBabel tool during the modeling of complex systems, we can formally analyze CBabel architectural descriptions, identifying possible problems and suggesting solutions still in the initial phase of its life cycle.
id UFF-2_0bf9c1e20c7049e439cb9fe1f6b20ea7
oai_identifier_str oai:app.uff.br:1/17811
network_acronym_str UFF-2
network_name_str Repositório Institucional da Universidade Federal Fluminense (RIUFF)
repository_id_str 2120
spelling Uma ferramenta formal para especificação e análise de arquiteturas de softwareCiência da computaçãoSoftwareSistema MaudeArquitetura de softwareLinguagem de descrição de arquiteturaMaudeLógica equacionalArchitecture description languageRewriting logicFormal methodsCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::TEORIA DA COMPUTACAO::COMPUTABILIDADE E MODELOS DE COMPUTACAOComplex computational systems can be organized as components, that execute in a concurrent and possibly in a distributed way. The modeling of such systems has to consider coordination requirements comprising inter-component interaction styles, and intra-component concurrency and synchronization aspects. In the CR RIO framework, which makes use of meta-level and architecture configuration techniques, the coordination aspects can be treated at the software architecture level using the CBabel architecture description language (ADL). CBabel is an ADL that, besides the usual architectural primitives such as components and ports, provides contracts as first class constructions. In that way, coordination aspects can be described with CBabel contracts. Coordination aspects are encapsulated in connectors that mediate all interactions among functional modules. With this approach, one separates coordination aspects concerns from functional aspects, which do not need to be included in the design or implementation of functional modules. The use of a ADL for the specification of a system allows the system to be described in an appropriate level of abstraction allowing the analysis and verifications of architecture level properties in the initial phases of the project. But for the accomplishment of analysis of an architecture it is necessary that both the ADL and the properties to be verified have a formal semantics that gives precise and not-ambiguous meaning for them. Rewriting logic is a logic and semantic framework to which several models of computation, logics and specification languages have been mapped to, due to its unified view of computation and logic. In this dissertation, we present a formal semantics of CBabel in rewriting logic. We also present the implementation of this semantics, the tool Maude CBabel tool, a prototype executable environment for CBabel. Maude CBabel tool is implemented on top of the Maude system, a fast realization of rewriting logic with support to reflection and with a good variety of analysis tools. With Maude CBabel tool during the modeling of complex systems, we can formally analyze CBabel architectural descriptions, identifying possible problems and suggesting solutions still in the initial phase of its life cycle.Sistemas computacionais complexos podem ser estruturados em componentes que executam de forma concorrente e, possivelmente, distribuída. A modelagem de tais sistemas deve então, invariavelmente, especificar os aspectos de coordenação que compreendem os estilos de interação entre os componentes ( inter-component ) e os aspectos de concorrência e sincronização dentro dos componentes ( intra-component ). No framework CR RIO, que integra técnicas de metaprogramaçãoo e arquitetura de software por con- figuração, os aspectos dea coordenação podem ser tratados na arquitetura do software , usando, para isso, a linguagem de descriçãoo de arquiteturas (ADL) CBabel. CBabel é uma ADL que, além das usuais primitivas arquiteturais como componentes e portas, oferece contratos como construções básicas da linguagem. Com isso, os aspectos de coordenação são, em CBabel, descritos por contratos. Os contratos, por sua vez, são encapsulados em conectores, que intermedeiam todas as interações entre os componentes funcionais da arquitetura. Com esta abordagem, os aspectos de coordenação são separados dos aspectos funcionais. A utilização de uma ADL para especificação de um sistema permite que o sistema seja modelado em um nível de abstração apropriado à realização de análises e verificações de propriedades do sistema nas fases iniciais do projeto. Mas para a realização de análises sobre propriedades de uma arquitetura é necessário que, tanto a ADL quando as propriedades a serem verificadas, tenham um modelo semântico formal que dê significado preciso e não-ambíguo a estas. Lógica de reescrita é uma lógica e um formalismo semântico para a qual diversos modelos computacionais, lógicas e linguagens de especificação foram mapeados, dada sua visão unificada de computação e dedução. Nesta dissertação, apresentamos uma semântica formal de CBabel em lógica de reescrita. Também apresentamos a implementação desta semântica, a ferramenta Maude CBabel tool, um protótipo de ambiente executável para CBabel. Maude CBabel tool permite que descrições arquiteturais em CBabel sejam executadas e analisadas no sistema Maude, uma implementação de lógica de reescrita com suporte à metaprogramação e que dispõe de uma boa variedade de ferramentas de análise embutidas. Desta forma, durante a modelagem de sistemas complexos, podemos formalmente analisar suas descrições arquiteturais, identificando possíveis problemas e sugerindo soluções ainda na fase inicial do ciclo de desenvolvimento do sistema.Programa de Pós-Graduação em ComputaçãoComputaçãoBraga, Christiano de OliveiraCPF:31080751222http://lattes.cnpq.br/0535266455387139Sztajnberg, AlexandreCPF:31120908522http://lattes.cnpq.br/0403732822984772Haeusler, Edward HermannCPF:31205398922http://lattes.cnpq.br/6075905438020841Loques Filho, Orlando GomesCPF:31345290822http://lattes.cnpq.br/9433123288261141Borba, Paulo Henrique MonteiroCPF:31376064522http://lattes.cnpq.br/9395715443254344Rademaker, Alexandre2021-03-10T20:42:47Z2008-03-032021-03-10T20:42:47Z2005-05-30info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://app.uff.br/riuff/handle/1/17811porCC-BY-SAinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da Universidade Federal Fluminense (RIUFF)instname:Universidade Federal Fluminense (UFF)instacron:UFF2021-03-10T20:42:47Zoai:app.uff.br:1/17811Repositório InstitucionalPUBhttps://app.uff.br/oai/requestriuff@id.uff.bropendoar:21202021-03-10T20:42:47Repositório Institucional da Universidade Federal Fluminense (RIUFF) - Universidade Federal Fluminense (UFF)false
dc.title.none.fl_str_mv Uma ferramenta formal para especificação e análise de arquiteturas de software
title Uma ferramenta formal para especificação e análise de arquiteturas de software
spellingShingle Uma ferramenta formal para especificação e análise de arquiteturas de software
Rademaker, Alexandre
Ciência da computação
Software
Sistema Maude
Arquitetura de software
Linguagem de descrição de arquitetura
Maude
Lógica equacional
Architecture description language
Rewriting logic
Formal methods
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::TEORIA DA COMPUTACAO::COMPUTABILIDADE E MODELOS DE COMPUTACAO
title_short Uma ferramenta formal para especificação e análise de arquiteturas de software
title_full Uma ferramenta formal para especificação e análise de arquiteturas de software
title_fullStr Uma ferramenta formal para especificação e análise de arquiteturas de software
title_full_unstemmed Uma ferramenta formal para especificação e análise de arquiteturas de software
title_sort Uma ferramenta formal para especificação e análise de arquiteturas de software
author Rademaker, Alexandre
author_facet Rademaker, Alexandre
author_role author
dc.contributor.none.fl_str_mv Braga, Christiano de Oliveira
CPF:31080751222
http://lattes.cnpq.br/0535266455387139
Sztajnberg, Alexandre
CPF:31120908522
http://lattes.cnpq.br/0403732822984772
Haeusler, Edward Hermann
CPF:31205398922
http://lattes.cnpq.br/6075905438020841
Loques Filho, Orlando Gomes
CPF:31345290822
http://lattes.cnpq.br/9433123288261141
Borba, Paulo Henrique Monteiro
CPF:31376064522
http://lattes.cnpq.br/9395715443254344
dc.contributor.author.fl_str_mv Rademaker, Alexandre
dc.subject.por.fl_str_mv Ciência da computação
Software
Sistema Maude
Arquitetura de software
Linguagem de descrição de arquitetura
Maude
Lógica equacional
Architecture description language
Rewriting logic
Formal methods
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::TEORIA DA COMPUTACAO::COMPUTABILIDADE E MODELOS DE COMPUTACAO
topic Ciência da computação
Software
Sistema Maude
Arquitetura de software
Linguagem de descrição de arquitetura
Maude
Lógica equacional
Architecture description language
Rewriting logic
Formal methods
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::TEORIA DA COMPUTACAO::COMPUTABILIDADE E MODELOS DE COMPUTACAO
description Complex computational systems can be organized as components, that execute in a concurrent and possibly in a distributed way. The modeling of such systems has to consider coordination requirements comprising inter-component interaction styles, and intra-component concurrency and synchronization aspects. In the CR RIO framework, which makes use of meta-level and architecture configuration techniques, the coordination aspects can be treated at the software architecture level using the CBabel architecture description language (ADL). CBabel is an ADL that, besides the usual architectural primitives such as components and ports, provides contracts as first class constructions. In that way, coordination aspects can be described with CBabel contracts. Coordination aspects are encapsulated in connectors that mediate all interactions among functional modules. With this approach, one separates coordination aspects concerns from functional aspects, which do not need to be included in the design or implementation of functional modules. The use of a ADL for the specification of a system allows the system to be described in an appropriate level of abstraction allowing the analysis and verifications of architecture level properties in the initial phases of the project. But for the accomplishment of analysis of an architecture it is necessary that both the ADL and the properties to be verified have a formal semantics that gives precise and not-ambiguous meaning for them. Rewriting logic is a logic and semantic framework to which several models of computation, logics and specification languages have been mapped to, due to its unified view of computation and logic. In this dissertation, we present a formal semantics of CBabel in rewriting logic. We also present the implementation of this semantics, the tool Maude CBabel tool, a prototype executable environment for CBabel. Maude CBabel tool is implemented on top of the Maude system, a fast realization of rewriting logic with support to reflection and with a good variety of analysis tools. With Maude CBabel tool during the modeling of complex systems, we can formally analyze CBabel architectural descriptions, identifying possible problems and suggesting solutions still in the initial phase of its life cycle.
publishDate 2005
dc.date.none.fl_str_mv 2005-05-30
2008-03-03
2021-03-10T20:42:47Z
2021-03-10T20:42:47Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://app.uff.br/riuff/handle/1/17811
url https://app.uff.br/riuff/handle/1/17811
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv CC-BY-SA
info:eu-repo/semantics/openAccess
rights_invalid_str_mv CC-BY-SA
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Programa de Pós-Graduação em Computação
Computação
publisher.none.fl_str_mv Programa de Pós-Graduação em Computação
Computação
dc.source.none.fl_str_mv reponame:Repositório Institucional da Universidade Federal Fluminense (RIUFF)
instname:Universidade Federal Fluminense (UFF)
instacron:UFF
instname_str Universidade Federal Fluminense (UFF)
instacron_str UFF
institution UFF
reponame_str Repositório Institucional da Universidade Federal Fluminense (RIUFF)
collection Repositório Institucional da Universidade Federal Fluminense (RIUFF)
repository.name.fl_str_mv Repositório Institucional da Universidade Federal Fluminense (RIUFF) - Universidade Federal Fluminense (UFF)
repository.mail.fl_str_mv riuff@id.uff.br
_version_ 1802135381306507264