36
Non-Monotonic Model Completion in Web Application Engineering Massey University Palmerston North New Zealand Australian Software Engineering Conference (ASWEC) 2010 8 April 2010 [email protected] Jevon Wright [email protected] Jens Dietrich

[email protected] [email protected] Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

No

n-M

on

oto

nic

Mo

de

l C

om

ple

tio

n

in W

eb

Ap

pli

cati

on

En

gin

ee

rin

g

Ma

sse

y U

niv

ers

ity

Pa

lme

rsto

n N

ort

h

Ne

w Z

ea

lan

d

Au

stra

lia

n S

oft

wa

re E

ng

ine

eri

ng

Co

nfe

ren

ce (

AS

WE

C)

20

10

8 A

pri

l 2

01

0

j.m

.wri

gh

t@m

ass

ey.a

c.n

zJe

von

Wri

gh

t

j.b

.die

tric

h@

ma

sse

y.a

c.n

zJe

ns

Die

tric

h

Page 2: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Ou

tlin

e

1.

Ba

ckg

rou

nd

2.

Wh

at

is M

od

el

Co

mp

leti

on

?

3.

Ru

les

an

d R

ea

son

ing

4.

Exa

mp

le

5.

Imp

lem

en

tati

on

6.

Re

sult

s

7.

Un

an

swe

red

Qu

est

ion

s

Page 3: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Ba

ckg

rou

nd

�D

eve

lop

ing

a m

od

ell

ing

la

ng

ua

ge

fo

r R

IAs

�R

IAs

are

ve

ry c

om

ple

x

�N

o e

xist

ing

la

ng

ua

ge

su

cce

ed

s

�P

rev

iou

s w

ork

(W

ISE

20

08

) fo

un

d 5

9 c

ore

req

uir

em

en

ts f

or

mo

de

llin

g R

IAs

�In

tern

et

Ap

pli

cati

on

Mo

de

llin

g L

an

gu

ag

e

�S

tart

ed

re

sea

rch

in

Fe

b 2

00

7

�F

oll

ow

s M

DE

ap

pro

ach

Page 4: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Ba

ckg

rou

nd

�K

ey c

ha

lle

ng

e:

ba

lan

cin

g t

he

le

ve

l o

f d

eta

il

�T

oo

mu

ch a

bst

ract

ne

ss

�A

rig

id a

pp

roa

ch t

ha

t ca

nn

ot

ad

ap

t

�T

oo

mu

ch f

lexi

bil

ity

�La

rge

mo

de

l in

sta

nce

s b

eco

me

un

ma

inta

ina

ble

�Lo

ts o

f sc

aff

old

ing

re

qu

ire

d

Page 5: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Ba

ckg

rou

nd

�W

eb

Fra

me

wo

rks

�R

ub

y o

n R

ail

s, S

ym

fon

y,

...

�A

dd

ab

stra

ctn

ess

wh

ile

ke

ep

ing

fle

xib

ilit

y

�A

dd

s co

mm

on

sca

ffo

ldin

g

�A

cco

rdin

g t

o d

ocu

me

nte

d c

on

ve

nti

on

s

�C

an

be

ove

rrid

de

n i

f n

ece

ssa

ry

�W

e a

pp

ly t

his

to

mo

de

l-d

riv

en

de

ve

lop

me

nt

Page 6: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Mo

de

l C

om

ple

tio

n

�D

eve

lop

er

de

sig

ns

an

in

itia

l m

od

el

�W

e c

om

ple

te t

he

mo

de

l

ba

sed

on

se

nsi

ble

de

fau

lts

�"I

nte

nd

ed

" m

od

el

�D

eve

lop

er

the

n r

efi

ne

s

the

ir i

nit

ial

mo

de

l

�O

r m

od

ifie

s th

e

com

ple

ted

mo

de

l

Page 7: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Mo

de

l C

om

ple

tio

n

�E

xam

