SlideShare a Scribd company logo
Belief Uncertainty in Software Models
MISE 2019
Montreal, Canada, May 26-27, 2019
Loli Burgueño1,2, Robert Clarisó1, Jordi Cabot3,
Sébastien Gérard2 and Antonio Vallecillo4
1Open University of Catalonia, 2CEA-LIST, 3ICREA, 4University of Málaga
A simple example of a hotel room
2
Temp. sensor Smoke detector
Alarm center
CO detector
A simple example of a hotel room
3
System attributes, operations, and constraints
4
class AlarmCenter
attributes
hightTemp : UBoolean derive:
self.room.tempSensor.temperature > 30.0
hightCOLevel : UBoolean derive:
self.room.coSensor.coPPM > 20
smoke : UBoolean derive:
self.room.smokeDetector.smoke
fireAlert : UBoolean derive:
self.highTemp and self.highCOLevel and self.smoke
operations
isHot() : UBoolean = self.tempSensor.temperature > 25
isCold() : UBoolean = self.tempSensor.temperature < 18
constraints
inv TempPrecision: self.temperature.uncertainty() <= 0.2
[Bertoa et al “Expressing Measurement Uncertainty in OCL/UML Datatypes. ECMFA 2018: 46-62]
Some Belief Statements about the (model of the) system
 The CO and smoke detectors that we bought have a reliability of 90% (i.e., 10% of
their readings are not meaningful)
 We can only be 98% sure that the precision of the Temperature sensor is 0.5o, as
indicated in its datasheet
 We are 95% confident that the presence of high temperature, high CO level and
smoke really means that there is a fire in the room
 Bob is from the south, so he only assigns a credibility of 50% to the operations that
indicate if the room is hot or cold. In contrast, Mary thinks they are 99% accurate
 Room #3 is close to the kitchen and frequently emits alarms. Everybody thinks that
90% of them are false positives
 Joe the modeler doubts that the type of attribute “number” of class “Room” is Integer.
He thinks it may contain characters different from digits.
 Lucy the modeler is unsure if an “AlarmCenter” has to be attached to only one single
Room. She thinks they can also be attached to several.
5
[About the credibility of the values]
[From individual belief agents]
[About individual instances]
[About the model itself: relations]
[About the behavioral rules]
[About the uncertainty of the values]
[About the model itself: types]
>> How to represent these uncertainties in the system specifications?
>> How to incorporate them into the system structural and behavioral models?
The characters (in order of appearance…)
 Uncertainty
 The quality or state the involves imperfect
or unknown information
 It can be aleatory (variations in measurement) or epistemic (lack of knowledge)
 Belief uncertainty
 A kind of epistemic uncertainty in which the modeler, or any other belief agent,
is uncertain about any of the statements made about the system or its
environment. By nature, it is always subjective.
 Belief agent
 An entity (human, institution, even a machine) that holds one or more beliefs
 Belief statement
 Statement qualified by a degree of belief
 Degree of belief
 Confidence assigned to a statement by a belief agent. Normally expressed by
quantitative or qualitative methods (e.g., a grade or a probability)
6
Current approaches to represent and operate with Belief Uncertainty
7
Our contribution
 A mechanism able to assign a degree of belief to model statements
 A method to operate with the degrees of beliefs and automatically propagate
them through the system operations
How do we do that?
 Explicit representation of Belief Agents (including a default one)
 Degrees of belief represented by means of Bayesian probabilities (Credence)
 Bayesian probability is the most classical model for expressing and operating
with subjective information, and hence for quantifying beliefs
 Credence is a statistical term that refers to a measure of belief strength, which
expresses how much an agent believes that a proposition is true
 Credence values can be based entirely on subjective feelings
 Credence is better understood in the context of gambling, where this concept is
directly related to the odds at which a rational person would place a bet
 UML Profile + operational semantics
