A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Introdução à Arquitetura de Software Virgínia C. C. de Paula - DIMAp/UFRN - DI/UFPE Nelson Souto Rosa - DI/UFPE Paulo R. F. Cunha - DI/UFPE.

Apresentações semelhantes


Apresentação em tema: "Introdução à Arquitetura de Software Virgínia C. C. de Paula - DIMAp/UFRN - DI/UFPE Nelson Souto Rosa - DI/UFPE Paulo R. F. Cunha - DI/UFPE."— Transcrição da apresentação:

1

2 Introdução à Arquitetura de Software Virgínia C. C. de Paula - DIMAp/UFRN - DI/UFPE Nelson Souto Rosa - DI/UFPE Paulo R. F. Cunha - DI/UFPE

3 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 2 Agenda l Introdução l Arquitetura de software l Estilos arquiteturais l Linguagens de descrição de arquitetura l Exemplo l Tendências

4 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 3 Introdução l Contexto Arquitetura de Software Pontos básicosTópicos de pesquisa Histórico AS como disciplina ADLs Estilos Formalização Novas ADLs Arquiteturas convergentes Ferramentas Engenharia de Software Desenvolvimento baseado em arquitetura Estilos Engenharia de requisitos...

5 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 4 Introdução l Motivação A estrutura do software é importante, e adotar a estrutura correta pode trazer benefícios O aumento do tamanho e da complexidade dos softwares

6 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 5 Introdução l Motivação A importância da Arquitetura de Software para os projetistas de software nos anos 90 é comparável a importância das estruturas de dados para os programadores nos anos 60

7 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 6 Introdução l Histórico –Dijkstra, 1968 particionamento estruturação do software –Parnas, 1970-2 família de programas estrutura do software –DeRemer, 1975 Programming-in-the-small X Programming-in- the large

8 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 7 Introdução l Histórico –1970-80 Componentes de um compilador –1980 Divisão em camadas das pilhas de protocolos

9 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 8 Agenda l Introdução l Arquitetura de software l Estilos arquiteturais l Linguagens de descrição de arquitetura l Exemplo l Tendências

10 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 9 Arquitetura de software l Sobre o termo Arquitetura de Software  Disciplina  área emergente da ES  aborda as questões ligadas à estrutura do software  Estrutura do software  várias definições  nenhuma aceita como padrão  semelhanças no núcleo das definições e diferenças nas características adicionais

11 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 10 Arquitetura de software l Definição 1 “Uma arquitetura de software deve conter: a definição dos elementos de projeto que compõe o software; a descrição das interações entre estes elementos; os padrões de composição dos elementos; e um conjunto de restrições sobre estes padrões.” [Shaw 96]

12 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 11 Arquitetura de software l Definição 2 “A descrição da arquitetura de software é um passo intermediário entre a análise de requisitos e o projeto. Esta descrição consiste de elementos arquiteturais, as interações entre estes elementos, e as restrições sobre estes elementos e sobre as suas interações.” [Perry 92]

13 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 12 Arquitetura de software l Definição 3 “Uma arquitetura de software é um conjunto de componentes genéricos junto com uma descrição de propriedades, regras de como estes componentes podem interagir, e estilo de interação destes componentes.” [Jackson 95]

14 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 13 Arquitetura de software l Definição 4 “Arquitetura de software é a estrutura de um programa ou um sistema, seus relacionamentos e os princípios que guiam o seu projeto e a sua evolução no tempo.” [Garlan 95]

15 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 14 Arquitetura de software l Pontos comuns  “elementos arquiteturais”  “elementos de projeto”  “componentes genéricos”  “estrutura”  “interações”  “interagir”  Componentes  Conectores  Configuração

16 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 15 Arquitetura de software l Modelos –Perry, 1992 elementos –processamento, armazenamento, interação forms –conjunto de propriedades dos elementos e dos relacionamentos rationale –“justificativa” para os elementos e forms

