Architecture Owner: quais suas funções em métodos ágeis?
Escrito por Project Builder em 02/08/2017 . Postado em Pessoas, Projetos.
O Architecture Owner é o responsável por definir a estrutura, a organização e a forma de manutenção do software, atuando junto ao Agile Team em uma abordagem colaborativa e incremental. Isso significa que ele não toma as decisões sozinho, planejando os passos e compartilhando com o time a fim de receber feedbacks e alinhar os requisitos às necessidades do cliente.
Ele pode ser membro do Agile Team, dedicando-se em tempo integral à solução, pode atuar como um consultor para um portfólio de projetos ou ainda assumir o papel de Product Owner. Lembrando que, quanto maior for a complexidade do projeto, maior também é a necessidade de ter esse profissional dedicado em tempo integral à solução, acompanhando a evolução do software dia após dia.
É por esse motivo que vemos o Architecture Owner em grandes times de projetos ágeis, em que há a necessidade de se construir subequipes de desenvolvimento e, ao mesmo tempo, manter a mesma arquitetura em todo o processo de desenvolvimento.
Os princípios da arquitetura ágil
Assim como há um conjunto de melhores práticas para o desenvolvimento de softwares por meio de métodos ágeis, existe também um conjunto de objetivos e princípios que norteiam a atuação dos Architecture Owners. É importante conhecer esses objetivos e princípios para entender a complexidade da atuação desses profissionais e desenvolver essas habilidades para se tornar um Architecture Owner de sucesso. Então confira:
Objetivos do arquiteto ágil
• Foco na entrega de soluções;
• Maximização de valor para todos os stakeholders do projeto;
• Desenvolvimento de soluções que atendam às necessidades dos stakeholders;
• Ativação do próximo esforço, isto é, do próximo passo;
• Gestão da mudança e da complexidade do projeto.
Princípios do arquiteto ágil
• Foco nas pessoas, mais do que nas ferramentas e tecnologias;
• Comunicação clara e assertiva com todos os stakeholders;
• Simplicidade no desenvolvimento da solução;
• Abertura e flexibilidade a mudanças;
• Priorização da solução certa para a empresa e não para determinado stakeholder;
• Entrega de um software de qualidade;
• Documentação ágil e simples.
As atribuições do arquiteto ágil
De maneira geral, podemos listar as funções do Architecture Owner da seguinte forma:
• Identificar os requisitos arquitetônicos da solução;
• Comunicar aos stakeholders sobre esses requisitos e como serão desenvolvidos;
• Descrever metáforas, princípios e padrões de arquitetura para o software;
• Definir as tecnologias e ferramentas a serem utilizadas durante o desenvolvimento;
• Determinar as especificações e interfaces dos componentes;
• Verificar a adequação da solução aos requisitos previamente identificados;
• Treinar o Agile Team para o desenvolvimento da arquitetura do software.
Além das atribuições técnicas, o Architecture Owner também tem uma função gerencial, no sentido de mediar conflitos e orientar o Agile Team no desempenho de suas atividades. Esse profissional também atua na integração da comunicação entre stakeholders, fazendo com que todos entendam o software da mesma forma e saibam como ele será desenvolvido a fim de atender aos mais diversos interesses.
As características de um Architecture Owner
Já vale ressaltar que não existe uma formação específica para se tornar um Architecture Owner, portanto, qualquer profissional com habilidades para planejar, organizar e controlar os requisitos de arquitetura de um software pode se aventurar por esses caminhos. Contudo, a verdade é que quanto maior for seu conhecimento sobre a área em que está inserido, melhor será seu desempenho.
Em vez de pensarmos em formação técnica, vamos então listar as características que melhor definem um arquiteto de soluções nos métodos ágeis:
Visão à frente
A capacidade de enxergar além dos requisitos técnicos permite ao Architecture Owner se antecipar a mudanças, prever tendências e estar preparado para oferecer sempre a melhor solução e no menor tempo possível. Sendo assim, procure se manter um passo à frente, olhando para o futuro em vez de ficar preso somente ao que está sendo solicitado no momento.
Ótica dos usuários
O Architecture Owner deve sempre ver a solução sob a ótica dos usuários, pensando em como o software contribuirá para melhorar o dia a dia das pessoas que o operarão. A ferramenta é funcional, intuitiva e fácil de manusear? O olhar cuidadoso sobre esses requisitos permite que o profissional desenvolva uma solução com maior valor agregado, que realmente atenda às necessidades do cliente.
Mudar o processo, trazer inovações para o Agile Team e desenvolver novas formas de arquitetar um software também são habilidades inerentes ao Architecture Owner, que por isso deve estar sempre atualizado sobre as inovações tecnológicas, experimentar novas ideias e instigar o Agile Team a fazer o mesmo.
Por mais que as discordâncias façam parte do a dia a dia das equipes autogerenciáveis, elas nem sempre elas conseguem chegar a um consenso sozinhas. É aí que entra a figura do Architecture Owner, orientando sobre as melhores práticas e ajudando o Agile Team a prosseguir com o trabalho de forma harmônica.
A capacidade de lidar com pessoas com competências completamente distintas diariamente precisa ser exemplarmente desenvolvida por esse profissional. Compreender as motivações e limitações do Agile Team contribui para melhorar a integração entre os profissionais e aumentar a produtividade da equipe como um todo.
Uma experiência multidisciplinar é fundamental para que qualquer profissional desenvolva um bom trabalho como Architecture Owner. A multiplicidade de pontos de vista contribui para a atuação em diversos segmentos de mercado e traz novos olhares sobre os projetos desenvolvidos. Como cada situação exige uma postura diferente, a preparação se torna fundamental para assumir diversos papéis e funções durante o desenvolvimento ágil de projetos.
O gerenciamento de projetos por métodos ágeis vem se mostrando como a melhor forma de atender às necessidades mais recentes do cliente, gerando valor em todo o processo. Mas para obter êxito em cada iniciativa, é preciso pensar no Agile Team como uma integração de esforços para uma solução mais eficaz e rentável. Dentro dessa perspectiva, conforme aumenta a complexidade de cada projeto, é preciso agregar profissionais que entendam determinadas necessidades e requisitos da solução. Esse é o Architecture Owner.
E você, já conhecia essa posição dentro do Agile Team? Sua empresa já conta com a experiência e o conhecimento desse profissional? Deixe seu comentário!