0% acharam este documento útil (0 voto)
209 visualizações43 páginas

Projeto Arquitetura

Enviado por

Fernando Pereira
Direitos autorais
© Attribution Non-Commercial (BY-NC)
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PPT, PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
209 visualizações43 páginas

Projeto Arquitetura

Enviado por

Fernando Pereira
Direitos autorais
© Attribution Non-Commercial (BY-NC)
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PPT, PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 43

Projeto

Projeto de Arquitetura
Carlos Michel Betemps
Transparncias traduzidas a partir das originais disponveis na pgina do livro: Engenharia de Software por Ian Sommerville http://www.aw.com/sommerville_br
Ian Sommerville Engenharia de Software - UNILASALLE Slide 1

Projeto Arquitetural

Objetivo: Estabelecer uma estrutura geral e um sistema de software

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 2

Arquitetura de Software

O processo de projeto para identificar os subsistemas e um framework para o controle e a comunicao de subsistemas chamado projeto arquitetural A sada deste processo uma descrio da Arquitetura do Software

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 3

Projeto Arquitetural

o primeiro estgio do projeto Representa um vnculo importante entre o projeto e os processos de engenharia de requisitos Freqentemente realizado em paralelo com alguma atividade de especificao Envolve a identificao dos maiores componentes de um sistema e suas comunicaes

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 4

Vantagens de Projetar e Documentar Explicitamente uma Arquitetura

Comunicao com os Stakeholders (Interessados no Sistema)


Arquitetura pode ser utilizada como um ponto de discusso pelos stakeholders

Anlise de Sistema
Significa que alguma anlise pode ser realizada. O sistema pode suprir requisitos no-funcionais?

Reutilizao em Larga-escala
A arquitetura pode ser reutilizada em grande escala

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 5

Processo de Projeto Arquitetural

Estruturao do Sistema
O sistema decomposto em subsistemas principais e a comunicao entre estes identificada

Modelagem de Controle
estabelecido um modelo dos relacionamentos de controle entre as partes do sistema

Decomposio Modular
Os subsistemas identificados so decompostos em mdulos

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 6

Subsistemas e Mdulos

Um sub-sistema um sistema cuja operao no depende dos servios fornecidos por outros sub-sistemas. Um Mdulo geralmente um componente de sistema que fornece um ou mais servios para outros servios mas no considerado um sistema independente.

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 7

Modelos Arquiteturais

Diferentes modelos arquiteturais podem ser produzidos durante o processo de projeto Cada modelo apresenta diferentes perspectivas sobre a arquitetura

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 8

Modelos Arquiteturais

Modelo Estrutural Esttico que mostra os principais componentes do sistema Modelo de Processo Dinmico que mostra a estrutura do processo do sistema (processos em run-time) Modelo de Interface que define as interfaces de sub-sistemas (servios oferecidos) Modelos de Relacionamentos tais como um modelo de fluxo de dados entre os subsistemas
Ian Sommerville Engenharia de Software - UNILASALLE Slide 9

Estilos Arquiteturais

O modelo arquitetural de um sistema pode ter como base um modelo ou um estilo de arquitetura especfico Uma conscientizao desses modelos e estilos pode simplificar o problema de definio de arquiteturas de sistemas Entretanto, a maior parte dos grandes sistemas so heterogneos e no seguem um nico estilo arquitetural
Ian Sommerville Engenharia de Software - UNILASALLE Slide 10

Atributos de Arquitetura

Desempenho (Performance)
Operaes mais importantes so restringidas a um pequeno nmero de sub-sistemas, para minimizar a comunicao entre estes Uma uma arquitetura em camadas com os itens mais importantes nas camadas mais internas Isolamento de componentes crticos para segurana Incluso de componentes redundantes na arquitetura Utilizar componentes de menor granularidade e auto-contidos

Proteo (Security)

Segurana (Safety)

Disponibilidade (Availability)

Facilidade de Manuteno (Maintainability)

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 11

Estruturao do Sistema

Se preocupa com a decomposio do sistema em subsistemas que interagem entre si O projeto arquitetural normalmente expressado como um diagrama de blocos apresentando uma visualizao da estrutura do sistema Modelos mais especficos da estrutura podem ser desenvolvidos, os quais mostram como sub-sistemas compartilham dados, como esto distribudos e como atuam como interface entre si

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 12

Sistema de Controle Robotizado de Embalagem

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 13

O modelo de repositrio

