Escolar Documentos
Profissional Documentos
Cultura Documentos
imasters.com.br > Portal Fóruns 7Masters Revista Ferramentas Cursos online Agenda Eventos: PHP Experience InterCon Developer Week BH DevCommerce
Facebook
Twitter
/DESIGN
Arquitetura evolucionária e
design emergente:
considerações e técnicas para
arquitetura ágil
developerWorks Brasil em Arquitetura de Informação
http://imasters.com.br/artigo/18469/ai/arquitetura_evolucionaria_e_design_emergente_consideracoes_e_tecnicas_para_arquitetura_agil/ 1/18
05/06/2015 Arquitetura evolucionária e design emergente: considerações e técnicas para arquitetura ágil
http://imasters.com.br/artigo/18469/ai/arquitetura_evolucionaria_e_design_emergente_consideracoes_e_tecnicas_para_arquitetura_agil/ 2/18
05/06/2015 Arquitetura evolucionária e design emergente: considerações e técnicas para arquitetura ágil
seu nome
A conclusão para a definição de arquitetura de Fowler é que você deve
seu email
http://imasters.com.br/artigo/18469/ai/arquitetura_evolucionaria_e_design_emergente_consideracoes_e_tecnicas_para_arquitetura_agil/ 3/18
05/06/2015 Arquitetura evolucionária e design emergente: considerações e técnicas para arquitetura ágil
http://imasters.com.br/artigo/18469/ai/arquitetura_evolucionaria_e_design_emergente_consideracoes_e_tecnicas_para_arquitetura_agil/ 4/18
05/06/2015 Arquitetura evolucionária e design emergente: considerações e técnicas para arquitetura ágil
Nessa versão, a classe de domínio (em amarelo) inclui uma interface que
define a semântica de um item de planejamento. O ScheduleItem original
implementa essa interface, que é também implementada por
ScheduleItemForm, forçando a semântica das duas classes sempre a
concordar.
Política de arquitetura
Os
problemas tecnológicos têm soluções. (Às vezes, as soluções são
difíceis, mas os problemas tecnológicos têm uma solução.) Os problemas
sociais são muito mais confusos e difíceis de resolver. Uma das famosas
citações do livro Peopleware é:
Infelizmente, vários
fornecedores de software entendem esse desejo e criam um software em
pacote que poderá ser personalizado se não fizer exatamente o que o
cliente precisar. Eles são motivados a criar o software mais genérico
que puderem porque ele provavelmente servirá na maioria dos
ecossistemas. Mas, quanto mais genérico forem, mais personalização
será
necessária. É quando um exército de consultores aparece, às vezes
levando anos para concluir o trabalho de codificação personalizada.
http://imasters.com.br/artigo/18469/ai/arquitetura_evolucionaria_e_design_emergente_consideracoes_e_tecnicas_para_arquitetura_agil/ 7/18
05/06/2015 Arquitetura evolucionária e design emergente: considerações e técnicas para arquitetura ágil
Quanto mais você o personalizar, mais tempo ele levará para entrar em
operação. Pior ainda, algumas empresas permitem que seu processo de
http://imasters.com.br/artigo/18469/ai/arquitetura_evolucionaria_e_design_emergente_consideracoes_e_tecnicas_para_arquitetura_agil/ 8/18
05/06/2015 Arquitetura evolucionária e design emergente: considerações e técnicas para arquitetura ágil
Portanto, em
vez de comprar um sistema COTS, eles seguiram meu conselho e
http://imasters.com.br/artigo/18469/ai/arquitetura_evolucionaria_e_design_emergente_consideracoes_e_tecnicas_para_arquitetura_agil/ 9/18
05/06/2015 Arquitetura evolucionária e design emergente: considerações e técnicas para arquitetura ágil
Evite a armadilha
Tipificação na arquitetura
Um tópico mais técnico (menos orientado a processo) que surge
geralmente nas iniciativas SOA tem a ver com a tipificação e a versão de
sistemas distribuídos. Essa é mais uma das armadilhas comuns nesses
tipos de projetos. Ambas são comuns porque é fácil seguir um caminho
definido pelos fornecedores de ferramentas e porque leva um tempo para
um problema se manifestar ? e os problemas mais difíceis surgem do fato
de não se saber o que você não saber nas etapas iniciais de um projeto.
Os dois estilos de
tipificação concorrentes são SOAP, que geralmente produz tipificação
http://imasters.com.br/artigo/18469/ai/arquitetura_evolucionaria_e_design_emergente_consideracoes_e_tecnicas_para_arquitetura_agil/ 10/18
05/06/2015 Arquitetura evolucionária e design emergente: considerações e técnicas para arquitetura ágil
contam
com WSDL para definir o que é enviado e o que é esperado.
O problema
está nessa definição estrita. E se você precisar modificar um dos
aplicativos para que sejam usados parâmetros diferentes ou alterar o
tipo de um existente, não sendo possível dessa forma modificar os dois
aplicativos ao mesmo tempo? Como você cria a versão do terminal?
Diversas formas são possíveis, mas todas elas têm sérios
comprometimentos.
http://imasters.com.br/artigo/18469/ai/arquitetura_evolucionaria_e_design_emergente_consideracoes_e_tecnicas_para_arquitetura_agil/ 12/18
05/06/2015 Arquitetura evolucionária e design emergente: considerações e técnicas para arquitetura ágil
http://imasters.com.br/artigo/18469/ai/arquitetura_evolucionaria_e_design_emergente_consideracoes_e_tecnicas_para_arquitetura_agil/ 13/18
05/06/2015 Arquitetura evolucionária e design emergente: considerações e técnicas para arquitetura ágil
http://imasters.com.br/artigo/18469/ai/arquitetura_evolucionaria_e_design_emergente_consideracoes_e_tecnicas_para_arquitetura_agil/ 14/18
05/06/2015 Arquitetura evolucionária e design emergente: considerações e técnicas para arquitetura ágil
Quando se
cria um ecossistema tipificado fracamente, é possível permitir que
grupos de desenvolvimento diferentes sigam no seu próprio ritmo,
permitindo que toda a empresa use aplicativos para seguir adiante com a
menor dificuldade possível. É essa a essência da arquitetura
evolucionária: estabelecer uma base que permita uma mudança sem
dificuldades no ritmo mais rápido possível sem comprometer os recursos.
Conclusão
A arquitetura é um tópico grande e complexo em software; nesta parte,
eu
tentei tocar em vários assuntos diferentes, desde política até os
detalhes de implementação para versão de terminais em SOA. Em partes
futuras, mostrarei mais dessas ideias sobre arquitetura em geral e
algumas abordagens de arquitetura novas para criar uma SOA que possa
ser
expandida sem a necessidade de pagar milhões a fornecedores.
Recursos
Aprender
desenvolvimento de software.
Mensagem do anunciante:
A Mundipagg lança a inovadora API em REST, garantindo flexibilidade e simplicidade na integração. Conheça as nossas
funcionalidades.
http://imasters.com.br/artigo/18469/ai/arquitetura_evolucionaria_e_design_emergente_consideracoes_e_tecnicas_para_arquitetura_agil/ 16/18
05/06/2015 Arquitetura evolucionária e design emergente: considerações e técnicas para arquitetura ágil
developerWorks Brasil
é o portal de tecnologia da IBM para profissionais de TI de todo o mundo. Colabore,
aprenda a criar aplicativos inovadores e compreenda tecnologias avançadas. Acesse
mais artigos e tutoriais em www.ibm.com/developerworks/br
http://www.ibm.com/developerworks/br/
leia agora
http://imasters.com.br/artigo/18469/ai/arquitetura_evolucionaria_e_design_emergente_consideracoes_e_tecnicas_para_arquitetura_agil/ 17/18
05/06/2015 Arquitetura evolucionária e design emergente: considerações e técnicas para arquitetura ágil
Já vi casos onde o terminal começa a executar ações
anormais, e demora bastante tempo até alguém notar, e
finalmente gerar uma OS para corrigir. Ou seja, embora a
ideia é boa, ela gera outros problemas – “nem tudo são
flores”.
Responder
O seu endereço de email não será publicado Campos obrigatórios são marcados *
Nome Email
sete × = 28
Comente
Enviar Comentário
Hospedado por:
Sobre o iMasters Política de Privacidade Fale conosco iMasters Expert (english blog)
Twitter
Facebook
Plus
Google
LinkedIn
http://imasters.com.br/artigo/18469/ai/arquitetura_evolucionaria_e_design_emergente_consideracoes_e_tecnicas_para_arquitetura_agil/ 18/18