rt t rs - - PowerPoint PPT Presentation

r t t
SMART_READER_LITE
LIVE PREVIEW

rt t rs - - PowerPoint PPT Presentation

rt trst s rt rt t rs sttt


slide-1
SLIDE 1

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t

▼❛r❦✉s ❘❛❛❜

■♥st✐t✉t❡ ♦❢ ■♥❢♦r♠❛t✐♦♥ ❙②st❡♠s ❊♥❣✐♥❡❡r✐♥❣✱ ❚❯ ❲✐❡♥

✵✽✳✵✺✳✷✵✶✽ ❚❤✐s ✇♦r❦ ✐s ❧✐❝❡♥s❡❞ ✉♥❞❡r ❛ ❈r❡❛t✐✈❡ ❈♦♠♠♦♥s ✏❆ttr✐❜✉t✐♦♥✲❙❤❛r❡❆❧✐❦❡ ✹✳✵ ■♥t❡r♥❛t✐♦♥❛❧✑ ❧✐❝❡♥s❡✳

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✶✴✹✷

slide-2
SLIDE 2

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

▲❡❝t✉r❡ ✐s ❡✈❡r② ✇❡❡❦ ❲❡❞♥❡s❞❛② ✵✾✿✵✵ ✲ ✶✶✿✵✵✳ ✵✻✳✵✸✳✷✵✶✾✿ t♦♣✐❝✱ t❡❛♠s ✶✸✳✵✸✳✷✵✶✾✿ ❚■❙❙ r❡❣✐str❛t✐♦♥✱ ✐♥✐t✐❛❧ P❘ ✷✵✳✵✸✳✷✵✶✾✿ ♦t❤❡r r❡❣✐str❛t✐♦♥s✱ ❣✉❡st ❧❡❝t✉r❡ ✷✼✳✵✸✳✷✵✶✾✿ P❘ ❢♦r ✜rst ✐ss✉❡ ❞♦♥❡✱ s❡❝♦♥❞ st❛rt❡❞ ✵✸✳✵✹✳✷✵✶✾✿ ✜rst ✐ss✉❡ ❞♦♥❡✱ P❘ ❢♦r s❡❝♦♥❞ ✶✵✳✵✹✳✷✵✶✾✿ ♠✐❞✲t❡r♠ s✉❜♠✐ss✐♦♥ ♦❢ ❡①❡r❝✐s❡s ✵✽✳✵✺✳✷✵✶✾✿ ❞✐✛❡r❡♥t ❧♦❝❛t✐♦♥✿ ❈♦♠♣❧❛♥❣ ▲✐❜❛r② ✶✺✳✵✺✳✷✵✶✾✿ ✷✷✳✵✺✳✷✵✶✾✿ ❛❧❧ ✺ ✐ss✉❡s ❞♦♥❡ ✷✾✳✵✺✳✷✵✶✾✿ ✵✺✳✵✻✳✷✵✶✾✿ ✜♥❛❧ s✉❜♠✐ss✐♦♥ ♦❢ ❡①❡r❝✐s❡s ✶✷✳✵✻✳✷✵✶✾✿ ✶✾✳✵✻✳✷✵✶✾✿ ❧❛st ❝♦rr❡❝t✐♦♥s ♦❢ ❡①❡r❝✐s❡s ✷✻✳✵✻✳✷✵✶✾✿ ❡①❛♠

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✷✴✹✷

slide-3
SLIDE 3

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

❚❛s❦s ❢♦r t♦❞❛②

✭✉♥t✐❧ ✵✽✳✵✺✳✷✵✶✾ ✷✸✿✺✾✮ ❚❛s❦ ■♥❝♦r♣♦r❛t❡ ❢❡❡❞❜❛❝❦ ❢♦r t❡❛♠✇♦r❦ ❛♥❞ ❤♦♠❡✇♦r❦✳ ❚❛s❦ ❚❤✐r❞ P❘ ❞♦♥❡✱ P❘ ❢♦r ❢♦✉rt❤ ✐ss✉❡ ❝r❡❛t❡❞ ❛♥❞ ✇r✐t❡ s♦♠❡ t❡①t ✐♥ ②♦✉r ❧❛st ✐ss✉❡ ✭✐❢ ✺ ✐ss✉❡s ❛r❡ ♥♦t ②❡t ❛ss✐❣♥❡❞ t♦ ②♦✉✮✳

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✸✴✹✷

slide-4
SLIDE 4

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

❚❛s❦s ❢♦r ♥❡①t ✇❡❡❦

✭✉♥t✐❧ ✶✺✳✵✺✳✷✵✶✾ ✷✸✿✺✾✮ ❚❛s❦ ❋♦✉rt❤ P❘ ❞♦♥❡✱ P❘ ❢♦r ✜❢t❤ ✐ss✉❡ ❝r❡❛t❡❞✳ ❚❛s❦ ❈♦♥t✐♥✉❡ t❡❛♠✇♦r❦ ❛♥❞ ❤♦♠❡✇♦r❦✳

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✹✴✹✷

slide-5
SLIDE 5

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

P♦♣✉❧❛r ❚♦♣✐❝s

✶✹ t♦♦❧s ✾ t❡st❛❜✐❧✐t② ✾ ❝♦❞❡✲❣❡♥❡r❛t✐♦♥ ✼ ❝♦♥t❡①t✲❛✇❛r❡♥❡ss ✻ s♣❡❝✐✜❝❛t✐♦♥ ✻ ♠✐s❝♦♥✜❣✉r❛t✐♦♥ ✻ ❝♦♠♣❧❡①✐t② r❡❞✉❝t✐♦♥ ✺ ✈❛❧✐❞❛t✐♦♥ ✺ ♣♦✐♥ts ✐♥ t✐♠❡ ✺ ❡rr♦r ♠❡ss❛❣❡s ✺ ❛✉t♦✲❞❡t❡❝t✐♦♥ ✹ ✉s❡r ✐♥t❡r❢❛❝❡ ✹ ✐♥tr♦s♣❡❝t✐♦♥ ✹ ❞❡s✐❣♥ ✹ ❝❛s❝❛❞✐♥❣ ✹ ❛r❝❤✐t❡❝t✉r❡ ♦❢ ❛❝❝❡ss ✸ ❝♦♥✜❣✉r❛t✐♦♥ s♦✉r❝❡s ✸ ❝♦♥✜❣✲❧❡ss s②st❡♠s ✷ s❡❝✉r❡ ❝♦♥❢ ✷ ❛r❝❤✐t❡❝t✉r❛❧ ❞❡❝✐s✐♦♥s ✶ ♣✉s❤ ✈s✳ ♣✉❧❧ ✶ ✐♥❢r❛str✉❝t✉r❡ ❛s ❝♦❞❡ ✶ ❢✉❧❧ ✈s✳ ♣❛rt✐❛❧ ✶ ❝♦♥✈❡♥t✐♦♥ ♦✈❡r ❝♦♥❢ ✶ ❈■✴❈❉ ✵ ❞♦❝✉♠❡♥t❛t✐♦♥

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✺✴✹✷