ple

: A

bo

ole

an

pro

pe

rty

1.

We

wa

nt

to e

dit

it

wit

h a

fo

rm

2.

No

rma

lly

ed

ite

d b

y a

ch

eck

bo

x

3.

Mo

de

l co

mp

leti

on

ad

ds

a c

he

ckb

ox

an

d

rela

ted

sca

ffo

ldin

g

�C

an

ach

ieve

wit

h n

orm

al

infe

ren

ce r

ule

s

�D

efi

ne

mo

de

l co

mp

leti

on

as

a r

ule

pro

gra

m

�M

an

y r

ule

en

gin

es

for

imp

lem

en

tati

on

Page 8: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

No

n-M

on

oto

nic

ity

�U

sua

lly,

we

co

mp

lete

th

e m

od

el

usi

ng

inco

mp

lete

kn

ow

led

ge

�E

xam

ple

: A

bo

ole

an

pro

pe

rty

1.

No

rma

lly

ed

ite

d b

y a

ch

eck

bo

x

2.

De

ve

lop

er

wa

nts

it

to b

e a

dro

p-d

ow

n (

ye

s/n

o)

3.

De

ve

lop

er

ad

ds

a d

rop

-do

wn

ed

ito

r

4.

Ru

le d

oe

s n

ot

fire

; ch

eck

bo

x n

ot

cre

ate

d

Page 9: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Mo

de

l C

om

ple

tio

n

�W

ha

t is

a m

od

el?

�A

sim

pli

fie

d a

bst

ract

ion

of

rea

lity

[4

]

�W

e d

efi

ne

it

as

a s

et

of

mo

de

l a

rte

fact

s

�C

an

de

fin

e t

he

un

ive

rse

of

all

po

ssib

le m

od

els

�W

e c

an

re

stri

ct t

he

se m

od

els

by

de

fin

ing

th

e m

eta

-mo

de

l S

�D

efi

ne

mo

de

l co

mp

leti

on

as

a f

un

ctio

n C

(X)

op

era

tin

g o

n

a m

od

el

X

Page 10: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Mo

de

l C

om

ple

tio

n

�F

un

ctio

n r

eq

uir

em

en

ts

�E

xte

nsi

ve

�M

ust

no

t re

tra

ct a

ny

in

form

ati

on

fro

m t

he

ba

se m

od

el

�Id

em

po

ten

t

�A

co

mp

lete

d m

od

el

is c

om

ple

te

�N

on

-mo

no

ton

ic

�A

mo

rere

fin

ed

ba

se m

od

el m

ay

ch

an

ge

th

e

com

ple

ted

mo

de

l

Page 11: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Fro

m M

od

els

to

Lo

gic

�M

od

el

art

efa

cts�

term

s

�A

rte

fact

sin

ba

se m

od

el �

con

sta

nt

term

s

�P

rop

ert

ies

an

d r

ela

tio

nsh

ips �

pre

dic

ate

s

�C

rea

tio

n o

f n

ew

art

efa

cts�

fun

ctio

ns

�T

yp

e i

nfo

rma

tio

n �

un

ary

pre

dic

ate

s

Page 12: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Ru

les

No

n e

xist

en

ce o

f a

rte

fact

No

n e

xist

en

ce o

f a

rte

fact

Use

fa

cto

ry f

un

ctio

ns

to c

rea

te n

ew

art

efa

ct

Use

fa

cto

ry f

un

ctio

ns

to c

rea

te n

ew

art

efa

ctA

dd

itio

na

l ru

les

rep

rese

nt

typ

e r

ea

son

ing

Ad

dit

ion

al ru

les

rep

rese

nt

typ

e r

ea

son

ing

Ba

se m

od

el

art

efa

ctB

ase

mo

de

l a

rte

fact

Page 13: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Ru

les

�F

act

ory

fu

nct

ion

s a

re i

nje

ctiv

e

�n

