SlideShare una empresa de Scribd logo
1 de 42
Descargar para leer sin conexión
Desafios reais de uma 
arquitetura emergente 
@rafanoronha @raphaelmolesim
Desenvolvedor 
Front-end 
javafacil.net 
#Fifa14 
@rafanoronha
Agile Coach 
#SouDev 
Recrutamento 
@raphaelmolesim
● Empresa de 11 anos 
● Tecnologia para cartórios (RI, Notas, etc) 
● Re-escrita de software Delphi de 10 anos 
● Crescimento da equipe 
● Inovação
Começando o projeto
Inception
Inception 
● Entender as dores dos stakeholders 
● Apresentação do negócio 
● Requisitos não funcionais 
● Definição de Tecnologia
Single-page 
Application
Como tornar JavaScript 
um cidadão de 
primeira classe?
JavaScript levado a sério 
● RequireJS 
● Bibliotecas 
● CoffeeScript 
● Build e gestão de dependências 
● Testes, testes e mais testes
Tecnologia do Back-end
Critérios de avalição 
Produtividade 
Ecossistema 
Manutenabilidade 
Curva de Aprendizado 
Desempenho
Desenvolvendo o produto 
1) Tomada de Decisão Técnica 
2) Manutenabilidade 
3) Redução de Custo 
4) Resolução de Problemas não triviais
Tomada de 
Decisão Técnica
Pragmatismo
Grooming 
Técnico
Manutenabilidade
Software 
Peopleware
Capacitação 
● Entrevistas 
● Treinamento 
● Pair Programming 
● Conversas sobre o domínio
Como lidar com o BDUF?
Militância da Arquitetura Emergente
Redução de 
Custos
Arquitetura Multi-tenant
Resolução 
de Problemas 
não triviais
Prova de conceito
Problemas não triviais 
● Questionário inteligente 
● Impressão de documento inteligente 
● Assinatura digital 
● Digitalização de documentos 
● Busca fonética
KISS
Resultados
Resultados 
● O produto ainda não foi para produção 
● Cliente entende as decisões adotas 
● Cliente hoje é capaz de manter o produto 
● O projeto atendeu as expectativas inicias
Muito Obrigado! 
@rafanoronha @raphaelmolesim

Más contenido relacionado

La actualidad más candente

Métodos Ágeis para Desenvolvimento de Software Livre
Métodos Ágeis para Desenvolvimento de Software LivreMétodos Ágeis para Desenvolvimento de Software Livre
Métodos Ágeis para Desenvolvimento de Software LivreDionatan default
 
Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...
Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...
Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...Wagner Mendes Voltz Fusca
 
Como se tornar Agile Tester
Como se tornar Agile TesterComo se tornar Agile Tester
Como se tornar Agile TesterElias Nogueira
 
QA for noobs - qualidade de software para novatos
QA for noobs - qualidade de software para novatosQA for noobs - qualidade de software para novatos
QA for noobs - qualidade de software para novatosBruno Fernandes "PorKaria"
 
Nunca foi tao facil testar
Nunca foi tao facil testarNunca foi tao facil testar
Nunca foi tao facil testarElias Nogueira
 
[MTC 2021] Continuous quality, desafios da melhorias contínua e entrega com q...
[MTC 2021] Continuous quality, desafios da melhorias contínua e entrega com q...[MTC 2021] Continuous quality, desafios da melhorias contínua e entrega com q...
[MTC 2021] Continuous quality, desafios da melhorias contínua e entrega com q...minastestingconference
 
Palestra papel do desenvolvedor no sucesso da empresa
Palestra papel do desenvolvedor no sucesso da empresaPalestra papel do desenvolvedor no sucesso da empresa
Palestra papel do desenvolvedor no sucesso da empresaHenrique Nunes Bez Fontana
 
Teste de Software em Ti Interna
Teste de Software em Ti InternaTeste de Software em Ti Interna
Teste de Software em Ti InternaRoger Ritter
 
Apresentação pre tcc
Apresentação pre tccApresentação pre tcc
Apresentação pre tccRafael Marega
 