slide-6
SLIDE 6

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

▼❡t❛❧❡✈❡❧s ✭❘❡❝❛♣✐t✉❧❛t✐♦♥✮

◗✉❡st✐♦♥ ❉❡s❝r✐❜❡ t❤❡ t❤r❡❡ ▼❡t❛❧❡✈❡❧s ✐♥ ❊❧❡❦tr❛✳

configuration setting configuration specification specifies (grammar via Ψ) specifies meta-specification of SpecElektra

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✻✴✹✷

slide-7
SLIDE 7

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

❙♣❡❝❊❧❡❦tr❛ ✭❘❡❝❛♣✐t✉❧❛t✐♦♥✮

❙♣❡❝❊❧❡❦tr❛ ✐s ❛ ♠♦❞✉❧❛r ❝♦♥✜❣✉r❛t✐♦♥ s♣❡❝✐✜❝❛t✐♦♥ ❧❛♥❣✉❛❣❡ ❢♦r ❝♦♥✜❣✉r❛t✐♦♥ s❡tt✐♥❣s✳ ■♥ ❙♣❡❝❊❧❡❦tr❛ ✇❡ ✉s❡ ♣r♦♣❡rt✐❡s t♦ s♣❡❝✐❢② ❝♦♥✜❣✉r❛t✐♦♥ s❡tt✐♥❣s ❛♥❞ ❝♦♥✜❣✉r❛t✐♦♥ ❛❝❝❡ss✳ ❙♣❡❝❊❧❡❦tr❛ ❡♥❛❜❧❡s ✉s t♦ s♣❡❝✐❢② ❞✐✛❡r❡♥t ♣❛rts ♦❢ ❊❧❡❦tr❛✳

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✼✴✹✷

slide-8
SLIDE 8

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

❘❡❝❛♣✐t✉❧❛t✐♦♥ ✭❘❡q✉✐r❡♠❡♥ts ♦❢ ❙♣❡❝❊❧❡❦tr❛✮

❢♦r♠❛❧ ❛♥❞ ✐♥❢♦r♠❛❧ s❤♦✉❧❞ str✐✈❡ ❢♦r ❝♦♠♣❧❡t❡♥❡ss s❤♦✉❧❞ ❜❡ ❡①t❡♥s✐❜❧❡ s❤♦✉❧❞ ❜❡ ❡①t❡r♥❛❧ t♦ ❛♣♣❧✐❝❛t✐♦♥ ♦♣❡♥ ❢♦r ✐♥tr♦s♣❡❝t✐♦♥ ✭❢♦r t♦♦❧✐♥❣✮ s❤♦✉❧❞ t❛❧❦ t♦ ✉s❡rs s❤♦✉❧❞ ❛❧❧♦✇ ❣❡♥❡r❛t✐♦♥ ♦❢ ❛rt❡❢❛❝ts

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✽✴✹✷

slide-9
SLIDE 9

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

▼♦❞✉❧❛r✐t② ✭❘❡❝❛♣✐t✉❧❛t✐♦♥✮ ❱❡rt✐❝❛❧ ♠♦❞✉❧❛r✐t② ❞❡s❝r✐❜❡s ❤♦✇ str♦♥❣❧② s❡♣❛r❛t❡❞ t❤❡ ❝♦♥✜❣✉r❛t✐♦♥ ❛❝❝❡ss❡s ♦❢ ❞✐✛❡r❡♥t ❛♣♣❧✐❝❛t✐♦♥s ✐s✳ ❍♦r✐③♦♥t❛❧ ♠♦❞✉❧❛r✐t② ❞❡s❝r✐❜❡s ❤♦✇ str♦♥❣❧② s❡♣❛r❛t❡❞ ♠♦❞✉❧❡s ✐♠♣❧❡♠❡♥t✐♥❣ ❝♦♥✜❣✉r❛t✐♦♥ ❛❝❝❡ss ❢♦r ❛ s✐♥❣❧❡ ❛♣♣❧✐❝❛t✐♦♥ ✐s✳

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✾✴✹✷

slide-10
SLIDE 10

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

❱❡rt✐❝❛❧ ▼♦❞✉❧❛r✐t② ✭❘❡❝❛♣✐t✉❧❛t✐♦♥✮

◗✉❡st✐♦♥ ❊①♣❧❛✐♥ t❤❡ ❝♦♥t❡♥t ♦❢ t❤❡ ✜❣✉r❡✳

SpecElektra gpsd batteryd F1 ntpd F2 L1 L2 locationtrackerd lt.conf battery ntp.conf F3

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✶✵✴✹✷

slide-11
SLIDE 11

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

P❧✉❣✐♥s ✭❘❡❝❛♣✐t✉❧❛t✐♦♥✮ P❧✉❣✐♥s ❛r❡ ✜❧t❡rs✱ s✐♥❦s✱ ❛♥❞ s♦✉r❝❡s ♣r♦❝❡ss✐♥❣ ❛ ❦❡② s❡t✳ ❲❡ ❛✐♠ ❛t ❙♣❡❝❊❧❡❦tr❛ t♦ ❜❡ ❛s ♠♦❞✉❧❛r ❛s ♣♦ss✐❜❧❡ ❛♥❞ ♠❛❦❡ ❡①t❡♥s✐✈❡ ✉s❡ ♦❢ ♣❧✉❣✐♥s✿

✶ ❙♣❡❝❊❧❡❦tr❛ ❞♦❡s ♥♦t ❤❛✈❡ ❛♥② ❜✉✐❧t✲✐♥ ❢❡❛t✉r❡✱ ❛❧❧

❢❡❛t✉r❡s ❛r❡ ✭♦r ❝❛♥ ❜❡✮ ✐♠♣❧❡♠❡♥t❡❞ ❛s ♣❧✉❣✐♥s✳

✷ ❊❧❡❦tr❛ ✇♦r❦s ❝♦♠♣❧❡t❡❧② ✇✐t❤♦✉t ❙♣❡❝❊❧❡❦tr❛✬s

s♣❡❝✐✜❝❛t✐♦♥s✳

✸ ❈♦♥✜❣✉r❛t✐♦♥ s♣❡❝✐✜❝❛t✐♦♥s ❛r❡ ♣r❡s❡♥t ✇✐t❤✐♥

t❤❡ ❡①❡❝✉t✐♦♥ ❡♥✈✐r♦♥♠❡♥t✳ ❚❤✉s ❛♥② t♦♦❧ ❛♥❞ ♣❧✉❣✐♥ ❝❛♥ ✐♥tr♦s♣❡❝t ❛♥❞ ✉s❡ t❤❡ s♣❡❝✐✜❝❛t✐♦♥s✳

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✶✶✴✹✷

slide-12
SLIDE 12

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

■♥tr♦s♣❡❝t✐♦♥ ✭❘❡❝❛♣✐t✉❧❛t✐♦♥✮

