dmn making it real - bpm.com · making it real keith d swenson fujitsu america april 19, 2017. 2...

Post on 21-May-2020

1 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

DMN Technology Compatibility Kit (TCK)

Making it Real

Keith D Swenson

Fujitsu America

April 19, 2017

2

Way back … at bpmNEXT in 2016 …..

Lots of discussion about

Decision Model & Notation

3

Questions for each Implementer

Can you take a model from A to B?

Can you enter a model in two different tools the same way?

If you invest in DMN technology,

is your investment protected?

No!

No!

No!

4

What is the point of a

standard …

if everyone implements it

differently?

5

The “Promise” of DMN

• Can be Reused ElsewhereDecision Modeled

• Will be PreservedInvestment

Made

• Able To Return BenefitPeople Trained

• Executes the Same EverywhereModeled Decision

6

Launching a Standard Can Be Tricky

Standards Team

Vendors & Public

Sometimes freely available

support technology can be

the key to success.

7

It is all about “Running Code”

Committee doesn’t make code,

vendors do.

How to help vendors to conform to the spec?

Make aTEST PLATFORM

Vendors demonstrate capability.

Consumers gain assurance.

8

The Goals of the TCK

Define a set of Test Cases

Carefully assure conformance to spec.

Provide tools to run the tests

Recognize the vendor success

9

TCK with NOT

Extend or enhance the DMN spec The RTF is already doing that

Focus on esoteric unimportant features Only features that exists in one

or more implementations

Favor any implementation over another Remain technology neutral

10

Vendor’s execution enginetested as Black Box

No requirement on runtime environment

Model and test input all defined as machine or operating system independent files

As long as the engine produces the correct results, it is considered in compliance.

Model

File

Data In

File

Data Out

File

DMN Implementation

Engine being tested

11

DMN Model specifies in DMN-standard interchange format based on XML

Used according to spec without any extensions

Validate that model is conforming to spec

DMN

Model

12

Input data is name / value pairs

Multiple input sets allow testing various scenarios on the same DMN model

XML format is accessible to everyone

Name and string values

No data typing!

The DMN model defines the types of the input data,

Implementation must provide a way to take the value as a string

Input data

Input data

Input data

13

Results are name / value pairs

No data typing!

Output type is defined by DMN model

Strings compared exactly

Numeric values compared to 8 digits

Tests should not push numeric library boundaries

Expected results

Expected results

Expected results

Compare

14

The Runner

Read the files, submit to the engine, and compare the results.

Might depend on the Engine

Each vendor might have to implement their own runner to use TCK tests

Ru Compare

TCK created a Java-based runner

Available for free!

It is not a requirement to use this runner.

Runner

15

Pass/fail results are expressed as CSV files

Vendors submit results to TCK by checking into GitHub site

CSV files from all vendors can be combined into consolidated report web site

Results

16

Input data1.

Input data2.

Input data3.

Expected results

Expected results

Expected results

DMN

Model

DMN Implementation

Engine being tested

Ru

Runner

ResultsCompare

Results are

collected on TCK

site for public

reference.

We make available

many tests, each

with a DMN model

with multiple input

and output data sets.

17

Input data1.

Input data2.

Input data3.

Expected results

Expected results

Expected results

DMN

Model

DMN Implementation

Engine being tested

Ru

Runner

ResultsCompare

18

XXXXXXXX

XXXXXXXX

19

Filter and Drill Into Result Details

XXXXXXX

20

DMN TCK is

A way for vendors to

demonstrate their compliance to standard

Provide files to help vendors

test for errors and become compliant

Customers to assess

how compliant a vendor is.

top related