O documento discute os princípios do Domain-Driven Design (DDD), abordando como entender o domínio de um software, desenhar um modelo efetivo e implementar uma arquitetura orientada a domínio. O DDD foca em regras de negócio complexas, baixo acoplamento e independência de tecnologia através de boas práticas como modelagem do domínio, linguagem ubíqua, entidades, objetos de valor, agregados, serviços, repositórios e fábricas.
Introdução ao Domain Driven Design. Esta palestra aborda linguagem ubíqua, arquitetura em camadas, elementos da camada de domínio, características dos projetos em que vale a pena aplicar DDD e características dos projetos em que não vale a pena aplicar DDD
Introdução ao Domain Driven Design. Esta palestra aborda linguagem ubíqua, arquitetura em camadas, elementos da camada de domínio, características dos projetos em que vale a pena aplicar DDD e características dos projetos em que não vale a pena aplicar DDD
05 - Waldemir Cambiucci - Matriz de habilidades de um arquiteto TIDNAD
O que é arquitetura de TI? Que habilidades um arquiteto de TI deve colecionar ao longo de sua carreira? Que ferramentas e disciplinas são importantes conhecer? Nessa sessão veremos algumas considerações sobre o assunto, assim como guias e disciplinas que existem no mercado e podem ajudar o arquiteto na execução de seu dia-a-dia.tepa
CPBR7 - Pensamento Visual e PrototipagemNei Grando
A palestra ocorreu no dia 30/1 às 10 horas no palco Hypatia (sobre Empreendedorismo e Inovação). Antes de desenvolver um produto, serviço ou solução - o uso de Pensamento Visual e de Protótipos são fundamentais para expor idéias, conceitos, informações e facilitar a comunicação e o entendimento por todos os interessados.
Veja o vídeo da palestra no youtube - http://youtu.be/yG66ZKD_3Fg (a Nina Grando contribuiu com o design das telas). Veja artigo sobre Protótipos em - http://bit.ly/19G2WXs
05 - Waldemir Cambiucci - Matriz de habilidades de um arquiteto TIDNAD
O que é arquitetura de TI? Que habilidades um arquiteto de TI deve colecionar ao longo de sua carreira? Que ferramentas e disciplinas são importantes conhecer? Nessa sessão veremos algumas considerações sobre o assunto, assim como guias e disciplinas que existem no mercado e podem ajudar o arquiteto na execução de seu dia-a-dia.tepa
CPBR7 - Pensamento Visual e PrototipagemNei Grando
A palestra ocorreu no dia 30/1 às 10 horas no palco Hypatia (sobre Empreendedorismo e Inovação). Antes de desenvolver um produto, serviço ou solução - o uso de Pensamento Visual e de Protótipos são fundamentais para expor idéias, conceitos, informações e facilitar a comunicação e o entendimento por todos os interessados.
Veja o vídeo da palestra no youtube - http://youtu.be/yG66ZKD_3Fg (a Nina Grando contribuiu com o design das telas). Veja artigo sobre Protótipos em - http://bit.ly/19G2WXs
Indo além do técnico para desenvolver sistemas que evoluem na velocidade do...Taller Negócio Digitais
Se já viu ou ouviu falar dos temidos sistemas legados sabe que modificar ou acrescentar novas funcionalidades são tarefas complexas ou inviáveis recorrendo a famosa e muito utilizada técnica de refazer tudo do zero com a esperança de que desta vez o software responda na mesma velocidade que o negócio evolui. E mesmo aplicando as “boas práticas” com o passar do tempo o resultado é o mesmo, um sistema complexo repleto de abstrações que não fazem sentido pro negócio.
Nesta palestra vou te mostrar abordagens e ferramentas do Domain Driven Design (DDD) que vão te ajudar a construir sistemas de maneira colaborativa com o pessoal que entende do negócio junto com quem é mais técnico (Devs, UX, …) para que o sistema reflita o negócio e evolua de acordo com a velocidade do negócio.
Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...Isaac de Souza
DDD surgiu em uma época onde sistemas monólitos ainda eram dominantes, e com a popularização de microservices muitos dos conceitos de DDD, que já não eram devidamente utilizados em monólitos acabaram sendo deixados ainda mais de lado. Na apresentação será abordado como questões como Domain Model, Ubiquitous Language, Bounded Context, Polissemia, dentre outros contribuem para uma modelagem e construção organizada de microservices alinhados ao domínio de negócio.
A importância de DDD e o Domain Model na construção de APIs!Isaac de Souza
É comum vermos APIs construídas a partir da visão do modelo do banco de dados ou da composição das UIs planejadas. Criar APIs dessa forma pode funcionar, porém normalmente geram contratos confusos, endpoints complexos e um conjunto de implementações e documentações que se referem muito mais aos detalhes de código do que ao negócio a qual atende. Venha ver nesta apresentação como DDD e o Domain Model podem fazer uma diferença importante para construir bons contratos e APIs maduras e sustentáveis.
Separando arquitetura e negócios em sistemas de gestãoRafael Chaves
Os males do desenvovimento de software de gestão são oriundos da falta de separação entre tecnologia e negócios.
Modelos executáveis são uma abordagem para realizar tal separação.
Cloudfier é uma ferramenta/plataforma que implementa modelos executáveis em UML.
O Domain Driven Design é um conjunto de princípios de construção de software baseado no profundo entendimento do negócio. Naturalmente, uma das áreas impactadas por esses princípios é a arquitetura. Em se tratando de Microsserviços, é ainda mais importante que a construção e organização dos serviços esteja alinhada com o negócio, para que se tenha o maior ganho de performance e eficiência na manutenção. Nessa apresentação discutiremos como modelar uma solução em Microsserviços utilizando conceitos do DDD.
Em sua essência, o Domain-Driven Design (DDD) é uma maneira de usar modelos para criar software, especialmente a parte do software que trata regras de negócio complexas em forma de comportamento.
Semelhante a Uma introdução ao Domain Driven Design (20)
5. O que é DDD? “ É uma maneira de pensar e um conjunto de prioridades, voltado para a aceleração de projetos de softwares com domínios complicados ” Eric Evans.
6. O que o DDD apresenta? Boas práticas Padrões Experiência
7. Qual o foco do DDD? Regras de negócio complexos Isolamento entre domínios Reutilização Domínio Baixo acoplamento Independente de tecnologia
8. Padrões do DDD Contexto Resumo do problema Por esta Razão Discussão da solução Discussão do problema Conseqüências, Implementações e exemplo Resumo do problema Contexto resultante
15. Ligando o modelo e a implementação Consulta Paciente * * Protótipo rudimentar
16. Cultivando uma linguagem baseada no modelo Consulta A Agenda() Paciente Consulta B Agenda() Agenda() Consulta C Frases consistentes com a estrutura do modelo e ser entendido sem ambigüidade e sem tradução
17. Desenvolvendo um modelo rico em conhecimento Consulta Agendamento Secretária Paciente Atendido Médico Verifica Disponibilidade Agenda Captar vários tipos de conhecimento
18. Destilando o modelo Agenda Médica Secretária Verifica Paciente Atendido Agenda a consulta Médico Consulta Realiza Novo modelo que distingue o conceito essencial
28. Objeto de valor não tem identidade para o negócio São imutaveis Descrevem coisas, tipos... Ciclo de vida rápido Exemplo: cores, especialidade, tipo de dados.
33. Fábricas Quando a criação de um objeto, ou AGREGADO inteiro, se torna complicada ou revela uma grande parte da estrutura interna, as FÁBRICAS fornecem o encapsulamento
34. Interação básica com uma fábrica A FÁBRICA faz o objeto que satisfaz o cliente e as regras internas O cliente especifica o que quer Cliente Fábrica Produto novos(parâmetros) criar produto
35. Serviços Não tem estado próprio Fica isolado do modelo Definido como o que ele pode fazer por um “cliente” “Verbo em vez de substantivo” Fala a linguagem ubíqua
36. Módulos ou Pacotes Os módulos existentes na camada de domínio devem surgir como uma parte significativa do modelo. Modelos = Histórias Módulos = Capítulos Módulos = Capítulos Módulos = Capítulos Módulos = Capítulos Módulos = Capítulos Módulos = Capítulos
38. Linguagem Ubíqua Design Dirigido por Modelos Expressar o modelo Nomes entram em Isolar o modelo Arquitetura em camadas Módulos Serviços Entidades Objeto de Valor Integridade Encapsula Encapsular Repositórios Fábricas Acessar Agregados