Upload
internet
View
113
Download
0
Embed Size (px)
Citation preview
Representação Arquitetural
Prof. Wolley W. Silva
Agenda
• Conceitos de Arquitetura• Representação Arquitetural– Contextual– Tecnológica
• Exercício
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 http://www.iso-architecture.org/ieee-1471/faq.html#wharch
• 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”
Conceito: O que é Arquitetura de SW?Princípios/ Padrões / Estilos
Uma arquitetura mal projetada...
• O sistema possui todos os casos de uso implementados, no entanto...– Sua usabilidade é ruim;– Não suporta quando há picos de utilização;– Possui potenciais falhas de segurança– É difícil e caro para manter e evoluir– Não suporta o crescimento (dados, usuários) com
o tempo;– Seu desempenho é inaceitável para o usuário
Uma arquitetura mal projetada...
RUP: Processo Unificado
RUP – Processo Unificado• Passagens pela sequência de disciplinas - iterações
RUP – Processo Unificado
• Centrado na Arquitetura– A arquitetura é prototipada e definida logo nas
primeiras iterações– A arquitetura serve para definir a organização da
equipe de desenvolvimento e identificar oportunidades de reuso
Por que modelar?
• Um modelo é uma simplificação da realidade. • Construímos modelos para:– Gerenciamento da complexidade;– Comunicação entre as pessoas envolvidas;– Redução dos custos no desenvolvimento;– Predição do comportamento futuro do sistema.
Representação do Sistema no Contexto
• Diagrama de Contexto Arquitetural – modela a maneira pela qual o software interage com entidades externas a seus limites.
Pressman, 2011
Representação do Sistema no Contexto
• Sistemas superiores: sistemas que usam o sistema alvo;
• Sistemas subordinados: sistemas que utilizados pelo sistema-alvo;
• Sistemas de mesmo nível: sistema que interagem com o sistema-alvo (produz ou consome informações);
• Atores: entidades (pessoas, dispositivos) que interagem com o sistema-alvo;
Representação do Sistema no Contexto
• Exemplo: Sistema de Gestão Escolar
GestãoFinanceira
GestãoAcadêmica
Funcionários ADM
Professores
Alunos
• O software a ser desenvolvido dever ser colocado no seu contexto;
• A partir dos requisitos do sistema, é possível identificar as entidades externas e suas interações com o sistema e seus módulos/componentes;
• Cada modulo identificado ainda não fornece detalhes de implementação suficientes;
Representação do Sistema no Contexto
Representação ArquiteturalTecnologias
• Exemplo
Representação ArquiteturalTecnologias
• Exemplo
Representação ArquiteturalTecnologias
• Exemplo
Representação ArquiteturalTecnologias
• Exemplo
• Círculos: Elementos com comportamento dinâmico, tais como: Servidores de Aplicação, Servidores Web, Servidores de Banco de Dados, Servidores de Mensagens, Classes Listerner...
• Retângulo / Quadrado: Elementos estáticos, tais como: Classes, Entidades/Tabelas, Interface de Usuário...
• Setas: Conexão entre os elementos, minimamente identificados.
Representação ArquiteturalTecnologias
Texto TextoTexto
Exercício
• Modelar uma Representação Arquitetural para o projeto PFC.– Arquitetura contextual e Tecnológica;– Descreva cada modulo/componente representado
destacando suas funcionalidade e relacionamentos com os demais;
– Descreva os Padrões e/ou Restrições que foram levados em consideração para elaboração da arquitetura proposta;
– Descreva as tecnologias e Frameworks utilizados na composição da arquitetura.
Dica para Leitura
• http://blog.globalcode.com.br/2012/03/arquitetura-java-1.html