Command Query Responsibility Segregation (CQRS)

CQRS is a method of managing complexity while developing an application. Martin Fowler, a well-respected expert in software development, offers an intermediate to advanced level explanation of CQRS in this article. The takeaway of the article is fairly clear: in the vast majority of cases CQRS is not useful and will increase rather than decrease complexity.