Escolar Documentos
Profissional Documentos
Cultura Documentos
Introdução
Por quê? O que? Como? Onde? e Quem?
Francilene Garcia
Projeto em Computação I
2009.2
Síntese
• Arquitetura de software é o caminho para:
– conectar as metas de negócios ao que iremos construir
– obter alinhamento
– organizar a atividade de produção de código
– envolver as diferentes competências de um time
• Arquitetura está muito ligada à vantagem competitiva
• Arquitetura não se obtém facilmente:
– é um trabalho de design não trivial
– cada um tem um papel a desempenhar na sua criação
– é melhor construída por um time pequeno de “arquitetos”
dedicados que dirigem o processo e tomas as decisões
Requisitos:
• estilo típico
• praça da alimentação central
• ...
Suponha o seguinte
• O Boulevard Shopping pretende construir uma
nova área. Vários aspectos do novo negócio
foram levantados pelos executivos. É chegado o
momento de traçar os planos e prazos da nova
construção. Eles pretendem uma construção
rápida, pois vários lojistas estão à espera. Os
construtores foram divididos em times. Ao time
mais experiente foi entregue a tarefa de traçar a
arquitetura do novo shopping. Cada parte da
arquitetura foi entregue a um dos time para
construção.
• O que foi obtido ao final?
Certo. Mas nós não entregamos
modelos...
• No negócio software, nós entregamos
código, e temos um certo desconforto em
trabalhar com modelos.
• Porém, se olhamos para o negócio da
construção civil, eles entregam “prédios” e
não plantas e, não iniciam um novo
projeto complexo sem começar por
desenhos de tais estruturas físicas.
Nós construímos o shopping!
Construir uma arquitetura de
software é similar...
• Na construção civil é lugar comum – sente-se a
necessidade de plantas antes de se iniciar uma nova
construção.
• Existem vários aspectos que se relacionam com
integridade, integração entre equipes, consistência nos
detalhes.
• Um plano de atividades é gerado, definindo uma
sequência clara, incluindo aspectos de sua estrutura:
entradas de luz, tolerância a ventos fortes, (em alguns
casos) suportar movimentação de equipamentos
pesados. Ou seja, existem condições típicas e atípicas a
serem consideradas.
• O que resulta de uma arquitetura incompleta?
Adaptações na arquitetura...
Arquitetura Execução
Topologia do • Visão do Processo (via Diagramas de Colaboração)
sistema/recursos • Foco: informa como se dará o comportamento do componente
e concorrência em tempo de execução, threads; como eles se comunicam; como
os recursos físicos são alocados.
Processo de construção de uma
arquitetura: Objetivos
• Criar uma arquitetura:
– BOA, tecnicamente válida e bem
documentada
– CORRETA, satisfaz aos requisitos dos
stakeholders
– De SUCESSO, como as utilizadas na
construção civil
Processo de construção da
arquitetura
Conclusão
• Uma arquitetura Boa, Correta e de
Sucesso:
– Não aparece “do nada”
– É necessário:
• Planejar (tempo!)
• Documentar e seguir avaliando (não é algo
estático)
• As vezes, joga-se fora e recomeça do zero
• Existe uma contribuição a ser dada por
cada um de nós
Referências
• http://www.bredemeyer.com
• http://www.ewita.com
• http://www.extra.research.philips.com/natl
ab/sysarch/index.html