Arquitetura Corporativa - Enterprise Architecture - Modelo de Gestão
Autor: Francis Ricalde | Publicado: 2010-06-27T08:28:00-07:00

Este post aborda o tema Arquitetura Corporativa ou Enterprise Architecure com o objetivo de mostrar seus conceitos e apontar os benefícios da adoção de uma arquitetura corporativa, bem como da criação da gestão de Arquitetura de Tecnologia da Informaçao.Enterprise  Architecture ou Arquitetura CorporativaPrincipais Problemas com a Tecnologia da Informação nas organizações :Pouca eficácia nas soluções de TI para o negócio;Falta de flexibilidade e alto custo para adaptação dos sistemas às mudanças;Baixa qualidade das informaçõesRedundâncias, inconsistências, falta de semântica explícita e consensual;Múltiplas tecnologias para manter, gerenciar e evoluir;Necessidade constantes de soluções de curto prazo;Necessidade de contínua adaptação às mudanças tecnológicas e de negócio;Diferença de entendimento entre o planejamento do negócio e o desenvolvimento;Mercado de tecnologias muito volátil e, ao mesmo tempo, ágil para atendimento das exigências de curto prazo do negócio;Ausência de modelos conceituais de representação do domínio (do negócio);Fraca integração de aplicações e dados;Baixo nível de padronização de tecnologia;Com o advento da distribuição de sistemas e downsizing as aplicações começaram a ser tratadas uma a uma, sem a perspectiva de integração necessária.Soluções desenvolvidas de forma independente e sem uma perspectiva corporativa, no longo prazo, implicam em grande esforço de integração, falta de suporte aos requisitos funcionais ou não-funcionais, dificuldade de gerência e operação e um maior custo.<!--[if !mso]>  v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);}  <![endif]--><!--[if gte mso 9]>     Normal   0         false   false   false                                     MicrosoftInternetExplorer4   <![endif]--><!--[if gte mso 9]>     <![endif]--> <!--  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-parent:""; 	margin-top:6.0pt; 	margin-right:0in; 	margin-bottom:6.0pt; 	margin-left:0in; 	text-align:justify; 	text-justify:inter-ideograph; 	mso-pagination:widow-orphan; 	font-size:10.0pt; 	font-family:Arial; 	mso-fareast-font-family:"Times New Roman"; 	mso-bidi-font-family:"Times New Roman"; 	mso-fareast-language:EN-US;} @page Section1 	{size:8.5in 11.0in; 	margin:1.0in 1.25in 1.0in 1.25in; 	mso-header-margin:.5in; 	mso-footer-margin:.5in; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --> <!--[if gte mso 10]>   /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:"Table Normal"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-parent:""; 	mso-padding-alt:0in 5.4pt 0in 5.4pt; 	mso-para-margin:0in; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman"; 	mso-ansi-language:#0400; 	mso-fareast-language:#0400; 	mso-bidi-language:#0400;}  <![endif]--><!--[if gte vml 1]>                                                  <![endif]--><!--[if !vml]--><!--[endif]--><!--[if gte mso 9]>     <![endif]-->Tendências:Durante os próximos 3 a 5 anos, as tendências no negócio e na tecnologia (excesso de informação, novos processos de negócio, crescimento de serviços e o poder crescente dos indivíduos) irão reforçar a necessidade de um foco mais profundo e claro na Arquitetura Corporativa, e de investimentos mais altos em pessoas, processos e tecnologia” – by Gartner Group.O assunto já virou livro e é discutido nas principais universidades e empresas do mundo.Mas o que é Enterprise Architecture ? (Arquitetura Corporativa ou Arquitetura Empresarial)“A arquitetura empresarial é a organização lógica dos processos de negócios e da infra-estrutura de TI, refletindo a integração e padronização dos requisitos do modelo operacional da empresa.”  -  “Enterprise Architecture as Strategy”, 2006 (Harvard Business School Press)Arquitetura Corporativa é formada por quatro domínios que encapsulam e asseguram a efetividade para entregar soluções que suportem o negócio.•	Arquitetura de Negócio - Definição dos processos de negócio e suas características funcionais e operacionais, que são a base para estabelecer a estratégia das aplicações que suportam os processos;•	 Arquitetura de Informação (ou dados)- São os dados e seus relacionamentos com objetivo de alimentar as estratégias de negócio e otimizar as decisões. Também serve como base para o desenho e entrega das aplicações;•	 Arquitetura de Aplicação (ou sistemas)- Identifica quais aplicações são necessárias para suportar o negócio e conduz o desenho, construção (ou aquisição) e integração dessas aplicações;•	 Arquitetura de Infra-estrutura (ou tecnologia) - cobre todo o suporte dos elementos de operação de TI que devem ser operados no dia-a-dia, com ferramentas, processo de monitoração e gerenciamento.Montando a arquitetura corporativa:Por onde começar ?Não “reinventar a roda”:          –	Estudar Modelos de Governança e Melhores Práticas;         –	Utilizar Frameworks;         –	Utilizar ferramentas de suporte;Modelar processos de arquitetura;Construir modelos;Institucionalizar os processos;Vantagens do uso de um Framework-	Organizar as iniciativas de uma arquitetura corporativa- Uniformizar os termos e linguagem, itens e domínios de arquitetura em toda a empresa- Concentrar as discussões de arquitetura- Acelerar o funcionamento e diminuir a complexidade- Permitir projeções dos itens de um framework de arquitetura em outros–	Apoio de ferramentas- Integrar soluções, fornecedores e equipes distintas de forma mais harmônica e estruturada–	conforme planejamento- Facilitar comunicação da visão e dos planos para toda a corporação- Identificar alinhamento de TI com as diretrizes de negócioA Arquitetura de software é uma prática muito comum e frameworks de desenvolvimento de software como o RUP e OpenUP são baseados nos conceitos de Arquitetura como suporte ao desenvolvimento.Trocar de tecnologia pode significar apenas mudar o problema de lugar, mas continuar cometendo  erros básicos de acoplamento e coesão, de design, de análise de requisitos e de gestão. Produzir  Arquitetura de Sistemas e Arquitetura Corporativa não trata de tecnologia, mas de padrões, boas práticas, com baixo acoplamento e alta coesão. Ou seja,  não se discute a linguagem de programação, mas sim os conceitos, modelos, reuso de serviços.Soluções de Arquiteturas CorporativasUma solução mais comum é o TOGAF. É um padrão da Open Group que foi desenvolvido no meio dos anos 90. Essa solução ajuda você a lidar com sistemas interconectados que atendem ao negócio.Toda solução de arquitetura corporativa segue o principio de aproximar a TI do negócio através do planejamento estratégico. A Arquitetura corporativa tem que ser dinâmica e flexível e implementar a governança de TI.Os Domínios da Arquitetura Corporativa do TOGAFNo TOGAF define os domínios de arquitetura com 4 tipos de arquitetura como subtipos de sua Arquitetura Corporativa :Arquitetura de NegócioArquitetura de Dados ou de InformaçãoArquitetura de SistemasArquitetura de TITOGAF é ideal para construção de um Arquitetura Corporativa para sistemas de missão Critica, esses sistemas são fundamentais para o sucesso da organização. Mesmo que você não tenha muitos sistemas de missão critica, dependendo do cenário pode ser uma boa adotar o TOGAF.O método TOGAF se divide em duas partes, são elas:•	O método ADM (Architecture Development Method) para construção de um arquitetura de TI que atenda os requisitos e por conseqüência as necessidades do negócio.•	Arquitetura do TOGAF: Que é um conjunto de serviços e funções arquiteturais para construção de software, nesse ponto podemos utilizar SOA, BPM, UML, RUP e todos esses bons anos de evolução da Engenharia de Software.TOGAF Architecture Development Method (ADM)•	Processo iterativo para desenvolvimento centrado na arquitetura (sempre baseada nos requisitos);•	Cada passo no processo está associado a uma view que pode ser “capturada”;•	Permite reúso de artefatos de arquitetura;•	As fases iniciais focam nas questões conceituais e mais gerais; as fases posteriores movem-se em direção às especificações e às práticas.Requisitos: O centro de TudoNo Framework do TOGAF os Requisitos estão no centro de tudo, as decisões são dirigidas pelos requisitos.Cada ciclo contem uma serie de coisas que devem ser feitas, mas todos as ações são tomadas em cima de requisitos, que são a base para um arquitetura Corporativa de sucesso. Como você pode ver na figura acima existem fases para se atingir os objetivos do TOGAF.O Papel do Arquiteto de TecnologiaDefinição de Arquiteto de TecnologiaAquele que faz a arquitetura deve possuir quais aptidões ?"O arquiteto ideal deve ser um homem (ou uma mulher) letrado, um matemático, familiar com os estudos dehistória, um diligente estudante de filosofia, conhecedor de música, não ignorante de medicina, versado nas teorias jurídicas e familiarizado com a astronomia e os cálculos astronômicos” -- Vitruvius, cerca de 25 a.C.Quem é o arquiteto de TI ?- Praticante: O Arquiteto é uma pessoa que deve sempre estar tentando achar alternativas e testando novos conceitos.- Gerador de consenso: O Arquiteto serve como criador de consenso entre os membros da equipe e da empresa.- Orientado a resultados: O Arquiteto é uma pessoa que persegue um objetivo definido e não fica elocubrando sobre infinitas alternativas.- Generalista: O arquiteto é um especialista em ser generalista. Ele sabe um pouco de tudo e consegue entender e disseminar a visão do todo.- Não é um gerente de projeto, mas pode atuar como: Geralmente, o arquiteto ajuda o gerente de projeto a cumprir sua missão, mas dentro do projeto o Arquiteto é responsável por assegurar que a tecnologia responde as necessidades de negócio com integridade e de acordo com os padrões corporativos, e também conhecedor dos processos do ciclo de um projeto, faz o acompanhamento do inicio ao fim do mesmo garantindo que as recomendações da arquitetura sejam seguidas.- Entendedor de tecnologia: O Arquiteto conhece a maior parte da tecnologia passada, presente e futura, no nível necessário para que ele possa adequar uma solução aos problemas de negócio, e junto com os diversos especialistas, que necessitem ser envolvidos no projeto (o arquiteto é o líder técnico), possa garantir a integridade e funcionalidade do mesmo.- Não é um especialista de produto: O Arquiteto entende da tecnologia e conhece produtos e suas funcionalidades, mas não precisa saber até o detalhamento de um determinado produto.- Não é um cientista solitário: O Arquiteto precisa interagir com as diversas pessoas envolvidas na criação de uma solução: executivos, gerentes, analistas de negócios, especialistas, gerentes de projeto, programadores, etc; e deve para tal facilidade de relacionamento e capacitação de negociação.Quais características são esperadas de um Arquiteto de TI?- Que ele tenha as habilidades e experiências de arquiteturas de TI.- Que ele tenha as habilidades e experiências na área técnica (as mais diversas possíveis)- Exiba uma amplitude de conhecimentos técnicos.- Faça o desenho de soluções de TI, que envolvam a aplicação e a integração de uma grande variedade de produtos, tecnologias e serviços.- Tenha experiência e conhecimento de múltiplas plataformas de sistemas, múltiplas arquiteturas de sistema, gerenciamento de sistemas, redes, desenvolvimento de aplicação e ciclo e fases de um projeto de TI.- Tenha uma habilidade mais profunda em uma ou mais das seguintes disciplinas:Arquitetura de AplicaçõesArquitetura de DadosArquitetura de Middleware e ColaboraçãoArquitetura de RedesArquitetura de SegurançaArquitetura de Gerencia de Sistemas e OperaçãoArquitetura de Integração- Execute seu trabalho de uma maneira disciplinada: Utilize uma metodologia / protocolo de processos e informação formais, documente todas as etapas de um projeto e arquitetura, utilizando as ferramentas, artefatos e documentos existentes e / ou a serem criados.- Tenha um pouco de experiência do ciclo completo do desenvolvimento de uma solução (da concepção a implementação em produção)- Exiba a capacidade de liderança: Tenha experiência como líder técnico ou experiência formal como gerente de projeto.- Possua alto nível de habilidades pessoais: Consegue se expressar muito bem verbal e escrito, tem habilidades consultivas e relacionamento com as pessoas.- É recomendado que conheça ou que desenvolva algum conhecimento (processos, jargão, tendências, soluções) do segmento de industria que atua.- Possua maturidade: Tenha pelo menos alguns anos atuando na criação de arquiteturas, ou trabalhando nas diversas áreas de TI.- Que procure dentro do possível participar de comunidades técnicas, comitês, contribuindo e trocando experiências e capital intelectual.Treinamento Básico e conhecimento da equipe:O arquiteto iniciante deve adquirir os conhecimentos básicos da profissão através de experiência no campo, interações com profissionais mais experientes e até a execução de cursos formais (oferecidos pelo mercado).Entre os treinamentos indicados podemos destacar:Curso para o desenvolvimento de habilidades consultivas: entender de relacionamento com as pessoas, cursos de negociação, cursos de consultoria, aprendizado de como capturar informações, como validar informações, e como normalizar e utilizar a mesma.Gerencia de projetos: entender os fundamentos da disciplina de gerencia de projeto. Quais são os baselines de um projeto e como um projeto deve ser administrado.Metodologia: Entender os princípios de uma metodologia de Design e criação de soluções.Pensamento Arquitetônico (Architectural Thinking): Entender de maneira formal o que é uma arquitetura, requerimentos, modelos funcionais e não funcionais.Tecnologia : entender com mais detalhes as tecnologias presentes e futuras para serem utilizadas nas soluções: Bancos de Dados, Middleware, Servidores de Aplicação, Desenvolvimento de Aplicação, Tecnologias emergentes, SOA, BPM, Aplicações para mobile Applications, etc.Processo de MentorizaçãoUma das atividades mais importantes de um profissional é a preparação dos menos experientes para que possam assumir responsabilidades maiores e aumentar a qualidade de seu trabalho.A implementação de uma estrutura de mentorização na formação e preparação de um arquiteto (dentro do time de arquitetura), é importante para que exista uma rápida evolução dos novos profissionais e por conseqüência um ganho de produtividade da área. Através deste programa a empresa ficará ciente do valor e da necessidade deste profissional no desenvolvimento das soluções.Modelos de mentorização :- Mentorização formal x informal- Mentorização da profissão (como se tornar um arquiteto)- Mentorização da carreira (como expandir o conhecimento de um arquiteto)- Envolvimento de Recursos Humanos- Métricas de desenvolvimento-  Experiências fora de sua área de atuaçãoCriação da nova área Arquitetura Corporativa:- Será responsável pela criação e desenho da futura arquitetura corporativa integrada – Visão Única - (Enterprise Architecture), e sua posterior manutenção e difusão dos padrões.- Será responsável, pelo recebimento, análise dos requerimentos de novas / alterações de soluções e aplicações, e sua distribuição às diversas áreas de arquitetura e não arquitetura, que venham a ser necessário o envolvimento.- Será responsável, pelo acompanhamento do projeto em seu desenho de solução e arquitetura nas diversas áreas envolvidas, e seus necessários suportes.- Será responsável pelas definições dos padrões genéricos de arquitetura.Papeis a serem executados pela área de ArquiteturaOs papeis envolvidos nos diversos processos das diversas áreas da arquitetura e que são alocados conforme a necessidade, durante o ciclo do projeto, são:Arquiteto de Infra-estrutura: É o responsável pelo desenho, definição, comunicação, liderança, liderança, documentação, validação e acompanhamento dos projetos de arquitetura envolvendo processamento, armazenamento, automação e toda infra-estrutura relacionada (incluindo S.O., monitoração, alta disponibilidade, contingência, backup e recuperação, etc.). É o responsável pela garantia que a solução esteja aderente aos princípios técnicos (padrões) da área de arquitetura.Arquiteto de Aplicação: É o responsável pelo desenho, definição, comunicação, liderança,documentação, validação e acompanhamento dos projetos de arquitetura envolvendo o desenvolvimento, manutenção, alteração de aplicações e / ou pacotes aplicativos. Deve trabalhar em time com o Arquiteto de Infra-estrutura, fazendo as recomendações operacionais para a solução (plataformas, S.O., Banco de Dados, etc.) e com as respectivas áreas de desenvolvimento de aplicações. É o responsável pela garantia que a solução esteja aderente aos princípios técnicos (padrões) e metodológicos da área de arquitetura e desenvolvimento.Arquiteto de Integração: É o responsável pelo desenho, definição, comunicação, liderança, documentação, validação e acompanhamento dos projetos de arquitetura envolvendo soluções de integração entre sistemas e / ou parte de soluções / manutenção de aplicações que digam respeito a responsabilidade da área de Integração. É o responsável pela garantia que a solução esteja aderente aos princípios técnicos e metodológicos da área de arquitetura. Deve trabalhar em conjunto com o arquiteto de aplicação para receber os requerimentos funcionais de integração e também com o arquiteto de infra-estrutura na definição de componentes de infra-estrutura que venham a ser necessários. Lembrando, que a área de Integração é responsável também pelo desenvolvimento / manutenção das soluções de integração, o arquiteto de integração estará o tempo todo acompanhando os projetos juntos aos especialistas de desenvolvimento e suporte da área.Gerente de Projeto: É o responsável pelo desenvolvimento da solução em termos de custo, cronograma, escopo e suporte técnico, realizando o gerenciamento do mesmo durante todo o ciclo do projeto.Trabalhará em time com os diversos arquitetos e especialistas da área de arquitetura e também de outras áreas (como desenvolvimento e operações). Poderá ser exercido por um especialista da área de arquitetura ou não, ou em casos específicos por um arquiteto.Especialista de Desenvolvimento / Suporte: É o responsável pelo desenvolvimento, manutenção e alteração dos códigos e soluções da área de Integração. Demais áreas da arquitetura não deverão ter a figura do especialista de desenvolvimento dentro delas.Especialista de Produto / Suporte: É o responsável pelo conhecimento especializado, implementação e manutenção de produtos e soluções de TI (exemplo especialista em solução de gerenciamento de infraestrutura de TI). Será utilizado em casos específicos e / ou determinados e poderá ser um recurso da área de arquitetura (até mesmo um arquiteto com a capacidade) ou ser de outra área (exemplo operações).Arquiteto de Banco de Dados: É o responsável pelo conhecimento especializado, implementação e manutenção de produtos e soluções de Banco de Dados (exemplo análise de performance, soluções de alta de disponibilidade, gerenciamento, etc). Poderá ser um recurso da área de arquitetura (até mesmo um arquiteto com a capacidade) ou ser de outra área (exemplo operações ou desenvolvimento de aplicações).Especialista de Dimensionamento - “Capacity”: Responsável pela definição das ferramentas e métricas a serem utilizadas nos requerimentos, análises e relatórios de capacidade (“Capacity”) para as diversas plataformas e os diversos sistemas, assim como das análises e gerações de recomendações aos requerimentos e demandas de crescimento de capacidade (em função de iniciativas de negócios ou não, e das informações de monitoramento). Trabalhará em time com todas as áreas de arquitetura e terá estreito relacionamento com a área de operações. Deverá ter alto conhecimento técnico em performance para uma ou mais plataforma e grande espírito de liderança, execução facilidade de relacionamento.Arquiteto Corporativo / Soluções - “Enterprise Architecture”: Será o responsável pelo conhecimento generalista de produtos e soluções de TI englobando todas as áreas de conhecimentos (Infra-estrutura, aplicações, informação, software e rede). Com capacidade de visão geral da solução e de todos os componentes envolvidos, será o responsável pela análise inicial de uma requisição, pelo envio as diversas áreas relacionadas, pelo desenho do contexto funcional e operacional da solução, e pela coordenação do desenvolvimento do projeto, as comunicações entre áreas, consolidação dos resultados entre as diversas áreas de arquitetura (em conjunto com o Gerente de Projeto).A IBM possui uma ferramenta chamada IBM Rational System Architect que apóia a implantação da Arquitetura Corporativa. Veja a demonstração da solução IBM Rational System Architect que permite implementar o framework TOGAF.http://www.telelogic.com/autodemo/saea_auto_demo/index.cfm