28
Globalcode – Open4education Arquitetura .NET PENSE FORA DA CAIXA: APLIQUE AGILIDADE COM DOMAIN DRIVEN DESIGN. VOCÊ AINDA USA ARQUITETURA BOLOVO? JOSÉ ROBERTO ARAÚJO YAN JUSTINO Bacharel em Análise de Sistemas MCP Bacharel em Análise de Sistemas MCP | MCST | MSP

Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Embed Size (px)

Citation preview

Page 1: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

Arquitetura  .NETPENSE  FORA  DA  CAIXA:  APLIQUE  AGILIDADE  COM  DOMAIN  DRIVEN  

DESIGN.  VOCÊ  AINDA  USA  ARQUITETURA  BOLOVO?

JOSÉ  ROBERTO  ARAÚJO YAN  JUSTINOBacharel emAnálise de  Sistemas

MCPBacharel emAnálise de  Sistemas

MCP  |  MCST  |  MSP

Page 2: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

AGENDA

O  QUE  É  DOMAIN-­DRIVEN  DESIGN?  DESTILANDO O  PROBLEMA  DO  DOMÍNIO  

FOCO NO  CORE  DOMAIN

Page 3: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

QUAIS OS DESAFIOS de "CRIAR" UM SOFTWARE PARA DOMiNIOS COMPLEXO?

Page 4: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

LINGUAGEM  COMUM

Page 5: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

Page 6: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

DDD  É SOBRE  A  REDUÇÃO  DE  COMPLEXIDADE

NO  SOFTWAREEric  Evans

ARQUITETURA  ÉSOBRE  INTENÇÃORobert  C.  Martin

Page 7: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

A  FALTA  DE  ORGANIZAÇÃO

Page 8: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

BOLA  DE  LAMAPATTERN

Page 9: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

BELEZA, ISSO TUDO EU SEI!!! COMO É QUE EU RESOLVO ESSA BAGAÇA!!!

Page 10: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

Page 11: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

COMO  DDD  GERENCIA  COMPLEXIDADESDESTILANDO o  problema  de  domínio  para  revelar  o  que  realmente  importa

Criando  MODELO para  resolver  problemas  de  domínio

Usando  uma  LINGUAGEM  COMPARTILHADA  para  habilitar  modelagem  colaborativa

ISOLANDO modelos  de  ambiguidade  e  corrupção

Entendendo  a  RELAÇÃO  ENTRE  CONTEXTOS

Page 12: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

"Modelos menores proporcionam muitos benefícios, permitindo definir limites clarosrelativos às responsabilidades de concepção e desenvolvimento de equipes.

[Quando] um contexto tem uma superfície menor, você tem menos efeitos colaterais"

Julie  Lerman is  a  Microsoft  MVP,  .NET  mentor  and  consultant  who  lives  in  the  hills  of  Vermont.  You  can  find  her  presenting  on  data  access  and  other.NET  topics  at  user  groups  and  conferences  around  the  world.  She  blogs  at thedatafarm.com/blog and  is  the  author  of  “Programming  Entity  Framework”  (2010),   as  well  as  a  Code  First  edition  (2011)  and  a  DbContext  edition  (2012),  all  from  O’Reilly  Media.  Follow  her  on  Twitter  attwitter.com/julielerman and  see  her  Pluralsight   courses  at juliel.me/PS-Videos.

Page 13: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

STRATEGIC  PATTERNS  OF  DOMAIN  DRIVEN  DESIGN

Page 14: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

SUPERFÍCIE  DO  PROBLEMA

Page 15: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

DESTILANDO  O  PROBLEMA  DO  DOMÍNIO“MASTIGANDO”  O  CONHECIMENTOColaboração

MÉTODOS  PARA  IMERSÃO  NO  CONHECIMENTO  DO  DOMÍNIOConversas  focadas  no  mais  importante

Business  Model  CanvasPerguntas  poderosamente  relevantes

Lista  de  casos  de  usoEsboçoCRC  (Class  Responsibility  Collaboration  Cards)Adiar  a  nomeação  de  conceitos  em  seu  modeloBDDPrototipagem  Rápida

Page 16: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

SUPERFÍCIE  DA  SOLUÇÃO

Page 17: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

BOUNDED  CONTEXT

Page 18: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

DIFERENÇA  ENTRE  MODELO  DE  NEGÓCIO  E  MODELO  DE  DOMÍNIO

Page 19: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

Page 20: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

MANIFESTAÇÃO  DO  BOLO  DE  LAMA

Page 21: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

Page 22: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

E  SE…

Page 23: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

E  SE…

Page 24: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

ENTÃO…

Page 25: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

E  DIGO  MAIS…

Page 26: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

ARQUITETURA

Page 27: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

Page 28: Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda usa Arquitetura BOLOVO?

Globalcode   – Open4education

REFERÊNCIAS

http://www.infoq.com/presentations/ddd-­imperfect-­design

https://skillsmatter.com/skillscasts/6259-­ddd-­and-­microservices-­at-­last-­some-­bounderies

Domain-­Driven  Design  (Eric  Evans)

Patterns,  Principles  and  Practices  of  Domain-­Driven  Design  (Millett  and  Tune)

Implementing  Domain-­Driven  Design(Vaughn  Vernon)