domingo, 14 de abril de 2013


DISEÑO DIRIGIDO POR DOMINIOS (DDD)


                                                   

Este informe consiste en el análisis y estudio de un tema determinado entregado por el profesor de laboratorio, el cual se deberá explicar en este informe y además aplicar al tema de estudio que se está trabajando actualmente, es decir, en la empresa seleccionada por cada grupo.
            El tema a estudiar es diseño guiado por el dominio o DDD el cual se tratara de explicar y aplicar a lo largo de este informe.
           
  

¿Qué es DDD?

Diseño guiado por el dominio o  en ingles domain-driven design (DDD), es un artefacto de la disciplina de análisis, construido con las reglas de UML durante la fase de concepción, en la tarea construcción del modelo de dominio, presentando como uno o más diagramas de clases y que contiene, no conceptos propios de un sistema de software sino de la propia realidad física.
Estos modelos de dominio pueden utilizarse para capturar y expresas el entendimiento ganado en un área bajo análisis como paso previo al diseño de un sistema, ya sea de software o de otro tipo.
Los modelos de dominio son similares a los mapas mentales utilizados en el aprendizaje, el modelo de dominio es utilizado por el analista como un medio para comprender el sector industrial o de negocios al cual el sistema va a servir.

  • Potenciar la colaboración con los interesados y expertos del dominio. Todo el mundo tiene que ayudar a definir el modelo (el modelo es la representación del dominio, el modelo son los elementos de tu dominio y sus relaciones). 
  • Tiene que existir un leguaje ubicuo, es decir, tiene que haber un mismo lenguaje que esté en todas partes, tanto en los expertos del dominio, como en los técnicos, como en el modelo, como en el código. 
  • Cualquier técnico tiene que picar. No hay gente que sólo pinte y no hay gente que sólo codifique, todo el mundo participa en todo. 
  • Cuando escribes código estás participando en el modelo. El código es la implementación del modelo, pero es todo lo mismo. No tiene sentido definir un modelo y luego implementar otra cosa, en tal caso el modelo ha perdido todo su valor y hemos perdido el tiempo. 
  • Como el código es el modelo, si cambiamos código habrá que avisar a los interesados y expertos del dominio.




Aislamiento del dominio


Usualmente las líneas de códigos que efectivamente resuelven los problemas están expresadas en una pequeña parte del sistema. Pero a pesar de ser pequeñas su valor es mucho más importante que el resto de las líneas.

En un sistema grande es extremadamente importante separar los objetos de dominio del resto de las aplicaciones. La tarea principal de un equipo de trabajo de DDD es aislar el dominio de los conceptos del sistema relacionados con la tecnología.

La estrategia de dividir las funcionalidades del sistema en capas es uno de los caminos más apropiados para desacoplar el dominio de la tecnología.




Paginas

No hay comentarios.:

Publicar un comentario