Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This pattern uses a web service to communicate with a project that is located somewhere else. This can be a SOAP or a REST web service. These two projects are completely separate and can be deployed separately. See Web Services guide for more details of how this is modeled.

Image RemovedImage Added

Image RemovedImage Added

Characteristics

In the table below the implementation charateristics characteristics by using a Function is shown.

 TypeScoreDescriptionKnowledge characteristicsImplicit or Explicit callExplicit callWebservices are called explicitly. The rule engine does not call a webservice. User set or System setUser setUser-set values enter the profile, which are set from the returning message and the subsequent data mapping. Parameters or complex modelParametersOnly simple input/output parameters could be used with Webservices (BaaS). The input and output parameters are neatly defined in the contract of the web service. You are able to steer what values are set in the data mapping. If you want to fill in the  parameters differently for different calls from the same module, an additional data mapping and AQ_WebServiceClient service call needs to be created.Maintainability characteristics  Internal or External decoupledExternalThis type of decoupling is only for external use. Even though both are Blueriq projects, the communication happens as if it is an external party. Automated vs. User Interaction?This type of decoupling is only for automatic tasks. Implementation complexity(star)You get two additional modules in your project, and a second project next to it. As you are in control of the information being send, the structure will be similar to what you use in the application module. Therefore the mapping should be easy (1 to 1). You have to create your own contract for the communication, and keep this updated. Part of Application vs. Separate Deployment?The decoupled part is deployed separately. Internals invisible(green star)Internals are not visible and/or accessible of a webservice. Testable(green star)Webservices are easily testable. Autonomous/decoupled(star)A BaaS implementation could create coupling when a domain model for mapping is reused. Reusable(star)A BaaS implementation is not very reusable because of a lack of parameter support. Hence, for every webservice call a mapping must be defined.

Include Page
BKB:Decoupling Pattern 2: Webservices call Score [Internal]
BKB:Decoupling Pattern 2: Webservices call Score [Internal]

 

 Out-of-the-box(green star)No custom code required.