ew

Ch

eck

bo

x(x)

cre

ate

s a

un

iqu

e n

ew

ele

me

nt

�T

erm

s st

rati

fica

tio

n

�T

erm

s a

re a

sso

cia

ted

wit

h a

ra

nk

≥0

�If

xis

te

rm o

f ra

nk

N,

the

n n

ew

Ch

eck

bo

x(x)

ha

s

ran

k N

+1

�C

on

sta

nts

(b

ase

mo

de

l e

lem

en

ts)

�H

av

e r

an

k 0

Page 14: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Re

aso

nin

g

�A

pp

ly r

ule

s in

ste

ps

(pa

ram

ete

rise

ru

les

wit

h r

an

k)

�E

ach

ste

p c

an

on

ly s

ee

ele

me

nts

wit

h r

an

k ≤

N

�N

ew

mo

de

l e

lem

en

ts a

re r

an

k N

+1

�E

xist

en

tia

l q

ua

nti

fie

r o

nly

ap

pli

es

to r

an

k ≤

N

�O

nly

co

nsi

de

r (l

og

ic)

mo

de

l g

en

era

ted

fro

m b

ase

mo

de

l e

lem

en

ts a

nd

fa

cto

ry f

un

ctio

ns

(He

rbra

nd

mo

de

l)

�S

afe

gu

ard

s a

pp

lica

tio

n:

rule

s a

pp

lie

d l

ate

r ca

nn

ot

un

de

rmin

e r

ule

s a

pp

lie

d e

arl

ier

Page 15: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Th

eo

reti

cal

Asp

ect

s

�C

lass

ica

l re

aso

nin

g (

Ta

rsk

i) is

ba

sed

on

all

mo

de

ls

�A

is

in C

(X)

if A

is

va

lid

in

all

mo

de

ls o

f X

�M

od

el

sele

ctio

n i

s k

ey

id

ea

of

NM

R

�A

is

in C

(X)

if A

is

va

lid

in

se

lect

ed

mo

de

ls o

f X

�R

ea

son

ing

ba

sed

on

dis

tin

gu

ish

ed

in

ten

de

d m

od

els

�E

xam

ple

s: m

inim

al

an

d s

tab

le m

od

els

�C

ap

ture

s th

e i

nte

nti

on

of

mo

de

l co

mp

leti

on

�T

ry t

o f

orm

ali

se t

he

no

tio

n o

f th

e m

od

el

inte

nd

ed

by

the

de

sig

ne

r

Page 16: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Vis

ua

lisa

tio

n:

Ste

p 0

�W

ha

t m

igh

t m

od

el

com

ple

tio

n l

oo

k l

ike

?

�E

xam

ple

: S

yn

chro

nis

ing

a d

ata

ba

se o

bje

ct

'Stu

de

nt'

wit

h a

n e

dit

ab

le f

orm

�6

ele

me

nts

Page 17: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Vis

ua

lisa

tio

n:

Ste

p 1

Cre

ate

te

xt f

ield

s: +

3 e

lem

en

ts

Page 18: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Vis

ua

lisa

tio

n:

Ste

p 2

Co

nn

ect

wit

h s

yn

chro

nis

ati

on

wir

es:

+ 3

ele

me

nts

Page 19: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Vis

ua

lisa

tio

n:

Ste

p 3

Do

ma

in O

bje

ct ‘

Stu

de

nt’

Fo

rm ‘

Ed

it S

tud

en

t’sy

nc

syn

c

syn

c

syn

c

Att

rib

ute

‘m

ajo

r’

Ev

en

t ‘o

nC

ha

ng

e’

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Att

rib

ute

‘n

am

e’

Ev

en

t ‘o

nC

ha

ng

e’

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Att

rib

ute

‘id

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Ev

en

t ‘o

nC

ha

ng

e’

Te

xtF

ield

‘id

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Ev

en

t ‘o

nC