✉♥✐✜❡❞ ❣❡t✴s❡t ❛❝❝❡ss t♦ ✭♠❡t❛✯✮✲❦❡②✴✈❛❧✉❡s ❛❝❝❡ss ✈✐❛ ❛♣♣❧✐❝❛t✐♦♥s✱ ❈▲■✱ ●❯■✱ ✇❡❜✲❯■✱ ✳✳✳ ❛❝❝❡ss ✈✐❛ ❛♥② ♣r♦❣r❛♠♠✐♥❣ ❧❛♥❣✉❛❣❡ ✭s✐♠✐❧❛r t♦ ✜❧❡ s②st❡♠s✮

  • ❯■✱ ✇❡❜✲❯■ ❝❛♥ s❡♠❛♥t✐❝❛❧❧② ✐♥t❡r♣r❡t ♠❡t❛❞❛t❛

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✶✷✴✹✷

slide-13
SLIDE 13

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

  • ♦❛❧s ❢♦r t♦❞❛②

❧❡❛r♥✐♥❣ ♦✉t❝♦♠❡✿ ❡✈❛❧✉❛t❡ ❛ ❝♦♥✜❣✉r❛t✐♦♥ s②st❡♠ ❛♥❞ ❞❡❝✐❞❡ ❛❜♦✉t ✉s❡ ♦❢

code generation system-wide introspection

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✶✸✴✹✷

slide-14
SLIDE 14

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

❈♦❞❡ ●❡♥❡r❛t✐♦♥

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ❲❤②❄ ❍♦✇❄

■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✶✹✴✹✷

slide-15
SLIDE 15

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❲❤②❄

❚❛s❦ ❍♦✇ t♦ ❡♥s✉r❡ t❤❛t ❝♦♥✜❣✉r❛t✐♦♥ ❛❝❝❡ss ♣♦✐♥ts ♠❛t❝❤ ✇✐t❤ ♣r❡s❡♥t ❝♦♥✜❣✉r❛t✐♦♥ s❡tt✐♥❣s❄

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✶✺✴✹✷

slide-16
SLIDE 16

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❲❤②❄

❘❛t✐♦♥❛❧❡ ✭P❛rt❧② ❘❡❝❛♣✐t✉❧❛t✐♦♥✮

❈♦♥✜❣✉r❛t✐♦♥ ❙♣❡❝✐✜❝❛t✐♦♥✿ ✇✐t❤♦✉t s♣❡❝✐✜❝❛t✐♦♥ ②♦✉ ❛♥❞ ♦t❤❡rs ❞♦ ♥♦t ❡✈❡♥ ❦♥♦✇ ✇❤✐❝❤ s❡tt✐♥❣s ❛r❡ ❛✈❛✐❧❛❜❧❡ ♥❡❡❞❡❞ ❢♦r ❛♥② ❢✉rt❤❡r t❡❝❤♥✐q✉❡s ✇❡ ✇✐❧❧ ❞✐s❝✉ss✿

code generation guarantees that configuration access points match with specification validation guarantees that configuration settings match with specification

❡ss❡♥t✐❛❧ ❢♦r ♥♦✲❢✉t③ ❝♦♠♣✉t✐♥❣ ❍♦❧❧❛♥❞ ❡t ❛❧✳ ❬✶❪ t❤❡ ❢♦✉♥❞❛t✐♦♥ ❢♦r ❛♥② ❛❞✈❛♥❝❡❞ t♦♦❧✐♥❣ ❧✐❦❡ ❝♦♥✜❣✉r❛t✐♦♥ ♠❛♥❛❣❡♠❡♥t t♦♦❧s ♥❡❡❞❡❞ ❛s ❝♦♠♠✉♥✐❝❛t✐♦♥ ♦❢ ♣r♦❞✉❝❡rs ❛♥❞ ❝♦♥s✉♠❡rs ♦❢ ❝♦♥✜❣✉r❛t✐♦♥

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✶✻✴✹✷

slide-17
SLIDE 17

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❲❤②❄

❈✉rr❡♥t ❈❤❛❧❧❡♥❣❡s

❈♦♥✜❣✉r❛t✐♦♥ ❛❝❝❡ss ❝♦❞❡ ✉s✉❛❧❧② ❤❛s✿ ❝♦❞❡ ❞✉♣❧✐❝❛t✐♦♥s ❛♥❞ ✉♥s❛❢❡ ❆P■s ❤❛r❞✲❝♦❞❡❞ ❞❡❢❛✉❧t ✈❛❧✉❡s ✉♥❡①♣❡❝t❡❞ tr❛♥s❢♦r♠❛t✐♦♥s ✭❡✳❣✳✱ tr✉♥❝❛t✐♥❣ ♦❢ ✈❛❧✉❡s✮ ✐♥❝♦♥s✐st❡♥❝✐❡s ✭❡✳❣✳✱ ❝❛s❡ s❡♥s✐t✐✈✐t②✮ ♥♦ ✐♥tr♦s♣❡❝t✐♦♥ ❢❛❝✐❧✐t✐❡s ✭✇❤✐❝❤ ❦❡②s ❛♥❞ ✈❛❧✉❡s ❛r❡ ❛❧❧♦✇❡❞❄✮ ❊①❛♠♣❧❡ ✭❙✐❧❡♥t ❖✈❡rr✉❧✐♥❣ ❬✹❪✮

1 ✐❢ ✭✦ str❝❛s❡❝♠♣✭t♦❦❡♥ ✱ ✧♦♥✧✮✮ ④ 2

✯✈❛r ❂ ✶❀

3 ⑥ ❡❧s❡ ④ 4

✯✈❛r ❂ ✵❀

5 ⑥ ✴✯ sr❝✴❝❛❝❤❡❴❝❢✳❝❝ ❢r♦♠ ❙q✉✐❞ ✯✴

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✶✼✴✹✷

slide-18
SLIDE 18

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❲❤②❄

❘❡❛❧✲✇♦r❧❞ ❡①❛♠♣❧❡

P♦st❣r❡❙◗▲✶ ❤❛s ❢♦❧❧♦✇✐♥❣ ❞✉♣❧✐❝❛t✐♦♥s ❢♦r ✐ts ❝♦♥✜❣✉r❛t✐♦♥ s❡tt✐♥❣s✿ ❛ ❣❧♦❜❛❧ ✈❛r✐❛❜❧❡ ❛♥❞ ❛♥ ♦♣t✐♦♥ r❡❝♦r❞ ✭str✉❝t✮ ❛♥ ❡♥tr② ✐♥ ❛♥ ❡①❛♠♣❧❡ ✭♣♦st❣r❡sq❧✳❝♦♥❢✳s❛♠♣❧❡✮ ❞♦❝✉♠❡♥t❛t✐♦♥ ✐♥ s❣♠❧ ✐♥ t❤❡ s♦✉r❝❡ ❝♦❞❡ ♦❢ ✉t✐❧s ✭✐♥✲s♦✉r❝❡ ❞✉♠♣ ✉t✐❧s✱ ❛♥❞ ❞♦③❡♥s ♦❢ ❡①t❡r♥❛❧ ❝♦♥✜❣✉r❛t✐♦♥ ♠❛♥❛❣❡♠❡♥t t♦♦❧s✮ ◆♦t❡✿ P♦st❣r❡❙◗▲ ❤❛s ❛ ❝❧❡❛♥ ✐♠♣❧❡♠❡♥t❛t✐♦♥✱ ❛♥❞ ❛❜♦✈❡ ❧✐st ♦♥❧② s❤♦✇s ❧✐♠✐t❛t✐♦♥s ♦❢ s②st❡♠s ✇✐t❤♦✉t ❝♦❞❡ ❣❡♥❡r❛t✐♦♥✳