Como tornar o testador parte da equipe
Como tornar o testador parte da equipeComo tornar o testador parte da equipe
Como tornar o testador parte da equipeElias Nogueira
 
O testador esta morto!
O testador esta morto!O testador esta morto!
O testador esta morto!Elias Nogueira
 
Qualidade de software com o visual studio 11
Qualidade de software com o visual studio 11Qualidade de software com o visual studio 11
Qualidade de software com o visual studio 11Daniel Oliveira
 
Desenvolvendo com qualidade em ambientes caóticos
Desenvolvendo com qualidade em ambientes caóticosDesenvolvendo com qualidade em ambientes caóticos
Desenvolvendo com qualidade em ambientes caóticosGuilherme Cardoso
 
Incluindo Testes de Performance em ambientes de Integração Contínua
Incluindo Testes de Performance em ambientes de Integração ContínuaIncluindo Testes de Performance em ambientes de Integração Contínua
Incluindo Testes de Performance em ambientes de Integração ContínuaFábio C. Araújo
 
Melhorando a qualidade do software com testes de ponta a-ponta
Melhorando a qualidade do software com testes de ponta a-pontaMelhorando a qualidade do software com testes de ponta a-ponta
Melhorando a qualidade do software com testes de ponta a-pontaGuilherme Cardoso
 

La actualidad más candente (20)

Métodos Ágeis para Desenvolvimento de Software Livre
Métodos Ágeis para Desenvolvimento de Software LivreMétodos Ágeis para Desenvolvimento de Software Livre
Métodos Ágeis para Desenvolvimento de Software Livre
 
Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...
Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...
Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...
 
Como se tornar Agile Tester
Como se tornar Agile TesterComo se tornar Agile Tester
Como se tornar Agile Tester
 
Automação de Testes - How to do It Right
Automação de Testes - How to do It RightAutomação de Testes - How to do It Right
Automação de Testes - How to do It Right
 
QA for noobs - qualidade de software para novatos
QA for noobs - qualidade de software para novatosQA for noobs - qualidade de software para novatos
QA for noobs - qualidade de software para novatos
 
BDD - Behaviour Driven Development
BDD - Behaviour Driven DevelopmentBDD - Behaviour Driven Development
BDD - Behaviour Driven Development
 
E so mais um campinho na tela
E so mais um campinho na telaE so mais um campinho na tela
E so mais um campinho na tela
 
Nunca foi tao facil testar
Nunca foi tao facil testarNunca foi tao facil testar
Nunca foi tao facil testar
 
[MTC 2021] Continuous quality, desafios da melhorias contínua e entrega com q...
[MTC 2021] Continuous quality, desafios da melhorias contínua e entrega com q...[MTC 2021] Continuous quality, desafios da melhorias contínua e entrega com q...
[MTC 2021] Continuous quality, desafios da melhorias contínua e entrega com q...
 
Palestra papel do desenvolvedor no sucesso da empresa
Palestra papel do desenvolvedor no sucesso da empresaPalestra papel do desenvolvedor no sucesso da empresa
Palestra papel do desenvolvedor no sucesso da empresa
 
Teste de Software em Ti Interna
Teste de Software em Ti InternaTeste de Software em Ti Interna
Teste de Software em Ti Interna
 
Seu codigo fede e voce nem sabia - 2020
Seu codigo fede e voce nem sabia - 2020Seu codigo fede e voce nem sabia - 2020
Seu codigo fede e voce nem sabia - 2020
 
Apresentação pre tcc
Apresentação pre tccApresentação pre tcc
Apresentação pre tcc
 
Como tornar o testador parte da equipe
Como tornar o testador parte da equipeComo tornar o testador parte da equipe
Como tornar o testador parte da equipe
 
O testador esta morto!
O testador esta morto!O testador esta morto!
O testador esta morto!
 
Boas práticas de desenvolvimento Ágil
Boas práticas de desenvolvimento ÁgilBoas práticas de desenvolvimento Ágil
Boas práticas de desenvolvimento Ágil
 