ha

ng

e’

Te

xtF

ield

‘n

am

e’

Ev

en

t ‘o

nC

ha

ng

e’

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Te

xtF

ield

‘m

ajo

r’

Ev

en

t ‘o

nC

ha

ng

e’

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Ad

d e

ve

nts

, o

pe

rati

on

s, a

nd

pro

pe

rtie

s: +

18

ele

me

nts

Page 20: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Vis

ua

lisa

tio

n:

Ste

p 4

Do

ma

in O

bje

ct ‘

Stu

de

nt’

Fo

rm ‘

Ed

it S

tud

en

t’sy

nc

syn

c

syn

c

syn

cA

ttri

bu

te ‘

ma

jor’

Ev

en

t ‘o

nC

ha

ng

e’

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Att

rib

ute

‘n

am

e’

Ev

en

t ‘o

nC

ha

ng

e’

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Att

rib

ute

‘id

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Ev

en

t ‘o

nC

ha

ng

e’

Te

xtF

ield

‘id

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Ev

en

t ‘o

nC

ha

ng

e’

Te

xtF

ield

‘n

am

e’

Ev

en

t ‘o

nC

ha

ng

e’

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Te

xtF

ield

‘m

ajo

r’

Ev

en

t ‘o

nC

ha

ng

e’

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

run

run

run

run

run

run

Co

nn

ect

ev

en

ts w

ith

op

era

tio

ns,

usi

ng

act

ion

s: +

6 e

lem

en

ts

Page 21: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Vis

ua

lisa

tio

n:

Ste

p 5

Do

ma

in O

bje

ct ‘

Stu

de

nt’

Fo

rm ‘

Ed

it S

tud

en

t’sy

nc

syn

c

syn

c

syn

cA

ttri

bu

te ‘

ma

jor’

Ev

en

t ‘o

nC

ha

ng

e’

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Att

rib

ute

‘n

am

e’

Ev

en

t ‘o

nC

ha

ng

e’

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Att

rib

ute

‘id

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Ev

en

t ‘o

nC

ha

ng

e’

Te

xtF

ield

‘id

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Ev

en

t ‘o

nC

ha

ng

e’

Te

xtF

ield

‘n

am

e’

Ev

en

t ‘o

nC

ha

ng

e’

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Te

xtF

ield

‘m

ajo

r’

Ev

en

t ‘o

nC

ha

ng

e’

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

run

run

run

run

run

run

Ad

d p

ara

me

ters

to

act

ion

s: +

6 e

lem

en

ts

Page 22: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Vis

ua

lisa

tio

n:

Ste

p 6

Cre

ate

co

nte

nts

of

op

era

tio

ns:

+ 8

4 e

lem

en

ts

Page 23: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Vis

ua

lisa

tio

n:

Ste

p 6

Do

ma

in O

bje

ct ‘

Stu

de

nt’

Fo

rm ‘

Ed

it S

tud

en

t’sy

nc

syn

c

Att

rib

ute

‘id

Op

era

tio

n ‘

up

da

te’

Pro

pe

rty

‘v

alu

e’

Ev

en

t ‘o

nC

ha

ng

e’

can

ca

st?

set

Pa

ram

ete

r

(ca

st)

y

n

Te

xtF

ield

‘id

Pro

pe

rty

‘va

lue

Ev

en

t ‘o

nC

ha

ng

e’

Op

era

tio

n ‘

up

da

te’

can

ca

st?

set

Pa

ram

ete

r

(ca

st)

y

n

run

run

syn

c

Att

rib

ute

‘n

am

e’

Op

era

tio

n ‘

up

da

te’

Ev

en

t ‘o

nC

ha

ng

e’

can

ca

st?

Pa

ram

ete

r

(ca

st)

y

n

Te

xtF

ield

‘n

am

e’

Ev

en

t ‘o

nC

ha

ng

e’

Op

era

tio

n ‘