Sub-sistemas devem compartilhar dados. Isto pode ser feito de duas maneiras:
Dados compartilhados so mantidos em um banco de dados central ou repositrio e pode ser acessado por todos os subsistemas Cada sub-sistema mantm seu prprio banco de dados e passa os dados explicitamente para outros sub-sistemas

Quando grandes volumes de dados so compartilhados, o modelo de repositrio o mais utilizado

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 14

Arquitetura para um Conjunto de Ferramentas CASE Integrado

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 15

Caractersticas do Modelo de Repositrio

Vantagens
Maneira eficiente de compartilhar grandes volumes de dados Os sub-sistemas no necessitam saber como o dado produzido: Gerenciamento Centralizado. Ex. Backup, segurana, etc. Modelo de compartilhamento visvel por meio do esquema de repositrio Os sub-sistemas devem estar de acordo com o modelo de dados do repositrio. Inevitavelmente um compromisso Evoluo dos dados difcil e cara No h escopo para polticas de gerenciamento especficas Difcil distribuir eficientemente

Desvantagens

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 16

Arquitetura Cliente-servidor

Modelo de sistema distribudo que mostra como dados e processamento so distribudos em uma srie de processadores (componentes) Conjunto de servidores stand-alone que fornecem servios especficos como impresso, gerncia de dados, etc. Conjunto de clientes que solicita os servios oferecidos pelos servidores Rede que permite aos clientes acessar esses servios

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 17

Biblioteca de Filmes e Fotografias

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 18

Caractersticas do Modelo Cliente-servidor

Vantagens
Distribuio de dados realizada diretamente Faz uso efetivo de sistemas em rede. Pode necessitar hardware barato Fcil de adicionar novos servidores e atualizar os existentes No existe nenhum modelo de dados compartilhado; sub-sistemas utilizam diferentes organizaes de dados. Intercmbio de dados pode ser ineficiente. Gerncia de redundncia em cada servidor No existe uma central de registros dos nomes e servios isto pode tornar difcil de encontrar quais servidores e servios esto disponveis

Desvantagens

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 19

Modelo de Mquina Abstrata


Usado para modelar a interface de sub-sistemas Organiza o sistema em um conjunto de camadas (ou mquinas abstratas) as quais fornecem um conjunto de servios Suporta o desenvolvimento incremental de subsistemas em diferentes camadas. Quando um interface de camadas modificada, somente a camada adjacente afetada Entretanto, freqentemente difcil estruturar os sistemas desta maneira

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 20

Sistema de Gerenciamento de Verses


V e r si o n m ade n averses g em e n t Gerenciamento O b je c t m an de a g objeto em en t Gerenciamento

D a t de a bbanco as e s y st em Sistema de dados


Op e r at in g Sistema s y s tem operacional

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 21

Modelos de Controle

Se ocupam com o fluxo de controle entre os sub-sistemas. Diferente do modelo de decomposio do sistema Controle Centralizado
Um sub-sistema tem completa responsabilidade para controlar, iniciar e parar outros sub-sistemas

Controle Baseado em Eventos


Cada sub-sistema pode responder eventos gerados externamente, de outros sub-sistemas ou do ambiente do sistema

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 22

Controle Centralizado

Um sub-sistema de controle assume a responsabilidade de gerir a execuo de outros sub-sistemas Modelo de retorno de Chamadas (Call-Return)
Modelo de subrotinas top-down onde o controle inicia no topo da hierarquia de subrotinas e se move para os nveis inferiores. Aplicvel para sistemas seqenciais. Aplicvel para sistemas concorrentes. Um componente de sistema controla o incio, a interrupo e a coordenao de outros processos do sistema. Pode ser implementado em sistemas seqenciais como uma declarao Case.

Modelo Gerenciador

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 23

Modelo de retorno de chamadas

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 24

Controle centralizado para sistema de tempo real

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 25

Sistemas orientados a eventos

Orientado por eventos gerados externamente onde a ocorrncia do evento est fora do controle dos subsistemas que processam os eventos Dois modelos orientados a eventos
Modelos de Transmisso (Difuso). Um evento transmitido para todos os sub-sistemas. Qualquer sub-sistema que possa manusear o evento pode responder Modelo orientados a interrupes. Usados em sistemas de temporeal onde interrupes so detectadas por um manipulador de interrupes e passadas para algum componente para processamento

Outros modelos orientados a eventos incluem planilhas e sistemas de produo

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 26

Modelo de Transmisso

Efetivo na integrao de sub-sistemas distribudos eem diferentes computadores em rede Sub-sistemas registram um interesse em eventos especficos. Quando este ocorre, o controle transferido para o sub-sistema que pode manipular o evento Poltica de controle no embutida no evento e manipulador de mensagens. Sub-sistemas decidem em quais eventos esto interessados Entretanto, sub-sistema no conhecem quando e se um evento ir ser manipulado

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 27