✶❤tt♣✿✴✴❞♦①②❣❡♥✳♣♦st❣r❡sq❧✳♦r❣✴❣✉❝❴✽❝❴s♦✉r❝❡✳❤t♠❧ ▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✶✽✴✹✷

slide-19
SLIDE 19

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❲❤②❄

❚❛s❦ ❇r❛✐♥st♦r♠✐♥❣✿ ❲❤✐❝❤ ❛rt❡❢❛❝ts ❝❛♥ ✇❡ ♣r♦❞✉❝❡ ✇✐t❤ ✭❝♦❞❡✮ ❣❡♥❡r❛t✐♦♥❄

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✶✾✴✹✷

slide-20
SLIDE 20

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❲❤②❄

❆rt❡❢❛❝ts✿ ❡①❛♠♣❧❡s ✭❡✳❣✳✱ ❞❡❢❛✉❧ts✮ ❞♦❝✉♠❡♥t❛t✐♦♥ ❛✉t♦✲❝♦♠♣❧❡t✐♦♥✴s②♥t❛① ❤✐❣❤❧✐❣❤t✐♥❣✴■❉❊ s✉♣♣♦rt t♦♦❧✐♥❣ ✭●❯■✱ ❲❡❜ ❯■✮ ✈❛❧✐❞❛t✐♦♥ ❝♦❞❡ ❝♦♥✜❣✉r❛t✐♦♥ ♠❛♥❛❣❡♠❡♥t t♦♦❧ ❝♦❞❡ ❝♦♥✜❣✉r❛t✐♦♥ ❛❝❝❡ss ❆P■s

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✷✵✴✹✷

slide-21
SLIDE 21

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❲❤②❄

  • ♦❛❧
  • ♦❛❧

❈♦♥✜❣✉r❛t✐♦♥ s❡tt✐♥❣s s❤♦✉❧❞ ❛❞❤❡r❡ t❤❡ s♣❡❝✐✜❝❛t✐♦♥ ❢r♦♠ s♦✉r❝❡ t♦ ❞❡st✐♥❛t✐♦♥✳ ❘❡q✉✐r❡♠❡♥t ❚❤❡ s♣❡❝✐✜❝❛t✐♦♥ ♠✉st ❡♥❛❜❧❡ ❝♦❞❡ ❣❡♥❡r❛t✐♦♥ ❛♥❞ ✐♥❝♦♥s✐st❡♥❝✐❡s ♠✉st ❜❡ r✉❧❡❞ ♦✉t ❞✉r✐♥❣ ❝♦♠♣✐❧❛t✐♦♥✳

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✷✶✴✹✷

slide-22
SLIDE 22

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❍♦✇❄

❈♦❞❡ ●❡♥❡r❛t✐♦♥

❚❤❡ ❝♦❞❡ ❣❡♥❡r❛t♦r ●❡♥❊❧❡❦tr❛ r❡❛❞s ❙♣❡❝❊❧❡❦tr❛ s♣❡❝✐✜❝❛t✐♦♥s ❛♥❞ ❡♠✐ts ❤✐❣❤✲❧❡✈❡❧ ❆P■s t♦ ❜❡ ✉s❡❞ ✐♥ ❛♣♣❧✐❝❛t✐♦♥s✳ ●❡♥❊❧❡❦tr❛ ❢❛❝✐❧✐t❛t❡s t❤❡ ❦❡② ♥❛♠❡s t♦ ❣❡♥❡r❛t❡ ✉♥✐q✉❡ ❆P■ ♥❛♠❡s✳ ❇✉t ❤♦✇❄

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✷✷✴✹✷

slide-23
SLIDE 23

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❍♦✇❄

❑❡②❙❡t ✭❘❡❝❛♣✐t✉❧❛t✐♦♥✮

❚❤❡ ❝♦♠♠♦♥ ❞❛t❛ str✉❝t✉r❡ ❜❡t✇❡❡♥ ♣❧✉❣✐♥s✿

KeySet Key key name value meta- data metakey or property metakey name or property name metakey value or property value

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✷✸✴✹✷

slide-24
SLIDE 24

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❍♦✇❄

❑❡②❙❡t ●❡♥❡r❛t✐♦♥

◗✉❡st✐♦♥ ■❞❡❛✿ ❲❤❛t ✐❢ t❤❡ ❝♦♥✜❣✉r❛t✐♦♥ ✜❧❡ ❢♦r♠❛t ❣r❛♠♠❛r ❞❡s❝r✐❜❡s s♦✉r❝❡ ❝♦❞❡❄ ❑❡②❙❡t ✿✿❂ ❵❦s◆❡✇✬✥✭✬ ④ ❑❡② ❵✱ ← ֓✬ ⑥ ④ ❵✥✬ ⑥ ❵❑❙❴❊◆❉✮❀✬ ❑❡② ✿✿❂ ❵❦❡②◆❡✇ ✥✭✑ ✬ ❦❡② ♥❛♠❡ ❵✑ ✱ ← ֓✬ ❬ ❱❛❧✉❡ ❪ ♣r♦♣❡rt✐❡s ❵❑❊❨❴❊◆❉✮✬ ❱❛❧✉❡ ✿✿❂ ④ ❵✥✬ ⑥ ❵❑❊❨❴❱❆▲❯❊✱ ✥✑ ✬ ❝♦♥✜❣✉r❛t✐♦♥ ✈❛❧✉❡ ❵✑ ✱ ← ֓✬ ♣r♦♣❡rt✐❡s ✿✿❂ ④ ④ ❵✥✬ ⑥ ♣r♦♣❡rt② ❵✱ ← ֓✬ ⑥ ♣r♦♣❡rt② ✿✿❂ ❵❑❊❨❴▼❊❚❆✱ ✥ ✬ ❁♣r♦♣❡rt② ♥❛♠❡❃ ❵ ✱ ✥ ✬ ❁♣r♦♣❡rt② ✈❛❧✉❡❃ ❵ ✬

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✷✹✴✹✷

slide-25
SLIDE 25

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❍♦✇❄

❚❛s❦ ❇r❡❛❦✳

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✷✺✴✹✷

slide-26
SLIDE 26

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❍♦✇❄

❊①❛♠♣❧❡

