Layered systems are an architectural style used essentially to avoid coupling, the biggest enemy of software maintainability, with Ports and Adapters, or a Hexagonal Architecture, an example of such an architecture, Ian Cooper explains in a presentation about architecture styles, specifically the Hexagonal Architecture.
Domain-Driven Design (DDD) together with Onion Architecture is a combination that Wade Waldron believes has increased his code quality dramatically since he started using it a few years back. Using DDD was a kick-off but together with Onion architecture he found his code to be more readable and understandable, and far easier to maintain.
Last week VersionOne and CA Technologies announced that they have integrated their Project and Portfolio Management (PPM) and Agile Project Management (APM) products to provide an enterprise solution which the two organisations say gives users the ability to have a strategic view of a complete portfolio at the executive level no matter what methodology teams might use.
Most of the open source projects we share with you on InfoQ increase the capabilities of another library or technology. MongoRepository is different in that it intentionally limits the capabilities of the underlying library. We’ll let Rob Janssen why it does this in his own words.
CQRS and Event Sourcing provide a clear and concise way to build distributed applications that adhere to the reactive manifesto, Duncan DeVore claimed in a recent presentation sharing his experiences building a distributed application using Akka and Scala.
Managing micro-services means looking after lots of small systems talking to each other and automated provisioning as well as infrastructure automation is crucial, James Lewis states when sharing techniques and practices that have helped him manage the increased operational complexity a microservice architecture gives.
Moving SoundCloud into a microservices architecture has been essential in enabling our teams to develop production-ready features with much shorter feedback cycles, Phil Calçado writes in a three-part series sharing their experiences moving away from a monolithic system.
DDD and CQRS are great for building scalable software considering concepts like bounded contexts, transaction boundaries and event based communication and is together with Akka a complete platform for building enterprise applications, Pawel Kaczor starts a three-part series building an reactive application based on these concepts.
By gathering all domain experts and developers in a room, provide them with a paper roll, lots of colored post-its and a facilitator they may in hours create the best model ever, Alberto Brandolini suggested at the recent DDD Exchange conference in London.
Delay of message sending into the future is a very powerful pattern and is often the preferable way of dealing with temporal problems compared to batch job that will run a query on the domain model and update some aggregates, Greg Young explained at the recent DDD Exchange conference in London.
High performance systems is about clean and representative models, the code doesn't have to be ugly, obscure and hard to read, Martin Thompson stated at the recent DDD Exchange conference in London.
We need to constantly challenge DDD to find the weak spots, Eric Evans stated in his keynote at DDD Exchange yesterday in London when walking through and challenging his own fundamental assumptions of Domain-Driven Design.
The sixth DDD Exchange Day in London is due in three weeks with a speaker list including Eric Evans, Martin Thompson, Alberto Brandolini and Greg Young. Eric will in his opening keynote challenge the fundamental assumptions of DDD and dig into the root assumptions to challenge each of them.
Implementing Domain-Driven Design (DDD) concepts using object orientation principles with state and behaviour often gives you a muddled mutable model, instead building domain objects with only state and behaviour as standalone functions leads to a better realization, Debasish Ghosh claims in a recent blog post.
Brannon B. King, a software developer working for Autonomous Solutions Inc., has published an article entitled Dangers of Violating SOLID Principles in C# in MSDN Magazine, May 2014. The author outlines some of the mistakes developers can make in their C# code, breaking the SOLID principles and leading to code that is more difficult to extend or maintain.