up

da

te’

can

ca

st?

Pa

ram

ete

r

(ca

st)

y

n

run

run

�N

o n

ew

ele

me

nts

are

be

ing

cre

ate

d

�M

od

el

com

ple

tio

n m

ay

sto

p

�F

ina

l m

od

el

is 1

26

ele

me

nts

�+

20

00

% e

lem

en

ts

Page 24: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Imp

lem

en

tati

on

�Im

ple

me

nte

d w

ith

a c

om

me

rcia

l ru

le e

ng

ine

�JB

oss

Ru

les

(Dro

ols

)

�B

SD

/MIT

-esq

ue

lice

nse

�In

teg

rate

s w

ell

wit

h E

MF

Mo

de

ls

rule

"Example rule"

when p : BooleanProperty

( )

not

( Editor ( for == p ) )

then Checkbox c = handler.generatedCheckbox(p);

handler.setFor(c, p);

cache.add(c, drools);

end

Page 25: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Imp

lem

en

tati

on

�P

rob

lem

: B

y d

efa

ult

, ru

le e

ng

ine

s e

xecu

te a

ll

rule

s a

nd

fa

cts

at

on

ce

�S

olu

tio

n:

An

"in

sert

ion

ca

che

"

1.

Mo

de

l e

lem

en

ts a

re i

nse

rte

d a

s fa

cts

into

th

e w

ork

ing

me

mo

ry.

2.

Ru

les

cre

ate

ne

w e

lem

en

ts,

wh

ich

are

ad

de

d t

o t

he

in

sert

ion

ca

che

.

3.

On

ce c

om

ple

te,

cach

e e

lem

en

ts a

re

inse

rte

d a

s n

ew

fa

cts.

4.

Th

e i

nse

rtio

n c

ach

e i

s cl

ea

red

, a

nd

the

ru

les

re-e

va

lua

ted

.

Page 26: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Imp

lem

en

tati

on

�N

orm

all

y,

inje

ctiv

e N

MR

is

fra

gil

e

�R

esu

lts

de

pe

nd

on

ru

le e

xecu

tio

n o

rde

r

�D

ue

to

in

ject

ive

na

ture

�e

.g.

If A

cre

ate

s B

bu

t B

pre

ve

nts

C c

rea

tin

g D

,

the

n r

un

nin

g A

or

C f

irst

re

sult

s in

dif

fere

nt

ou

tco

me

s

�O

ur

ap

pro

ach

als

o p

reve

nts

th

is

Page 27: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Imp

lem

en

tati

on

�P

rob

lem

: M

od

el

com

ple

tio

n c

ou

ld lo

op

fore

ve

r

�A

�B

�C

�A

�B

�..

.

�D

ep

en

ds

on

th

e r

ule

s

�N

o g

en

era

l w

ay

to

de

tect

: h

alt

ing

pro

ble

m

�S

olu

tio

n:

An

ite

rati

on

lim

it k

�A

pp

ly t

he

giv

en

ru

les

ag

ain

st a

la

rge

su

ite

of

sam

ple

mo

de

ls t

o f

ind

lim

it

�W

arn

de

ve

lop

er

if l

imit

is

hit

at

run

tim

e

Page 28: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Te

st S

uit

e

�T

his

in

ve

stig

ati

on

on

ly m

ak

es

sen

se i

f w

e

ha

ve

a w

ide

ra

ng

e o

f n

on

-tri

via

l m

od

els

�It

era

tive

, te

st-d

riv

en

de

ve

lop

me

nt

of

IAM

L

�E

ach

ne

w f

ea

ture

ha

s te

st m

od

els

�W

ide

ra

ng

e o

f u

ses

�C

he

ck f

or

con

flic

ts w

ith

mo

de

l co

mp

leti

on

�D

eve

lop

co

de

ge

ne

rati

on

te

mp

late

s

�E

xam

ple

mo

de

ls a

