SlideShare a Scribd company logo
1 of 20
Modeling behavioral deontic
constraints using UML and OCL
Antonio Vallecillo, Martin Gogolla
Universidad de Málaga, Spain
University of Bremen, Germany
Link to the paper: https://doi.org/10.1007/978-3-030-62522-1_10
What is deontic logic?
 What is deontic logic?
 Deontic logic is the logic of Ethics
 It is about what is permissible and what is obligatory:
 What we should and should not do
 What we are allowed to do, and what we are not allowed to do
 What are deontic constraints?
 Deontic constraints are the way of expressing how a digital system is used and
applied in the real world so that moral or business rules are respected
 “Alethic” vs. “Deontic” rules
 Alethic rules impose “necessities” that cannot be violated (e.g. the age of a
person cannot be negative)
 Deontic rules impose “obligations” that can be violated although they should not
(e.g., borrowed books must be returned within one week).
 Accountability
 System actors or agents must be liable for their actions or inactions, whenever
they do not fulfil their obligations or transgress the system rules
2
Use of Deontic logic in systems specifications
 Allows us to deal with norms and expectations
 Obligations to perform specified behaviour
 Permissions to perform such behaviour
 Prohibitions of certain behaviours
 We shift to a style of specification where the focus is not only on the concrete
steps and processes, but on
 a set of obligations that must be discharged;
 who is responsible for discharging them;
 who is allowed to do that, and when;
 Delegation of obligations and permissions is possible
 Liability can be traced in case of problems, and parties become accountable
for their actions (and for their inactions!)
3
The current situation
 Some modeling proposals and notations, such as SBVR, ORM or the
Enterprise Language of the RM-ODP, provide support for deontic concepts
 Effectively used, e.g., in the e-Health domain! [19,20]
 Based on modal logics
 Using declarative approaches, which require specialized knowledge and with
little tool support (at most for editing, no proper analysis tools )
4
[13] [16]
Our contribution in this paper
 A proposal to explicitly specify dynamic (behavioral) deontic constraints in
UML and OCL
 They can be used to guide and restrict the behavior of the system, and
 They allow deontic reasoning about such a behavior, including accountability
analysis
 Operational style of specification, based on
(a) Deontic tokens,
 They reify deontic permissions and obligations as objects (permits and burdens)
 They can be explicitly handled in pre- and postconditions of operations
(b) Filmstrip models,
 They reify the system actions as objects so the system behavior is represented as
sequence of snapshots, and behavioral constraints become structural invariants
5
Case study: a student grading system
6
Some deontic constraints
1. Students are permitted to register with any teacher who does not have a
report from them that is still pending to grade
2. Students registered with a teacher have the permission, and the obligation,
to deliver the report to that teacher
3. Teachers have the permission, and the obligation, to grade all reports that
they advise and that are delivered to them
4. Students are permitted to view only the marks of their reports, and only
once these have been graded
5. Teachers are permitted to view only the marks of the reports they have
graded, but only once they have given the mark
7
Filmstrip models
 Permit the specification of behavior as a sequence of snapshots
 Each snapshot describes the current state of the system at one moment
 Transitions are caused by operation calls (in our current proposal)
8
A filmstrip object model with five snapshots (after 4 operations)
 Filmstrips provide a structural (static) specification of (dynamic) behavior!
 They allow the use of structural analysis tools for deontic reasoning
 Pre- and postconditions of operations become invariants in the filmstrip
 In USE, filmstrips can be automatically derived from behavioral specifications!
9
Reification of deontic tokens as objects
 Obligations reified as “Burdens”
 Permissions reified as “Permits”
 Agents acquire and release “permits” and “burdens” along their lifetime
10ISO/IEC 19793, ITU-T Rec. X.906: Information technology – Open distributed processing – Use of UML for ODP system specifications. (2015)
Combining filmstrips and deontic tokens
11
A filmstrip showing how deontic tokens evolve along the execution
12
Tokens are used in pre- and post conditions of operations!
 They specify how tokens are required for an action to proceed, and how they
are acquired/released as a result of the action
13
And now?
 Two possible model execution/simulation approaches:
 Prescriptive (deterministic): selecting a sequence of actions and executing them
in order
 Descriptive (non-deterministic): Continuously choosing one of the possible
