Baixe o app para aproveitar ainda mais
Prévia do material em texto
PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO CENTRO DE INFORMÁTICA UNIVERSIDADE FEDERAL DE PERNAMBUCO ACME: Uma linguagem de descrição arquiteturaldescrição arquitetural Josias Paes Orientador: Prof. Dr. Jaelson Freire Brelaz de Castro Reunião do grupo LER Agenda � Introdução � Arquitetura de software � Linguagem de descrição arquitetural (ADL) ACME Josias Paes 2 � ACME � AcmeStudio Arquitetura de software � A arquitetura de software define o que é o sistema em termos de componentes computacionais e os relacionamentos entre estes componentes [SHAW96]. Josias Paes 3 estes componentes [SHAW96]. Arquitetura de software � Estruturar uma boa arquitetura no processo de desenvolvimento de software prover facilitação no entendimento da comunicação entre os envolvidos no projeto e antecipa Josias Paes 4 entre os envolvidos no projeto e antecipa tomadas de decisões no projeto. ADL � Uma linguagem de descrição de arquitetural (ADL) é utilizada para descrever uma arquitetura de software. Josias Paes 5 � Pode ser descrita através de uma linguagem formal ou semi-formal, uma linguagem gráfica, ou incluir ambas. Acme � O projeto Acme começou no início de 1995 pelo projeto ABLE (Architecture Based Languages and Environments) na Carnegie Mellon University's. Josias Paes 6 Mellon University's. � Tornou-se uma linguagem de descrição de arquitetura (ADL), com o objetivo de facilitar o desenvolvimento de projeto de arquitetura e análise de novas ferramentas. Acme � Atualmente, a linguagem Acme fornece uma infra-estrutura genérica e extensível para descrever, representar, gerar e analisar descrições de arquitetura de software. Josias Paes 7 descrições de arquitetura de software. Acme Características da linguagem � É uma ontologia de arquitetura composta por sete elementos básicos de concepção de estruturas de arquiteturas; Mecanismo de notações para representar as Josias Paes 8 � Mecanismo de notações para representar as associações de informações não-estruturais usando sub-linguagens definidas externamente; Acme Elementos de design � Acme é construído sobre um core ontology composto por sete tipos de entidades de representação arquitetural, são: componentes (components), conectores (connectors), Josias Paes 9 (components), conectores (connectors), sistemas (systems), portas (ports), papeis (roles) e representações (representations). Acme Elementos de design Josias Paes 10 Acme Elementos de design � Systems – representam as configurações dos componentes e conectores de um sistema. � Components – representam os elementos básicos da computação e armazenam informações próprias ou do sistema. Josias Paes 11 próprias ou do sistema. � Connectors – os conectores mediam as comunicações e a coordenação (interação) entre os componentes. Conectores também podem representar interações mais complexas, como um protocolo cliente-servidor ou uma ligação entre um banco de dados e um aplicativo. Acme Elementos de design � Ports – Um conjunto de portas pode ser definido nos componentes. Cada porta identifica uma interação entre um componente e o ambiente. Josias Paes 12 componente e o ambiente. � Roles – Um conjunto de papeis pode ser definido nos conectores. Cada papel define uma instância de um participante (e.g. components) da interação representada por um conector. Acme Elementos de design Josias Paes 13 Acme Elementos de design � Representations - Acme suporta a representação hierárquica das arquiteturas. Especificamente, qualquer componente ou conector pode representar um ou mais Josias Paes 14 conector pode representar um ou mais detalhes. Representações são denominadas representations em Acme. Acme Representação Josias Paes 15 Acme Elementos de design Josias Paes 16 Acme Propriedades � Cada ADL normalmente tem seu próprio conjunto de informações auxiliares que determinam informações como: � Tempo de execução do sistema Josias Paes 17 � Tempo de execução do sistema � Protocolos de interação � Restrições e informações sobre o consumo do recurso � Cada propriedade tem um nome, um tipo de opcional, e um valor. Qualquer um dos sete tipos de entidades em Acme pode conter propriedades. Acme Propriedades Josias Paes 18 Acme Families � Acme define previamente famílias de arquiteturas que podem ser comumente encontradas na maioria dos sistemas de softwares, por exemplo: Josias Paes 19 softwares, por exemplo: � Cliente-Servidor; � Compartilhamento de dados; � Segurança; � etc. AcmeStudio Josias Paes 20
Compartilhar