Why Domain-Driven Design and Reactive Programming?

View Slides

Enterprise software development is hard.

A poorly designed enterprise software application can result in exorbitant costs and overall project failure. Traditional approaches have had difficulty with promoting good design practices, resulting in applications that don’t meet the needs of the business and are costly and difficult to change. Ultimately, this severely limits the value of these applications.

Domain-Driven Design (DDD) and Reactive Programming are design patterns that address these issues head on. Both approaches address application development complexity by breaking your big problems into smaller problems.

DDD puts the focus on the core business domain ensuring that the highest business value areas are addressed first. DDD operates on the premise that your business needs will change, and your applications need to change accordingly. Working closely together, your business domain experts and technical team can deliver apps that evolve with your business.

Reactive Programming promotes simplicity by focusing on only a few important concepts. It reduces the complexity of building a big application by viewing it as a collection of smaller applications that respond to events. The stream of events that occur as part of your business operations can instantly trigger responses from the application, making Reactive Programming real-time, interactive, and engaging.

In this webinar, we will answer five key questions:

  • What causes software projects to lack well-designed domains?
  • What is a good domain model and how does it help with reducing complexity?
  • What is the Reactive model and how does it help developers solve complex application and integration problems?
  • How can you use these techniques to reduce time-to-market and improve quality as you build software that is more flexible, more scalable, and more tightly aligned to business goals?
  • How can in-memory data grids like open source Apache Geode and GemFire (Pivotal’s product based on Apache Geode) fit with these modern concepts?

Vaughn Vernon
Author, Implementing Domain-Driven Design

Vaughn is a veteran software craftsman, with more than 25 years of experience in software design, development, and architecture. He is a thought leader in simplifying software design and implementation using innovative methods. Vaughn is the author of several books including: Implementing Domain-Driven Design, Reactive Messaging Patterns with the Actor Model, and Domain-Driven Design Distilled, published by Addison-Wesley.

Wes Williams
Advisory Data Engineer, Pivotal

Wes Williams is a hands-on software developer and architect with extensive experience in creating and delivering world-class information technology systems in a wide variety of industries from small businesses to Fortune 10 companies. Wes lives in the world of micro and milliseconds with very large data. With this background, Wes has cultivated a natural specialty in creating modern and reliable systems using GemFire/Geode as an in-memory data grid. In addition, Wes has strong skills in agile methodologies, Domain-Driven Design, RDBMS’ and the server-side.