Partial Models: Towards Modeling and Reasoning with Uncertainty

Preview:

Citation preview

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Partial Models: Towards Modeling andReasoning with Uncertainty

Michalis Famelis, Rick Salay, and Marsha Chechik

University of Toronto

June 7, 2012ICSE’12, Zurich, Switzerland

1 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Intuition: Sudoku

Created with GNOME Sudoku 2.32.0.

2 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Intuition: Sudoku

Created with GNOME Sudoku 2.32.0.

2 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Intuition: Sudoku

Created with GNOME Sudoku 2.32.0.

2 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Intuition: Sudoku

Created with GNOME Sudoku 2.32.0.

2 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Intuition: Sudoku

Created with GNOME Sudoku 2.32.0.

2 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Intuition: Sudoku

Created with GNOME Sudoku 2.32.0.

2 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Intuition: Sudoku

Created with GNOME Sudoku 2.32.0.

2 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Intuition: Sudoku

Created with GNOME Sudoku 2.32.0.

2 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Intuition: Sudoku

Created with GNOME Sudoku 2.32.0.

2 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Enough About Sudoku

Source: Wikimedia,

3 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Goal: Uncertainty in Software

4 / 29

Modeling

Explicate points of uncertaintyCorrelate points of uncertainty

Reasoning

Check propertiesGive feedback to facilitate diagnosis

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Designing a P2P ApplicationTrying to design a P2P client application.

What do I know?

5 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Designing a P2P ApplicationTrying to design a P2P client application.

What do I not know?

5 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Designing a P2P ApplicationTrying to design a P2P client application.

What do I not know?

5 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Designing a P2P ApplicationTrying to design a P2P client application.

How can I explicate my uncertainty and reason in its presence?

5 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Contribution

Modeling Uncertainty

• Encode uncertainty in Partial Models.

• Semantics: sets of conventional models.

Reasoning in the Presence of Uncertainty

• Check properties.

• Give feedback to facilitate diagnosis.

Evaluation of Reasoning

• Reasoning with Partial models vs. reasoning with a set ofconventional models

6 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

In Paper / Not In Talk

Presentation of these would take too much time:

• Encoding conventional models in logic and back

• Construction algorithm of Partial Models

• Propositional Normal Form (PNF)

• Graphical Normal Form (GNF)

• Diagnostic cores

• “Property-driven” refinement.

• Translation from PNF to GNF and vice versa

• Evaluation of diagnostic cores and property-drivenrefinement

• Random generation of experimental inputs

7 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Contribution

Modeling Uncertainty

• Encode uncertainty in Partial Models.

• Semantics: sets of conventional models.

Reasoning in the Presence of Uncertainty

• Check properties.

• Give feedback to facilitate diagnosis.

Evaluation of Reasoning

• Reasoning with Partial models vs. reasoning with a set ofconventional models

8 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Partial Models

9 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Partial Models

9 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Partial Models

9 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Partial Models

9 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Partial Models

9 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Partial Models

9 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Semantics of Partial Models

10 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Semantics of Partial Models

10 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Semantics of Partial Models

10 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Related IdeasBehavioral modeling:

• Modal Transition Systems (MTSs) [Larsen’88].

• Disjunctive MTSs [Larsen’91].

Software Product Lines:

• Variability in the metamodel [Morin’09].

• Featured Transition Systems [Classen’10].

Partial Models:• Language-independent

not just behavioral models!

• May formula: exact encodingthorough reasoning

• Focus on systematic management of uncertaintyuncertainty-reducing refinement [VOLT’12]

transformations [MiSE’12]

11 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Contribution

Modeling Uncertainty

• Encode uncertainty in Partial Models.

• Semantics: sets of conventional models.

Reasoning in the Presence of Uncertainty

• Check properties.

• Give feedback to facilitate diagnosis.

Evaluation of Reasoning

• Reasoning with Partial models vs. reasoning with a set ofconventional models

12 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

1) Property Checking

Property can be:

• True: holds for all concretizations

• False: holds for none

• Maybe: true for some, false for others

To check a property:

- Encode model and property in propositional logic.

- Use SAT solver.

ΦM ∧ Φp ΦM ∧ ¬Φp Property pSAT SAT MaybeSAT UNSAT True

UNSAT SAT FalseUNSAT UNSAT (model inconsistent)

13 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Property Checking: Example

14 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Property Checking: Example

14 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Property Checking: Example

14 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Property Checking: Example

14 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Property Checking: Example

14 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Property Checking: Example

14 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Property Checking: Example

14 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Property Checking: Example

14 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Property Checking: Example

14 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Property Checking: Example

14 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Property Checking: Example

14 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Property Checking: Example

14 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Property Checking: Example

14 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Property Checking: Example

14 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Property Checking: Example

14 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

2) Diagnosis

Feedback:

A concretization of the Partial Model for which theproperty does not hold.

Reuse the results of property checking:

