SlideShare uma empresa Scribd logo
1 de 25
Construindo um
Context Map
fabriciorissetto.com
fabriciorissetto
fabriciorissetto
fabriciorissetto@gmail.com
Fabrício Rissetto
matheuspoleza.github.io
matheuspoleza
matheus.poleza
matheus.poleza@gmail.com
Engenheiro de Software na Creditas
Sobre a Creditas
As dificuldades...
1. Domínio complexo
1. Monolito legado e defasado - múltiplos times
mexendo
1. Havia um desejo de modelo futuro...
As dificuldades...
"Map the existing terrain. Take up transformations later" - Eric
Evans
1. Domínio complexo
1. Monolito legado e defasado - múltiplos times
mexendo
1. Havia um desejo de modelo futuro...
Bounded Contexts
Bounded Contexts
Context Map - Exemplos
Context Map - Exemplos
Context Map - Exemplos
Context Map - Exemplos
Context Map - Exemplos
Onde eles estão no tal do DDD?
Strategic
Tactical
Construindo o nosso Context Map
1. Na Lousa
● Quais as features?
● Quais os clientes?
● Eventos que consomem
● Partes do código que trabalham
● Dependências de aplicações
externas
2. Refinamento das informações (DOCS)
3. Squad Map
4. Context Map v1
Refinar… Refinar… Refinar…
Versão final
Versão final final
Coisas legais que surgiram
● Distinção entre generico vs híbridos vs específicos
● Conhecimento armazenado em pessoas com mais
experiência
● Oportunidades de melhorias na arquitetura
● Documento exibido em onboarding de novos membros
Gracias!

Mais conteúdo relacionado

Mais procurados

XP - Extreme Programming
XP - Extreme ProgrammingXP - Extreme Programming
XP - Extreme Programming
Rodrigo Branas
 
Modelos Conceituais - parte 1
Modelos Conceituais - parte 1Modelos Conceituais - parte 1
Modelos Conceituais - parte 1
Erico Fileno
 
Estrutura de um Front-End eficiente (para iniciantes)
Estrutura de um Front-End eficiente (para iniciantes)Estrutura de um Front-End eficiente (para iniciantes)
Estrutura de um Front-End eficiente (para iniciantes)
Sérgio Vilar
 
Relatório de desenvolvimento de website
Relatório de desenvolvimento de websiteRelatório de desenvolvimento de website
Relatório de desenvolvimento de website
nenhuma
 

Mais procurados (20)

Webdesign - Elementos de um página web
Webdesign - Elementos de um página webWebdesign - Elementos de um página web
Webdesign - Elementos de um página web
 
Desenvolvimento Mobile
Desenvolvimento MobileDesenvolvimento Mobile
Desenvolvimento Mobile
 
Introdução a experiência do usuário
Introdução a experiência do usuárioIntrodução a experiência do usuário
Introdução a experiência do usuário
 
Microserviços: uma introdução
Microserviços: uma introduçãoMicroserviços: uma introdução
Microserviços: uma introdução
 
XP - Extreme Programming
XP - Extreme ProgrammingXP - Extreme Programming
XP - Extreme Programming
 
Wireframes para sites e dispositivos móveis
Wireframes para sites e dispositivos móveisWireframes para sites e dispositivos móveis
Wireframes para sites e dispositivos móveis
 
Modelos Conceituais - parte 1
Modelos Conceituais - parte 1Modelos Conceituais - parte 1
Modelos Conceituais - parte 1
 
Estrutura de um Front-End eficiente (para iniciantes)
Estrutura de um Front-End eficiente (para iniciantes)Estrutura de um Front-End eficiente (para iniciantes)
Estrutura de um Front-End eficiente (para iniciantes)
 
Um pouco sobre APIs
Um pouco sobre APIsUm pouco sobre APIs
Um pouco sobre APIs
 
Web site proposal
Web site proposalWeb site proposal
Web site proposal
 