❊①❛♠♣❧❡

  • ✐✈❡♥ t❤❡ ❦❡② s♣❡❝✿✴s❧❛♣❞✴t❤r❡❛❞s✴❧✐st❡♥❡r✱ ✇✐t❤ t❤❡

❝♦♥✜❣✉r❛t✐♦♥ ✈❛❧✉❡ ✹ ❛♥❞ t❤❡ ♣r♦♣❡rt② ❞❡❢❛✉❧t → ✶✱ ●❡♥❊❧❡❦tr❛ ❡♠✐ts✿

1 ❦s◆❡✇ ✭❦❡②◆❡✇ ✭✧s♣❡❝ ✿✴ s❧❛♣❞✴t❤r❡❛❞s✴❧✐st❡♥❡r✧✱ 2

❑❊❨❴❱❆▲❯❊ ✱ ✧✹✧✱

3

❑❊❨❴▼❊❚❆ ✱ ✧❞❡❢❛✉❧t✧✱ ✧✶✧✱

4

❑❊❨❴❊◆❉✮✱

5

❑❙❴❊◆❉ ✮❀ ❋✐♥❞✐♥❣ ❲❡ ❤❛✈❡ s♦✉r❝❡ ❝♦❞❡ r❡♣r❡s❡♥t✐♥❣ t❤❡ s❡tt✐♥❣s✳ ❆♥❞ ✐❢ ✇❡ ✐♥st❛♥t✐❛t❡ ✐t✱ ✇❡ ❤❛✈❡ ❛ ❞❛t❛ str✉❝t✉r❡ r❡♣r❡s❡♥t✐♥❣ t❤❡ s❡tt✐♥❣s✳ P❧✉❣✐♥s ❡♠✐tt✐♥❣ s✉❝❤ ✏❝♦♥✜❣✉r❛t✐♦♥ ✜❧❡s✑ ❛r❡ ❝♦❞❡ ❣❡♥❡r❛t♦rs✳

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✷✻✴✹✷

slide-27
SLIDE 27

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❍♦✇❄

■♠♣❧❡♠❡♥t❛t✐♦♥ ❙tr❛t❡❣✐❡s

❯s✐♥❣ ♣r✐♥t ✭♦♥❧② ❢♦r ✈❡r② s♠❛❧❧ ❣❡♥❡r❛t♦rs✮ ❯s✐♥❣ ❣❡♥❡r❛t✐✈❡ ❣r❛♠♠❛rs

1 q✉❡r② ❂ ✬④✬ ❃❃ ✯✭ ♣❛✐r✮ ❃ ✬⑥✬❀ 2 ♣❛✐r ❂ ✬④✬ ❃❃ ❦❡②❴♥❛♠❡ ❃ ✬❂✬ ❃❃ ❦❡②❴✈❛❧✉❡ ❃❃ 3

✯✭✬④✬ ❃❃ ♠❡t❛❦❡②❴♥❛♠❡ ❃ ✬❂✬ ❃❃ ♠❡t❛❦❡②❴✈❛❧✉❡ ❃ ✬⑥✬✮

4

❃ ✬⑥✬❀ ❯s✐♥❣ t❡♠♣❧❛t❡ ❧❛♥❣✉❛❣❡s ✭❘✉❜②❊❘❇✱ ❈❤❡❡t❛❤✱ ▼✉st❛❝❤❡✮

✶ ❅❢♦r ♥ ✐♥ ❤✐❡r❛r❝❤②✳♥❛♠❡✳s♣❧✐t✭✬✴✬✮❬✶✿✲✶❪ ✷ ♥❛♠❡s♣❛❝❡ ✩s✉♣♣♦rt✳♥s♥♣r❡tt②✭✩♥✮ ✸ ④ ✹ ❝❧❛ss ✩④❤✐❡r❛r❝❤②✳ ♣r❡tt②❝❧❛ss♥❛♠❡ ✭s✉♣♣♦rt ✮⑥ ✺ ④ ✻ t②♣❡❞❡❢ ✩s✉♣♣♦rt✳t②♣❡♦❢✭✩❤✐❡r❛r❝❤②✳✐♥❢♦✮ t②♣❡❀ ✼ ❅✐❢ ✩s✉♣♣♦rt✳t②♣❡♦❢✭✩❤✐❡r❛r❝❤②✳✐♥❢♦✮ ✦❂ ✧❦❞❜✿✿ ♥♦♥❡❴t✧ ✽ st❛t✐❝ t②♣❡ ❣❡t✭❦❞❜ ✿✿ ❑❡②❙❡t ✫❦s ✱ ❦❞❜✿✿ ❑❡② ❝♦♥st✫ s♣❡❝✮ ✾ ④ ✶✵ t②♣❡ ✈❛❧✉❡ ✩s✉♣♣♦rt✳✈❛❧♦❢✭✩❤✐❡r❛r❝❤②✳✐♥❢♦✮ ✶✶ ❑❡② ❢♦✉♥❞✭❝❦❞❜ ✿✿ ❦s▲♦♦❦✉♣✭❦s✳❣❡t❑❡②❙❡t ✭✮✱ ✯s♣❡❝ ✱ ✶✷ ❝❦❞❜ ✿✿ ❡❧❡❦tr❛▲♦♦❦✉♣❖♣t✐♦♥s ✿✿ ❑❉❇❴❖❴❙P❊❈ ✮✮❀ ✶✸ r❡t✉r♥ ❢♦✉♥❞✳❣❡t ❁✩s✉♣♣♦rt✳t②♣❡♦❢✭✩❤✐❡r❛r❝❤②✳✐♥❢♦ ✮ ❃✭✮❀ ✶✹ ⑥ ▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✷✼✴✹✷

slide-28
SLIDE 28

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❍♦✇❄

P♦ss✐❜❧❡ Pr♦♣❡rt✐❡s

❋♦r ❡①❛♠♣❧❡✱ ❙♣❡❝❊❧❡❦tr❛ ❤❛s ❢♦❧❧♦✇✐♥❣ ♣r♦♣❡rt✐❡s✿ t②♣❡ r❡♣r❡s❡♥ts t❤❡ t②♣❡ t♦ ❜❡ ✉s❡❞ ✐♥ t❤❡ ❡♠✐tt❡❞ s♦✉r❝❡ ❝♦❞❡✳ ♦♣t ✐s ✉s❡❞ ❢♦r s❤♦rt ❝♦♠♠❛♥❞✲❧✐♥❡ ♦♣t✐♦♥s t♦ ❜❡ ❝♦♣✐❡❞ t♦ t❤❡ ♥❛♠❡s♣❛❝❡ ♣r♦❝✳ ♦♣t✴❧♦♥❣ ✐s ✉s❡❞ ❢♦r ❧♦♥❣ ❝♦♠♠❛♥❞✲❧✐♥❡ ♦♣t✐♦♥s✱ ✇❤✐❝❤ ❞✐✛❡r ❢r♦♠ s❤♦rt ❝♦♠♠❛♥❞✲❧✐♥❡ ♦♣t✐♦♥s ❜② s✉♣♣♦rt✐♥❣ str✐♥❣s ❛♥❞ ♥♦t ♦♥❧② ❝❤❛r❛❝t❡rs✳ r❡❛❞♦♥❧② ②✐❡❧❞s ❝♦♠♣✐❧❛t✐♦♥ ❡rr♦rs ✇❤❡♥ ❞❡✈❡❧♦♣❡rs ❛ss✐❣♥ ❛ ✈❛❧✉❡ t♦ ❛ ❝♦♥t❡①t✉❛❧ ✈❛❧✉❡ ✇✐t❤✐♥ t❤❡ ♣r♦❣r❛♠✳ ❞❡❢❛✉❧t ❡♥❛❜❧❡s ✉s t♦ st❛rt t❤❡ ❛♣♣❧✐❝❛t✐♦♥ ❡✈❡♥ ✐❢ t❤❡ ❜❛❝❦❡♥❞ ❞♦❡s ♥♦t ✇♦r❦✳

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✷✽✴✹✷