8
UML Profile
9
Operationalization
 A list of pairs (BeliefAgent,credence) for every model statement subject to
Belief Uncertainty
 Operations to add and remove pairs from the list of pairs
 Query operation to know the credence of a statement
10
isHot_Beliefs : Set(Tuple(beliefAgent : BeliefAgent, degreeOfBelief : Real))
isHot_BeliefsAdd(ba : BeliefAgent, d : Real)
post: self.isHot_Beliefs = self.isHot_Beliefs@pre->reject(t|t.beliefAgent=ba)->
including(Tuple{beliefAgent:ba,degreeOfBelief:d})
isHot_credence(a:BeliefAgent): Real =
let baBoD : … = self.isHot_Beliefs->select(t|t.beliefAgent = a) in
let baBoDnull : … = self.isHot_Beliefs->select(t|t.beliefAgent = null) in
if baBoD->isEmpty then -- no explicit credence by “a”
if baBoDnull->notEmpty then -- but if default value exists
baBoDnull->collect(degreeOfBelief)->any(true)
else 1.0 endif
else baBoD->collect(degreeOfBelief)->any(true) endif
Running the system…
11
Hotel> !new BeliefAgent('Bob')
Hotel> !new BeliefAgent('Mary')
Hotel> !r1.isHot_BeliefsAdd(Bob,0.5)
Hotel> !r1.isHot_BeliefsAdd(Mary,0.99)
Hotel> !r1.isHot_BeliefsAdd(null,0.95)
Hotel>
Hotel> ?r1.isHot()
-> UBoolean(true,1.0) : Uboolean
Hotel> ?r1.isHot_credence(Bob)
-> 0.5 : Real
Hotel> ?r1.isHot_credence(Mary)
-> 0.99 : Real
Hotel> ?r1.isHot_credence(null)
-> 0.95 : Real
Credence propagation on dependent belief statements
12
fireAlert_credence(ba:BeliefAgent): Real =
let baBoD : Set(Tuple(beliefAgent:BeliefAgent, degreeOfBelief:Real)) =
self.fireAlert_Beliefs->select(t|t.beliefAgent = ba) in
(if baBoD->isEmpty then …
else baBoD->collect(degreeOfBelief)->any(true)
endif)
* self.fireAlertDeriveExpr_credence(ba)
fireAlertDeriveExpr_credence(ba:BeliefAgent): Real =
let baBoD : Set(Tuple(beliefAgent:BeliefAgent, degreeOfBelief:Real)) =
self.fireAlertDeriveExpr_Beliefs->select(t|t.beliefAgent = ba) in
(if baBoD->isEmpty then …
else baBoD->collect(degreeOfBelief)->any(true)
endif)
* highTemp_credence(ba)
* highCOLevel_credence(ba)
* smoke_credence(ba)
Running the system…
13
Hotel> !r2.alarmCenter. fireAlert_BeliefsAdd(null,0.1)
Hotel> !r1.alarmCenter.fireAlert_BeliefsAdd(Bob,0.99)
Hotel> !r1.alarmCenter.fireAlertDeriveExpr_BeliefsAdd(Bob,0.95)
Hotel> !r1.alarmCenter.highTemp_BeliefsAdd(Bob,0.99)
Hotel> !r1.alarmCenter.highCOLevel_BeliefsAdd(Bob,0.99)
Hotel> !r1.alarmCenter.smoke_BeliefsAdd(Bob,0.99)
Hotel>
Hotel> ?r1.alarmCenter.fireAlert
-> UBoolean(true,0.99) : UBoolean
Hotel> ?r1.alarmCenter.fireAlert_credence(Bob)
-> 0.9125662095 : Real
Hotel> ?r1.alarmCenter.fireAlert_credence(Mary)
-> 1.0 : Real
Hotel> ?r1.alarmCenter.fireAlert_credence(null)
-> 1.0 : Real
Hotel>
Hotel> ?r2.alarmCenter.fireAlert_credence(Bob)
-> 0.04562831047 : Real
Conclusions and future work
 Explicit representation and management of belief uncertainty in software
