SlideShare une entreprise Scribd logo
1  sur  33
NASAC 2013,Tianjin, 9 November 2013
Probability and Uncertainty
in Software Engineering
David S. Rosenblum!
Dean, School of Computing!
National University of Singapore
NASAC 2013,Tianjin, 9 November 2013
Software Engineering

at NUS
Hugh

Anderson
Chin

Wei Ngan
Dong

Jin Song
Aquinas

Hobor
Joxan!
Jaffar
Stan

Jarzabek
Khoo

Siau Cheng
Damith

Rajapakse
David!
Rosenblum
Abhik

Roychoudhury
Bimlesh

Wadhwa
Yap

Hock Chuan,

Roland
NASAC 2013,Tianjin, 9 November 2013
Certainty in

Software Engineering
Engineering of software is centered around
simplistic,“yes/no” characterizations of artifacts
NASAC 2013,Tianjin, 9 November 2013
Certainty in

Software Engineering
Engineering of software is centered around
simplistic,“yes/no” characterizations of artifacts
Program is correct/incorrect
Program execution finished/crashed
Compilation completed/aborted
Test suite succeeded/failed
Specification is satisfied/violated
NASAC 2013,Tianjin, 9 November 2013
Example!
Model Checking
! ¬p → ◊q( )∧"( )
Model
Checker
✓
✕
State Machine!
Model
Temporal

Property
Results
Counterexample!
Trace
System
Requirements
NASAC 2013,Tianjin, 9 November 2013
Example!
Model Checking
! ¬p → ◊q( )∧"( )
Model
Checker
✕
State Machine!
Model
Temporal

Property
Results
Counterexample!
Trace
System
Requirements
NASAC 2013,Tianjin, 9 November 2013
Uncertainty in

Software Engineering
✓Nondeterminism
✓Randomized Algorithms
✓“Good Enough Software”
✓Test Coverage Metrics
NASAC 2013,Tianjin, 9 November 2013
Uncertainty in

Software Engineering
✓Nondeterminism
✓Randomized Algorithms
✓“Good Enough Software”
✓Test Coverage Metrics
Probabilistic Modeling and Analysis
NASAC 2013,Tianjin, 9 November 2013
Probabilistic

Model Checking
! ¬p → ◊q( )∧"( )
Model
Checker
✓
✕
State Machine!
Model
Temporal

Property
Results
Counterexample!
Trace
System
Requirements
P≥0.95 [ ]
0.4
0.6
Probabilistic
Probabilistic
NASAC 2013,Tianjin, 9 November 2013
Probabilistic

Model Checking
! ¬p → ◊q( )∧"( )
Model
Checker
✓
✕
State Machine!
Model
Temporal

Property
Results
Counterexample!
Trace
System
Requirements
P=? [ ]
0.4
0.6
Quantitative Results
0.9732Probabilistic
Probabilistic
NASAC 2013,Tianjin, 9 November 2013
Example

Die Tossing Simulated by Coin Flipping
Knuth-Yao algorithm,

from the PRISM group

(Kwiatkowska et al.)
0
3
2
1
6
4
5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
NASAC 2013,Tianjin, 9 November 2013
Example

Die Tossing Simulated by Coin Flipping
Knuth-Yao algorithm,

from the PRISM group

(Kwiatkowska et al.)
The behavior is governed by a!
theoretical probability distribution
0
3
2
1
6
4
5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
NASAC 2013,Tianjin, 9 November 2013
Probabilistic

Model Checking
! ¬p → ◊q( )∧"( )
Model
Checker
✓
State Machine!
Model
Temporal

Property
Results
Counterexample!
Trace
System
Requirements
P≥0.95 [ ]
0.4
0.6
Quantitative Results
0.9732Probabilistic
Probabilistic
NASAC 2013,Tianjin, 9 November 2013
Probabilistic

Model Checking
! ¬p → ◊q( )∧"( )
Model
Checker
✕
State Machine!
Model
Temporal

