Primera Edici贸n
Dominios Software Y Dise帽os Abril, 2015
Pág. 1
Pág.2
:
Pág. 3
Lenguajes y Técnicas Avanzadas de programación
Pág.4 Pág. 5 Pág. 6
Prof Jhonathan Vásquez
Pág.7
Adriana Charles Daniela Barreto
Pág. 8
Pág.9 Producido por: Equipo Delphi
Pág.10
Áreas de Grado Ciencias de la Computación Primera Cohorte, I-2015
Pág.11
Aconsejando :-P Debemos de seguir patrones que nos faciliten alcanzar nuestros objetivos de manera mรกs organizada, rรกpida y correcta. 1
¿QUÉ ES DDD? Diseño guiado por el dominio (DDD) es un enfoque para el desarrollo de software para las necesidades complejas de profunda conexión de la aplicación de un modelo en evolución de los conceptos de negocio.
Para Alcanzar el Buen Dominio del Diseño
Colocar el enfoque principal del proyecto sobre el dominio central y la lógica de dominio Diseñar complejamente basadado en un modelo Iniciar una colaboración creativa entre los expertos técnicos y de dominio para cortar de forma iterativa cada vez más al corazón conceptual del problema.
Según Echeverria Adriana y otros “DDD o diseño dirigido por el dominio es tanto una manera de pensar como un conjunto de prioridades, con el objeto de acelerar el desarrollo de proyectos de software que deben lidiar con dominios complicados”.
2
3
¡Debes saber! Es Importante utilizar el lenguaje que los usuarios utilizan para describir su dominio. El diseño de interacción " ideal" de ocultar el " Modelo de Implementación" de " Representado Modelo" está en contradicción con Domain Driven Design, porque la idea de ocultar el modelo de dominio por parte del usuario es el " enemigo" de DDD
4
Eric Evans propone seguir un conjunto de patrones de dominio, ya probados y estudiados, para conseguir modelar un dominio que resulte pr谩ctico para la implementaci贸n.
5
Esta respuesta va definitivamente para aquellos que desarrollan software para empresas, ya que el concepto de Dominio hace referencia al Modelo de negocio. DDD es un concepto de modelo de patrón que permite principalmente organizar y relacionar todos los componentes de una solución de una forma particular. DDD existe desde hace mucho tiempo, pero salió a la luz nuevamente gracias a Microsoft. Microsoft adoptó este modelo para implementar sus nuevas y renovadas tecnologías, como Entity Framework. Es más, existe una guía de cómo usar el modelo DDD con estas tecnologías.
6
Tip Importante Este modelo DDD acarrea tecnologías orientadas a objetos, TOO. Por lo tanto, cualquier aplicación de este modelo debe cumplir todos los -o los más importanteprincipios de TOO.
Con sede en Texas Servicios de Alimentación Labatt (10 de las más grandes empresas de servicios de distribución de alimentos en los EE.UU. en $1000 millones de ventas) tenían un problema. Cada otoño, cientos de escuelas comenzaría a surtir sus cafeterías, haciendo grandes pedidos, impredecibles y provocando el caos en los inventarios de Labatt. La gestión eficiente del inventario es particularmente importante cuando los alimentos perecederos están involucrados. El software de inicio escolar, desarrollado en Labatt mediante un proceso DDD, fue el catalizador para ahorros operativos sobre $ 1 millones de dólares en su primer año de existencia. En sus primeros 3 años de uso, el sistema ha reducido la inversión en inventarios en más de 8 millones de dólares, mientras que la reducción de artículos fuera de stock en pedidos en un 50%, a pesar de un aumento del 15% en las ventas.
7
Además, esta aplicación y un nuevo proceso de negocio fuertemente alineados se desarrollaron de forma iterativa en paralelo y rodó sin problemas durante el período crítico iniciar escolar anterior ! Esta aparentemente sencilla aplicación proporciona gran valor, ya que se centra precisamente en el núcleo de dominio, y porque el modelo captura los matices del problema, con un buen sentido de lo que se hace bien y donde el software ayuda. Coordinación de la implantación de procesos de negocio y de desarrollo de software permitió software justoa-tiempo que mitiga el riesgo de negocio serio.
3 - Enlazando el Modelo y la Implementación: Si el diseño no está alineado con el modelo es difícil determinar si el software es correcto y es imposible llevar a cabo cambios en el diseño. Se debe buscar un modelo que se pueda implementar.
2 - Comunicación y Uso del Lenguaje: Se debe usar el modelo como base del lenguaje que desarrolladores y expertos de negocio usan día a día, tanto para comunicarse entre ellos como en el código. Este LENGUAJE UBICUO evita tener que traducir entre el lenguaje de unos y otros. 1 - Triturando el Conocimiento: La experimentación usando un lenguaje basado en el modelo y el ciclo de realimentación que se obtiene a través de la implementación, hace posible encontrar un modelo rico y destilarlo. Esto convierte el conocimiento del equipo en un modelo valioso.
8
Modelo
Dominio
Un sistema de abstracciones que describe aspectos de un dominio yse puede utilizar para resolver problemas relacionados con ese dominio.
Un campo de conocimiento, influencia o actividad. El 谩rea a la que el usuario aplica un programa es el dominio del software.
Lenguaje Ubicuo
Contexto
Un lenguaje estructurado en torno al modelo de dominio y utilizado por todos los miembros del equipo para conectar todas las actividades del equipo con el software.
El entorno en el que una palabra o una declaraci贸n aparece y el cual determina s u significado.
9
10
Referencias Bibliogrรกficas Evans, E. (2003). Domain-Driven Desing Tackling Complexity in the Heart of software . domainlanguage.
ERIC EVANS (2014). Domain Lenguaje. Recuperado el 07/04/2015 de url: http://domainlanguage.com/consulting/
Jorge (2013). Domain Driven Design. Recuperado el 08/04/2015 de URL: http://tratandodeentenderlo.blogspot.com/2013/08/domaindriven-design.html
11
0