Transmisso Seletiva
(selective broadcasting)

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 28

Sistemas Dirigidos por Interrupes

Usados em sistemas de tempo real onde rpidas respostas, para um evento, so necessrias Existem alguns tipos de interrupo com manipulador definidos para cada tipo Cada tipo associado com um endereo de memria e um comutador de hardware provoca a transferncia para seu manipulador Permite respostas rpidas mas sua programao complexa e sua validao difcil de validar

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 29

Controle Dirigido por Interrupes

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 30

Decomposio em Mdulos

Outro nvel estrutural onde sub-sistemas so decompostos em mdulos Dois modelos de decomposio modular
Um modelo de objeto onde o sistema decomposto em objetos que se comunicam Um modelo de fluxo de dados onde o sistema decomposto em mdulos funcionais, os quais transformam entradas em sadas. Tambm conhecido como modelo pipeline

Se possvel, decises sobre concorrncia devem ser atrasadas at os mdulos serem implementados

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 31

Modelo de Objetos

Estrutura o sistema em um conjunto de objetos fracamente acoplados com interfaces bem definidas Decomposio orientada a objetos se ocupa com identificar classes de objetos, seus atributos e operaes Quando implementado, os objetos so criados a a partir destas classes e algum modelo de controle utilizado para coordenar as operaes de objetos
Ian Sommerville Engenharia de Software - UNILASALLE Slide 32

Sistema de Processamento de Faturas

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 33

Modelos de Fluxo de Dados

Transformaes funcionais processam suas entradas para produzir sadas Pode ser referenciado como modelo de duto e filtro (pipe and filter model, como no shell do UNIX) Variantes desta abordagem so muito comuns. Quando transformaes so seqenciais, ento tm-se um modelo seqencial em lote (batch), o qual extensivamente utilizado em sistemas de processamento de dados No conveniente para sistemas interativos

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 34

Sistema de Processamento de Faturas

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 35

Arquiteturas de Domnio Especfico

Modelos arquiteturais que so especficos para algum domnio de aplicao Dois tipos de modelo de domnio especfico
Modelos genricos, que so abstraes a partir de uma srie de sistemas reais e que englobam as caractersticas principais desses sistemas Modelo de referncia, que so mais abstratos (modelos idealizados). Fornecem um meio de informar os projetistas sobre a estrutura geral daquela classe de sistemas e uma maneira de comparao de diferentes arquiteturas

Modelos genricos so modelos derivados botton-up; Modelos de referncia so modelos derivados top-down

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 36

Modelos Genricos

Modelo de Compilador um exemplo bem conhecido, embora outros modelos existam para domnios de aplicao mais especializados
Analisador Lxico Tabela de Smbolos Analisador Sinttico rvore de Sintaxe Analisador Semntico Gerador de Cdigos

Modelos de compilador genrico pode ser organizado de acordo com diferentes modelos de arquitetura

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 37

Modelo de Fluxo de Dados de um Compilador

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 38

Modelo de Repositrio de um Sistema de Processamento de Linguagens

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 39

Arquiteturas de Referncia

Modelos de referncia so derivados de um estudo do domnio de aplicao ao invs de sistemas existentes Podem ser usados como uma base para implementao de sistemas ou para comparar diferentes sistemas. Atua como um padro contra o qual sistemas podem ser avaliados. Modelo OSI um modelo em camadas para a comunicao entre sistemas
Ian Sommerville Engenharia de Software - UNILASALLE Slide 40

OSI reference model


Application

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 41

Pontos Chave

O arquiteto de software responsvel por derivar um modelo estrutural do sistema, um modelo de controle e um modelo de decomposio em sub-sistemas Grandes sistemas raramente so compatveis com um nico modelo de arquitetura Modelos de decomposio de sistemas incluem modelos de repositrio, modelos cliente-servidor e modelos de mquina abstrata Modelos de controle incluem modelos de controle e de evento centralizados

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 42

Pontos Chave

Modelos de decomposio em mdulos incluem modelos de fluxo de dados e de objeto Modelos de arquitetura de domnio especfico so abstraes em relao a um domnio de aplicao. Estes podem ser construdos a partir de sistemas existentes (modelos genricos) ou pode ser um modelo de referncia idealizado

Ian Sommerville

Engenharia de Software - UNILASALLE

Slide 43

Você também pode gostar

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy