{"action":"opened","issue":{"url":"https://api.github.com/repos/camunda/camunda-modeler/issues/950","repository_url":"https://api.github.com/repos/camunda/camunda-modeler","labels_url":"https://api.github.com/repos/camunda/camunda-modeler/issues/950/labels{/name}","comments_url":"https://api.github.com/repos/camunda/camunda-modeler/issues/950/comments","events_url":"https://api.github.com/repos/camunda/camunda-modeler/issues/950/events","html_url":"https://github.com/camunda/camunda-modeler/issues/950","id":370969740,"node_id":"MDU6SXNzdWUzNzA5Njk3NDA=","number":950,"title":"Model input data validation and lower level decisions with Boxed Contexts to relieve DRD","user":{"login":"bhoefman","id":41187066,"node_id":"MDQ6VXNlcjQxMTg3MDY2","avatar_url":"https://avatars1.githubusercontent.com/u/41187066?v=4","gravatar_id":"","url":"https://api.github.com/users/bhoefman","html_url":"https://github.com/bhoefman","followers_url":"https://api.github.com/users/bhoefman/followers","following_url":"https://api.github.com/users/bhoefman/following{/other_user}","gists_url":"https://api.github.com/users/bhoefman/gists{/gist_id}","starred_url":"https://api.github.com/users/bhoefman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bhoefman/subscriptions","organizations_url":"https://api.github.com/users/bhoefman/orgs","repos_url":"https://api.github.com/users/bhoefman/repos","events_url":"https://api.github.com/users/bhoefman/events{/privacy}","received_events_url":"https://api.github.com/users/bhoefman/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-10-17T09:03:20Z","updated_at":"2018-10-17T09:03:20Z","closed_at":null,"author_association":"NONE","body":"__Is your feature request related to a problem? Please describe.__\r\n\r\nWe are implementing decision model which takes as input an object with 30 properties, a number that we are certain will be growing. The source is an Analytical Record in our Business Intelligence layer.\r\nOur DMN model is built up as follows:\r\n1. Perform basic validation checks on the 30 respective input values (checking for null, data type, values within range, ...) \r\n2. lowest level business decisions: transform them into values respective to domain and rule specific business terms, e.g.\r\n   - item1Count -> hasItems\r\n   - item2Amount -> item2Category\r\n   - categoryCode -> isSomething\r\n3. mid level business decisions\r\n4. top level business decision\r\n\r\nAt the lowest levels we are modeling a decision (table, or literal expression) for each property which requires validation / transformation.\r\nHowever, this is making the DRD quite big and hard to manage.\r\n\r\n__Describe the solution you'd like__\r\n\r\nWe would like to model the first two steps as a boxed context, thus relieving the DRD, and making the property mapping visible at a lower level in a tabular format (vs. graphical on the DRD). Each context entry expressing the respective transformation as a literal expression or decision table.\r\nThe output of the context corresponds to an object with values which are directly consumable by mid level business decisions.\r\n\r\n__Describe alternatives you've considered__\r\n\r\n1. Align the source data model to domain and rule specific business terms, i.e. corresponding with the output of the lowest level business decisions\r\n   - this data is also consumed by other domains and other rules, meaning we want to persist it in its basic form without losing any information\r\n   - we want to encapsulate all domain specific business rules in our DMN models\r\n2. modeling the first two steps in the \"business decisions mid level\", i.e. as input expressions for each input of a decision table\r\n   - putting all that logic in expressions makes them unnecessarily hard to read and unmanageable\r\n3. modeling the boxed context manually\r\n   - this makes the .dmn file invalid for the Camunda Modeler"}}
{"actor":{"display_login":"bhoefman"}}