17 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 16 Arquitetura de software l Modelos –Shaw, 1996 componentes conectores configuração

18 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 17 Arquitetura de software l Componente –modela a computação e o armazenamento de informações –desenvolvido independentemente –exemplos de componentes cliente servidor aplicação inteira

19 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 18 Arquitetura de software l Conector –modela as interações entre os componentes –desenvolvido independentemente –exemplos de conectores protocolos de comunicação

20 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 19 Arquitetura de software l Configuração –topologia –composição –conjunto de componentes combinados usando-se os conectores –grafo de componentes e conectores ligados, descrevendo uma estrutura arquitetural

21 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 20 Arquitetura de software l Visão de uma Arquitetura de Software Componente Conector Configuração

22 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 21 Arquitetura de software l Componentes e formas de interação  MóduloChamada de procedimento Dados compartilhados  Objeto Invocação de método  FiltroFluxo de dados ( pipe )  ProcessoPassagem de mensagem, RPC  Arquivo de dadosLeitura e escrita  Base de dadosConsulta  Componentes  Tipos de interação

23 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 22 Arquitetura de software l Software X Hardware  número pequeno de elementos de projeto  mudança de escala com a replicação dos elementos de projeto  ênfase na organização e configuração  Arquitetura de Hardware  grande número de elementos de projeto  mudança de escala com a adição de novos elementos de projeto  ênfase na organização e configuração  Arquitetura de Software

24 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 23 Arquitetura de software l Software X Rede  nós  conexões  poucas topologias  Arquitetura de Rede  componentes  conectores  muitas topologias  Arquitetura de Software

25 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 24 Arquitetura de software l Software X Construção  visões enfatizando diferentes aspectos da construção  restrição sobre os elementos de projeto e a composição  estreita relação entre o estilo arquitetural e os princípios de engenharia  a relação entre o estilo e o material utilizado para a construção é fundamental  Arquitetura de Construção  visões para diferentes usos e usuários  estilos arquiteturais  princípios de engenharia e estilo arquitetural  implementação ( algoritmos e estrutura de dados que satisfazem a arquitetura )  Arquitetura de Software

26 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 25 Arquitetura de software l Sobre Arquitetura de Software –descrição mais abstrata no ciclo de vida do software –suprime detalhes da implementação –Arquitetura de Software sempre existiu, mas era implícita

27 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 26 Arquitetura de software l Sobre Arquitetura de Software –separação de interesses funcionalidade interação Funcionalidade e Interação Funcionalidade Interação

28 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 27 Arquitetura de software l Sobre Arquitetura de Software –define aspectos estruturais importantes –fornece uma base para as outras fases de desenvolvimento do software –a arquitetura é normalmente descrita usando-se linhas e caixas de diagramas acompanhados por uma descrição textual

29 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 28 Arquitetura de software l Desenvolvimento de software Análise de requisitos Arquitetura Projeto Análise de requisitos Implementação Análise do domínio Desenvolver / escolher a arquitetura Representação da arquitetura Projeto Implementação  Desenvolvimento tradicional  Desenvolvimento baseado em arquitetura Análise e avaliação da arquitetura

30 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 29 Arquitetura de software l Arquitetura X Projeto  componentes e conectores  restrições sobre componentes e conectores  composição de componentes  Arquitetura  procedimentos e interfaces  algoritmos e estruturas de dados  composição procedural  Projeto

31 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 30 Arquitetura de software l Por que definir uma Arquitetura de Software? –reuso de elementos de projeto permitindo maior rapidez na construção do software –definindo-se uma arquitetura é possível predizer algumas características do software

32 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 31 Arquitetura de software l Por que definir uma Arquitetura de Software? –facilita a comunicação entre os desenvolvedores do software –permite um entendimento maior da evolução do software

33 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 32 Arquitetura de software l Por que definir uma Arquitetura de Software? –possibilidade de análise da descrição da arquitetura nas fases iniciais do desenvolvimento consistência da configuração, componentes e conectores completude propriedades não funcionais conformidade com um determinado estilo