slide-29
SLIDE 29

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❍♦✇❄

❲✐t❤ t❤❡ s♣❡❝✐✜❝❛t✐♦♥✿

1 ❬❢♦♦✴❜❛r❪ 2

❞❡❢❛✉❧t ✿❂ ❍❡❧❧♦

3

t②♣❡ ✿❂ str✐♥❣

4

♦♣t ✿❂ ❜

5

r❡❛❞♦♥❧② ✿❂ ✶

  • ❡♥❊❧❡❦tr❛ ❣✐✈❡s t❤❡ ✉s❡r r❡❛❞✲♦♥❧② ❛❝❝❡ss t♦ t❤❡ ♦❜❥❡❝t

❡♥✈✳❢♦♦✳❜❛r✿

1

st❞✿✿ ❝♦✉t ❁❁ ❡♥✈✳❢♦♦✳❜❛r❀

2

❡♥✈✳❢♦♦✳❜❛r ❂ ✧❖t❤❡r ✇♦r❧❞✧❀ ✴✴ ❝♦♠♣✳ ❡rr♦r

Line 1 prints the configuration value of /foo/bar or "Hello" (without quotes) by default. When invoking the application with application -b "This world", the application would print "This world" (without quotes). Line 2 leads to a compilation error because of the property readonly.

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✷✾✴✹✷

slide-30
SLIDE 30

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❍♦✇❄

❲❤✐❝❤ ❈♦♥✜❣✉r❛t✐♦♥ ❆❝❝❡ss ❆P■❄

❋✐rst ❛♣♣r♦❛❝❤✱ ♦♥❡ ❝❧❛ss ✭♦r ❢✉♥❝t✐♦♥✮ ♣❡r ❝♦♥✜❣✉r❛t✐♦♥ s❡tt✐♥❣✿

1 ❝❧❛ss

❙❧❛♣❞❚❤r❡❛❞s▲✐st❡♥❡r ✿ ♣✉❜❧✐❝ ❱❛❧✉❡ ❁❧♦♥❣ ✱

2

❲r✐t❡P♦❧✐❝②■s ❁❘❡❛❞❖♥❧②P♦❧✐❝② ❃❃ ④

3

✳✳✳ ❦❡②◆❡✇ ✭✧✴s❧❛♣❞✴t❤r❡❛❞s✴❧✐st❡♥❡r✧✱

4

❑❊❨❴▼❊❚❆ ✱ ✧t②♣❡✧✱ ✧❧♦♥❣✧✱

5

❑❊❨❴▼❊❚❆ ✱ ✧r❡❛❞♦♥❧②✧✱ ✧✶✧✱

6

❑❊❨❴❊◆❉✮ ✳✳✳

7 ⑥❀

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✸✵✴✹✷

slide-31
SLIDE 31

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❍♦✇❄

❲❤✐❝❤ ❈♦♥✜❣✉r❛t✐♦♥ ❆❝❝❡ss ❆P■❄

❇❛❞ ✐❞❡❛✱ ♠❛♥✉❛❧ ✐♥st❛♥t✐❛t✐♦♥ ❛♥❞ ❧♦♥❣ ♥❛♠❡s ♥❡❝❡ss❛r②✿

1 ❑❡②❙❡t ❝♦♥❢✐❣❀ 2 ❈♦♥t❡①t ❝❀ 3 ❧♦♥❣ ❢♦♦ ✭✮ 4 ④ 5

❙❧❛♣❞❚❤r❡❛❞s▲✐st❡♥❡r s❧❛♣❞❚❤r❡❛❞s▲✐st❡♥❡r ✭❝♦♥❢✐❣ ✱ ❝✮❀

6

s❧❛♣❞❚❤r❡❛❞s▲✐st❡♥❡r ✰✰❀

7

r❡t✉r♥ s❧❛♣❞❚❤r❡❛❞s▲✐st❡♥❡r ❀

8 ⑥

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✸✶✴✹✷

slide-32
SLIDE 32

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❍♦✇❄

❲❤✐❝❤ ❈♦♥✜❣✉r❛t✐♦♥ ❆❝❝❡ss ❆P■❄

❯s❡ ❤✐❡r❛r❝❤② ✇✐t❤ ♥❛♠❡s♣❛❝❡s ♦r ♥❡st❡❞ ❝❧❛ss❡s✿

1 ♥❛♠❡s♣❛❝❡ s❧❛♣❞ 2 ④ 3 ♥❛♠❡s♣❛❝❡

t❤r❡❛❞s

4 ④ 5 ❝❧❛ss ▲✐st❡♥❡r ✿ ♣✉❜❧✐❝ ❱❛❧✉❡ ❁❧♦♥❣ ❃ ④⑥❀ 6 ⑥

✴✴ ❁❝♦♥t✐♥✉❡s ♦♥ t❤❡ ♥❡①t ♣❛❣❡ ❃

7 ❝❧❛ss ❚❤r❡❛❞s ✿ ♣✉❜❧✐❝ ❱❛❧✉❡ ❁♥♦♥❡❴t ❃ 8 ④t❤r❡❛❞s ✿✿ ▲✐st❡♥❡r

❧✐st❡♥❡r ❀⑥❀

9 ⑥

✴✴ ❡♥❞ ♥❛♠❡s♣❛❝❡ s❧❛♣❞

10 ❝❧❛ss ❙❧❛♣❞ ✿ ♣✉❜❧✐❝ ❱❛❧✉❡ ❁♥♦♥❡❴t ❃ 11 ④s❧❛♣❞ ✿✿ ❚❤r❡❛❞s

t❤r❡❛❞s ❀⑥❀

12 ❝❧❛ss ❊♥✈✐r♦♥♠❡♥t ④❙❧❛♣❞ s❧❛♣❞ ❀⑥❀

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✸✷✴✹✷

slide-33
SLIDE 33

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❍♦✇❄

❲❤✐❝❤ ❈♦♥✜❣✉r❛t✐♦♥ ❆❝❝❡ss ❆P■❄

▼✉❝❤ ❡❛s✐❡r t♦ ✉s❡✿