Interação Humano Computador Capítulo 9 - Design
Interação Humano Computador Capítulo 9 - DesignInteração Humano Computador Capítulo 9 - Design
Interação Humano Computador Capítulo 9 - Design
 
Projeto e Desenvolvimento de Software
Projeto e Desenvolvimento de SoftwareProjeto e Desenvolvimento de Software
Projeto e Desenvolvimento de Software
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de software
 
Web design
Web designWeb design
Web design
 
Relatório de desenvolvimento de website
Relatório de desenvolvimento de websiteRelatório de desenvolvimento de website
Relatório de desenvolvimento de website
 
SQLAlchemy - Desenvolvendo uma aplicação com Python
SQLAlchemy - Desenvolvendo uma aplicação com Python SQLAlchemy - Desenvolvendo uma aplicação com Python
SQLAlchemy - Desenvolvendo uma aplicação com Python
 
Aps lista de exercícios
Aps lista de exercíciosAps lista de exercícios
Aps lista de exercícios
 
Aula 6 - Design e Processo de Design de Interfaces de Usuário
Aula 6 - Design e Processo de Design de Interfaces de UsuárioAula 6 - Design e Processo de Design de Interfaces de Usuário
Aula 6 - Design e Processo de Design de Interfaces de Usuário
 
Ivan Jovanovic - Micro Frontends - Codemotion Rome_2019
Ivan Jovanovic - Micro Frontends - Codemotion Rome_2019Ivan Jovanovic - Micro Frontends - Codemotion Rome_2019
Ivan Jovanovic - Micro Frontends - Codemotion Rome_2019
 
Banco de Dados I Aula 02 - Introdução aos Bancos de Dados
Banco de Dados I  Aula 02 - Introdução aos Bancos de DadosBanco de Dados I  Aula 02 - Introdução aos Bancos de Dados
Banco de Dados I Aula 02 - Introdução aos Bancos de Dados
 

Semelhante a Construindo um Context Map

Agilidade de Ponta-a-Ponta com Arquiteturas Evolucionárias
Agilidade de Ponta-a-Ponta com Arquiteturas EvolucionáriasAgilidade de Ponta-a-Ponta com Arquiteturas Evolucionárias
Agilidade de Ponta-a-Ponta com Arquiteturas Evolucionárias
Breno Barros
 
Webinar: Oportunidades e requisitos no projeto de hardware para IoT
Webinar: Oportunidades e requisitos no projeto de hardware para IoTWebinar: Oportunidades e requisitos no projeto de hardware para IoT
Webinar: Oportunidades e requisitos no projeto de hardware para IoT
Embarcados
 

Semelhante a Construindo um Context Map (20)

Construindo um context map
Construindo um context mapConstruindo um context map
Construindo um context map
 
Arquitetura de Software - Uma Visão Crítica
Arquitetura de Software - Uma Visão CríticaArquitetura de Software - Uma Visão Crítica
Arquitetura de Software - Uma Visão Crítica
 
[XConf Brasil 2020] Linguagens no Technology Radar da ThoughtWorks
[XConf Brasil 2020] Linguagens no Technology Radar da ThoughtWorks[XConf Brasil 2020] Linguagens no Technology Radar da ThoughtWorks
[XConf Brasil 2020] Linguagens no Technology Radar da ThoughtWorks
 
Agilidade de Ponta-a-Ponta com Arquiteturas Evolucionárias
Agilidade de Ponta-a-Ponta com Arquiteturas EvolucionáriasAgilidade de Ponta-a-Ponta com Arquiteturas Evolucionárias
Agilidade de Ponta-a-Ponta com Arquiteturas Evolucionárias
 
Aula1 dia 22 02 2022.pdf
Aula1  dia 22 02 2022.pdfAula1  dia 22 02 2022.pdf
Aula1 dia 22 02 2022.pdf
 
