Practitioners’ view on command query responsibility segregation

University essay from Lunds universitet/Institutionen för informatik

Abstract: Relational database management systems (RDBMS) have long been a predominant technology in information systems (IS). Today, however, the ever-changing technology landscape seems to be the proving grounds for many alternative approaches. For instance, alternative databases are currently used in many cloud services that affect everyday life. Similarly, a novel way to design applications has come to fruition. It relies on two concepts; command query responsibility segregation (CQRS) and event sourcing. A combination of the concepts is suggested to mitigate some performance and design issues that commonly arise in traditional information systems development (ISD). However, this particular approach hasn’t sparked interest from of academia yet. This inquiry sets out to find opportunities and challenges that arise from adoption of one of the two concepts, namely CQRS. This is done in relative isolation from event sourcing. In total five interviews were conducted with seven participants using open-ended interview questions derived from design patterns research. The results are five themes that provide guidance to IS professionals evaluating adoption. These are alignment between IT-artifacts and business processes, simultaneous development, flexibility from specific database technology, modularization as a means of implementation and risk of introducing complexity. The results indicate that several themes from domain-driven design are influential to the concept. Additionally, results indicate that CQRS may be a precursor to eventually consistent queries and aids fine-tuning of availability, consistency and partition tolerance considerations. It is concluded that CQRS may facilitate improved collaboration and ease distribution of work. Moreover, it is hoped that the results will help to contextualize CQRS and spark additional interest in the field of IS research. The inquiry suggests further inquiries in other areas. These are among others; extract transform load-patterns, operational transforms, probabilistic bounded staleness and occasionally connected systems.

  AT THIS PAGE YOU CAN DOWNLOAD THE WHOLE ESSAY. (follow the link to the next page)