Property
Results
Counterexample!
Trace
System
Requirements
P≥0.95 [ ]
Quantitative Results
Probabilistic
Probabilistic
0.41
0.59
0.6211
NASAC 2013,Tianjin, 9 November 2013
Example!
Zeroconf Protocol
s1s0 s2 s3
q
1
1
{ok} {error}
{start} s4
s5
s6
s7
s8
1
1-q
1-p
1-p
1-p
1-p
p p p
p
1
from the PRISM group

(Kwiatkowska et al.)
NASAC 2013,Tianjin, 9 November 2013
Example!
Zeroconf Protocol
s1s0 s2 s3
q
1
1
{ok} {error}
{start} s4
s5
s6
s7
s8
1
1-q
1-p
1-p
1-p
1-p
p p p
p
1
The behavior is governed by an!
empirically estimated probability distribution
from the PRISM group

(Kwiatkowska et al.)
packet-loss rate
NASAC 2013,Tianjin, 9 November 2013
Perturbed Probabilistic Systems!
(Current Research)
• Starting Points!
✓Discrete-Time Markov Chains (DTMCs)!
✓… with one or more probability parameters!
✓… verified against reachability properties:
S? ∪ S!
Guoxin Su and David S. Rosenblum,

“Asymptotic Bounds for QuantitativeVerification of Perturbed Probabilistic Systems”,

Proc. ICFEM 2013
NASAC 2013,Tianjin, 9 November 2013
Parametric

Markov Chains
• A distribution parameter in a DTMC is represented as a
vector x of parameters xi!
• The norm of total variance represents the amount of
perturbation:!
!
• The parameter is allowed a “sufficiently small”
perturbation with respect to ideal reference values r:!
!
• Can generalize to multiple parameters
v = vi∑
x − r ≤ Δ
NASAC 2013,Tianjin, 9 November 2013
Perturbation Bounds
• Perturbation Function!
!
where A is the transition probability sub-matrix for S?
and b is the vector of one-step probabilities from S? to S!
!
• Condition Numbers!
!
ρ x( )= ι? i A x
i
i b x( )− Ai
i b( )( )i=0
∞
∑
κ = lim
δ→0
sup
ρ(x − r)
δ
: x − r ≤ δ,δ > 0
⎧
⎨
⎩
⎫
⎬
⎭
NASAC 2013,Tianjin, 9 November 2013
Results!
Noisy Zeroconf (35000 Hosts, PRISM)
p
Actual
Collision Probability
Predicted
Collision Probability
0.095 -19.8% -21.5%
0.096 -16.9% -17.2%
0.097 -12.3% -12.9%
0.098 -8.33% -8.61%
0.099 -4.23% -4.30%
0.100 1.8567 —
0.101 +4.38% +4.30%
0.102 +8.91% +8.61%
0.103 +13.6% +12.9%
0.104 +18.4% +17.2%
0.105 +23.4% +21.5%
NASAC 2013,Tianjin, 9 November 2013
Additional Aspects
• Models
✓Markov Decision Processes (MDPs)!
✓Continuous-Time Markov Chains (CMTCs)
• Verification
✓LTL Model Checking!
using Deterministic Rabin Automata!
✓PCTL Model Checking!
with singular perturbations due to nested P[ ] operators!
✓Reward Properties!
✓Alternative Norms and Bounds!
Kullback-Leibler Divergence, Quadratic Bounds
NASAC 2013,Tianjin, 9 November 2013
Other Forms of
Uncertainty
“There are known knowns; there are things we know
we know. We also know there are known unknowns;
that is to say, we know there are some things we do
not know. But there are also unknown unknowns –
the ones we don’t know we don’t know.”!
!
— Donald Rumsfeld
NASAC 2013,Tianjin, 9 November 2013
Uncertainty in Testing!
(New Research)
1982: Weyuker: Non-Testable Programs!
- Impossible/too costly to efficiently check results!
- Example: mathematical software!
2010: Garlan: Intrinsic Uncertainty!
- Systems embody intrinsic uncertainty/imprecision!
- Cannot easily distinguish bugs from “features”!
- Example: ubiquitous computing
NASAC 2013,Tianjin, 9 November 2013
Example!
Google Latitude
~ 500m
~ 50m
~ 2m
NASAC 2013,Tianjin, 9 November 2013
Example!
Google Latitude
When is an