34 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 33 Agenda l Introdução l Arquitetura de software l Estilos arquiteturais l Linguagens de descrição de arquitetura l Exemplo l Tendências

35 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 34 Estilos arquiteturais l Sobre o termo Estilo arquitetural –padrão organizacional –padrão arquitetural –padrão idiomático –padrão de organização estrutural –idioma arquitetural

36 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 35 Estilos arquiteturais l Definição “Um estilo arquitetural consiste de um vocabulário de elementos de projeto, um conjunto de regras de configuração, uma interpretação semântica da composição dos elementos, e um conjunto de análises que podem ser executadas sobre um sistema construído em um determinado estilo.” [Garlan 95]

37 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 36 Estilos arquiteturais l Vocabulário –idioma de projeto –restringe os elementos arquiteturais que podem ser utilizados em uma descrição de arquitetura –elementos arquiteturais componentes conectores

38 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 37 Estilos arquiteturais l Regras de configuração –restrições topólogicas –restrigem as composições dos elementos arquiteturais proibição de ciclos no estilo Fipe-filter relacionamento n-para-1 no estilo Cliente- servidor

39 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 38 Estilos arquiteturais l Análise –verificação de propriedades ausência de deadlock em um estilo Cliente- servidor l Interpretação semântica –a composição dos elementos de projeto precisa de uma semântica bem definida

40 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 39 Estilos arquiteturais l Sobre Estilo Arquitetural –uso ad hoc “Camelot é baseado no modelo Cliente-servidor e usa RPC para comunicação remota e local dos clientes e servidore” [Spector 87] –define uma família e não apenas um sistema –explora os pontos comuns entre famílias de sistemas e ignora detalhes específicos –a construção de compiladores é o primeiro exemplo do uso de estilos

41 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 40 Estilos arquiteturais l Sobre Estilo Arquitetural –a descrição da arquitetura é uma instância de um estilo –exemplos Cliente-servidor Pipe-filter Objetos Invocação implícita Camadas, repositórios

42 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 41 Estilos arquiteturais l Sobre Estilo Arquitetural Arquitetura de software Servidor Cliente Request-reply Estilo Cliente-servidor

43 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 42 Estilos arquiteturais l Sobre Estilo Arquitetural Arquitetura de software Central Fonte Estilo Blackboard

44 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 43 Estilos arquiteturais l Sobre Estilo Arquitetural Arquitetura de software Filtro Pipe Estilo Pipe-Filter

45 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 44 Estilos arquiteturais l Sobre Estilo Arquitetural Arquitetura de software Filtro Pipe Estilo Pipe-Filter

46 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 45 Estilos arquiteturais l Por que definir estilos arquiteturais? –reuso de projetos –reuso de código –o uso de estruturas convencionais facilita o entendimento da arquitetura “cliente-servidor” –a restrição do espaço de projeto permite análises mais especializadas para os estilos

47 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 46 Agenda l Introdução l Arquitetura de software l Estilos arquiteturais l Linguagens de descrição de arquitetura l Exemplo l Tendências

48 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 47 Linguagens de descrição de arquitetura l ADL - Architecture Description Language l O que podemos esperar de uma linguagem para descrição de arquitetura de software? –ênfase em estruturas de alto nível em oposição a detalhes de implementação

49 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 48 Linguagens de descrição de arquitetura l Como uma ADL se relaciona com outras linguagens? Linguagens de Requisitos Linguagem de Requisitos Linguagens de Programação Linguagens de Modelagem

50 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 49 Linguagens de descrição de arquitetura l ADLs e outras linguagens  vinculam abstrações arquiteturais à soluções específicas  Linguagens de Programação  representam trechos de comportamento para facilitar a apresentação dos requisitos, adequando-se a representação de componentes arquiteturais  têm enfoque no problema  Linguagens de Requisitos

