Enterprise Architecture: atuando em diferentes domínios de arquitetura

Olá pessoal, tudo certo?

Essa semana tive algumas discussões sobre domínios de arquitetura e qual é a diferença entre Arquitetura de Soluções e Arquitetura Corporativa. Incluindo a Arquitetura de Software, podemos identificar diferentes níveis de preocupações para cada disciplina, o que permite segmentar as perspectivas relacionadas com cada tipo de arquitetura e entrega.

Um desenho que usei aborda diferentes domínios de arquitetura na empresa, veja:

image

O ponto de destaque nessa abordagem está nos diferentes domínios de aplicação ou negócios envolvidos. Veja que a visão corporativa contempla diversos domínios de aplicação e negócios.

Desse modo, o arquiteto corporativo deve entender claramente os motivadores de negócio envolvidos, assim como as principais capacidades de negócios que devem ser atendidas pelas linhas de atuação da empresa. Por exemplo, para um cenário da área financeira, um banco de investimentos pode contemplar um arquiteto corporativo que irá apoiar a evolução e recomendações para a arquitetura corporativa da empresa, suportando motivadores de negócio e capacidades que devem atender os objetivos da empresa. Podemos pensar sobre como a TI, processos e negócio devem evoluir para suportar um crescimento de 30% no número de correntistas de altas nos próximos 2 anos, por exemplo.

Para a arquitetura de soluções, aplicamos disciplinas e patterns de arquitetura focadas para um domínio de aplicação ou produto específico. Por exemplo, podemos pensar no domínio de aplicações da área financeira, especificamente para soluções de mensageria e tratamento de produtos de renda varíavel na carteira do banco.

Finalmente, quando focamos apenas uma aplicação ou produto na empresa, estamos dando ênfase para a Arquitetura de Software, pensando nas decisões técnicas que suportam uma determinada aplicação. Seguindo nosso exemplo, estamos falando sobre o modelo de aplicação que fará a interface de nossos usuários sobre renda varíavel e como será o comportamento da aplicação, assim como decisões sobre o modelo de dados, schemas de mensagens, componentes de software e camadas de serviços que serão implementadas.

Essa ilustração é bem aproximada, mas serve como visão geral dos tipos diferentes de entregas que temos para arquiteturas e seus domínios.

Por enquanto é só! Até o próximo post :)

Waldemir.