incorrect location!
a bug, and when

is it a “feature”?
~ 500m
~ 50m
~ 2m
NASAC 2013,Tianjin, 9 November 2013
Example!
Google Latitude
When is an

incorrect location!
a bug, and when

is it a “feature”?
And how do!
you know?
~ 500m
~ 50m
~ 2m
NASAC 2013,Tianjin, 9 November 2013
Example!
Affective Computing
NASAC 2013,Tianjin, 9 November 2013
Example!
Affective Computing
When is an!
incorrect!
classification a bug,!
and when is it a!
“feature”?
NASAC 2013,Tianjin, 9 November 2013
Example!
Affective Computing
When is an!
incorrect!
classification a bug,!
and when is it a!
“feature”?
And how do!
you know?
NASAC 2013,Tianjin, 9 November 2013
Sources of

Uncertainty
✓Output: results, characteristics of results!
✓Sensors: redundancy, reliability, resolution!
✓Context: sensing, inferring, fusing!
✓Machine learning: imprecision, user training
NASAC 2013,Tianjin, 9 November 2013
Sources of

Uncertainty
✓Output: results, characteristics of results!
✓Sensors: redundancy, reliability, resolution!
✓Context: sensing, inferring, fusing!
✓Machine learning: imprecision, user training
These create significant challenges for

software engineering research and practice!
NASAC 2013,Tianjin, 9 November 2013
Conclusion
✓Software engineering (certainly) suffers
from excessive certainty!
✓A probabilistic mindset offers greater insight!
✓But significant challenges remain for
probabilistic verification!
✓And other forms of uncertainty are equally
challenging to address
NASAC 2013,Tianjin, 9 November 2013
Probability and Uncertainty
in Software Engineering
David S. Rosenblum!
Dean, School of Computing!
National University of Singapore
ThankYou!

Contenu connexe

Similaire à Probability and Uncertainty in Software Engineering (keynote talk at NASAC 2013)

Continuous Automated Testing - Cast conference workshop august 2014
Continuous Automated Testing - Cast conference workshop august 2014Continuous Automated Testing - Cast conference workshop august 2014
Continuous Automated Testing - Cast conference workshop august 2014
Noah Sussman
 