Qualidade de software com o visual studio 11
Qualidade de software com o visual studio 11Qualidade de software com o visual studio 11
Qualidade de software com o visual studio 11
 
Desenvolvendo com qualidade em ambientes caóticos
Desenvolvendo com qualidade em ambientes caóticosDesenvolvendo com qualidade em ambientes caóticos
Desenvolvendo com qualidade em ambientes caóticos
 
Incluindo Testes de Performance em ambientes de Integração Contínua
Incluindo Testes de Performance em ambientes de Integração ContínuaIncluindo Testes de Performance em ambientes de Integração Contínua
Incluindo Testes de Performance em ambientes de Integração Contínua
 
Melhorando a qualidade do software com testes de ponta a-ponta
Melhorando a qualidade do software com testes de ponta a-pontaMelhorando a qualidade do software com testes de ponta a-ponta
Melhorando a qualidade do software com testes de ponta a-ponta
 

Similar a Desafios reais arquitetura emergente

Porque você precisa de uma estratégia de QA e precisa disso AGORA!
Porque você precisa de uma estratégia de QA e precisa disso AGORA!Porque você precisa de uma estratégia de QA e precisa disso AGORA!
Porque você precisa de uma estratégia de QA e precisa disso AGORA!Daniel Carvalhinho
 
Arquitetura de Software e o DNAD2013
Arquitetura de Software e o DNAD2013Arquitetura de Software e o DNAD2013
Arquitetura de Software e o DNAD2013André Borgonovo
 
Fatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwareFatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwarePablo Dall'Oglio
 
Feature-Driven Development - Visão Geral
Feature-Driven Development - Visão GeralFeature-Driven Development - Visão Geral
Feature-Driven Development - Visão GeralRuan Carvalho
 
Design for change: Fatores que influenciam na longevidade de um Software PHP
Design for change: Fatores que influenciam na longevidade de um Software PHPDesign for change: Fatores que influenciam na longevidade de um Software PHP
Design for change: Fatores que influenciam na longevidade de um Software PHPPablo Dall'Oglio
 
Arquitetura web para sistemas de negócio
Arquitetura web para sistemas de negócioArquitetura web para sistemas de negócio
Arquitetura web para sistemas de negócioRalph Rassweiler
 
RubyConf 17 - Colocando sua aplicação vue nos trilhos
RubyConf 17 - Colocando sua aplicação vue nos trilhosRubyConf 17 - Colocando sua aplicação vue nos trilhos
RubyConf 17 - Colocando sua aplicação vue nos trilhosFelipe Gadelha Ruoso
 
Criando o produto certo usando Impact Mapping e técnicas de guerrilha ágil
Criando o produto certo usando Impact Mapping e técnicas de guerrilha ágilCriando o produto certo usando Impact Mapping e técnicas de guerrilha ágil
Criando o produto certo usando Impact Mapping e técnicas de guerrilha ágilVladson Freire
 
Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)Rennan Martini
 
Como funciona uma empresa ágil de desenvolvimento de software
Como funciona uma empresa ágil de desenvolvimento de softwareComo funciona uma empresa ágil de desenvolvimento de software
Como funciona uma empresa ágil de desenvolvimento de softwareElvis Lima
 
A Carreira de Desenvolvedor: do Jr ao Sênior
A Carreira de Desenvolvedor: do Jr ao SêniorA Carreira de Desenvolvedor: do Jr ao Sênior
A Carreira de Desenvolvedor: do Jr ao SêniorMarcos Pereira
 
Devops - A cultura ágil voltada à infra-estrutura
Devops - A cultura ágil voltada à infra-estruturaDevops - A cultura ágil voltada à infra-estrutura
Devops - A cultura ágil voltada à infra-estruturaFernando Celarino
 
TDD: A Essência do Mantra
TDD: A Essência do MantraTDD: A Essência do Mantra
TDD: A Essência do MantraDionatan default
 