ΦM ∧ Φp ΦM ∧ ¬Φp Property pSAT SAT MaybeSAT UNSAT True

UNSAT SAT FalseUNSAT UNSAT (model inconsistent)

15 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Diagnosis: Example

16 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Diagnosis: Example

16 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Contribution

Modeling Uncertainty

• Encode uncertainty in Partial Models.

• Semantics: sets of conventional models.

Reasoning in the Presence of Uncertainty

• Check properties.

• Give feedback to facilitate diagnosis.

Evaluation of Reasoning

• Reasoning with Partial models vs. reasoning with a set ofconventional models

17 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Questions

Reasoning with Partial modelsvs

Reasoning with a set of conventional models

Is there a speedup?

How is speedup affected by changing:

• model size

• levels of uncertainty?

To get answers:

1) Experiments with random inputs.

2) Real-world case study.

18 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Questions

Reasoning with Partial modelsvs

Reasoning with a set of conventional models

Is there a speedup?

How is speedup affected by changing:

• model size

• levels of uncertainty?

To get answers:

1) Experiments with random inputs.

2) Real-world case study.

18 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Experiments

19 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Experiments

19 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Experiments

19 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Experiments

19 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Experiments

19 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Experiments

19 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Experiments

19 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Experiments

19 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Experiments

19 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Case Study

Why Case Study?

Triangulate experimental results (randomly inputs)

with observations from a real-world scenario.

Case Study details:

• Real-world software project: UMLet.

• Real-world bug from UMLet bugzilla.

• Realistic bug fixes.

• Two properties from literature [V.D.Straeten’03].

• 27,261 elements (XL model size)

• 220 concretizations (XL uncertainty size)

20 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Case Study

21 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Results of Evaluation

Reasoning with Partial modelsvs

Reasoning with a set of conventional models

Is there a speedup?

– Yes, it is consistently faster than reasoning with the set.

How is speedup affected by changing model size and levels ofuncertainty?

– Speedup decreases with model size.

– Speedup increases with uncertainty.

– No slowdowns!

22 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Summary

Modeling Uncertainty

• Encode uncertainty in Partial Models.

• Semantics: sets of conventional models.

Reasoning in the Presence of Uncertainty

• Check properties.

• Give feedback to facilitate diagnosis.

Evaluation of Reasoning

• Reasoning with Partial models vs. reasoning with a set ofconventional models

23 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

The Big Picture

24 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Next Steps

25 / 29

Questions?

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Language Independent!

Class Diagram example from [MiSE’12].

27 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Bibliography I

P. Classen, A.and Heymans, P.Y. Schobbens, A. Legay, and J.F. Raskin.“Model Checking Lots of Systems: Efficient Verification of TemporalProperties in Software Product Lines”.In Proc. of ICSE’10, pages 335–344, 2010.

M. Famelis, Shoham Ben-David, Marsha Chechik, and Rick Salay.“Partial Models: A Position Paper”.In Proc. of MoDeVVa’11, pages 1–6, 2011.

M. Famelis, R. Salay, and M. Chechik.“The Semantics of Partial Model Transformations”.In Proc. of MiSE’12, 2012.

K. G. Larsen and B. Thomsen.“A Modal Process Logic”.In Proc. of LICS’88, pages 203–210, 1988.

P. Larsen.“The Expressive Power of Implicit Specifications”.In Proc. of ICALP’91, volume 510 of LNCS, pages 204–216, 1991.

M.Famelis, R.Salay, and M. Chechik.“The Semantics of Partial Model Transformations”.In Proc. of MiSE’12, pages 546–560, 2012.

28 / 29

PartialModels:Towards

Modeling andReasoning

withUncertainty

M.Famelis,R.Salay,

M.Chechik,

Introduction

Intuition

MotivatingExample

ModelingUncertainty

Partial Models

Semantics

ReasoningWithUncertainty

PropertyChecking

Diagnosis

Evaluation

Experiments

Case Study

Conclusion

Bibliography II

B. Morin, G. Perrouin, P. Lahire, O. Barais, G. Vanwormhoudt, and J. M.Jezequel.“Weaving Variability into Domain Metamodels”.J. Model Driven Engineering Languages and Systems, pages 690–705, 2009.

R.Salay, M. Chechik, and J.Horkoff.“Managing Requirements Uncertainty with Partial Models”.In Proc. of RE’12, pages 546–560, 2012.

R. Salay, M. Chechik, and J. Gorzny.“Towards a Methodology for Verifying Partial Model Refinements”.In Proc. of VOLT’12, 2012.

R. Salay, M. Famelis, and M. Chechik.“Language Independent Refinement using Partial Modeling”.In Proc. of FASE’12, 2012.

R. V. D. Straeten, T. Mens, J. Simmonds, and V. Jonckers.“Using Description Logic to Maintain Consistency between UML Models”.In Proc. of UML’03, pages 326–340, 2003.

29 / 29

Recommended