Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Antecipando o sucesso de uma arquitetura de software emergente em times ágeis

140 views

Published on

Arquitetura de Software é central para a qualidade do seu projeto e você sabe que ela vai emergir durante as iterações. Tem certeza? Quais as chances da arquitetura de software dar certo no seu time ágil? Os projetos ágeis balançam entre fazer arquitetura de software upfront e entregar rápido na premissa de que a arquitetura emerja dentro do time. Há situações em que a arquitetura realmente é construída iterativamente e outras em que isto não acontece. Poder antecipar com alguma segurança se ela será efetiva se construída iterativamente é um diferencial. Esta palestra mostrará alguns destes indicadores e em que grau eles podem determinar como a arquitetura de software comportar-se-á iterativamente

Published in: Software
  • Be the first to comment

  • Be the first to like this

Antecipando o sucesso de uma arquitetura de software emergente em times ágeis

  1. 1. Antecipando o Sucesso de uma Arquitetura de Software Emergente em Times Ágeis Sérgio Giraldo Belém - 2016
  2. 2. Sérgio Giraldo Físico de formação, engenheiro de software por paixão, ágil por convicção. Itaú e HSBC durante 10 anos , arquiteto de software e transformador ágil. Globant desde 2015, arquiteto de software e agile coach.
  3. 3. “Quality in a service or product is not what you put into it. It is what the client or customer gets out of it.” Peter Drucker
  4. 4. The software architecture of a program or computing system is the structure or structures of the system, which comprise software elements, the externally visible properties of those elements, and the relationships among them.
  5. 5. Indivíduos e interações mais que processos e ferramentas Software em funcionamento mais que documentação abrangente Colaboração com o cliente mais que negociação de contratos Responder a mudanças mais que seguir um plano
  6. 6. Indivíduos e interações mais que processos e ferramentas Software em funcionamento mais que documentação abrangente Colaboração com o cliente mais que negociação de contratos Responder a mudanças mais que seguir um plano
  7. 7. Arquitetura emergente
  8. 8. Instabilidade nos requisitos Risco técnico Valor rapidamente Cultura Experiência em arquitetura Responder a mudanças Mitigar riscos Arquitetura emergente Bduf Frameworks e modelos
  9. 9. Instabilidade nos requisitos Efeito causado por requisitos incompletos ou em mudança
  10. 10. Risco técnico Arquitetura muito complexa leva a risco técnico. Causas Requisitos arquiteturalmente significativos; Integrações com outros sistemas; Envolvimento com sistemas legados.
  11. 11. Valor Rapidamente Receber valor o mais rápido possível. O seu cliente precisa receber algo significativo do sistema antes de todas as funcionalidades estarem prontas, e.g., um MVP
  12. 12. Cultura do seu time Se o seu time tem uma mentalidade ágil, isto auxilia a responder a mudanças rapidamente. Fatores chave:  Colaboração;  Confiança;  Tamanho do time;  Experiência com Ágil
  13. 13. Cultura da empresa Qual o ambiente em que acontece o desenvolvimento? Uma empresa que é simpática aos princípios da agilidade auxilia um time a ser ágil
  14. 14. Experiência em arquitetura Arquitetura em times ágeis é uma disciplina compartilhada. Um time experiente é capaz de tomar decisões baseadas em conhecimentos prévios; caso contrário, as decisões necessitam ser mais explicitadas.
  15. 15. Instabilidade nos requisitos Risco técnico Valor rapidamente Cultura Experiência em arquitetura
  16. 16. Responder a mudanças Sua arquitetura deve estar aberta a modificações e representa continuamente a melhor solução para o problema.
  17. 17. Mitigar riscos O time faz a o design de arquitetura o suficiente para reduzir o risco a um nível satisfatório (aqui temos o nível em que não há riscos capazes de inviabilizar o projeto).
  18. 18. Arquitetura emergente O time faz apenas o necessário no início (define a tecnologia e os padrões elementares de arquitetura) e relega as outras decisões para a implementação.
  19. 19. Design completo antecipado (BDUF) Aqui o time faz o design completo da arquitetura antes do início de qualquer atividade de implementação
  20. 20. Utilização de frameworks e modelos Uso de modelos e componentes existentes às expensas de restrições adicionais aplicadas ao sistema.
  21. 21. Responder a mudanças Mitigar riscos Arquitetura emergente Bduf Frameworks e modelos
  22. 22. Adaptado de Michael Waterman
  23. 23. Muito obrigado! Email sergio@giraldo.com.br Linkedin https://br.linkedin.com/in/sergiorgiraldo

×