O Arquiteto tem papel cada vez mais importante no desenvolvimento de soluções de software. Com uma visão conceitual do problema e a escolha adequada das soluções, o Arquiteto contribui para que o software esteja alinhado com os negócios.

Do grego architektōn (archi- + tektōn), o construtor (carpinteiro) mestre, o termo hoje é usado para designar aquele que projeta os edificios e aconselha sua construção. Enquanto o engenheiro civil se preocupa com a largura das paredes, o cálculo dos pilares, a composição do solo e sua resistência, e o volume de material necessário, os arquitetos definem as construções como espaços onde as pessoas vivem e interagem com ambiente externo. Preocupam-se com a utilidade que o ambiente vai ter para as pessoas e como ele pode ser projetado para melhor desempenhar essa utilidade.

Há seculos a profissão de arquiteto possui um conjunto de conhecimentos diferente do engenheiro civil. No universo da tecnologia, apropriou-se do termo arquiteto para designar um profissional cuja atuação ainda não está bem separada da atuação dos analistas, desenvolvedores e engenheiros de software. Pergunte para quem trabalha com software o que é um arquiteto e o que ele faz e, provavelmente você receberá todas as respostas diferentes entre si. O título de arquiteto é usado para descrever desde engenheiros ou desenvolvedores seniores, até consultores e especialistas de vendas experientes.

Durante os últimos anos, o software está cada vez mais complexo e estamos vivendo o efeito acumulativo de um grande número de decisões isoladas de curto prazo. Mudar uma solução de software existente para suportar as inovações nos processos de negócios tornou-se caro e demorado. Muitos acreditam que é o papel do Arquiteto não deixar isso acontecer. Ele deve desenhar as soluções de software de modo a serem gerenciáveis, escaláveis, seguras e reutilizáveis tendo sempre como objetivo atender os negócios e facilitar suas mudanças. Encontrar o balanço correto da complexidade de uma solução é sua principal função.

No desenho de uma solução, o arquiteto deve partir de uma visão abrangente do problema e mergulhar nos detalhes a medida que se aproxima da implementação. Deve ser tanto generalista como especialista. Como esse caminho da visão "de cima" até a execução pode ser longo, muitas empresas dividem o papel do arquiteto de acordo com sua abrangência. Temos o Arquiteto Corporativo (Enterprise Architect), o Arquiteto de Negócios (Business Architect), o Arquiteto de Soluções (Solution Architect) e o Arquiteto de Software ou Técnico (Software Architect or Techincal Architect). Não há necessariamente hierarquia entre eles e há alguma interposição de atribuições.

O Arquiteto Corporativo é responsável por implementar a visão e estratégia do Diretor de TI. Mantém os investimentos de TI alinhados com as necessidades de negócio. Define os padrões e recomendações e a governança necessária para garantir que as implementações os sigam. Em algumas empresas o cargo é misturado com o de CIO, e passa a ser chamado de Arquiteto Chefe (Chief Architect).

O Arquiteto de Negócios está muito próximo aos processos e entende como a organização funciona. Modela os processos e atua de modo que os projetos entreguem benefícios ao negócio. Poucas empresas usam esse título.

O Arquiteto de Soluções define a arquitetura de uma solução, escolhe tecnologias a serem utilizadas e implementa as políticas estabelecidas pelo arquiteto corporativo. É normal as empresas empregarem somente o termo Arquiteto para esse papel.

O Arquiteto de Software é o especialista técnico que entende das qualidades e defeitos da tecnologia usada na solução e orienta os desenvolvedores na implementação da solução.

Também podem ser designados arquitetos mais especialistas como arquitetos de infra-estrutura, arquiteto .NET, arquiteto JAVA, arquitetos de integração, etc. Isso causa mais confusão ainda na definição das responsabilidades de alguém que se diz Arquiteto em TI.

Seja qual for o termo que especifica o Arquiteto, todos devem ter como principal habilidade a comunicação. Em qualquer dos níveis o arquiteto tem que comunicar suas decisões e convencer todos os envolvidos, tanto os executivos do negócio quanto os usuários das soluções de software.

Resumindo, o Arquiteto pensa sempre na estratégia dos negócios, conhece profundamente os problemas a serem resolvidos, possui bons conhecimentos técnicos e de gerência de projetos, grande habilidade de comunicação e relacionamento, experiência e liderança.

(baseado em The Architecture Journal, number 15)