51 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 50 Linguagens de descrição de arquitetura l ADLs e outras linguagens  enfatizam o comportamento do todo ao invés do comportamento das partes  podem representar componentes cooperativos e representam arquiteturas razoavelmente bem  Linguagens de Modelagem  intencionalmente, suprimem o vínculo de abstrações com soluções específicas  têm enfoque na solução  concentram-se na representação das partes  ADLs

52 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 51 Linguagens de descrição de arquitetura l Propriedades desejáveis de uma ADL –Composição divisão hierárquica de um sistema complexo em partes menores –Abstração explicitar a estrutura de mais alto nível –Reusabilidade componentes, conectores e padrões de arquitetura

53 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 52 Linguagens de descrição de arquitetura l Propriedades desejáveis de uma ADL –Configuração separação da descrição de estruturas compostas da descrição dos elementos dessas composições –Análise permite verificar propriedades dos sistemas, especialmente referentes a Arquiteturas Dinâmicas Arquiteturas dinâmicas são aquelas que permitem evolução da estrutura de um sistema durante sua execução.

54 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 53 Linguagens de descrição de arquitetura l Propriedades desejáveis de uma ADL –Heterogeneidade habilidade para combinar diferentes padrões arquiteturais em um mesmo sistema possibilidade de combinar componentes escritos em linguagens diferentes

55 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 54 Linguagens de descrição de arquitetura l Propriedades desejáveis de uma ADL –habilidade para representar componentes (primitivos ou compostos) –habilidade para representar conectores –abstração e encapsulamento –tipos e checagem de tipos –permitir a construção de ferramentas de análise

56 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 55 Linguagens de descrição de arquitetura l Propriedades desejáveis de uma ADL –abstração de componentes –abstração de comunicação –integridade de comunicação a comunicação é limitada a componentes conectados arquiteturalmente a outros –habilidade de modelar arquiteturas dinâmicas

57 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 56 Linguagens de descrição de arquitetura l Propriedades desejáveis de uma ADL –habilidade de ter intuição sobre causa e tempo –suporte a refinamento hierárquico –relatividade mapeamento de comportamentos para arquiteturas diferentes (checagem de conformidade)

58 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 57 Linguagens de descrição de arquitetura l Generalidade das ADLs –instâncias arquiteturais projetadas para descrever sistemas específicos –estilos arquiteturais projetadas para descrever padrões de estruturas de arquitetura –arquiteturas em geral procuram dar significado à questões de arquitetura e as formas como abstrações arquiteturais permitem análise de projeto.

59 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 58 Linguagens de descrição de arquitetura l Modelagem de componentes –conceitos diferentes em cada ADL MetaH – um programa C2 – uma aplicação inteira (componentes hierárquicos) –interfaces de componentes pontos de interação com o ambiente externo permitem a percepção da semântica dos componentes –serviços oferecidos –portas de comunicação

60 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 59 Linguagens de descrição de arquitetura l Modelagem de componentes –componentes como tipos para serem reusados –uso explícito de parametrização ACME, Darwin e Rapide –semântica dos componentes permite análise do comportamento, estabelecimento de restrições e mapeamento consistente de um nível para outro da arquitetura

61 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 60 Linguagens de descrição de arquitetura l Modelagem de componentes –restrições podem ser definidas por uma linguagens específica –componentes podem evoluir subtipagem de componentes refinamento A maioria das ADLs não oferece suporte à evolução.

62 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 61 Linguagens de descrição de arquitetura l Modelagem de componentes –especificação de propriedades não-funcionais permite simulação do comportamento em tempo de execução análise dos componentes verificação de restrições auxilia no gerenciamento do projeto A maioria das ADLs não oferece suporte à especificação de propriedades não-funcionais.

63 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 62 Linguagens de descrição de arquitetura l Modelagem de conectores –não necessariamente corresponde a uma unidade de compilação em uma implementação –podem ser modelados explicitamente possuem interface própria

64 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 63 Linguagens de descrição de arquitetura l Modelagem de conectores –podem ser modelados como entidades de primeira classe tipos ou instâncias estabelecer restrições de uso via interface suportar evolução

