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

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

Arquitetura de Software Visão Geral Prof. Wolley W. Silva.

Apresentações semelhantes


Apresentação em tema: "Arquitetura de Software Visão Geral Prof. Wolley W. Silva."— Transcrição da apresentação:

1 Arquitetura de Software Visão Geral Prof. Wolley W. Silva

2 Agenda Introdução e Motivação Conceitos: Arquitetura de Software Requisitos Arquiteturalmente significativos Padrões/Estilos Arquiteturais Arquitetura de Software em um processo de desenvolvimento Visões Arquiteturais Conclusão

3 Todo sistema em produção possui uma arquitetura de software. Palace II foi um edifício residencial construído na Barra da Tijuca, Rio de Janeiro, que foi implodido no dia 28 de fevereiro de 1998, a despeito de investigações anteriores terem encontrado em registro como causa da tragédia um erro estrutural de cálculo (assinado pelo engenheiro responsável) nas vigas de sustentação.edifícioBarra da TijucaRio de Janeiroimplodido28 de fevereiro1998 Introdução e Motivação

4 Projetos simples podem ser realiados por uma única pessoa – Pouca modelagem – Ferramentas simples – Processo simples – Pouco projeto – Pouca especialização para construir Introdução e Motivação

5 Projetos complexos/Maiores exigem arquitetura – Mais modelagem – Ferramentas mais poderosas – Processos mais bem definidos – Mais projeto – Alta especialização para construção Introdução e Motivação

6 Conceito: O que é Arquitetura de SW? É a organização fundamental de um sistema, expressa nos seus componentes, nos relacionamentos entre eles e com o ambiente, e nos princípios que governam seu projeto e sua evolução. Fonte: Norma 1471 do IEEE, publicada em

7 Sistema / programa – Uma aplicação – Um conjunto de aplicações Componente – Partes do sistema / modulos, subsistemas, pacotes, classes, bibliotecas Relacionamento – Interação entre os componentes Ambiente – Embarcados, Web, Mobile, TV Digital Princípios – Padrões Arquiteturais Conceito: O que é Arquitetura de SW?

8 Martin Fowler: o termo arquitetura envolve a noção dos principais elementos do sistema, as peças que são difíceis de mudar. Uma fundação na qual o resto precisa ser construído. Elementos estruturais: Bancos de dados Servidores de Aplicação Sistemas Operacionais Protocolos de Rede Linguagem de Programação Bibliotecas de Terceiros Frameworks Conceito: O que é Arquitetura de SW?

9 Martin Fowler: Escolher uma arquitetura significa entender os problemas específicos do seu sistema e definir um projeto apropriado baseado nesse entendimento. Conceito: O que é Arquitetura de SW?

10 Requisitos Arquiteturais São requisitos de um software que tem uma forte influência na definição da sua arquitetura. – Funcionais Definem o que o software deve fazer – Não-Funcionais Define o que o software deve ser

11 Critério: Risco – Alta complexidade – Integração com outros sistemas – Integração com bibliotecas e ferramentas de terceiros Exemplos: – Caso de Uso Calcular saldo devedor O sistema calcula o saldo devedor aplicando a taxa de juros vigente em cada exercício – Caso de Uso Cadastrar fornecedor O sistema valida a situação cadastral do fornecedor no SERASA – Caso de Uso Emitir relatório de saldos contábeis O sistema gera um relatório em formato pdf, rtf ou html, conforme opção do usuário Requisitos Arquiteturais Funcionais

12 Requisitos Arquiteturais Não - Funcionais Cada requisito não-funcional de um software está relacionado com um atributo de qualidade de software. Exemplos: – O tempo de resposta máxima no horário de pico não deve ultrapassar 5 segundos. Atributo de qualidade relacionado: Performance – O software deve disponibilizar ajuda online no nível de tela Atributo de qualidade relacionado: Usabilidade

13 Padrões Arquiteturais São modelos reutilizáveis de organização de elementos de software, que resolvem problemas recorrentes e satisfazem requisitos arquiteturais. Definem responsabilidades e relacionamentos São independentes de domínio São também chamados estilos arquiteturais

14 Exemplos: – Arquitetura em camadas (tier – camadas físicas ) Cliente – Servidor 3 Camadas – Apresentação, Negócio e Acesso a Dados – Arquitetura modelo-visão-controlador – MVC (layer – camadas lógicas) – Arquitetura Orientada a Serviço (SOA) – estilo arquitetural Um software pode utilizar um ou mais padrões arquiteturais. Padrões Arquiteturais

15 Padrões Arquiteturais Famílias de Padrões Gang Of Four – GOF 23 – Padrões – Criação – Estrutura – Comportamento

16 GOF – 23 Padrões de Projeto Propósito Escopo CriaçãoEstruturalComportamental ClasseFactory MethodAdapterInterpreter Template Method ObjetoAbstract Factory Builder Prototype Singleton Adapter Bridge Composite Façade Flyweight Proxy Chain of Resposibility Command Iterator Mediator Memento Observer Strategy Visitor

17 J2EE: – Business Delegate, – Composite Entity, – Composite View, – Data Access Object, – Fast Lane, – Reader, – Front Controller, – Intercepting Filter, – Model, view,controller – Service Locator, – Session Façade, – Transfer Object, – Value List Handler, – View Helper Padrões Arquiteturais Famílias de Padrões erns/Patterns/

18 Arquitetura de Software em um Processo de Desenvolvimento - RUP

19 Análise e Design - Disciplina do RUP

20 Visões Arquiteturais Para um edifício, são usados tipos diferentes de plantas para representar diversos aspectos da arquitetura. Planta Elétrica Planta HidráulicaPlanta 3D

21 Modelo de visão 4+1 da Arquitetura - RUP Visão lógica Visão de implementação Visão de processo Visão de implantação Visão de Caso de Uso Programadores Usuário final Analistas Integradores de sistemasEngenharia de Sistemas

22 Visão Lógica Representa abstrações do modelo de domínio (classes), pacotes, camadas e suas dependências.

23 Visão de Implementação Descreve a organização de módulos estáticos no ambiente de desenvolvimento: – Componentes

24 Visão de processo Focaliza assuntos como concorrência e paralelismo, tolerância a falhas e objetos distribuídos. – Interoperabilidade – Escalabilidade

25 Visão de implantação Focaliza assuntos como: – Instalação – Desempenho – Protocolos de comunicação

26 Visão de caso de uso Contém alguns cenários-chave usados para dirigir a descoberta e projeto da arquitetura e posteriormente, para validar as diferentes visões.

27 Conclusões Segundo Pressman, 2011 – A arquitetura de software fornece uma visão integral do sistema a ser construído. Ela representa a estrutura e a organização dos componentes de software, suas propriedades e as conexões entre eles.

28 Conclusões – A arquitetura destaca decisões de projeto iniciais e fornece um mecanismo para considerar os benefícios de estruturas alternativas do sistema.

29 Conclusões Uma série de estilos e padrões arquiteturais encontra-se à disposição do engenheiro de software.

30 Links consultados ura-java-1.html ura-java-1.html um-arquiteto-java/ um-arquiteto-java/ software-na-prtica ?from_search=1 software-na-prtica ?from_search=1 de-software-uma-viso-gerencial?from_search=2 de-software-uma-viso-gerencial?from_search=2


Carregar ppt "Arquitetura de Software Visão Geral Prof. Wolley W. Silva."

Apresentações semelhantes


Anúncios Google