actions that can be executed (i.e., whose pre-conditions are fulfilled) until no
further action is enabled
 Dynamic Analysis on the system can be accomplished by means of static
analysis on the filmstrip models:
 Temporal properties
 Fairness
 Reachability analysis
 Deontic constraints independence
 Accountability analysis
14
Temporal properties
 E.g., valid sequences of operations
(Student::register) -> (Student::deliver) -> (Teacher::grade) ->
[ (Student::viewMark) | (Teacher::viewMark) ]+
 Simply expressed as structural invariants on filmstrips:
15
Reachability analysis
 The USE model validator can be used to automatically find valid filmstrips
(i.e., behaviors) that starting from a configuration that can lead to a given
state (specified by an invariant)
16
Accountability analysis
 Agents can be tracked when undesirable situations happen
 Deadlocks: Agents with burdens to perform actions but with no permits for
them
 Rule transgression: Actions performed by agents with no permits for them
 They all can be checked using OCL expressions
 For example, no further burden remains undischarged in the system:
17
Conclusions and future work
 Explicit representation of the deontic rules and
tokens
 Instead of their implicit representation as
formulas in a modal logic, which might be
more difficult to debug, implement and maintain
 UML models with deontic tokens can be simulated to detect undesirable
situations ranging from constraint violations to deadlocks or starvation
 E.g., due to lack of permissions or non-dischargeable burdens.
 We achieve the necessary separation of concerns
 to decouple the functional specifications of a system from the deontic rules that
are applicable to it at a given moment, since the latter can evolve over time.
18
Conclusions and future work
 More case studies and Usability experiments
 Specification of “Delegations”
 They may require further “permissions to delegate” and might seriously
complicate accountability analysis
 Pessimistic enforcement model (actions are forbidden unless they are
explicitly permitted)
vs. optimistic enforcement model (actions are permitted unless explicitly
prohibited)
 Mappings to other modeling notations (SBVR, ORM, …)
19
Modeling behavioral deontic
constraints using UML and OCL
Antonio Vallecillo, Martin Gogolla
Universidad de Málaga, Spain
University of Bremen, Germany
Link to the paper: https://doi.org/10.1007/978-3-030-62522-1_10

More Related Content

What's hot

Modeling & simulation in projects
Modeling & simulation in projectsModeling & simulation in projects
Modeling & simulation in projectsanki009
 
Some Take-Home Message about Machine Learning
Some Take-Home Message about Machine LearningSome Take-Home Message about Machine Learning
Some Take-Home Message about Machine LearningGianluca Bontempi
 
Types of device models(part 2)
Types of device models(part 2)Types of device models(part 2)
Types of device models(part 2)SudharshaG
 
MachineLlearning introduction
MachineLlearning introductionMachineLlearning introduction
MachineLlearning introductionThe IOT Academy
 
Brief Tour of Machine Learning
Brief Tour of Machine LearningBrief Tour of Machine Learning
Brief Tour of Machine Learningbutest
 
Module 3 Object Oriented Data Models Object Oriented notations
Module 3  Object Oriented Data Models Object Oriented notationsModule 3  Object Oriented Data Models Object Oriented notations
Module 3 Object Oriented Data Models Object Oriented notationsTaher Barodawala
 
Ai project report
Ai project reportAi project report
Ai project reportsanjeevtmk
 

What's hot (10)

Modeling & simulation in projects
Modeling & simulation in projectsModeling & simulation in projects
Modeling & simulation in projects
 
Some Take-Home Message about Machine Learning
Some Take-Home Message about Machine LearningSome Take-Home Message about Machine Learning
Some Take-Home Message about Machine Learning
 
Types of device models(part 2)
Types of device models(part 2)Types of device models(part 2)
Types of device models(part 2)
 
Introduction to ml
Introduction to mlIntroduction to ml
Introduction to ml
 
MachineLlearning introduction
MachineLlearning introductionMachineLlearning introduction
MachineLlearning introduction
 
Brief Tour of Machine Learning
Brief Tour of Machine LearningBrief Tour of Machine Learning
Brief Tour of Machine Learning
 
Module 3 Object Oriented Data Models Object Oriented notations
Module 3  Object Oriented Data Models Object Oriented notationsModule 3  Object Oriented Data Models Object Oriented notations
Module 3 Object Oriented Data Models Object Oriented notations
 