Secure Because Math: A Deep-Dive on Machine Learning-Based Monitoring (#Secur...
Secure Because Math: A Deep-Dive on Machine Learning-Based Monitoring (#Secur...Secure Because Math: A Deep-Dive on Machine Learning-Based Monitoring (#Secur...
Secure Because Math: A Deep-Dive on Machine Learning-Based Monitoring (#Secur...
Alex Pinto
 
Enabling and Supporting the Debugging of Field Failures (Job Talk)
Enabling and Supporting the Debugging of Field Failures (Job Talk)Enabling and Supporting the Debugging of Field Failures (Job Talk)
Enabling and Supporting the Debugging of Field Failures (Job Talk)
James Clause
 

Similaire à Probability and Uncertainty in Software Engineering (keynote talk at NASAC 2013) (20)

Continuous Automated Testing - Cast conference workshop august 2014
Continuous Automated Testing - Cast conference workshop august 2014Continuous Automated Testing - Cast conference workshop august 2014
Continuous Automated Testing - Cast conference workshop august 2014
 
2014 11-13-sbsm032-reproducible research
2014 11-13-sbsm032-reproducible research2014 11-13-sbsm032-reproducible research
2014 11-13-sbsm032-reproducible research
 
Professor Steve Roberts; The Bayesian Crowd: scalable information combinati...
Professor Steve Roberts; The Bayesian Crowd: scalable information combinati...Professor Steve Roberts; The Bayesian Crowd: scalable information combinati...
Professor Steve Roberts; The Bayesian Crowd: scalable information combinati...
 
Professor Steve Roberts; The Bayesian Crowd: scalable information combinati...
Professor Steve Roberts; The Bayesian Crowd: scalable information combinati...Professor Steve Roberts; The Bayesian Crowd: scalable information combinati...
Professor Steve Roberts; The Bayesian Crowd: scalable information combinati...
 
On Impact in Software Engineering Research
On Impact in Software Engineering ResearchOn Impact in Software Engineering Research
On Impact in Software Engineering Research
 
Random testing
Random testingRandom testing
Random testing
 
Computational Reproducibility vs. Transparency: Is It FAIR Enough?
Computational Reproducibility vs. Transparency: Is It FAIR Enough?Computational Reproducibility vs. Transparency: Is It FAIR Enough?
Computational Reproducibility vs. Transparency: Is It FAIR Enough?
 
Secure Because Math: A Deep-Dive on Machine Learning-Based Monitoring (#Secur...
Secure Because Math: A Deep-Dive on Machine Learning-Based Monitoring (#Secur...Secure Because Math: A Deep-Dive on Machine Learning-Based Monitoring (#Secur...
Secure Because Math: A Deep-Dive on Machine Learning-Based Monitoring (#Secur...
 
On Impact in Software Engineering Research (HU Berlin 2021)
On Impact in Software Engineering Research (HU Berlin 2021)On Impact in Software Engineering Research (HU Berlin 2021)
On Impact in Software Engineering Research (HU Berlin 2021)
 
IaaS Cloud Benchmarking: Approaches, Challenges, and Experience
IaaS Cloud Benchmarking: Approaches, Challenges, and ExperienceIaaS Cloud Benchmarking: Approaches, Challenges, and Experience
IaaS Cloud Benchmarking: Approaches, Challenges, and Experience
 
Artificial Neural Network
Artificial Neural NetworkArtificial Neural Network
Artificial Neural Network
 
On impact in Software Engineering Research (ICSE 2018 New Faculty Symposium)
On impact in Software Engineering Research (ICSE 2018 New Faculty Symposium)On impact in Software Engineering Research (ICSE 2018 New Faculty Symposium)
On impact in Software Engineering Research (ICSE 2018 New Faculty Symposium)
 
Enusec: WTF CW/Reports/Essay
Enusec: WTF CW/Reports/EssayEnusec: WTF CW/Reports/Essay
Enusec: WTF CW/Reports/Essay
 
On Impact in Software Engineering Research (Dagstuhl 2020)
On Impact in Software Engineering Research (Dagstuhl 2020)On Impact in Software Engineering Research (Dagstuhl 2020)
On Impact in Software Engineering Research (Dagstuhl 2020)
 
MINIMIZING LOCALIZATION ERROR AND ENSURE SECURITY OF DVHOP APPROACH
MINIMIZING LOCALIZATION ERROR AND ENSURE SECURITY OF DVHOP APPROACHMINIMIZING LOCALIZATION ERROR AND ENSURE SECURITY OF DVHOP APPROACH
MINIMIZING LOCALIZATION ERROR AND ENSURE SECURITY OF DVHOP APPROACH
 
Science Gateways – Leveraging Modeling and Simulations in HPC Infrastructure...
Science Gateways –  Leveraging Modeling and Simulations in HPC Infrastructure...Science Gateways –  Leveraging Modeling and Simulations in HPC Infrastructure...
Science Gateways – Leveraging Modeling and Simulations in HPC Infrastructure...
 
Plume - A Code Property Graph Extraction and Analysis Library
Plume - A Code Property Graph Extraction and Analysis LibraryPlume - A Code Property Graph Extraction and Analysis Library
Plume - A Code Property Graph Extraction and Analysis Library
 
Spatial analysis and Analysis Tools
Spatial analysis and Analysis ToolsSpatial analysis and Analysis Tools
Spatial analysis and Analysis Tools
 
Enabling and Supporting the Debugging of Field Failures (Job Talk)
Enabling and Supporting the Debugging of Field Failures (Job Talk)Enabling and Supporting the Debugging of Field Failures (Job Talk)
Enabling and Supporting the Debugging of Field Failures (Job Talk)
 
Errors
ErrorsErrors
Errors
 

Plus de David Rosenblum

Plus de David Rosenblum (8)

Known Unknowns: Testing in the Presence of Uncertainty (talk at ACM SIGSOFT F...
Known Unknowns: Testing in the Presence of Uncertainty (talk at ACM SIGSOFT F...Known Unknowns: Testing in the Presence of Uncertainty (talk at ACM SIGSOFT F...
Known Unknowns: Testing in the Presence of Uncertainty (talk at ACM SIGSOFT F...
 
SIGSOFT Impact Award: Reflections and Prospects (invited talk at SIGSOFT FSE ...
SIGSOFT Impact Award: Reflections and Prospects (invited talk at SIGSOFT FSE ...SIGSOFT Impact Award: Reflections and Prospects (invited talk at SIGSOFT FSE ...
SIGSOFT Impact Award: Reflections and Prospects (invited talk at SIGSOFT FSE ...
 
Content-Based Publish/Subscribe: A Re-Assessment (keynote talk at DOA 2005)
Content-Based Publish/Subscribe: A Re-Assessment (keynote talk at DOA 2005)Content-Based Publish/Subscribe: A Re-Assessment (keynote talk at DOA 2005)
Content-Based Publish/Subscribe: A Re-Assessment (keynote talk at DOA 2005)
 
Scalability in Software Systems Engineering: The Good, the Bad, and the Ugly ...
Scalability in Software Systems Engineering: The Good, the Bad, and the Ugly ...Scalability in Software Systems Engineering: The Good, the Bad, and the Ugly ...
Scalability in Software Systems Engineering: The Good, the Bad, and the Ugly ...
 
Some Open Problems in Publish/Subscribe Networking (keynote talk at DEBS 2003)
Some Open Problems in Publish/Subscribe Networking (keynote talk at DEBS 2003)Some Open Problems in Publish/Subscribe Networking (keynote talk at DEBS 2003)
Some Open Problems in Publish/Subscribe Networking (keynote talk at DEBS 2003)
 
Assertions a Decade Later (invited talk at ICSE 2002)
Assertions a Decade Later (invited talk at ICSE 2002)Assertions a Decade Later (invited talk at ICSE 2002)
Assertions a Decade Later (invited talk at ICSE 2002)
 
Scalability: What It Is and How to Analyze It (keynote talk at SBES 2007)
Scalability: What It Is and How to Analyze It (keynote talk at SBES 2007)Scalability: What It Is and How to Analyze It (keynote talk at SBES 2007)
Scalability: What It Is and How to Analyze It (keynote talk at SBES 2007)
 
Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)
Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)
Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)
 

Dernier

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Dernier (20)

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

Probability and Uncertainty in Software Engineering (keynote talk at NASAC 2013)

  • 1. NASAC 2013,Tianjin, 9 November 2013 Probability and Uncertainty in Software Engineering David S. Rosenblum! Dean, School of Computing! National University of Singapore
  • 2. NASAC 2013,Tianjin, 9 November 2013 Software Engineering
 at NUS Hugh
 Anderson Chin
 Wei Ngan Dong
 Jin Song Aquinas
 Hobor Joxan! Jaffar Stan
 Jarzabek Khoo
 Siau Cheng Damith
 Rajapakse David! Rosenblum Abhik
 Roychoudhury Bimlesh
 Wadhwa Yap
 Hock Chuan,
 Roland
  • 3. NASAC 2013,Tianjin, 9 November 2013 Certainty in
 Software Engineering Engineering of software is centered around simplistic,“yes/no” characterizations of artifacts
  • 4. NASAC 2013,Tianjin, 9 November 2013 Certainty in
 Software Engineering Engineering of software is centered around simplistic,“yes/no” characterizations of artifacts Program is correct/incorrect Program execution finished/crashed Compilation completed/aborted Test suite succeeded/failed Specification is satisfied/violated
  • 5. NASAC 2013,Tianjin, 9 November 2013 Example! Model Checking ! ¬p → ◊q( )∧"( ) Model Checker ✓ ✕ State Machine! Model Temporal
 Property Results Counterexample! Trace System Requirements
  • 6. NASAC 2013,Tianjin, 9 November 2013 Example! Model Checking ! ¬p → ◊q( )∧"( ) Model Checker ✕ State Machine! Model Temporal
 Property Results Counterexample! Trace System Requirements
  • 7. NASAC 2013,Tianjin, 9 November 2013 Uncertainty in
 Software Engineering ✓Nondeterminism ✓Randomized Algorithms ✓“Good Enough Software” ✓Test Coverage Metrics
  • 8. NASAC 2013,Tianjin, 9 November 2013 Uncertainty in
 Software Engineering ✓Nondeterminism ✓Randomized Algorithms ✓“Good Enough Software” ✓Test Coverage Metrics Probabilistic Modeling and Analysis
  • 9. NASAC 2013,Tianjin, 9 November 2013 Probabilistic
 Model Checking ! ¬p → ◊q( )∧"( ) Model Checker ✓ ✕ State Machine! Model Temporal
 Property Results Counterexample! Trace System Requirements P≥0.95 [ ] 0.4 0.6 Probabilistic Probabilistic
  • 10. NASAC 2013,Tianjin, 9 November 2013 Probabilistic
 Model Checking ! ¬p → ◊q( )∧"( ) Model Checker ✓ ✕ State Machine! Model Temporal
 Property Results Counterexample! Trace System Requirements P=? [ ] 0.4 0.6 Quantitative Results 0.9732Probabilistic Probabilistic
  • 11. NASAC 2013,Tianjin, 9 November 2013 Example
 Die Tossing Simulated by Coin Flipping Knuth-Yao algorithm,
 from the PRISM group
 (Kwiatkowska et al.) 0 3 2 1 6 4 5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5
  • 12. NASAC 2013,Tianjin, 9 November 2013 Example
 Die Tossing Simulated by Coin Flipping Knuth-Yao algorithm,
 from the PRISM group
 (Kwiatkowska et al.) The behavior is governed by a! theoretical probability distribution 0 3 2 1 6 4 5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5
  • 13. NASAC 2013,Tianjin, 9 November 2013 Probabilistic
 Model Checking ! ¬p → ◊q( )∧"( ) Model Checker ✓ State Machine! Model Temporal
 Property Results Counterexample! Trace System Requirements P≥0.95 [ ] 0.4 0.6 Quantitative Results 0.9732Probabilistic Probabilistic
  • 14. NASAC 2013,Tianjin, 9 November 2013 Probabilistic
 Model Checking ! ¬p → ◊q( )∧"( ) Model Checker ✕ State Machine! Model Temporal
 Property Results Counterexample! Trace System Requirements P≥0.95 [ ] Quantitative Results Probabilistic Probabilistic 0.41 0.59 0.6211
  • 15. NASAC 2013,Tianjin, 9 November 2013 Example! Zeroconf Protocol s1s0 s2 s3 q 1 1 {ok} {error} {start} s4 s5 s6 s7 s8 1 1-q 1-p 1-p 1-p 1-p p p p p 1 from the PRISM group
 (Kwiatkowska et al.)
  • 16. NASAC 2013,Tianjin, 9 November 2013 Example! Zeroconf Protocol s1s0 s2 s3 q 1 1 {ok} {error} {start} s4 s5 s6 s7 s8 1 1-q 1-p 1-p 1-p 1-p p p p p 1 The behavior is governed by an! empirically estimated probability distribution from the PRISM group
 (Kwiatkowska et al.) packet-loss rate
  • 17. NASAC 2013,Tianjin, 9 November 2013 Perturbed Probabilistic Systems! (Current Research) • Starting Points! ✓Discrete-Time Markov Chains (DTMCs)! ✓… with one or more probability parameters! ✓… verified against reachability properties: S? ∪ S! Guoxin Su and David S. Rosenblum,
 “Asymptotic Bounds for QuantitativeVerification of Perturbed Probabilistic Systems”,
 Proc. ICFEM 2013
  • 18. NASAC 2013,Tianjin, 9 November 2013 Parametric
 Markov Chains • A distribution parameter in a DTMC is represented as a vector x of parameters xi! • The norm of total variance represents the amount of perturbation:! ! • The parameter is allowed a “sufficiently small” perturbation with respect to ideal reference values r:! ! • Can generalize to multiple parameters v = vi∑ x − r ≤ Δ
  • 19. NASAC 2013,Tianjin, 9 November 2013 Perturbation Bounds • Perturbation Function! ! where A is the transition probability sub-matrix for S? and b is the vector of one-step probabilities from S? to S! ! • Condition Numbers! ! ρ x( )= ι? i A x i i b x( )− Ai i b( )( )i=0 ∞ ∑ κ = lim δ→0 sup ρ(x − r) δ : x − r ≤ δ,δ > 0 ⎧ ⎨ ⎩ ⎫ ⎬ ⎭
  • 20. NASAC 2013,Tianjin, 9 November 2013 Results! Noisy Zeroconf (35000 Hosts, PRISM) p Actual Collision Probability Predicted Collision Probability 0.095 -19.8% -21.5% 0.096 -16.9% -17.2% 0.097 -12.3% -12.9% 0.098 -8.33% -8.61% 0.099 -4.23% -4.30% 0.100 1.8567 — 0.101 +4.38% +4.30% 0.102 +8.91% +8.61% 0.103 +13.6% +12.9% 0.104 +18.4% +17.2% 0.105 +23.4% +21.5%
  • 21. NASAC 2013,Tianjin, 9 November 2013 Additional Aspects • Models ✓Markov Decision Processes (MDPs)! ✓Continuous-Time Markov Chains (CMTCs) • Verification ✓LTL Model Checking! using Deterministic Rabin Automata! ✓PCTL Model Checking! with singular perturbations due to nested P[ ] operators! ✓Reward Properties! ✓Alternative Norms and Bounds! Kullback-Leibler Divergence, Quadratic Bounds
  • 22. NASAC 2013,Tianjin, 9 November 2013 Other Forms of Uncertainty “There are known knowns; there are things we know we know. We also know there are known unknowns; that is to say, we know there are some things we do not know. But there are also unknown unknowns – the ones we don’t know we don’t know.”! ! — Donald Rumsfeld
  • 23. NASAC 2013,Tianjin, 9 November 2013 Uncertainty in Testing! (New Research) 1982: Weyuker: Non-Testable Programs! - Impossible/too costly to efficiently check results! - Example: mathematical software! 2010: Garlan: Intrinsic Uncertainty! - Systems embody intrinsic uncertainty/imprecision! - Cannot easily distinguish bugs from “features”! - Example: ubiquitous computing
  • 24. NASAC 2013,Tianjin, 9 November 2013 Example! Google Latitude ~ 500m ~ 50m ~ 2m
  • 25. NASAC 2013,Tianjin, 9 November 2013 Example! Google Latitude When is an
 incorrect location! a bug, and when
 is it a “feature”? ~ 500m ~ 50m ~ 2m
  • 26. NASAC 2013,Tianjin, 9 November 2013 Example! Google Latitude When is an
 incorrect location! a bug, and when
 is it a “feature”? And how do! you know? ~ 500m ~ 50m ~ 2m
  • 27. NASAC 2013,Tianjin, 9 November 2013 Example! Affective Computing
  • 28. NASAC 2013,Tianjin, 9 November 2013 Example! Affective Computing When is an! incorrect! classification a bug,! and when is it a! “feature”?
  • 29. NASAC 2013,Tianjin, 9 November 2013 Example! Affective Computing When is an! incorrect! classification a bug,! and when is it a! “feature”? And how do! you know?
  • 30. NASAC 2013,Tianjin, 9 November 2013 Sources of
 Uncertainty ✓Output: results, characteristics of results! ✓Sensors: redundancy, reliability, resolution! ✓Context: sensing, inferring, fusing! ✓Machine learning: imprecision, user training
  • 31. NASAC 2013,Tianjin, 9 November 2013 Sources of
 Uncertainty ✓Output: results, characteristics of results! ✓Sensors: redundancy, reliability, resolution! ✓Context: sensing, inferring, fusing! ✓Machine learning: imprecision, user training These create significant challenges for
 software engineering research and practice!
  • 32. NASAC 2013,Tianjin, 9 November 2013 Conclusion ✓Software engineering (certainly) suffers from excessive certainty! ✓A probabilistic mindset offers greater insight! ✓But significant challenges remain for probabilistic verification! ✓And other forms of uncertainty are equally challenging to address
  • 33. NASAC 2013,Tianjin, 9 November 2013 Probability and Uncertainty in Software Engineering David S. Rosenblum! Dean, School of Computing! National University of Singapore ThankYou!