Prévia do material em texto
Odivaney Ramos Pedro 2024 FRAMEWORKS ARQUITETURAIS Capítulo 09 2 • Fundamentos de Arquitetura em Software Frameworks arquiteturais são estruturas de referência que oferecem uma base organizada para o desenvol- vimento e a implementação de sistemas de software complexos. Eles proporcionam um conjunto de ferra- mentas, padrões e práticas que facilitam a criação de arquiteturas robustas, escaláveis e eficientes. Entre os exemplos mais conhecidos estão o TOGAF (The Open Group Architecture Framework), que foca na metodologia de desenvolvimento e governança de ar- quiteturas empresariais, e o Zachman Framework, que fornece uma visão multidimensional da arquitetura organizacional, abordando diferentes perspectivas e preocupações dos stakeholders. Esses frameworks aju- dam a garantir que os sistemas atendam às necessida- des do negócio, sejam consistentes e alinhados com os objetivos estratégicos da organização. 9.1. ZACHMAN O Zachman Framework é uma estrutura conceitual de- senvolvida por John Zachman na década de 1980, que oferece uma abordagem sistemática para compreen- der, documentar e gerenciar a arquitetura de uma or- ganização. Esta estrutura é composta por seis dimen- sões fundamentais: “O quê”, “Como”, “Onde”, “Quem”, “Quando” e “Por quê”, cada uma representando uma perspectiva única sobre a organização. Em sua forma atual, o framework de Zachman consiste em uma matriz de 6 colunas por 6 linhas. As colunas correspondem às clássicas perguntas 5W1H (What/ Who/Where/When/Why/How) aplicadas à organização. As colunas, portanto, referem-se aos diferentes aspec- tos sobre a organização que precisam ser conhecidos: • What: sobre o que a organização precisa de infor- mação? De que ela trata? Normalmente, essa colu- na representa dados mantidos pela organização. • How: Como a organização funciona? Como ela pro- cessa seus dados? Esta coluna normalmente refe- re-se a processos e funções da organização. • Where: Onde as coisas acontecem? Aqui vão infor- mações geográficas, de localização etc. • Who: Quem está na organização e quem faz o quê? Informações sobre pessoas e estruturas organiza- cionais estão aqui. • When: Quando as coisas acontecem? Questões re- lativas ao tempo aparecem aqui. • Why: Por que as coisas acontecem? Aqui vão as in- formações relativas às motivações da organização, incluindo seus planos estratégicos de negócio. As linhas da matriz referem-se aos diferentes pontos de vista e níveis de detalhe relativos à informação que descreve a organização: A primeira linha contém o escopo e o contexto, e re- presenta o ponto de vista do estrategista como teori- zador sobre a organização. Normalmente, contém in- formação relevante para o planejamento estratégico de alto nível e, é claro, o próprio conteúdo da Estratégia da organização. A segunda linha contém os conceitos de negócio, re- presentando a visão da liderança executiva (vistos como proprietários dos processos de negócio e infor- mações relacionadas). Contém tipicamente descrição detalhada da organização no nível de processos de ne- gócio. A terceira linha contém informações sobre os sistemas de informação (nível lógico), com a visão dos arquitetos de sistemas (designers). A quarta linha contém informações sobre a infraestru- tura tecnológica (nível físico) da organização, sendo o ponto de vista dos engenheiros enquanto construtores. A quinta linha refere-se à descrição dos componentes que a organização utiliza para operar, sendo a visão dos técnicos-implementadores. A sexta e última linha representa as operações pro- priamente ditas da organização, instanciadas pelos seus colaboradores participantes. O framework Zachman é uma excelente referência lite- rária sobre o assunto, apesar de ter sua aplicabilidade limitada devido a não ser tão prático e dinâmico, assim como o fato de ser um framework mais geral e que não aborda de forma específica o contexto de arquitetura de software. 3 • Fundamentos de Arquitetura em Software Figura 12 – Matriz Zachman Framework The Zachman Framework for Enterprise Architecture The Enterprise Ontology Fonte: https://www.zachman.com/about-the-zachman-framework 9.2. TOGAF O The Open Group Architecture Framework (TOGAF) é uma estrutura de arquitetura corporativa amplamente adotada, desenvolvida pelo The Open Group, que forne- ce uma abordagem abrangente e estruturada para pla- nejar, projetar, implementar e gerenciar a arquitetura de uma organização. Esta estrutura é baseada em um conjunto de melhores práticas e padrões de arquitetu- ra, destinados a promover a consistência, a eficiência e o alinhamento estratégico em toda a empresa. O TOGAF é amplamente reconhecido por sua flexibi- lidade e adaptabilidade, podendo ser personalizado e ajustado de acordo com as necessidades específicas de cada organização. Ele fornece uma estrutura sólida para a gestão e evolução da arquitetura empresarial, ajudando as empresas a alinhar seus sistemas de infor- mação com seus objetivos estratégicos, reduzir a com- plexidade e promover a inovação. O TOGAF divide a arquitetura corporativa em quatro pi- 4 • Fundamentos de Arquitetura em Software lares básicos: • Business Architecture (Arquitetura de Negócio): define a estratégia de negócio, governança, organi- zação e os processos chaves do negócio. • Data Archtecture (Arquitetura de Dados): descreve a estrutura física e lógica dos ativos de dados da organização, bem como os recursos a serem geren- ciados. • Application Architecture (Arquitetura de Aplica- ção): provisiona um blueprint para que as aplica- ções individuais sejam publicadas, as interações e o relacionamento delas com os principais processos de negócio da organização. • Technology Archiitecture (Arquitetura Técnica): descreve todo o hardware, software e infraestrutu- ra de TI necessários para desenvolver e implantar aplicativos de negócios. Figura 13 – TOGAF ADM Fonte: https://www.opengroup.org/togaf 5 • Fundamentos de Arquitetura em Software Cada círculo no diagrama representa uma fase no ciclo do ADM e cada uma destas fases é dividida em passos bem definidos. Falaremos adiante sobre cada uma des- tas fases de forma sucinta e o que elas abordam: • Fase Preliminar: é aquela na qual “colocamos em pé” o esforço de arquitetura, estabelecendo a equipe de arquitetura e definindo o método e metamode- lo customizados a serem usados em nosso esforço de arquitetura. É aqui também que escolhemos fer- ramentas de repositório, definimos os processos de Governança da Arquitetura e obtemos o Patrocínio necessário para o esforço de arquitetura. • Fase A – Visão Arquitetural: Trata-se de estabelecer uma visão de como deve ser nossa arquitetura futura para atender às metas estratégicas de negócio, que são a principal entrada para esta fase. O resultado desta fase é um Documento de Visão da Arquitetu- ra, que documenta onde a organização quer chegar com sua arquitetura para viabilizar o cumprimento das metas estratégicas, e um Plano de Projeto para a execução desta “rodada” do ADM s • Fase B – Arquitetura de Negócio: Desenvolver e do- cumentar a Arquitetura de Negócio desejada (alvo), que irá descrever o que a organização necessita para operacionalizar os objetivos de negócio e responder aos direcionamentos definidos na Visão Arquitetu- ral. O resultado da fase é o detalhamento das neces- sidades em termos de processos de negócio para atender às metas estratégicas, bem como um gap analysis que nos diz qual é a distância entre nossa situação atual (AS-IS) e a arquitetura em que quere- mos chegar (TO-BE). • Fase C – Arquiteturas de Sistemas de Informa- ção: Nesta fase, identificamos os sistemas e dados necessários para atender à situação futura de pro- cessos de negócio desenhada na fase anterior, bem como nossa situação atual e a distância a ser percor- rida (gap analysis). • Fase D – Arquitetura de Tecnologia: Esta fase se ocupa de documentar as necessidades futuras em termos de infraestrutura tecnológicapara atender às necessidades de sistemas e dados identificados na fase anterior. Mais uma vez, identificamos também nossa situação atual e a distância a ser percorrida. • Fase E – Oportunidades e Soluções: Nesta fase será gerado a versão inicial completa do Roadmap de Ar- quitetura, baseado nos gaps identificados nas fases B, C e D. Identificaremos também projetos e ativida- des que deverão ser realizados para atingir os obje- tivos definidos no Roadmap. O resultado é um por- tfólio de projetos para atingir a arquitetura desejada. • Fase F – Migration Planning: Aborda o planejamento detalhado da migração, ou seja, como passar do es- tado atual para a Arquitetura Alvo, certificando que o valor do negócio e o custo dos pacotes de traba- lho e arquiteturas de transição são entendidos pelos stakeholders. • Fase G – Governança de Implementação: Nesta etapa o principal é a realização de revisões de con- formidade com o objetivo de garantir que as ativida- des definidas no portfólio estão sendo executadas de acordo com a arquitetura proposta. • Fase H – Gestão de Mudanças na Arquitetura: Tra- ta-se de acompanhar no dia a dia a continuidade da relevância da arquitetura implantada na Fase G às necessidades estratégicas da organização. Mudan- ças no Ambiente de Negócios e na Estratégia exi- girão mudanças na arquitetura, e o processo usado nesta fase deve ser capaz de separar pequenas de grandes mudanças. As grandes mudanças, tipica- mente, exigirão a reentrada no ciclo do ADM, ou seja, o estabelecimento de um novo projeto, a ser iniciado novamente na Fase A. • Gestão dos Requisitos: Esta atividade encontra-se – literalmente – no “centro” do ADM, significando que cada uma das demais fases do ADM ao mesmo tempo gera novos requisitos de arquitetura e utiliza como entrada os requisitos de arquitetura previa- mente identificados. Entre os atrativos de utilização do TOGAF podemos citar sua flexibilidade, visto que as fases não devem ser seguidas como uma receita fixa, sendo assim cada organização pode adotar um processo adaptado con- forme suas necessidades. Sendo este framework mais usual tanto pela sua flexibilidade, quanto pelo fato de ser um framework derivado de open groups - o que fa- cilita sua utilização e proporciona uma maior rede de apoio durante o processo de uso. 6 • Fundamentos de Arquitetura em Software Referências BELLOQUIM, Atila. Framework de Arquitetura – Parte 2: TOGAF Disponível em: https://arquiteturacorporativa.com.br/2010/09/frameworks-de- arquitetura-parte-2-to- gaf/ ;. Acesso em: 15 de jan. 2022. GROUP, The Ope. The TOGAF Standart, Version 9.2. Van Haren Publishing, 2018. CHEQUER, Gabriel Agostini. Alinhamento entre Arquitetura Empresarial e PDTI: Um estudo de Caso. Disponível em https://www.maxwell.vrac.puc- rio.br/23138/23138.PDF ; Acesso em: 15 de jan. 2022. BELLOQUIM, Atila. Framework de Arquitetura – Parte 1: Zachman. Disponível em https://arquiteturacorporativa.com.br/2010/06/frameworks-de- arquitetura-parte-1-zachman/ ;. Acesso em: 15 de jan. 2022. BRIDGES, Mark. Federal Enterprise Architeture Framework (FEAF): Business Reference Model (BRM). Disponível em: https://flevy.com/blog/federal-enterprise-architecture-framework-feaf- business-reference-model-brm/ ;. Acesso em: 15 de jan. 2022. DA SILVA, Lana Montezano; RAMOS, Karoll Haussler Carneiro; FRANÇA, Joysse Vasconcelos; OLIVEIRA, Luisa Vilela Cury. Evolution of the enterprise architecture framework in the public administration of Brazil. Disponível em: http://www.contecsi.tecsi.org/index.php/contecsi/16CONTECSI/paper/viewFile/6264/3644 ;. Acesso em: 15 de jan. 2022. RED HAT. What is DevOps? Disponível em: https://www.redhat.com/en/topics/devops. Acesso em: 18 de maio de 2024. MICROSOFT. DevOps at Microsoft. Disponível em: https://docs.microsoft.com/en-us/devops-at-microsoft/. Acesso em: 19 de maio de 2024. MARTIN, Robert C. Clean Architecture: A Craftsman's Guide to Software Structure and Design. Disponível em: https://www.amazon.com/Clean-Architecture-Craft- smans-Software-Structure/dp/0134494164 . Acesso em: 20 de maio de 2024. DRIFT. An Introduction to Evolutionary Architecture. Disponível em: https://drift.com/blog/evolutionary-architecture/ . Acesso em: 21 de maio de 2024. xpeducacao.com.br