1 ❧♦♥❣ ❢♦♦✭s❧❛♣❞ ✿✿ ❚❤r❡❛❞s ❝♦♥st ✫ t❤r❡❛❞s✮ 2 ④ 3

t❤r❡❛❞s✳❧✐st❡♥❡r ✰✰❀

4

❈♦♥t❡①t ✫ ❝ ❂ t❤r❡❛❞s✳❝♦♥t❡①t ✭✮❀

5

r❡t✉r♥ t❤r❡❛❞s✳❧✐st❡♥❡r❀

6 ⑥ 7 8 ✐♥t ♠❛✐♥ ✭✮ 9 ④ 10

❑❡②❙❡t ❝♦♥❢✐❣❀

11

❈♦♥t❡①t ❝❀

12

❊♥✈✐r♦♥♠❡♥t ❡♥✈ ✭❝♦♥❢✐❣ ✱ ❝✮❀

13

❧♦♥❣ ① ❂ ❢♦♦ ✭❡♥✈✳s❧❛♣❞✳t❤r❡❛❞s ✮❀

14 ⑥

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✸✸✴✹✷

slide-34
SLIDE 34

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❍♦✇❄

❲❤✐❝❤ ❈♦♥✜❣✉r❛t✐♦♥ ❆❝❝❡ss ❆P■❄

■♥ ❈✱ ✇❡ ✉s❡ ✐❞❡♥t✐✜❡rs t♦ ❜❡ ♣❛ss❡❞ t♦ t❤❡ ❤✐❣❤❧❡✈❡❧ ❆P■✶✿

1 ❡❧❡❦tr❛●❡t❙tr✐♥❣ ✭❡❧❡❦tr❛ ✱ ❊▲❊❑❚❘❆❴❚❆●❴▼❨ ✮❀

❲❤❡r❡ ❊▲❊❑❚❘❆❴❚❆●❴▼❨ ✐s ❛ str✉❝t ❢♦r t❤❛t t②♣❡✳ ❲❡ ❝❛♥ ❛❧s♦ ♦♠✐t t❤❡ t②♣❡✿

1 ❡❧❡❦tr❛●❡t▲♦♥❣ ✭❡❧❡❦tr❛ ✱ ❊▲❊❑❚❘❆❴❚❆●❴❚❍❘❊❆❉❙ ✮❀ 2 ❡❧❡❦tr❛●❡t ✭❡❧❡❦tr❛ ✱ ❊▲❊❑❚❘❆❴❚❆●❴❚❍❘❊❆❉❙ ✮❀

✶❤tt♣s✿✴✴✇✇✇✳❧✐❜❡❧❡❦tr❛✳♦r❣✴t✉t♦r✐❛❧s✴❤✐❣❤✲❧❡✈❡❧✲❛♣✐ ▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✸✹✴✹✷

slide-35
SLIDE 35

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥ ❍♦✇❄

  • ✉❛r❛♥t❡❡s ❜② ❝♦❞❡ ❣❡♥❡r❛t✐♦♥✿

❊✈❡r② ❝♦♥✜❣✉r❛t✐♦♥ s❡tt✐♥❣ ✐s s♣❡❝✐✜❡❞✳ ✭❉❛t❛✮ t②♣❡ ♦❢ s♦✉r❝❡ ❝♦❞❡ ❛♥❞ ❝♦♥✜❣✉r❛t✐♦♥ s❡tt✐♥❣s ♠❛t❝❤✳ ❈♦♥✜❣✉r❛t✐♦♥ ❛❝❝❡ss ✇✐t❤ ❞❡❢❛✉❧ts ✐s ❛❧✇❛②s s✉❝❝❡ss❢✉❧✳ ❘❡❛s♦♥✿ ❲❡ ✉s❡ ❞❡❢❛✉❧ts ✐❢ ❡✈❡r②t❤✐♥❣ ❡❧s❡ ❢❛✐❧s✳ ▼✐ss✐♥❣ ●✉❛r❛♥t❡❡✿ ■s ❡✈❡r② s♣❡❝✐✜❡❞ s❡tt✐♥❣ ❛❝t✉❛❧❧② ✉s❡❞❄

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✸✺✴✹✷

slide-36
SLIDE 36

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ❲❤②❄ ❍♦✇❄

■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✸✻✴✹✷

slide-37
SLIDE 37

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

◗✉❡st✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ❈♦❞❡ ●❡♥❡r❛t✐♦♥❄

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✸✼✴✹✷

slide-38
SLIDE 38

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

▲✐♠✐t❛t✐♦♥s ♦❢ ✐♥tr♦s♣❡❝t✐♦♥✿ ♥♦ st❛t✐❝ ❝❤❡❝❦s ♥♦ ✇❤♦❧❡✲♣r♦❣r❛♠ ♦♣t✐♠✐③❛t✐♦♥s ✭❆P■ ❜❛rr✐❡rs✮

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✸✽✴✹✷

slide-39
SLIDE 39

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

❖✈❡r❤❡❛❞ ✇✐t❤♦✉t ❝♦❞❡ ❣❡♥❡r❛t✐♦♥ ✭❂❜❛❝❦❡♥❞✮ ✐s ✶.✽① ❤✐❣❤❡r ❬✷❪✿

  • 1

2 3 4 5 6 1 2 3 4 5 6 7 8 9

Number of properties override Execution time (s)

backend frontend ▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✸✾✴✹✷

slide-40
SLIDE 40

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

❇✉t ✐t ♠✐❣❤t ♥♦t ♠❛tt❡r ❜❡❝❛✉s❡ ❝♦♥✜❣✉r❛t✐♦♥ ❛❝❝❡ss ♠✐❣❤t ♥♦t ❜❡ ❛ ❜♦tt❧❡♥❡❝❦ ❬✷❪✱ ❢♦r ❡①❛♠♣❧❡✱ ❛ ✇♦r❞ ❝♦✉♥t✐♥❣ ❛♣♣❧✐❝❛t✐♦♥✿

process 64% kdb.open 17% kdb.get 11%

  • verhead 5%

lookup 3% kdb.get 11% kdb.open 17% lookup 3%

  • verhead 5%

process 64%

❇✉t✿ ❈♦♥✜❣✉r❛t✐♦♥ ❛❝❝❡ss ♣♦✐♥ts ✇✐t❤✐♥ ❧♦♦♣s ♠✐❣❤t ❜❡ ❛ ❜♦tt❧❡♥❡❝❦✳

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✹✵✴✹✷

slide-41
SLIDE 41

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