Fuzzy expert system
Fuzzy expert systemFuzzy expert system
Fuzzy expert system
 
System Theories
System TheoriesSystem Theories
System Theories
 
Ai project report
Ai project reportAi project report
Ai project report
 

Similar to Modeling behavioral deontic constraints using UML and OCL

Discreate Event Simulation_PPT1-R0.ppt
Discreate Event Simulation_PPT1-R0.pptDiscreate Event Simulation_PPT1-R0.ppt
Discreate Event Simulation_PPT1-R0.pptdiklatMSU
 
IT440.pdf
IT440.pdfIT440.pdf
IT440.pdfAhTh3
 
s123.pdf
s123.pdfs123.pdf
s123.pdfAhTh3
 
s123.pdf
s123.pdfs123.pdf
s123.pdfAhTh3
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologiesnaina-rani
 
Introduction to simulation.pdf
Introduction to simulation.pdfIntroduction to simulation.pdf
Introduction to simulation.pdfnadimhossain24
 
MC0083 – Object Oriented Analysis &. Design using UML - Master of Computer Sc...
MC0083 – Object Oriented Analysis &. Design using UML - Master of Computer Sc...MC0083 – Object Oriented Analysis &. Design using UML - Master of Computer Sc...
MC0083 – Object Oriented Analysis &. Design using UML - Master of Computer Sc...Aravind NC
 
Introduction of abm
Introduction of abmIntroduction of abm
Introduction of abmYudi Yasik
 
Ooad Overview
Ooad OverviewOoad Overview
Ooad OverviewDang Tuan
 
Introduction of abm
Introduction of abmIntroduction of abm
Introduction of abmyudiyasik
 
Introduction of abm
Introduction of abmIntroduction of abm
Introduction of abmyudiyasik
 
Object modeling techniques by savyasachi
Object modeling techniques by savyasachiObject modeling techniques by savyasachi
Object modeling techniques by savyasachiSavyasachi14
 
System dynamic20011598-079.pptx
System dynamic20011598-079.pptxSystem dynamic20011598-079.pptx
System dynamic20011598-079.pptxmuhammadsaad359748
 
Object Modeling Techniques
Object Modeling TechniquesObject Modeling Techniques
Object Modeling TechniquesShilpa Wadhwani
 
Unit 6 Simulation.pptx
Unit 6 Simulation.pptxUnit 6 Simulation.pptx
Unit 6 Simulation.pptxHafiz20006
 
CS8592 Object Oriented Analysis & Design - UNIT V
CS8592 Object Oriented Analysis & Design - UNIT V CS8592 Object Oriented Analysis & Design - UNIT V
CS8592 Object Oriented Analysis & Design - UNIT V pkaviya
 
05 use-case-modeling-1mon
05 use-case-modeling-1mon05 use-case-modeling-1mon
05 use-case-modeling-1monTuul Tuka
 

Similar to Modeling behavioral deontic constraints using UML and OCL (20)

MODELING & SIMULATION.docx
MODELING & SIMULATION.docxMODELING & SIMULATION.docx
MODELING & SIMULATION.docx
 
Discreate Event Simulation_PPT1-R0.ppt
Discreate Event Simulation_PPT1-R0.pptDiscreate Event Simulation_PPT1-R0.ppt
Discreate Event Simulation_PPT1-R0.ppt
 
IT440.pdf
IT440.pdfIT440.pdf
IT440.pdf
 
s123.pdf
s123.pdfs123.pdf
s123.pdf
 
s123.pdf
s123.pdfs123.pdf
s123.pdf
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
 
SIMULATION.pdf
SIMULATION.pdfSIMULATION.pdf
SIMULATION.pdf
 
Introduction to simulation.pdf
Introduction to simulation.pdfIntroduction to simulation.pdf
Introduction to simulation.pdf
 
MC0083 – Object Oriented Analysis &. Design using UML - Master of Computer Sc...
MC0083 – Object Oriented Analysis &. Design using UML - Master of Computer Sc...MC0083 – Object Oriented Analysis &. Design using UML - Master of Computer Sc...
MC0083 – Object Oriented Analysis &. Design using UML - Master of Computer Sc...
 
Introduction of abm
Introduction of abmIntroduction of abm
Introduction of abm
 
Ooad Overview
Ooad OverviewOoad Overview
Ooad Overview
 