65 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 64 Linguagens de descrição de arquitetura l Modelagem de conectores –ADLs podem fornecer protocolos de conectores e semântica de transações. análise sobre as interações verificação de restrições A maioria das ADLs não oferece suporte à evolução e à especificação de propriedades não-funcionais.

66 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 65 Linguagens de descrição de arquitetura l Modelagem de configurações –a estrutura de um sistema deve, idealmente, permitir que a especificação da configuração seja compreendida sem se conhecer os componentes e os conectores –descrição de configurações permite estimar aspectos concorrentes e distribuídos de uma arquitetura

67 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 66 Linguagens de descrição de arquitetura l Modelagem de configurações –ADLs podem modelar evolução e dinamismo das configurações –suporte à composição hierárquica é fundamental em uma ADL –em algumas ADLs uma configuração é modelada simplesmente como um componente composto Darwin UniCon CL

68 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 67 Linguagens de descrição de arquitetura l Modelagem de configurações –heterogeneidade uma configuração deve idealmente lidar com componentes e conectores programados em diversas linguagens –a especificação de restrições é fundamental para descrever dependências entre componentes e conectores –Uma ADL deve permitir refinamento da arquitetura

69 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 68 Linguagens de descrição de arquitetura l Modelagem de configurações –devem suportar especificação e desenvolvimento de sistemas que possam sofrer alterações durante sua execução. C2 Darwin Rapide ZCL

70 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 69 Linguagens de descrição de arquitetura l ACME –tentativa de definir um denominador comum através de uma linguagem de intercâmbio para arquitetura de software –modela componentes conectores sistemas (configurações)

71 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 70 Linguagens de descrição de arquitetura l ACME –propriedades Portas –pontos de interação Roles – especifica o papel desempenhado por cada participante de uma interação

72 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 71 Linguagens de descrição de arquitetura l ACME –propriedades Representações – cada detalhamento de uma estrutura hierárquica Rep-maps (represention maps) – indica a correspondência entre a representação interna de um sistema e a interface externa do componente ou conector

73 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 72 Linguagens de descrição de arquitetura l Exemplo CL - descrição textual O sistema de monitoramento de pacientes consiste de medições periódicas ou por solicitação de pulso, temperatura e pressão através de sensores colocados no paciente. Tais sensores disparam um alarme sempre que qualquer das medições atingirem valores não adequados.  Sistema de Monitoramento de Pacientes

74 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 73 Linguagens de descrição de arquitetura l Exemplo CL - representação gráfica Paciente estado alarme estado Enfermeira Hospital

75 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 74 Linguagens de descrição de arquitetura l Exemplo CL - descrição CL system hospital begin use task enfermeira, paciente; create cama from paciente; create cuidado from enfermeira ; link cama.alarme to cuidado.alarme; link cuidado.estado to cama.estado; activate cuidado, cama; end.

76 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 75 Agenda l Introdução l Arquitetura de software l Estilos arquiteturais l Linguagens de descrição de arquitetura l Exemplo l Tendências

77 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 76 Exemplo l Sistema de Informação da Internet ( SII ) –sistemas usados para busca de informações na Internet –exemplos Gopher WAIS Archie / Prospero WWW

78 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 77 Exemplo l World-Wide Web “WWW é um sistema hipermídia distribuído organizado como um conjunto de clientes e servidores que compartilham um conjunto comum de protocolos de comunicação. Os servidores disponibilizam recursos para uma comunidade de clientes que usam o HTTP (HyperText Transfer Protocol)”

79 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 78 Exemplo l Componentes do servidor –servidor HTTP –resolvedor de caminho permite determinar o arquivo que está sendo requisitado –gerenciador de streams gerencia a comunicação com a rede –gerenciador de interface interface para mostrar os resultados das solicitações dos usuário