Webinar: Oportunidades e requisitos no projeto de hardware para IoT
Webinar: Oportunidades e requisitos no projeto de hardware para IoTWebinar: Oportunidades e requisitos no projeto de hardware para IoT
Webinar: Oportunidades e requisitos no projeto de hardware para IoT
 
Mono mecadocoorporativo-latino2010
Mono mecadocoorporativo-latino2010Mono mecadocoorporativo-latino2010
Mono mecadocoorporativo-latino2010
 
O Papel do desenvolvedor Front End
O Papel do desenvolvedor Front EndO Papel do desenvolvedor Front End
O Papel do desenvolvedor Front End
 
Micro frontend de um jeito que você nunca viu
Micro frontend de um jeito que você nunca viuMicro frontend de um jeito que você nunca viu
Micro frontend de um jeito que você nunca viu
 
A revolução do client side
A revolução do client sideA revolução do client side
A revolução do client side
 
Take It To The Next Level
Take It To The Next LevelTake It To The Next Level
Take It To The Next Level
 
It skills para rh aprender e contratar
It skills para rh  aprender e contratarIt skills para rh  aprender e contratar
It skills para rh aprender e contratar
 
Clean architecture em NodeJS
Clean architecture em NodeJSClean architecture em NodeJS
Clean architecture em NodeJS
 
Desenvolvimento Front-End em Escala Global
Desenvolvimento Front-End em Escala GlobalDesenvolvimento Front-End em Escala Global
Desenvolvimento Front-End em Escala Global
 
Architectural Decision Records - PHPConfBR
Architectural Decision Records - PHPConfBRArchitectural Decision Records - PHPConfBR
Architectural Decision Records - PHPConfBR
 
Aula1.pdf
Aula1.pdfAula1.pdf
Aula1.pdf
 
Contr avali engenharia de software-introdução
Contr avali   engenharia de software-introduçãoContr avali   engenharia de software-introdução
Contr avali engenharia de software-introdução
 
Metodologias Ágeis para o Desenvolvimento de Software
Metodologias Ágeis para o Desenvolvimento de SoftwareMetodologias Ágeis para o Desenvolvimento de Software
Metodologias Ágeis para o Desenvolvimento de Software
 
Webinar: Desvendando o Yocto Project
Webinar: Desvendando o Yocto ProjectWebinar: Desvendando o Yocto Project
Webinar: Desvendando o Yocto Project
 
Microservices - ESX - Meetup #24
Microservices - ESX - Meetup #24Microservices - ESX - Meetup #24
Microservices - ESX - Meetup #24
 

Mais de Fabrício Rissetto (8)

Functional Domain Driven Design
Functional Domain Driven DesignFunctional Domain Driven Design
Functional Domain Driven Design
 
Domain Driven Design: Zero to Hero
Domain Driven Design: Zero to HeroDomain Driven Design: Zero to Hero
Domain Driven Design: Zero to Hero
 
Kotlin: conhecendo features de uma linguagem moderna
Kotlin: conhecendo features de uma linguagem modernaKotlin: conhecendo features de uma linguagem moderna
Kotlin: conhecendo features de uma linguagem moderna
 
Threads tasks e o tal do thread pool
Threads tasks e o tal do thread poolThreads tasks e o tal do thread pool
Threads tasks e o tal do thread pool
 
Threads Tasks e o tal do Thread Pool
Threads Tasks e o tal do Thread PoolThreads Tasks e o tal do Thread Pool
Threads Tasks e o tal do Thread Pool
 
Programação reativa e o actor model
Programação reativa e o actor modelProgramação reativa e o actor model
Programação reativa e o actor model
 
DDD - Cicatrizes de guerra
DDD - Cicatrizes de guerraDDD - Cicatrizes de guerra
DDD - Cicatrizes de guerra
 
Web Scraping
Web ScrapingWeb Scraping
Web Scraping
 

Último

Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
Natalia Granato
 

Último (6)

ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
 

Construindo um Context Map