❆❞✈❛♥t❛❣❡s ♦❢ ✐♥tr♦s♣❡❝t✐♦♥✿ s♣❡❝✐✜❝❛t✐♦♥ ❝❛♥ ❜❡ ✉♣❞❛t❡❞ ❧✐✈❡ ♦♥ t❤❡ s②st❡♠ ✇✐t❤♦✉t r❡❝♦♠♣✐❧❛t✐♦♥ t♦♦❧✐♥❣ ❤❛s ❣❡♥❡r✐❝ ❛❝❝❡ss t♦ ❛❧❧ s♣❡❝✐✜❝❛t✐♦♥s ♥❡✇ ❢❡❛t✉r❡s t❤❡ ❦❡② ❞❛t❛❜❛s❡ ✭❡✳❣✳✱ ❜❡tt❡r ✈❛❧✐❞❛t✐♦♥✮ ❛r❡ ✐♠♠❡❞✐❛t❡❧② ❛✈❛✐❧❛❜❧❡ ❝♦♥s✐st❡♥t❧② ■♠♣❧✐❝❛t✐♦♥ ❲❡ ❣❡♥❡r❛❧❧② ♣r❡❢❡r ✐♥tr♦s♣❡❝t✐♦♥✱ ❡①❝❡♣t ❢♦r ❛ ✈❡r② t❤✐♥ ❝♦♥✜❣✉r❛t✐♦♥ ❛❝❝❡ss ❆P■✳ ❘❡q✉✐r❡♠❡♥t ❈♦♥✜❣✉r❛t✐♦♥ s❡tt✐♥❣s ❛♥❞ s♣❡❝✐✜❝❛t✐♦♥s ♠✉st ❜❡ ✐♥tr♦s♣❡❝t❛❜❧❡✳

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✹✶✴✹✷

slide-42
SLIDE 42

❈♦❞❡ ●❡♥❡r❛t✐♦♥ ■♥tr♦s♣❡❝t✐♦♥ ✈s✳ ●❡♥❡r❛t✐♦♥

Pr❡✈✐❡✇

❚❡st✐♥❣ ❊❛r❧② ❉❡t❡❝t✐♦♥ ♦❢ ▼✐s❝♦♥✜❣✉r❛t✐♦♥

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✹✷✴✹✷

slide-43
SLIDE 43

❘❡❢❡r❡♥❝❡s

❬✶❪ ❉❛✈✐❞ ❆✳ ❍♦❧❧❛♥❞✱ ❲✐❧❧✐❛♠ ❏♦s❡♣❤s♦♥✱ ❑♦st❛s ▼❛❣♦✉t✐s✱ ▼❛r❣♦ ■✳ ❙❡❧t③❡r✱ ❈❤r✐st♦♣❤❡r ❆✳ ❙t❡✐♥✱ ❛♥❞ ❆❞❛ ▲✐♠✳ ❘❡s❡❛r❝❤ ✐ss✉❡s ✐♥ ♥♦✲❢✉t③ ❝♦♠♣✉t✐♥❣✳ ■♥ ❍♦t ❚♦♣✐❝s ✐♥ ❖♣❡r❛t✐♥❣ ❙②st❡♠s✱ ✷✵✵✶✳ Pr♦❝❡❡❞✐♥❣s ♦❢ t❤❡ ❊✐❣❤t❤ ❲♦r❦s❤♦♣ ♦♥✱ ♣❛❣❡s ✶✵✻✕✶✶✵✳ ■❊❊❊✱ ▼❛② ✷✵✵✶✳ ❞♦✐✿ ✶✵✳✶✶✵✾✴❍❖❚❖❙✳✷✵✵✶✳✾✾✵✵✻✾✳ ❬✷❪ ▼❛r❦✉s ❘❛❛❜✳ ❙❤❛r✐♥❣ s♦❢t✇❛r❡ ❝♦♥✜❣✉r❛t✐♦♥ ✈✐❛ s♣❡❝✐✜❡❞ ❧✐♥❦s ❛♥❞ tr❛♥s❢♦r♠❛t✐♦♥ r✉❧❡s✳ ■♥ ❚❡❝❤♥✐❝❛❧ ❘❡♣♦rt ❢r♦♠ ❑P❙ ✷✵✶✺✱ ✈♦❧✉♠❡ ✶✽✳ ❱✐❡♥♥❛ ❯♥✐✈❡rs✐t② ♦❢ ❚❡❝❤♥♦❧♦❣②✱ ❈♦♠♣❧❛♥❣ ●r♦✉♣✱ ✷✵✶✺✳ ❬✸❪ ▼❛r❦✉s ❘❛❛❜ ❛♥❞ ●❡r❣ö ❇❛r❛♥②✳ ■♥tr♦❞✉❝✐♥❣ ❝♦♥t❡①t ❛✇❛r❡♥❡ss ✐♥ ✉♥♠♦❞✐✜❡❞✱ ❝♦♥t❡①t✲✉♥❛✇❛r❡ s♦❢t✇❛r❡✳ ■♥ Pr♦❝❡❡❞✐♥❣s ♦❢ t❤❡ ✶✷t❤ ■♥t❡r♥❛t✐♦♥❛❧ ❈♦♥❢❡r❡♥❝❡ ♦♥ ❊✈❛❧✉❛t✐♦♥ ♦❢ ◆♦✈❡❧ ❆♣♣r♦❛❝❤❡s t♦ ❙♦❢t✇❛r❡ ❊♥❣✐♥❡❡r✐♥❣ ✲ ❱♦❧✉♠❡ ✶✿ ❊◆❆❙❊✱✱ ♣❛❣❡s ✷✶✽✕✷✷✺✳ ■◆❙❚■❈❈✱ ❙❝✐t❡Pr❡ss✱ ✷✵✶✼✳ ■❙❇◆ ✾✼✽✲✾✽✾✲✼✺✽✲✷✺✵✲✾✳ ❞♦✐✿ ✶✵✳✺✷✷✵✴✵✵✵✻✸✷✻✻✵✷✶✽✵✷✷✺✳

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✶✴✷

slide-44
SLIDE 44

❘❡❢❡r❡♥❝❡s

❬✹❪ ❚✐❛♥②✐♥ ❳✉✱ ❏✐❛q✐ ❩❤❛♥❣✱ P❡♥❣ ❍✉❛♥❣✱ ❏✐♥❣ ❩❤❡♥❣✱ ❚✐❛♥✇❡✐ ❙❤❡♥❣✱ ❉✐♥❣ ❨✉❛♥✱ ❨✉❛♥②✉❛♥ ❩❤♦✉✱ ❛♥❞ ❙❤❛♥❦❛r P❛s✉♣❛t❤②✳ ❉♦ ♥♦t ❜❧❛♠❡ ✉s❡rs ❢♦r ♠✐s❝♦♥✜❣✉r❛t✐♦♥s✳ ■♥ Pr♦❝❡❡❞✐♥❣s ♦❢ t❤❡ ❚✇❡♥t②✲❋♦✉rt❤ ❆❈▼ ❙②♠♣♦s✐✉♠ ♦♥ ❖♣❡r❛t✐♥❣ ❙②st❡♠s Pr✐♥❝✐♣❧❡s✱ ♣❛❣❡s ✷✹✹✕✷✺✾✳ ❆❈▼✱ ✷✵✶✸✳

▼❛r❦✉s ❘❛❛❜ ❈♦♥✜❣✉r❛t✐♦♥ ▼❛♥❛❣❡♠❡♥t ✷✴✷