5 dicas para estruturar seu teste de performance
5 dicas para estruturar seu teste de performance5 dicas para estruturar seu teste de performance
5 dicas para estruturar seu teste de performanceAriane Izac
 
Palestra de SCRUM em Juazeiro
Palestra de SCRUM em JuazeiroPalestra de SCRUM em Juazeiro
Palestra de SCRUM em JuazeiroPaulo Furtado
 

Similar a Desafios reais arquitetura emergente (20)

Refactoring
RefactoringRefactoring
Refactoring
 
Porque você precisa de uma estratégia de QA e precisa disso AGORA!
Porque você precisa de uma estratégia de QA e precisa disso AGORA!Porque você precisa de uma estratégia de QA e precisa disso AGORA!
Porque você precisa de uma estratégia de QA e precisa disso AGORA!
 
Arquitetura de Software e o DNAD2013
Arquitetura de Software e o DNAD2013Arquitetura de Software e o DNAD2013
Arquitetura de Software e o DNAD2013
 
Fatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwareFatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um Software
 
Feature-Driven Development - Visão Geral
Feature-Driven Development - Visão GeralFeature-Driven Development - Visão Geral
Feature-Driven Development - Visão Geral
 
Design for change: Fatores que influenciam na longevidade de um Software PHP
Design for change: Fatores que influenciam na longevidade de um Software PHPDesign for change: Fatores que influenciam na longevidade de um Software PHP
Design for change: Fatores que influenciam na longevidade de um Software PHP
 
Arquitetura web para sistemas de negócio
Arquitetura web para sistemas de negócioArquitetura web para sistemas de negócio
Arquitetura web para sistemas de negócio
 
Metralhando sua API
 Metralhando sua API Metralhando sua API
Metralhando sua API
 
RubyConf 17 - Colocando sua aplicação vue nos trilhos
RubyConf 17 - Colocando sua aplicação vue nos trilhosRubyConf 17 - Colocando sua aplicação vue nos trilhos
RubyConf 17 - Colocando sua aplicação vue nos trilhos
 
Apresentacao dev ops
Apresentacao dev opsApresentacao dev ops
Apresentacao dev ops
 
Criando o produto certo usando Impact Mapping e técnicas de guerrilha ágil
Criando o produto certo usando Impact Mapping e técnicas de guerrilha ágilCriando o produto certo usando Impact Mapping e técnicas de guerrilha ágil
Criando o produto certo usando Impact Mapping e técnicas de guerrilha ágil
 
Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)
 
Como funciona uma empresa ágil de desenvolvimento de software
Como funciona uma empresa ágil de desenvolvimento de softwareComo funciona uma empresa ágil de desenvolvimento de software
Como funciona uma empresa ágil de desenvolvimento de software
 
A Carreira de Desenvolvedor: do Jr ao Sênior
A Carreira de Desenvolvedor: do Jr ao SêniorA Carreira de Desenvolvedor: do Jr ao Sênior
A Carreira de Desenvolvedor: do Jr ao Sênior
 
Vamos falar de DevOps?
Vamos falar de DevOps?Vamos falar de DevOps?
Vamos falar de DevOps?
 
Devops - A cultura ágil voltada à infra-estrutura
Devops - A cultura ágil voltada à infra-estruturaDevops - A cultura ágil voltada à infra-estrutura
Devops - A cultura ágil voltada à infra-estrutura
 
TDD: A Essência do Mantra
TDD: A Essência do MantraTDD: A Essência do Mantra
TDD: A Essência do Mantra
 
Aula 4- Engenharia de Software
Aula 4- Engenharia de SoftwareAula 4- Engenharia de Software
Aula 4- Engenharia de Software
 
5 dicas para estruturar seu teste de performance
5 dicas para estruturar seu teste de performance5 dicas para estruturar seu teste de performance
5 dicas para estruturar seu teste de performance
 
Palestra de SCRUM em Juazeiro
Palestra de SCRUM em JuazeiroPalestra de SCRUM em Juazeiro
Palestra de SCRUM em Juazeiro
 

Desafios reais arquitetura emergente