Command and Query Responsibility Segregation (CQRS) pattern

[vc_row full_width=”stretch_row” equal_height=”yes” bg_type=”bg_color” bg_override=”ex-full” bg_color_value=”#f3f6f9″ css=”.vc_custom_1588427211229{padding-top: 20px !important;padding-bottom: 20px !important;}”][vc_column][vc_row_inner][vc_column_inner width=”2/3″][vc_column_text]With the dashboard development in action, now is a good time to look at CQRS design pattern. CQRS stands for “The Command and Query Responsibility Segregation” (CQRS) pattern. This design pattern separates read and update operations for a data store.

In a traditional architecture, the same model is used to query and update database. That works for basic CRUD operations. In complex applications, we will end up creating more spaghetti code. A good use case is for dashboards where application has to restrict certain secure data based on user roles or add more complex joins based on a super users permissions. Implementing CQRS in these applications can maximize their performance, scalability, security and most importantly makes them flexible to better evolve over time.

Following is great article that went in depth about the CQRS design pattern:
CQRS: What? Why? How?[/vc_column_text][vc_column_text]

At BundleN, we experiment with stack combinations on our own time.
For potential clients interested in this stack, we can always give a demo of what we have up until that point of time. You can reach us at sales@BundleN.com

For more details on this stack, click here

Here is the latest about our Angular + Java project.[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/3″][vc_single_image image=”471″ img_size=”full”][/vc_column_inner][/vc_row_inner][vc_row_inner equal_height=”yes” gap=”10″ css=”.vc_custom_1581938564294{padding-right: 15px !important;padding-left: 15px !important;}”][vc_column_inner el_class=”features” width=”1/2″][bsf-info-box icon=”dt-icon-the7-misc-017″ icon_size=”70″ icon_color=”#552c11″ title=”API endpoint for new cases” pos=”left” title_font_style=”font-weight:bold;” css_info_box=”.vc_custom_1589208368526{padding-top: 30px !important;}”]Task
Backend API endpoint for new cases

Task Details
Retrieve the case list with the following information as part of each case object

  • Case Id
  • Case Number
  • Plan Name
  • Member Id
  • Member Name
  • Age
  • Case Origination Date

[/bsf-info-box][/vc_column_inner][vc_column_inner el_class=”features” width=”1/2″][bsf-info-box icon=”dt-icon-the7-misc-017″ icon_size=”70″ icon_color=”#552c11″ title=”Backend API endpoint for Task List by User” pos=”left” title_font_style=”font-weight:bold;” css_info_box=”.vc_custom_1589208532667{padding-top: 30px !important;}”]Task
Backend API endpoint for Task List by User

Task Details
Retrieve the task list for the logged in user with the following information as part of each task object

  • Task Id
  • Task Summary
  • Due Date
  • Status
  • Task Add Date
  • Task Completed Date

[/bsf-info-box][/vc_column_inner][/vc_row_inner][vc_row_inner equal_height=”yes” gap=”10″ css=”.vc_custom_1581938591262{padding-right: 15px !important;padding-left: 15px !important;}”][vc_column_inner el_class=”features” width=”1/2″][bsf-info-box icon=”dt-icon-the7-misc-017″ icon_size=”70″ icon_color=”#552c11″ title=”What are we cooking today?” pos=”left” title_font_style=”font-weight:bold;” css_info_box=”.vc_custom_1589210247981{padding-top: 30px !important;}”]API endpoint for My Cases
Retrieve cases that need to be worked on by the logged in user

Table View for New Cases
Provide a detail table with the new case information. As part of this table, add some icons to able to assign cases or flag cases.

Table View for My Cases
Provide a detail table view of the cases belonging to the logged in user. As part of this table, add some icons to able to edit cases or assign the case to someone else.

Table View for My Tasks
Provide a detail table view of the tasks pending for the logged in user.[/bsf-info-box][/vc_column_inner][vc_column_inner el_class=”features” width=”1/2″][bsf-info-box icon=”icomoon-the7-font-the7-sort-02″ icon_size=”70″ icon_color=”#552c11″ title=”What’s next?” pos=”left” title_font_style=”font-weight:bold;” css_info_box=”.vc_custom_1589210257891{padding-top: 30px !important;}”]

  • Dashboard widgets
  • Setup Redis in-memory database
  • Localization
  • Roles API End Point
  • Social Login using Google
  • Social Login using Facebook

[/bsf-info-box][/vc_column_inner][/vc_row_inner][ultimate_spacer height=”48″ height_on_tabs=”24″ height_on_tabs_portrait=”32″ height_on_mob_landscape=”8″ height_on_mob=”16″][/vc_column][/vc_row][vc_row equal_height=”yes” bg_type=”image” parallax_style=”vcpb-default” bg_image_new=”id^73|url^https://dev.techreshape.com/marines/feb/atlas/wp-content/uploads/2020/01/contact-us124.png|caption^null|alt^null|title^contact-us124|description^null” bg_image_repeat=”no-repeat” bg_override=”ex-full” enable_overlay=”enable_overlay_value” overlay_color=”rgba(255,255,255,0.73)” css=”.vc_custom_1582001396087{padding-top: 35px !important;padding-bottom: 35px !important;}”][vc_column width=”5/12″][ultimate_heading main_heading=”Get In Touch” alignment=”left” main_heading_margin=”margin-bottom:20px;” main_heading_font_family=”font_family:Raleway|font_call:Raleway|variant:600″ main_heading_style=”font-weight:600;” main_heading_font_size=”desktop:40px;” main_heading_line_height=”desktop:50px;”][/ultimate_heading][bsf-info-box icon_type=”custom” icon_img=”id^51|url^https://bundlen.com/wp-content/uploads/2020/02/phone1.png|caption^null|alt^null|title^phone1|description^null” img_width=”55″ hover_effect=”style_2″ pos=”left”](615) 619-3000[/bsf-info-box][bsf-info-box icon_type=”custom” icon_img=”id^49|url^https://bundlen.com/wp-content/uploads/2020/02/email1.png|caption^null|alt^null|title^email1|description^null” img_width=”55″ hover_effect=”style_2″ pos=”left”]sales@BundleN.com

[/bsf-info-box][bsf-info-box icon_type=”custom” icon_img=”id^27|url^https://bundlen.com/wp-content/uploads/2020/02/time-1.png|caption^null|alt^null|title^time (1)|description^null” img_width=”55″ hover_effect=”style_2″ pos=”left”]Monday to Friday 7:00 am – 5:00 pm CST[/bsf-info-box][/vc_column][vc_column width=”7/12″][ultimate_heading main_heading=”Send Message” alignment=”left” main_heading_margin=”margin-bottom:20px;” main_heading_font_family=”font_family:Raleway|font_call:Raleway|variant:600″ main_heading_style=”font-weight:600;” main_heading_font_size=”desktop:40px;” main_heading_line_height=”desktop:50px;”][/ultimate_heading][contact-form-7 id=”117″][/vc_column][/vc_row]