Ooad overview
Ooad overviewOoad overview
Ooad overview
 
Introduction of abm
Introduction of abmIntroduction of abm
Introduction of abm
 
Introduction of abm
Introduction of abmIntroduction of abm
Introduction of abm
 
Object modeling techniques by savyasachi
Object modeling techniques by savyasachiObject modeling techniques by savyasachi
Object modeling techniques by savyasachi
 
System dynamic20011598-079.pptx
System dynamic20011598-079.pptxSystem dynamic20011598-079.pptx
System dynamic20011598-079.pptx
 
Object Modeling Techniques
Object Modeling TechniquesObject Modeling Techniques
Object Modeling Techniques
 
Unit 6 Simulation.pptx
Unit 6 Simulation.pptxUnit 6 Simulation.pptx
Unit 6 Simulation.pptx
 
CS8592 Object Oriented Analysis & Design - UNIT V
CS8592 Object Oriented Analysis & Design - UNIT V CS8592 Object Oriented Analysis & Design - UNIT V
CS8592 Object Oriented Analysis & Design - UNIT V
 
05 use-case-modeling-1mon
05 use-case-modeling-1mon05 use-case-modeling-1mon
05 use-case-modeling-1mon
 

More from Antonio Vallecillo

Introducing Subjective Knowledge Graphs
Introducing Subjective Knowledge GraphsIntroducing Subjective Knowledge Graphs
Introducing Subjective Knowledge GraphsAntonio Vallecillo
 
Modeling and Evaluating Quality in the Presence of Uncertainty
Modeling and Evaluating Quality in the Presence of UncertaintyModeling and Evaluating Quality in the Presence of Uncertainty
Modeling and Evaluating Quality in the Presence of UncertaintyAntonio Vallecillo
 
Research Evaluation - The current situation in Spain
Research Evaluation - The current situation in SpainResearch Evaluation - The current situation in Spain
Research Evaluation - The current situation in SpainAntonio Vallecillo
 
Belief Uncertainty in Software Models
Belief Uncertainty in Software ModelsBelief Uncertainty in Software Models
Belief Uncertainty in Software ModelsAntonio Vallecillo
 
Adding Random Operations to OCL
Adding Random Operations to OCLAdding Random Operations to OCL
Adding Random Operations to OCLAntonio Vallecillo
 
Extending Complex Event Processing to Graph-structured Information
Extending Complex Event Processing to Graph-structured InformationExtending Complex Event Processing to Graph-structured Information
Extending Complex Event Processing to Graph-structured InformationAntonio Vallecillo
 
Towards a Body of Knowledge for Model-Based Software Engineering
Towards a Body of Knowledge for Model-Based Software EngineeringTowards a Body of Knowledge for Model-Based Software Engineering
Towards a Body of Knowledge for Model-Based Software EngineeringAntonio Vallecillo
 
La Ingeniería Informática no es una Ciencia -- Reflexiones sobre la Educación...
La Ingeniería Informática no es una Ciencia -- Reflexiones sobre la Educación...La Ingeniería Informática no es una Ciencia -- Reflexiones sobre la Educación...
La Ingeniería Informática no es una Ciencia -- Reflexiones sobre la Educación...Antonio Vallecillo
 
La Ética en la Ingeniería de Software de Pruebas: Necesidad de un Código Ético
La Ética en la Ingeniería de Software de Pruebas: Necesidad de un Código ÉticoLa Ética en la Ingeniería de Software de Pruebas: Necesidad de un Código Ético
La Ética en la Ingeniería de Software de Pruebas: Necesidad de un Código ÉticoAntonio Vallecillo
 
La ingeniería del software en España: retos y oportunidades
La ingeniería del software en España: retos y oportunidadesLa ingeniería del software en España: retos y oportunidades
La ingeniería del software en España: retos y oportunidadesAntonio Vallecillo
 
Los Estudios de Posgrado de la Universidad de Málaga
Los Estudios de Posgrado de la Universidad de MálagaLos Estudios de Posgrado de la Universidad de Málaga
Los Estudios de Posgrado de la Universidad de MálagaAntonio Vallecillo
 