s d

ocu

me

nta

tio

n

�..

.

�W

e u

se t

he

se t

est

mo

de

ls a

s o

ur

inp

ut

Page 29: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Te

st S

uit

e

�S

om

e m

etr

ics

of

the

te

st m

od

els

�1

10

mo

de

ls u

sed

in

AS

WE

C p

ap

er

Page 30: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Re

sult

s

�+

10

82

% e

lem

en

ts o

n a

ve

rag

e

�(+

38

25

%:

8 �

31

4 e

lem

en

ts)

Page 31: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Re

sult

s

�A

t m

ost

, 9

ste

ps

req

uir

ed

to

co

mp

lete

mo

de

l

�W

e c

on

serv

ati

ve

ly lim

it k

to 2

0

Page 32: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Ov

err

idin

g M

od

el

Co

mp

leti

on

�Im

po

rta

nt

pa

rt o

f m

od

el

com

ple

tio

n

�W

e n

ee

d t

o a

llo

w t

he

de

ve

lop

er

to m

od

ify

ge

ne

rate

d e

lem

en

ts

�C

urr

en

t a

pp

roa

ch

�E

lem

en

ts a

re 'g

en

era

ted

by

' oth

ers

�A

dd

'ov

err

idd

en

' fla

g

rule

"Example rule"

when ...

eval

( handler.veto( p ))

then Checkbox c = handler.generatedCheckbox(p);

...

Page 33: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

CA

SE

To

ol

Imp

lem

en

tati

on

�T

oo

ls

�In

fer

[co

nta

ine

d]

ge

ne

rate

d e

lem

en

ts

�R

em

ov

e [

con

tain

ed

] g

en

era

ted

ele

me

nts

�In

fer

an

d r

eco

rd t

he

so

urc

e r

ule

�G

rap

hic

al

ed

ito

r a

pp

ea

ran

ce

�'/

' si

gn

ifie

s g

en

era

ted

(c.

f. U

ML

'de

riv

ed

')

�B

old

sig

nif

ies

ov

err

idd

en

(c.

f. a

bo

ut:

con

fig

)

Page 34: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Un

an

swe

red

Qu

est

ion

s

�H

ow

to

do

cum

en

t co

mp

leti

on

?

�W

e c

an

't f

orc

e d

ev

elo

pe

rs t

o r

ea

d s

ou

rce

�C

urr

en

t w

ork

�"M

od

eld

oc"

: d

ocu

me

nta

tio

n f

or

MD

A

�A

dd

s Ja

va

do

c-st

yle

an

no

tati

on

s to

mo

de

l

com

ple

tio

n r

ule

s

Page 35: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Un

an

swe

red

Qu

est

ion

s

�H

ow

to

ma

ke

su

re r

ule

s d

on

't h

it l

imit

k?

�In

wo

rst

case

, so

lvin

g t

he

ha

ltin

g p

rob

lem

�U

sab

ilit

y o

f m

od

el

com

ple

tio

n

�P

rob

ab

ly d

ep

en

de

nt

on

to

ol su

pp

ort

�H

ow

oft

en

do

de

ve

lop

ers

ov

err

ide

?

�E

xte

nd

ing

or

ov

err

idin

g e

xist

ing

ru

les

Page 36: j.m.wright@massey.ac.nz j.b.dietrich@massey.ac.nz Non …openiaml.org/publications/aswec-2010-slides.pdf · 2017. 1. 14. · Non-Monotonic Model Completion in Web Application Engineering

Co

ncl

usi

on

�IA

ML

0.4

.4 a

va

ila

ble

on

lin

e

�E

clip

se-b

ase

d C

AS

E t

oo

l

�F

ree

an

d o

pe

n s

ou

rce

(E

PL)

Qu

est

ion

s?j.

m.w

rig

ht@

ma

sse

y.a

c.n

z

htt

p:/

/op

en

iam

l.o

rg