models…
 …in terms of degrees of belief assigned to the model statements by separate
belief agents…
 …about the credibility of
 The values of the represented (physical) elements
 The measurement uncertainty of these values
 The expressions that model the behavior of the system
 The way in which we have modeled the system (types of the attributes, types of
relationships and their cardinalities, etc.)
 Future work
 Associating evidences to belief statements
 Representing degrees of beliefs in other types of models (use cases, sequence
diagrams, pre- and postconditions, …)
 Industrial case studies and further application domains (e.g., model inference,
model mining)
 Empirical validation with industrial modelers
14
Further claims (1/2)
 Claim 1: Our current software models are not fully capable of faithfully
representing all key relevant aspects of physical systems. These systems are
never crisp, they are subject to different kinds of uncertainties. This our
models should be able to reflect.
15
(http://www.christophniemann.com)
Further claims (2/2)
 Claim 2: Modeling notations and tools (e.g. DSLs) are of little value without
well defined methods and processes, which in turn require solid principles.
We should always ask ourselves if our modeling notations take into account
the principles that govern our physical systems, or are they mere shallow and
cosmetic descriptions of them?
16
“The man who grasps principles can successfully
handle his own methods. The man who tries methods,
ignoring principles, is sure to have trouble”
Ralph Waldo Emerson
Belief Uncertainty in Software Models
MISE 2019
Montreal, Canada, May 26-27, 2019
Loli Burgueño1,2, Robert Clarisó1, Jordi Cabot3,
Sébastien Gérard2 and Antonio Vallecillo4
1Open University of Catalonia, 2CEA-LIST, 3ICREA, 4Málaga University

More Related Content

PPTX
DOCX
A Comparison of Traditional Simulation and MSAL (6-3-2015)
PPTX
Lesson02_Use Case Diagrams
PPT
Use Case Model
PDF
Modeling and Evaluating Quality in the Presence of Uncertainty
PDF
Expressing Confidence in Model and Model Transformation Elements
PPTX
Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...
PPTX
Lesson04-Uncertainty - Pt. 1 Probabilistic Methods.pptx
A Comparison of Traditional Simulation and MSAL (6-3-2015)
Lesson02_Use Case Diagrams
Use Case Model
Modeling and Evaluating Quality in the Presence of Uncertainty
Expressing Confidence in Model and Model Transformation Elements
Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...
Lesson04-Uncertainty - Pt. 1 Probabilistic Methods.pptx

Similar to Belief Uncertainty in Software Models (20)

PDF
Probability and Uncertainty in Software Engineering (keynote talk at NASAC 2013)
PDF
On the Role of Assumptions in Engineering Smart Systems
PDF
UNCERTAINTY ESTIMATION IN NEURAL NETWORKS THROUGH MULTI-TASK LEARNING
PDF
UNCERTAINTY ESTIMATION IN NEURAL NETWORKS THROUGH MULTI-TASK LEARNING
PDF
Uncertainty in Probabilistic Trust Models
PPTX
Uncertain Knowledge and Reasoning in Artificial Intelligence
PPTX
Towards Responsible AI - NY.pptx
PDF
DataEngConf SF16 - Three lessons learned from building a production machine l...
PPTX
Hima_Lakkaraju_XAI_ShortCourse.pptx
PPTX
Uncertainty in computer agent - Copy.pptx
PDF
Auditing AI models for verified deployment under semantic specifications.pdf
PDF
Overcoming Heterogeneity in Autonomous Cyber-Physical Systems
PDF
Specifying quantities in software models
PPTX
Inference in HMM and Bayesian Models
PDF
machine-learning-development-audit-framework-assessment-and-inspection-of-ris...
PDF
Machine Learning: Past, Present and Future - by Tom Dietterich
PPTX
Uncertainty Quantification with Unsupervised Deep learning and Multi Agent Sy...
PDF
2018 MUMS Fall Course - Introduction to statistical and mathematical model un...
PDF
Uncertainties in Deep Learning
PDF
Model Uncertainty
Probability and Uncertainty in Software Engineering (keynote talk at NASAC 2013)
On the Role of Assumptions in Engineering Smart Systems
UNCERTAINTY ESTIMATION IN NEURAL NETWORKS THROUGH MULTI-TASK LEARNING
UNCERTAINTY ESTIMATION IN NEURAL NETWORKS THROUGH MULTI-TASK LEARNING
Uncertainty in Probabilistic Trust Models
Uncertain Knowledge and Reasoning in Artificial Intelligence
Towards Responsible AI - NY.pptx
DataEngConf SF16 - Three lessons learned from building a production machine l...
Hima_Lakkaraju_XAI_ShortCourse.pptx
Uncertainty in computer agent - Copy.pptx
Auditing AI models for verified deployment under semantic specifications.pdf
Overcoming Heterogeneity in Autonomous Cyber-Physical Systems
Specifying quantities in software models
Inference in HMM and Bayesian Models
machine-learning-development-audit-framework-assessment-and-inspection-of-ris...
Machine Learning: Past, Present and Future - by Tom Dietterich
Uncertainty Quantification with Unsupervised Deep learning and Multi Agent Sy...
2018 MUMS Fall Course - Introduction to statistical and mathematical model un...
Uncertainties in Deep Learning
Model Uncertainty
Ad

More from Antonio Vallecillo (19)

PDF
Modeling Objects with Uncertain Behaviors
PPTX
Introducing Subjective Knowledge Graphs
PPTX
Using UML and OCL Models to realize High-Level Digital Twins
PPTX
Modeling behavioral deontic constraints using UML and OCL
PDF
Research Evaluation - The current situation in Spain
PDF
Adding Random Operations to OCL
PPTX
Extending Complex Event Processing to Graph-structured Information
PPTX
Towards a Body of Knowledge for Model-Based Software Engineering
PDF
La Ingeniería Informática no es una Ciencia -- Reflexiones sobre la Educación...
PDF
La Ética en la Ingeniería de Software de Pruebas: Necesidad de un Código Ético
PDF
La ingeniería del software en España: retos y oportunidades
PPTX
Los Estudios de Posgrado de la Universidad de Málaga
PPTX
El papel de los MOOCs en la Formación de Posgrado. El reto de la Universidad...
PPTX
La enseñanza digital y los MOOC en la UMA. Presentación en el XV encuentro de...
PDF
El doctorado en Informática: ¿Nuevo vino en viejas botellas? (Charla U. Sevil...
PPTX
Accountable objects: Modeling Liability in Open Distributed Systems
PPTX
Models And Meanings
PPTX
Improving Naming and Grouping in UML
PPTX
On the Combination of Domain Specific Modeling Languages
Modeling Objects with Uncertain Behaviors
Introducing Subjective Knowledge Graphs
Using UML and OCL Models to realize High-Level Digital Twins
Modeling behavioral deontic constraints using UML and OCL
Research Evaluation - The current situation in Spain
Adding Random Operations to OCL
Extending Complex Event Processing to Graph-structured Information
Towards a Body of Knowledge for Model-Based Software Engineering
La Ingeniería Informática no es una Ciencia -- Reflexiones sobre la Educación...
La Ética en la Ingeniería de Software de Pruebas: Necesidad de un Código Ético
La ingeniería del software en España: retos y oportunidades
Los Estudios de Posgrado de la Universidad de Málaga
El papel de los MOOCs en la Formación de Posgrado. El reto de la Universidad...
La enseñanza digital y los MOOC en la UMA. Presentación en el XV encuentro de...
El doctorado en Informática: ¿Nuevo vino en viejas botellas? (Charla U. Sevil...
Accountable objects: Modeling Liability in Open Distributed Systems
Models And Meanings
Improving Naming and Grouping in UML
On the Combination of Domain Specific Modeling Languages
Ad

Recently uploaded (20)

PDF
How AI/LLM recommend to you ? GDG meetup 16 Aug by Fariman Guliev
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PPTX
Patient Appointment Booking in Odoo with online payment
PPTX
WiFi Honeypot Detecscfddssdffsedfseztor.pptx
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
Designing Intelligence for the Shop Floor.pdf
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
Salesforce Agentforce AI Implementation.pdf
PPTX
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
PDF
Download FL Studio Crack Latest version 2025 ?
PPTX
Monitoring Stack: Grafana, Loki & Promtail
PPTX
Oracle Fusion HCM Cloud Demo for Beginners
PDF
iTop VPN Crack Latest Version Full Key 2025
PDF
iTop VPN Free 5.6.0.5262 Crack latest version 2025
PPTX
Advanced SystemCare Ultimate Crack + Portable (2025)
PDF
Digital Systems & Binary Numbers (comprehensive )
PPTX
Why Generative AI is the Future of Content, Code & Creativity?
PDF
AutoCAD Professional Crack 2025 With License Key
PDF
Cost to Outsource Software Development in 2025
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
How AI/LLM recommend to you ? GDG meetup 16 Aug by Fariman Guliev
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Patient Appointment Booking in Odoo with online payment
WiFi Honeypot Detecscfddssdffsedfseztor.pptx
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Designing Intelligence for the Shop Floor.pdf
Navsoft: AI-Powered Business Solutions & Custom Software Development
Salesforce Agentforce AI Implementation.pdf
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
Download FL Studio Crack Latest version 2025 ?
Monitoring Stack: Grafana, Loki & Promtail
Oracle Fusion HCM Cloud Demo for Beginners
iTop VPN Crack Latest Version Full Key 2025
iTop VPN Free 5.6.0.5262 Crack latest version 2025
Advanced SystemCare Ultimate Crack + Portable (2025)
Digital Systems & Binary Numbers (comprehensive )
Why Generative AI is the Future of Content, Code & Creativity?
AutoCAD Professional Crack 2025 With License Key
Cost to Outsource Software Development in 2025
Wondershare Filmora 15 Crack With Activation Key [2025

Belief Uncertainty in Software Models

  • 1. Belief Uncertainty in Software Models MISE 2019 Montreal, Canada, May 26-27, 2019 Loli Burgueño1,2, Robert Clarisó1, Jordi Cabot3, Sébastien Gérard2 and Antonio Vallecillo4 1Open University of Catalonia, 2CEA-LIST, 3ICREA, 4University of Málaga
  • 2. A simple example of a hotel room 2 Temp. sensor Smoke detector Alarm center CO detector
  • 3. A simple example of a hotel room 3
  • 4. System attributes, operations, and constraints 4 class AlarmCenter attributes hightTemp : UBoolean derive: self.room.tempSensor.temperature > 30.0 hightCOLevel : UBoolean derive: self.room.coSensor.coPPM > 20 smoke : UBoolean derive: self.room.smokeDetector.smoke fireAlert : UBoolean derive: self.highTemp and self.highCOLevel and self.smoke operations isHot() : UBoolean = self.tempSensor.temperature > 25 isCold() : UBoolean = self.tempSensor.temperature < 18 constraints inv TempPrecision: self.temperature.uncertainty() <= 0.2 [Bertoa et al “Expressing Measurement Uncertainty in OCL/UML Datatypes. ECMFA 2018: 46-62]
  • 5. Some Belief Statements about the (model of the) system  The CO and smoke detectors that we bought have a reliability of 90% (i.e., 10% of their readings are not meaningful)  We can only be 98% sure that the precision of the Temperature sensor is 0.5o, as indicated in its datasheet  We are 95% confident that the presence of high temperature, high CO level and smoke really means that there is a fire in the room  Bob is from the south, so he only assigns a credibility of 50% to the operations that indicate if the room is hot or cold. In contrast, Mary thinks they are 99% accurate  Room #3 is close to the kitchen and frequently emits alarms. Everybody thinks that 90% of them are false positives  Joe the modeler doubts that the type of attribute “number” of class “Room” is Integer. He thinks it may contain characters different from digits.  Lucy the modeler is unsure if an “AlarmCenter” has to be attached to only one single Room. She thinks they can also be attached to several. 5 [About the credibility of the values] [From individual belief agents] [About individual instances] [About the model itself: relations] [About the behavioral rules] [About the uncertainty of the values] [About the model itself: types] >> How to represent these uncertainties in the system specifications? >> How to incorporate them into the system structural and behavioral models?
  • 6. The characters (in order of appearance…)  Uncertainty  The quality or state the involves imperfect or unknown information  It can be aleatory (variations in measurement) or epistemic (lack of knowledge)  Belief uncertainty  A kind of epistemic uncertainty in which the modeler, or any other belief agent, is uncertain about any of the statements made about the system or its environment. By nature, it is always subjective.  Belief agent  An entity (human, institution, even a machine) that holds one or more beliefs  Belief statement  Statement qualified by a degree of belief  Degree of belief  Confidence assigned to a statement by a belief agent. Normally expressed by quantitative or qualitative methods (e.g., a grade or a probability) 6
  • 7. Current approaches to represent and operate with Belief Uncertainty 7
  • 8. Our contribution  A mechanism able to assign a degree of belief to model statements  A method to operate with the degrees of beliefs and automatically propagate them through the system operations How do we do that?  Explicit representation of Belief Agents (including a default one)  Degrees of belief represented by means of Bayesian probabilities (Credence)  Bayesian probability is the most classical model for expressing and operating with subjective information, and hence for quantifying beliefs  Credence is a statistical term that refers to a measure of belief strength, which expresses how much an agent believes that a proposition is true  Credence values can be based entirely on subjective feelings  Credence is better understood in the context of gambling, where this concept is directly related to the odds at which a rational person would place a bet  UML Profile + operational semantics 8
  • 10. Operationalization  A list of pairs (BeliefAgent,credence) for every model statement subject to Belief Uncertainty  Operations to add and remove pairs from the list of pairs  Query operation to know the credence of a statement 10 isHot_Beliefs : Set(Tuple(beliefAgent : BeliefAgent, degreeOfBelief : Real)) isHot_BeliefsAdd(ba : BeliefAgent, d : Real) post: self.isHot_Beliefs = self.isHot_Beliefs@pre->reject(t|t.beliefAgent=ba)-> including(Tuple{beliefAgent:ba,degreeOfBelief:d}) isHot_credence(a:BeliefAgent): Real = let baBoD : … = self.isHot_Beliefs->select(t|t.beliefAgent = a) in let baBoDnull : … = self.isHot_Beliefs->select(t|t.beliefAgent = null) in if baBoD->isEmpty then -- no explicit credence by “a” if baBoDnull->notEmpty then -- but if default value exists baBoDnull->collect(degreeOfBelief)->any(true) else 1.0 endif else baBoD->collect(degreeOfBelief)->any(true) endif
  • 11. Running the system… 11 Hotel> !new BeliefAgent('Bob') Hotel> !new BeliefAgent('Mary') Hotel> !r1.isHot_BeliefsAdd(Bob,0.5) Hotel> !r1.isHot_BeliefsAdd(Mary,0.99) Hotel> !r1.isHot_BeliefsAdd(null,0.95) Hotel> Hotel> ?r1.isHot() -> UBoolean(true,1.0) : Uboolean Hotel> ?r1.isHot_credence(Bob) -> 0.5 : Real Hotel> ?r1.isHot_credence(Mary) -> 0.99 : Real Hotel> ?r1.isHot_credence(null) -> 0.95 : Real
  • 12. Credence propagation on dependent belief statements 12 fireAlert_credence(ba:BeliefAgent): Real = let baBoD : Set(Tuple(beliefAgent:BeliefAgent, degreeOfBelief:Real)) = self.fireAlert_Beliefs->select(t|t.beliefAgent = ba) in (if baBoD->isEmpty then … else baBoD->collect(degreeOfBelief)->any(true) endif) * self.fireAlertDeriveExpr_credence(ba) fireAlertDeriveExpr_credence(ba:BeliefAgent): Real = let baBoD : Set(Tuple(beliefAgent:BeliefAgent, degreeOfBelief:Real)) = self.fireAlertDeriveExpr_Beliefs->select(t|t.beliefAgent = ba) in (if baBoD->isEmpty then … else baBoD->collect(degreeOfBelief)->any(true) endif) * highTemp_credence(ba) * highCOLevel_credence(ba) * smoke_credence(ba)
  • 13. Running the system… 13 Hotel> !r2.alarmCenter. fireAlert_BeliefsAdd(null,0.1) Hotel> !r1.alarmCenter.fireAlert_BeliefsAdd(Bob,0.99) Hotel> !r1.alarmCenter.fireAlertDeriveExpr_BeliefsAdd(Bob,0.95) Hotel> !r1.alarmCenter.highTemp_BeliefsAdd(Bob,0.99) Hotel> !r1.alarmCenter.highCOLevel_BeliefsAdd(Bob,0.99) Hotel> !r1.alarmCenter.smoke_BeliefsAdd(Bob,0.99) Hotel> Hotel> ?r1.alarmCenter.fireAlert -> UBoolean(true,0.99) : UBoolean Hotel> ?r1.alarmCenter.fireAlert_credence(Bob) -> 0.9125662095 : Real Hotel> ?r1.alarmCenter.fireAlert_credence(Mary) -> 1.0 : Real Hotel> ?r1.alarmCenter.fireAlert_credence(null) -> 1.0 : Real Hotel> Hotel> ?r2.alarmCenter.fireAlert_credence(Bob) -> 0.04562831047 : Real
  • 14. Conclusions and future work  Explicit representation and management of belief uncertainty in software models…  …in terms of degrees of belief assigned to the model statements by separate belief agents…  …about the credibility of  The values of the represented (physical) elements  The measurement uncertainty of these values  The expressions that model the behavior of the system  The way in which we have modeled the system (types of the attributes, types of relationships and their cardinalities, etc.)  Future work  Associating evidences to belief statements  Representing degrees of beliefs in other types of models (use cases, sequence diagrams, pre- and postconditions, …)  Industrial case studies and further application domains (e.g., model inference, model mining)  Empirical validation with industrial modelers 14
  • 15. Further claims (1/2)  Claim 1: Our current software models are not fully capable of faithfully representing all key relevant aspects of physical systems. These systems are never crisp, they are subject to different kinds of uncertainties. This our models should be able to reflect. 15 (http://www.christophniemann.com)
  • 16. Further claims (2/2)  Claim 2: Modeling notations and tools (e.g. DSLs) are of little value without well defined methods and processes, which in turn require solid principles. We should always ask ourselves if our modeling notations take into account the principles that govern our physical systems, or are they mere shallow and cosmetic descriptions of them? 16 “The man who grasps principles can successfully handle his own methods. The man who tries methods, ignoring principles, is sure to have trouble” Ralph Waldo Emerson
  • 17. Belief Uncertainty in Software Models MISE 2019 Montreal, Canada, May 26-27, 2019 Loli Burgueño1,2, Robert Clarisó1, Jordi Cabot3, Sébastien Gérard2 and Antonio Vallecillo4 1Open University of Catalonia, 2CEA-LIST, 3ICREA, 4Málaga University