80 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 79 Exemplo l Componentes do cliente –gerenciador de acesso formula as solicitações de acordo com o protocolo utilizado –gerenciador de protocolo faz o mapeamento entre os vários protocolos ( HTTP, NNTP, FTP, Gopher ) e o gerenciador de acesso

81 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 80 Exemplo l Componentes do cliente –gerenciador de streams trata as comunicações de rede –gerenciador de cache mantém uma cópia local das informações solicitadas

82 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 81 Exemplo l Arquitetura CGI Sistema de Arquivos Ger. Interface Usuário Ger. Acesso Ger. Protocolos Ger.Cache Ger. Streams Protocolos Cliente Servidor Resolvedor de caminho Ger. Streams Servidor HTTP

83 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 82 Exemplo l Estilo arquitetural –vocabulário processo componente computacional repositório de dados passivo repositório de dados ativo –conector fluxo de dados bi e uni direcional fluxo de controle bi e uni direcional

84 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 83 Agenda l Introdução l Arquitetura de software l Estilos arquiteturais l Linguagens de descrição de arquitetura l Exemplo l Tendências

85 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 84 Tendências l ADLs e arquiteturas dinâmicas –arquiteturas dinâmicas são aquelas que permitem evolução da estrutura de um sistema durante sua execução –geralmente descrevem sistemas críticos e de longa vida –as mudanças devido à evolução do sistema normalmente são descritas no nível de configuração

86 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 85 Tendências l ADLs e arquiteturas dinâmicas –adição de novos componentes

87 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 86 Tendências l ADLs e arquiteturas dinâmicas –substituição de um componente existente por um outro de mesma assinatura.

88 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 87 Tendências l ADLs e arquiteturas dinâmicas –remoção de componentes desnecessários.

89 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 88 Tendências l ADLs e arquiteturas dinâmicas –reconfiguração da arquitetura

90 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 89 Tendências l ADLs e arquiteturas dinâmicas –pode ser necessário mover um componente de uma máquina para outra. A arquitetura deve dar suporte a modificações no mapeamento dos componentes para os processadores. –ADLs que suportam dinamismo: C2, Darwin, Rapide e ZCL.

91 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 90 Tendências l Formalização de arquitetura de software –modelo de Abowd, Allen e Garlan –definição de estilos domínio sintático – componentes, conectores e configurações mapeamento do domínio sintático para o modelo semântico do estilo

92 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 91 Tendências l Formalização de arquitetura de software –inicialmente foi proposto um modelo para MILs, incorporando elementos essenciais e operações como esquemas genéricos em Z o modelo inicial foi estendido formando o Architectural Style Description Language (ASDL) –Semântica de componentes e interacões –Estruturas hierárquicas –Arquiteturas estáticas

93 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 92 Tendências l Formalização de arquitetura de software –Modelo Wright descrição da arquitetura com base na descrição formal do comportamento abstrato de componentes e conectores comportamento dos componentes especificado em CSP é possível descrever aplicações e estilos

94 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 93 Tendências l Formalização de arquitetura de software –Modelos formais que suportam dinamismo Darwin Allen, Douence e Garlan ZCL

95 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 94 Tendências l Formalização de estilos –comparar estilos –relacionar sistemas desenvolvidos em diferentes estilos –desenvolver ferramentas para explorar estilos –combinar estilos para formar um novo l Desenvolvimento de software baseado em arquitetura

96 XII SBES 13-16 de Outubro de 1998 Maringá - Paraná - Brasil SBES'98 - Maringá, Paraná {vccp,nsr,prfc}@di.ufpe.br 95 Tendências l ADLs de alto nível l Desenvolvimento de arquiteturas para domínios específicos l Integração de ADLs com metodologias de projeto padrões


Carregar ppt "Introdução à Arquitetura de Software Virgínia C. C. de Paula - DIMAp/UFRN - DI/UFPE Nelson Souto Rosa - DI/UFPE Paulo R. F. Cunha - DI/UFPE."

Apresentações semelhantes


Anúncios Google