Start using Behaviour-Driven Development (BDD) when designing an application and focus on the domain instead of the database, Julie Lerman, a Microsoft MVP since 2003, suggests. BDD lets developers focus on user stories and behaviour in the business domain when building up logic and tests. New to BDD, Julie has implemented a working example using Visual Studio, C# and SpecFlow.
Architecture is about intent, we have made it about frameworks and details, Robert C. Martin, “Uncle Bob”, stated earlier at this year’s DDD Exchange Day in London. Robert refers to a book by Ivar Jacobson from 1992 and brings the original thoughts about use cases into architecture models, e.g. Hexagonal architecture and Clean architecture to improve these models.
To take advantage of the great concurrency opportunities the new multi-core machines gives us we should use a programming model that helps us achieve this, and the Actor model gives us a number of tools for doing that, Vaughn Vernon stated at this year’s DDD Exchange Day in London.
The first thing a team should do on a new software project is drawing a context map to help them understand the context, the core domain and what other contexts they may need to interact with to get a shared understanding of the domain between everyone involved, Paul Rayner explains when sharing his experiences what kind of documentation teams doing Domain-Driven Design, DDD, should produce.
Using the Hexagonal architecture style allows for delaying decisions for architectural mechanisms and promotes using the same internal API irrespective of type of client, Vaughn Vernon explained last week when describing different architecture styles from a DDD perspective; the classical Layered Architecture and the more advanced Hexagonal and Actor Model styles.
The latest version of CQRS framework Axon supports MongoEventStore, which uses MongoDB as a backing store, and comes with a simplified API and performance improvements. The recently released version 2.0 also lets event objects be based on POJOs and annotations to define messages, payload and metadata.
Uncle Bob and Simon Brown debate on the infrastructure’s role in drawing a system’s architecture.
The International Software Product Line Conference (SPLC) is the most important event that covers the full range of Product Line Engineering in software-intensive products. Its 15th incarnation will take place in the Munich City Center from August 21st to August 26th.
Should one approach SOA domain modeling starting with informational or functional constructs? Is a canonical data model the answer to standardizing message formats? What are the various stages of SOA information modeling? Experts on Gervas Douglas's SOA distribution list on yahoo groups put forth their views to answer these questions and more.
The OOP conference (Object Oriented Programming) was held in Munich, Germany, from 24th to 28th January 2011 with “Business Impact through Mastering Change” as its general motto. Despite of its name, the OOP represents one of the largest and long-lasting events on the general field of software engineering.
At QCon San Francisco, 2008, Eric Evans answers questions about his recent activities and the evolution of DDD. During the interview he responds to questions about the relationship of DDD to usability, to FIT and FITnesse type testing, technology tools, and domain-specific languages. He also speaks about the DDD community as a whole.
In this article, Jimmy Nilsson describes an architectural style that he has observed slowly growing in popularity over the last few years, a style that he calls Chunk Cloud Computing.
In this article Billy McCafferty presents S#arp Architecture, an ASP.NET MVC architectural framework meant to leverage current best practices in architecting ASP.NET web applications by providing a project code template which uses Domain-Driven Design techniques and has built-in support for NHibernate, Castle Windsor and SQLite.
In this presentation recorded during QCon SF 2008, Tim McCarthy talks about preserving the purity of the domain model while using frameworks. Frameworks can be very useful when developing applications, but they can present some pitfalls, mudding the domain, if they are not used properly. The presentation is targeted at developers.
In this article, Andreas Kaltenbach explains how Model-Driven Software Development (MSDS) can help solving backward compatibility problems when creating a newer version of a software which can mean a new API or a new database schema that old clients cannot use. MSDS is used to negotiate the differences between versions to ease the upgrading process.