El papel de los MOOCs en la Formación de Posgrado. El reto de la Universidad...
El papel de los MOOCs en la Formación de Posgrado. El reto de la Universidad...El papel de los MOOCs en la Formación de Posgrado. El reto de la Universidad...
El papel de los MOOCs en la Formación de Posgrado. El reto de la Universidad...Antonio Vallecillo
 
La enseñanza digital y los MOOC en la UMA. Presentación en el XV encuentro de...
La enseñanza digital y los MOOC en la UMA. Presentación en el XV encuentro de...La enseñanza digital y los MOOC en la UMA. Presentación en el XV encuentro de...
La enseñanza digital y los MOOC en la UMA. Presentación en el XV encuentro de...Antonio Vallecillo
 
El doctorado en Informática: ¿Nuevo vino en viejas botellas? (Charla U. Sevil...
El doctorado en Informática: ¿Nuevo vino en viejas botellas? (Charla U. Sevil...El doctorado en Informática: ¿Nuevo vino en viejas botellas? (Charla U. Sevil...
El doctorado en Informática: ¿Nuevo vino en viejas botellas? (Charla U. Sevil...Antonio Vallecillo
 
Accountable objects: Modeling Liability in Open Distributed Systems
Accountable objects: Modeling Liability in Open Distributed SystemsAccountable objects: Modeling Liability in Open Distributed Systems
Accountable objects: Modeling Liability in Open Distributed SystemsAntonio Vallecillo
 
Improving Naming and Grouping in UML
Improving Naming and Grouping in UMLImproving Naming and Grouping in UML
Improving Naming and Grouping in UMLAntonio Vallecillo
 
On the Combination of Domain Specific Modeling Languages
On the Combination of Domain Specific Modeling LanguagesOn the Combination of Domain Specific Modeling Languages
On the Combination of Domain Specific Modeling LanguagesAntonio Vallecillo
 

More from Antonio Vallecillo (18)

Introducing Subjective Knowledge Graphs
Introducing Subjective Knowledge GraphsIntroducing Subjective Knowledge Graphs
Introducing Subjective Knowledge Graphs
 
Modeling and Evaluating Quality in the Presence of Uncertainty
Modeling and Evaluating Quality in the Presence of UncertaintyModeling and Evaluating Quality in the Presence of Uncertainty
Modeling and Evaluating Quality in the Presence of Uncertainty
 
Research Evaluation - The current situation in Spain
Research Evaluation - The current situation in SpainResearch Evaluation - The current situation in Spain
Research Evaluation - The current situation in Spain
 
Belief Uncertainty in Software Models
Belief Uncertainty in Software ModelsBelief Uncertainty in Software Models
Belief Uncertainty in Software Models
 
Adding Random Operations to OCL
Adding Random Operations to OCLAdding Random Operations to OCL
Adding Random Operations to OCL
 
Extending Complex Event Processing to Graph-structured Information
Extending Complex Event Processing to Graph-structured InformationExtending Complex Event Processing to Graph-structured Information
Extending Complex Event Processing to Graph-structured Information
 
Towards a Body of Knowledge for Model-Based Software Engineering
Towards a Body of Knowledge for Model-Based Software EngineeringTowards a Body of Knowledge for Model-Based Software Engineering
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 Ingeniería Informática no es una Ciencia -- Reflexiones sobre la Educación...La Ingeniería Informática no es una Ciencia -- Reflexiones sobre la Educación...
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 Ética en la Ingeniería de Software de Pruebas: Necesidad de un Código ÉticoLa Ética en la Ingeniería de Software de Pruebas: Necesidad de un Código Ético
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
La ingeniería del software en España: retos y oportunidadesLa ingeniería del software en España: retos y oportunidades
La ingeniería del software en España: retos y oportunidades
 
Los Estudios de Posgrado de la Universidad de Málaga
Los Estudios de Posgrado de la Universidad de MálagaLos Estudios de Posgrado de la Universidad de Málaga
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...
El papel de los MOOCs en la Formación de Posgrado. El reto de la Universidad...El papel de los MOOCs en la Formación de Posgrado. El reto de la Universidad...
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...
La enseñanza digital y los MOOC en la UMA. Presentación en el XV encuentro de...La enseñanza digital y los MOOC en la UMA. Presentación en el XV encuentro de...
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...
El doctorado en Informática: ¿Nuevo vino en viejas botellas? (Charla U. Sevil...El doctorado en Informática: ¿Nuevo vino en viejas botellas? (Charla U. Sevil...
El doctorado en Informática: ¿Nuevo vino en viejas botellas? (Charla U. Sevil...
 
Accountable objects: Modeling Liability in Open Distributed Systems
Accountable objects: Modeling Liability in Open Distributed SystemsAccountable objects: Modeling Liability in Open Distributed Systems
Accountable objects: Modeling Liability in Open Distributed Systems
 
Models And Meanings
Models And MeaningsModels And Meanings
Models And Meanings
 
Improving Naming and Grouping in UML
Improving Naming and Grouping in UMLImproving Naming and Grouping in UML
Improving Naming and Grouping in UML
 
On the Combination of Domain Specific Modeling Languages
On the Combination of Domain Specific Modeling LanguagesOn the Combination of Domain Specific Modeling Languages
On the Combination of Domain Specific Modeling Languages
 

Recently uploaded

2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shardsChristopher Curtin
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencessuser9e7c64
 
Zer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfZer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfmaor17
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
Osi security architecture in network.pptx
Osi security architecture in network.pptxOsi security architecture in network.pptx
Osi security architecture in network.pptxVinzoCenzo
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorTier1 app
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics
 
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...OnePlan Solutions
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonApplitools
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogueitservices996
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slidesvaideheekore1
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...OnePlan Solutions
 
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdfAndrey Devyatkin
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsJean Silva
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfRTS corp
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingShane Coughlan
 

Recently uploaded (20)

2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conference
 
Zer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfZer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdf
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
Osi security architecture in network.pptx
Osi security architecture in network.pptxOsi security architecture in network.pptx
Osi security architecture in network.pptx
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryError
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
 
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogue
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slides
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
 
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero results
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
 

Modeling behavioral deontic constraints using UML and OCL

  • 1. Modeling behavioral deontic constraints using UML and OCL Antonio Vallecillo, Martin Gogolla Universidad de Málaga, Spain University of Bremen, Germany Link to the paper: https://doi.org/10.1007/978-3-030-62522-1_10
  • 2. What is deontic logic?  What is deontic logic?  Deontic logic is the logic of Ethics  It is about what is permissible and what is obligatory:  What we should and should not do  What we are allowed to do, and what we are not allowed to do  What are deontic constraints?  Deontic constraints are the way of expressing how a digital system is used and applied in the real world so that moral or business rules are respected  “Alethic” vs. “Deontic” rules  Alethic rules impose “necessities” that cannot be violated (e.g. the age of a person cannot be negative)  Deontic rules impose “obligations” that can be violated although they should not (e.g., borrowed books must be returned within one week).  Accountability  System actors or agents must be liable for their actions or inactions, whenever they do not fulfil their obligations or transgress the system rules 2
  • 3. Use of Deontic logic in systems specifications  Allows us to deal with norms and expectations  Obligations to perform specified behaviour  Permissions to perform such behaviour  Prohibitions of certain behaviours  We shift to a style of specification where the focus is not only on the concrete steps and processes, but on  a set of obligations that must be discharged;  who is responsible for discharging them;  who is allowed to do that, and when;  Delegation of obligations and permissions is possible  Liability can be traced in case of problems, and parties become accountable for their actions (and for their inactions!) 3
  • 4. The current situation  Some modeling proposals and notations, such as SBVR, ORM or the Enterprise Language of the RM-ODP, provide support for deontic concepts  Effectively used, e.g., in the e-Health domain! [19,20]  Based on modal logics  Using declarative approaches, which require specialized knowledge and with little tool support (at most for editing, no proper analysis tools ) 4 [13] [16]
  • 5. Our contribution in this paper  A proposal to explicitly specify dynamic (behavioral) deontic constraints in UML and OCL  They can be used to guide and restrict the behavior of the system, and  They allow deontic reasoning about such a behavior, including accountability analysis  Operational style of specification, based on (a) Deontic tokens,  They reify deontic permissions and obligations as objects (permits and burdens)  They can be explicitly handled in pre- and postconditions of operations (b) Filmstrip models,  They reify the system actions as objects so the system behavior is represented as sequence of snapshots, and behavioral constraints become structural invariants 5
  • 6. Case study: a student grading system 6
  • 7. Some deontic constraints 1. Students are permitted to register with any teacher who does not have a report from them that is still pending to grade 2. Students registered with a teacher have the permission, and the obligation, to deliver the report to that teacher 3. Teachers have the permission, and the obligation, to grade all reports that they advise and that are delivered to them 4. Students are permitted to view only the marks of their reports, and only once these have been graded 5. Teachers are permitted to view only the marks of the reports they have graded, but only once they have given the mark 7
  • 8. Filmstrip models  Permit the specification of behavior as a sequence of snapshots  Each snapshot describes the current state of the system at one moment  Transitions are caused by operation calls (in our current proposal) 8
  • 9. A filmstrip object model with five snapshots (after 4 operations)  Filmstrips provide a structural (static) specification of (dynamic) behavior!  They allow the use of structural analysis tools for deontic reasoning  Pre- and postconditions of operations become invariants in the filmstrip  In USE, filmstrips can be automatically derived from behavioral specifications! 9
  • 10. Reification of deontic tokens as objects  Obligations reified as “Burdens”  Permissions reified as “Permits”  Agents acquire and release “permits” and “burdens” along their lifetime 10ISO/IEC 19793, ITU-T Rec. X.906: Information technology – Open distributed processing – Use of UML for ODP system specifications. (2015)
  • 11. Combining filmstrips and deontic tokens 11
  • 12. A filmstrip showing how deontic tokens evolve along the execution 12
  • 13. Tokens are used in pre- and post conditions of operations!  They specify how tokens are required for an action to proceed, and how they are acquired/released as a result of the action 13
  • 14. And now?  Two possible model execution/simulation approaches:  Prescriptive (deterministic): selecting a sequence of actions and executing them in order  Descriptive (non-deterministic): Continuously choosing one of the possible actions that can be executed (i.e., whose pre-conditions are fulfilled) until no further action is enabled  Dynamic Analysis on the system can be accomplished by means of static analysis on the filmstrip models:  Temporal properties  Fairness  Reachability analysis  Deontic constraints independence  Accountability analysis 14
  • 15. Temporal properties  E.g., valid sequences of operations (Student::register) -> (Student::deliver) -> (Teacher::grade) -> [ (Student::viewMark) | (Teacher::viewMark) ]+  Simply expressed as structural invariants on filmstrips: 15
  • 16. Reachability analysis  The USE model validator can be used to automatically find valid filmstrips (i.e., behaviors) that starting from a configuration that can lead to a given state (specified by an invariant) 16
  • 17. Accountability analysis  Agents can be tracked when undesirable situations happen  Deadlocks: Agents with burdens to perform actions but with no permits for them  Rule transgression: Actions performed by agents with no permits for them  They all can be checked using OCL expressions  For example, no further burden remains undischarged in the system: 17
  • 18. Conclusions and future work  Explicit representation of the deontic rules and tokens  Instead of their implicit representation as formulas in a modal logic, which might be more difficult to debug, implement and maintain  UML models with deontic tokens can be simulated to detect undesirable situations ranging from constraint violations to deadlocks or starvation  E.g., due to lack of permissions or non-dischargeable burdens.  We achieve the necessary separation of concerns  to decouple the functional specifications of a system from the deontic rules that are applicable to it at a given moment, since the latter can evolve over time. 18
  • 19. Conclusions and future work  More case studies and Usability experiments  Specification of “Delegations”  They may require further “permissions to delegate” and might seriously complicate accountability analysis  Pessimistic enforcement model (actions are forbidden unless they are explicitly permitted) vs. optimistic enforcement model (actions are permitted unless explicitly prohibited)  Mappings to other modeling notations (SBVR, ORM, …) 19
  • 20. Modeling behavioral deontic constraints using UML and OCL Antonio Vallecillo, Martin Gogolla Universidad de Málaga, Spain University of Bremen, Germany Link to the paper: https://doi.org/10.1007/978-3-030-62522-1_10

Editor's Notes

  1. Our work aims at addressing this drawback by allowing modelers to specify deontic concepts and rules in plain UML and OCL, using an operational style (instead of a declarative one), based on two main pillars: The reification of deontic permissions and obligations as objects, which are assigned to the system active objects The reification of actions as objects, that “link” their corresponding “before” and “after” system states. Thus, a filmstrip is a sequence of models (snapshops) linked by the action occurrences that cause the system state changes. In this way, behavioral constraints become structural invariants in a filmstrip.