Posted: 9 Oct 2015 10:32 EDT Last activity: 26 Oct 2015 15:58 EDT
Considering we have two options for specialization ex: basing on client i.e. Class(Implementation layer) & Ruleset. What is suggested approach between these two and please share the pros & cons for both the options
Considering we have two options for specialization ex: basing on client i.e. Class(Implementation layer) & Ruleset. What is suggested approach between these two and please share the pros & cons for both the options.
Share this page
Moderation Team has archived post,
This thread is closed to future replies. Content and links will no longer be updated. If you have the same/similar Question, please write a new Question.
Posted: 6 years ago
Posted: 9 Oct 2015 11:10 EDT
Pankaj Rawal (rawap)
Senior Software Architect, Low-code
Are there just a FEW, high level variants, and a LARGE portion of rules are specialized for them? If so, Class specialization is well suited, whereas RuleSet and Circumstancing is not. RuleSet Specialization for Products would not allow a user to work on multiple Products in the same application. Circumstancing would also not work, as too many rules would be specialized for the same business reason; it would not scale.
Contrast this with “Edge Cases”. In this case, we ask ourself, “Are there MANY variants, and, of them, do just a FEW require specialization?” For example, imagine a scenario in which, of the almost 200 countries in the world, only a few of them have specialized functionality from the rest. In this case, circumstancing is very well suited. 200 distinct classes and/or RuleSets would just be overkill.
if the set of features we are developing, while designed for a particular purpose, are reusable for almost any application. For this situation, RuleSet specialization is ideal, as a RuleSet can be “plugged into” any application by including it in the RuleSet stack.
If you need control over security, Class specialization is the only technique that offers control over security.
Posted: 6 years ago
Posted: 9 Oct 2015 12:28 EDT
Raja Sekhar Chennam (RajaSekharC)