SlideShare a Scribd company logo
1 of 17
A Run-Time Verification Framework for Smart Grid
Applications Implemented on Simulation
Frameworks
Selim Ciraci (PNNL)
Hasan Sozer (Ozyegin University)
Bedir Tekinerdogan (Bilkent University)
Outline
Motivation
Simulation of Smart grid Applications
Behavioral Constraints
Example: Market Bid Application
ConArch Framework
Modeling Behavioral Specifications
Generation of runtime verification automata
Mapping Software Architecture to Implementation
Runtime observers and verification
Application of ConArch to Market Bid Application
Conclusions and future work
Simulation of Smart Grid Applications
Smart gird combination of electrical grid with communication
networks.
Sensors gather information (e.g., supply/demand information).
This information is carried to control centers with communication
networks.
Before deploying an application for the smart grid, it is important to
analyze:
How network delays/errors effect the application
Whether the control logic of the application is correct
Simulation of Smart Grid Applications
Usually developers/ designers do not
have access to large power grid and
communication network to be used as a
test-bed.
Simulation systems are utilized to analyze
the new smart grid applications.
Behavioral Constraints and Smart Grid
Applications
Electrical grid is a mission critical infrastructure.
Smart grid applications are subject to behavioral constraints.
Most of these constraints are systematic
Defined at the architecture deign level as sequences of interactions between
components/connectors.
To verify behavioral constraints:
Software architecture should be evaluated
Implementation should be tested
Behavioral Constraints and Smart Grid
Applications
• Testing of Smart Grid applications is realized with simulators.
• How can we be sure that the implementation follows the
behavioral constraints?
If implementation is incorrect, simulation results can be
misleading.
Implementation deviates from the planned architecture.
Harder to find interactions in the source code.
Example: Market Bid Application
Used for calculating the cleared
price of electricity.
Controllers attached to the air
conditioning units (AirCo).
Before turning on, AirCo notifies
the Controller.
Controller bids a price for
electricity with the power
demand from the AirCo.
AuctionHouse collects the bids
from controllers. Then, sends a
response message stating the
price of electricity of the next
interval.
Depending on the price
Controller arranges the settings
of the AirCo.
This is a behavioral constraint of the
Market Bid Application. How can we
verify this constraint for implementations
with a simulator?
With a simulator, the implementation
deviates from planned architecture.
Interaction BidRps() is implemented in
method ControllerInterface.commit()
ConArch - An Approach for Detecting
Inconsistencies between Behavioral
Models of the Software Architecture and
the Code
Utilizes architectural behavioral constraints for runtime verification.
Converts behavioral constraints to formal specifications.
Generates runtime monitors, that observe and record the execution of
the software system.
Online verification: runtime verifier evaluates whether the observed
execution follows the behavioral constraint.
ConArch and verification of Smart Grid
Applications
ConArch provides programmable architecture to source code
mappings.
Does not make assumptions, such as interaction A() is implemented as a
method A(), about how the architecture is implemented.
Users implement queries on the abstract-syntax tree (AST) to specify the
methods, classes, and conditions that map to the architecture.
Programmable mappings provide flexibility:
Mapping can still be accomplished even though the implementation
deviates from the planned architecture.
Allows verification for implementations for smart grid applications
implemented with simulator frameworks.
Modeling Behavioral Constraints in ConArch
UML sequence diagrams are
used for modeling behavioral
constraints.
Interactions can be
asynchronous, synchronous.
Conditional, optional frames can
be used model the control flow.
Generation Formal Specification
ConArch converts UML sequence diagrams to formal
specifications as Finite State Machines.
FSM explicitly shows each possible path of the control flow.
Asynchronous interaction
Bid(), Controller initiates the
interactions then executes the
return interaction bidSent() -> two
paths in control flow
Mapping interactions to the implementation
Prolog is utilized for querying the
AST.
ConArch provides tools for
converting C++ and Java to
Prolog facts.
Users implement queries
(Prolog rules) over these facts.
Facts representing
Java AST.
Prolog Query for that maps
initiation of interaction
Controller.Bid() to the call
ControllerInterface::Bid() where
ControllerInterface::
inboxCounter >0
Commit is a method required
by the simulator
framework, developers had
to use this method to
implement an interaction.
Mapping interactions to the implementation
ConArch provides a repository of Prolog rules for mapping
interactions to implementations.
With these rules common styles for implementing interactions with
simulators can be mapped in a much easier way.
E.g.: mapEventHandler(), mapTickHandler(), mapEventScheduling(), …
Commit() is a tick handler method, instead of the query shown in previous
slide we could use the rule mapTickHandler() from the repository.
Runtime Observers and Verification
Runtime monitors are aspects that intercept the
execution when the control reaches a
call/method that corresponds to an interaction.
Intercept
ControllerInterface::
commit()
Send to runtime verifier
that the method
corresponding to
interaction is
Controller.Bid() is
executed.
Runtime Observers and Verification
Runtime verifier receives the information about executing interactions
from the monitors.
It traces the FSM with these interactions and tests whether the FSM
yields to an accept state.
Current State
of runtime verifier
Incoming message from monitor:
executes Controller.Bid()
New state of
runtime verifier
Application of ConArch to Market Bid Application
We used ConArch to verify the Market Bid Application implemented
with GridLAB-D and ns-3 simulators.
9 classes in total.
C++ to Prolog conversion completed 6mins. Mapping of 10
interactions completed 15seconds.
10 aspects are generated.
11seconds runtime overhead.
Verification captured one violation of the behavioral constraint:
Controllers were executing a Bid() interaction instead of a
adjustThermostat () interaction.
Caused due to improper handling of delays messages from the network.
Problem confirmed by developers!
Conclusions and Future work
Flexible mapping is needed because the implementation can deviate
from the planed architecture.
For applications implemented with simulator frameworks deviation is
unavoidable.
ConArch can be utilized for verification of smart grid applications
implemented with simulation frameworks.
Future work:
We plan to extend the repository for common mapping.
Integrate ConArch to deployment phase, so it can be used when
applications are deployed.
Allows developers to capture misbehaving applications.

More Related Content

Similar to SE4SG 2013 : A Run-Time Verification Framework for Smart Grid Applications Implemented on Simulation

Towards Rapid Implementation of Adaptive Robotic Systems
Towards Rapid Implementation of Adaptive Robotic SystemsTowards Rapid Implementation of Adaptive Robotic Systems
Towards Rapid Implementation of Adaptive Robotic SystemsMeshDynamics
 
A web based network worm simulator
A web based network worm simulatorA web based network worm simulator
A web based network worm simulatorUltraUploader
 
Trajectory Control With MPC For A Robot Manipülatör Using ANN Model
Trajectory Control With MPC For A Robot Manipülatör Using  ANN ModelTrajectory Control With MPC For A Robot Manipülatör Using  ANN Model
Trajectory Control With MPC For A Robot Manipülatör Using ANN ModelIJMER
 
Tracy–Widom distribution based fault detection approach: Application to aircr...
Tracy–Widom distribution based fault detection approach: Application to aircr...Tracy–Widom distribution based fault detection approach: Application to aircr...
Tracy–Widom distribution based fault detection approach: Application to aircr...ISA Interchange
 
IRJET- Design and Fabrication of PLC and SCADA based Robotic Arm for Material...
IRJET- Design and Fabrication of PLC and SCADA based Robotic Arm for Material...IRJET- Design and Fabrication of PLC and SCADA based Robotic Arm for Material...
IRJET- Design and Fabrication of PLC and SCADA based Robotic Arm for Material...IRJET Journal
 
Integrating fault tolerant scheme with feedback control scheduling algorithm ...
Integrating fault tolerant scheme with feedback control scheduling algorithm ...Integrating fault tolerant scheme with feedback control scheduling algorithm ...
Integrating fault tolerant scheme with feedback control scheduling algorithm ...ijics
 
water resources
water resourceswater resources
water resourcesunliya
 
Cloud data management
Cloud data managementCloud data management
Cloud data managementambitlick
 
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...ijcisjournal
 
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...ijics
 
From Concepts to Implementation: Why I Missed My First Paper Submission Deadline
From Concepts to Implementation: Why I Missed My First Paper Submission DeadlineFrom Concepts to Implementation: Why I Missed My First Paper Submission Deadline
From Concepts to Implementation: Why I Missed My First Paper Submission DeadlineMiguel Velez
 
A Survey on the Common Network Traffic Sources Models
A Survey on the Common Network Traffic Sources ModelsA Survey on the Common Network Traffic Sources Models
A Survey on the Common Network Traffic Sources ModelsCSCJournals
 
Integrating Fault Tolerant Scheme With Feedback Control Scheduling Algorithm ...
Integrating Fault Tolerant Scheme With Feedback Control Scheduling Algorithm ...Integrating Fault Tolerant Scheme With Feedback Control Scheduling Algorithm ...
Integrating Fault Tolerant Scheme With Feedback Control Scheduling Algorithm ...ijics
 
IOT model to Unified Communication Events in SDN
IOT model to Unified Communication  Events in SDNIOT model to Unified Communication  Events in SDN
IOT model to Unified Communication Events in SDNChandrashekhar Rao
 
Co emulation of scan-chain based designs
Co emulation of scan-chain based designsCo emulation of scan-chain based designs
Co emulation of scan-chain based designsijcsit
 
Software Define Network
Software Define NetworkSoftware Define Network
Software Define NetworkSubith Babu
 
Model Validation and Control of an In-Wheel DC Motor Prototype for Hybrid El...
Model Validation and Control of an In-Wheel DC Motor  Prototype for Hybrid El...Model Validation and Control of an In-Wheel DC Motor  Prototype for Hybrid El...
Model Validation and Control of an In-Wheel DC Motor Prototype for Hybrid El...Scientific Review SR
 
The Role of Architectural Model Checking in Conducting Preliminary Safety Ass...
The Role of Architectural Model Checking in Conducting Preliminary Safety Ass...The Role of Architectural Model Checking in Conducting Preliminary Safety Ass...
The Role of Architectural Model Checking in Conducting Preliminary Safety Ass...Omar Jaradat
 

Similar to SE4SG 2013 : A Run-Time Verification Framework for Smart Grid Applications Implemented on Simulation (20)

Design of mechatronics systems
Design of mechatronics systemsDesign of mechatronics systems
Design of mechatronics systems
 
Towards Rapid Implementation of Adaptive Robotic Systems
Towards Rapid Implementation of Adaptive Robotic SystemsTowards Rapid Implementation of Adaptive Robotic Systems
Towards Rapid Implementation of Adaptive Robotic Systems
 
A web based network worm simulator
A web based network worm simulatorA web based network worm simulator
A web based network worm simulator
 
Trajectory Control With MPC For A Robot Manipülatör Using ANN Model
Trajectory Control With MPC For A Robot Manipülatör Using  ANN ModelTrajectory Control With MPC For A Robot Manipülatör Using  ANN Model
Trajectory Control With MPC For A Robot Manipülatör Using ANN Model
 
Tracy–Widom distribution based fault detection approach: Application to aircr...
Tracy–Widom distribution based fault detection approach: Application to aircr...Tracy–Widom distribution based fault detection approach: Application to aircr...
Tracy–Widom distribution based fault detection approach: Application to aircr...
 
IRJET- Design and Fabrication of PLC and SCADA based Robotic Arm for Material...
IRJET- Design and Fabrication of PLC and SCADA based Robotic Arm for Material...IRJET- Design and Fabrication of PLC and SCADA based Robotic Arm for Material...
IRJET- Design and Fabrication of PLC and SCADA based Robotic Arm for Material...
 
Integrating fault tolerant scheme with feedback control scheduling algorithm ...
Integrating fault tolerant scheme with feedback control scheduling algorithm ...Integrating fault tolerant scheme with feedback control scheduling algorithm ...
Integrating fault tolerant scheme with feedback control scheduling algorithm ...
 
water resources
water resourceswater resources
water resources
 
Cloud data management
Cloud data managementCloud data management
Cloud data management
 
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
 
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
 
From Concepts to Implementation: Why I Missed My First Paper Submission Deadline
From Concepts to Implementation: Why I Missed My First Paper Submission DeadlineFrom Concepts to Implementation: Why I Missed My First Paper Submission Deadline
From Concepts to Implementation: Why I Missed My First Paper Submission Deadline
 
A Survey on the Common Network Traffic Sources Models
A Survey on the Common Network Traffic Sources ModelsA Survey on the Common Network Traffic Sources Models
A Survey on the Common Network Traffic Sources Models
 
Integrating Fault Tolerant Scheme With Feedback Control Scheduling Algorithm ...
Integrating Fault Tolerant Scheme With Feedback Control Scheduling Algorithm ...Integrating Fault Tolerant Scheme With Feedback Control Scheduling Algorithm ...
Integrating Fault Tolerant Scheme With Feedback Control Scheduling Algorithm ...
 
IOT model to Unified Communication Events in SDN
IOT model to Unified Communication  Events in SDNIOT model to Unified Communication  Events in SDN
IOT model to Unified Communication Events in SDN
 
Co emulation of scan-chain based designs
Co emulation of scan-chain based designsCo emulation of scan-chain based designs
Co emulation of scan-chain based designs
 
Software Define Network
Software Define NetworkSoftware Define Network
Software Define Network
 
Model Validation and Control of an In-Wheel DC Motor Prototype for Hybrid El...
Model Validation and Control of an In-Wheel DC Motor  Prototype for Hybrid El...Model Validation and Control of an In-Wheel DC Motor  Prototype for Hybrid El...
Model Validation and Control of an In-Wheel DC Motor Prototype for Hybrid El...
 
JMS_Luo
JMS_LuoJMS_Luo
JMS_Luo
 
The Role of Architectural Model Checking in Conducting Preliminary Safety Ass...
The Role of Architectural Model Checking in Conducting Preliminary Safety Ass...The Role of Architectural Model Checking in Conducting Preliminary Safety Ass...
The Role of Architectural Model Checking in Conducting Preliminary Safety Ass...
 

More from Jenny Liu

A TALE of DATA PATTERN DISCOVERY IN PARALLEL
A TALE of DATA PATTERN DISCOVERY IN PARALLELA TALE of DATA PATTERN DISCOVERY IN PARALLEL
A TALE of DATA PATTERN DISCOVERY IN PARALLELJenny Liu
 
A Tale of Data Pattern Discovery in Parallel
A Tale of Data Pattern Discovery in ParallelA Tale of Data Pattern Discovery in Parallel
A Tale of Data Pattern Discovery in ParallelJenny Liu
 
Modeling Uncertainty For Middleware-based Streaming Power Grid Applications
Modeling Uncertainty For Middleware-based Streaming Power Grid ApplicationsModeling Uncertainty For Middleware-based Streaming Power Grid Applications
Modeling Uncertainty For Middleware-based Streaming Power Grid ApplicationsJenny Liu
 
SE4SG 2013 : Residential Electrical Demand Forecasting in Very Small Scale
SE4SG 2013 : Residential Electrical Demand Forecasting in  Very Small ScaleSE4SG 2013 : Residential Electrical Demand Forecasting in  Very Small Scale
SE4SG 2013 : Residential Electrical Demand Forecasting in Very Small ScaleJenny Liu
 
SE4SG 2013 : Towards a Bottom-up Development of Reference Architectures for S...
SE4SG 2013 : Towards a Bottom-up Development of Reference Architectures for S...SE4SG 2013 : Towards a Bottom-up Development of Reference Architectures for S...
SE4SG 2013 : Towards a Bottom-up Development of Reference Architectures for S...Jenny Liu
 
SE4SG 2013 : Towards a Constraint Based Approach for Self-Healing Smart Grids
SE4SG 2013 :  Towards a Constraint Based Approach for Self-Healing Smart GridsSE4SG 2013 :  Towards a Constraint Based Approach for Self-Healing Smart Grids
SE4SG 2013 : Towards a Constraint Based Approach for Self-Healing Smart GridsJenny Liu
 
SE4SG 2013 : MODAM: A MODular Agent-Based Modelling Framework
SE4SG 2013 : MODAM: A MODular Agent-Based Modelling Framework SE4SG 2013 : MODAM: A MODular Agent-Based Modelling Framework
SE4SG 2013 : MODAM: A MODular Agent-Based Modelling Framework Jenny Liu
 

More from Jenny Liu (7)

A TALE of DATA PATTERN DISCOVERY IN PARALLEL
A TALE of DATA PATTERN DISCOVERY IN PARALLELA TALE of DATA PATTERN DISCOVERY IN PARALLEL
A TALE of DATA PATTERN DISCOVERY IN PARALLEL
 
A Tale of Data Pattern Discovery in Parallel
A Tale of Data Pattern Discovery in ParallelA Tale of Data Pattern Discovery in Parallel
A Tale of Data Pattern Discovery in Parallel
 
Modeling Uncertainty For Middleware-based Streaming Power Grid Applications
Modeling Uncertainty For Middleware-based Streaming Power Grid ApplicationsModeling Uncertainty For Middleware-based Streaming Power Grid Applications
Modeling Uncertainty For Middleware-based Streaming Power Grid Applications
 
SE4SG 2013 : Residential Electrical Demand Forecasting in Very Small Scale
SE4SG 2013 : Residential Electrical Demand Forecasting in  Very Small ScaleSE4SG 2013 : Residential Electrical Demand Forecasting in  Very Small Scale
SE4SG 2013 : Residential Electrical Demand Forecasting in Very Small Scale
 
SE4SG 2013 : Towards a Bottom-up Development of Reference Architectures for S...
SE4SG 2013 : Towards a Bottom-up Development of Reference Architectures for S...SE4SG 2013 : Towards a Bottom-up Development of Reference Architectures for S...
SE4SG 2013 : Towards a Bottom-up Development of Reference Architectures for S...
 
SE4SG 2013 : Towards a Constraint Based Approach for Self-Healing Smart Grids
SE4SG 2013 :  Towards a Constraint Based Approach for Self-Healing Smart GridsSE4SG 2013 :  Towards a Constraint Based Approach for Self-Healing Smart Grids
SE4SG 2013 : Towards a Constraint Based Approach for Self-Healing Smart Grids
 
SE4SG 2013 : MODAM: A MODular Agent-Based Modelling Framework
SE4SG 2013 : MODAM: A MODular Agent-Based Modelling Framework SE4SG 2013 : MODAM: A MODular Agent-Based Modelling Framework
SE4SG 2013 : MODAM: A MODular Agent-Based Modelling Framework
 

Recently uploaded

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsAndrey Dotsenko
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsPrecisely
 

Recently uploaded (20)

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power Systems
 

SE4SG 2013 : A Run-Time Verification Framework for Smart Grid Applications Implemented on Simulation

  • 1. A Run-Time Verification Framework for Smart Grid Applications Implemented on Simulation Frameworks Selim Ciraci (PNNL) Hasan Sozer (Ozyegin University) Bedir Tekinerdogan (Bilkent University)
  • 2. Outline Motivation Simulation of Smart grid Applications Behavioral Constraints Example: Market Bid Application ConArch Framework Modeling Behavioral Specifications Generation of runtime verification automata Mapping Software Architecture to Implementation Runtime observers and verification Application of ConArch to Market Bid Application Conclusions and future work
  • 3. Simulation of Smart Grid Applications Smart gird combination of electrical grid with communication networks. Sensors gather information (e.g., supply/demand information). This information is carried to control centers with communication networks. Before deploying an application for the smart grid, it is important to analyze: How network delays/errors effect the application Whether the control logic of the application is correct
  • 4. Simulation of Smart Grid Applications Usually developers/ designers do not have access to large power grid and communication network to be used as a test-bed. Simulation systems are utilized to analyze the new smart grid applications.
  • 5. Behavioral Constraints and Smart Grid Applications Electrical grid is a mission critical infrastructure. Smart grid applications are subject to behavioral constraints. Most of these constraints are systematic Defined at the architecture deign level as sequences of interactions between components/connectors. To verify behavioral constraints: Software architecture should be evaluated Implementation should be tested
  • 6. Behavioral Constraints and Smart Grid Applications • Testing of Smart Grid applications is realized with simulators. • How can we be sure that the implementation follows the behavioral constraints? If implementation is incorrect, simulation results can be misleading. Implementation deviates from the planned architecture. Harder to find interactions in the source code.
  • 7. Example: Market Bid Application Used for calculating the cleared price of electricity. Controllers attached to the air conditioning units (AirCo). Before turning on, AirCo notifies the Controller. Controller bids a price for electricity with the power demand from the AirCo. AuctionHouse collects the bids from controllers. Then, sends a response message stating the price of electricity of the next interval. Depending on the price Controller arranges the settings of the AirCo. This is a behavioral constraint of the Market Bid Application. How can we verify this constraint for implementations with a simulator? With a simulator, the implementation deviates from planned architecture. Interaction BidRps() is implemented in method ControllerInterface.commit()
  • 8. ConArch - An Approach for Detecting Inconsistencies between Behavioral Models of the Software Architecture and the Code Utilizes architectural behavioral constraints for runtime verification. Converts behavioral constraints to formal specifications. Generates runtime monitors, that observe and record the execution of the software system. Online verification: runtime verifier evaluates whether the observed execution follows the behavioral constraint.
  • 9. ConArch and verification of Smart Grid Applications ConArch provides programmable architecture to source code mappings. Does not make assumptions, such as interaction A() is implemented as a method A(), about how the architecture is implemented. Users implement queries on the abstract-syntax tree (AST) to specify the methods, classes, and conditions that map to the architecture. Programmable mappings provide flexibility: Mapping can still be accomplished even though the implementation deviates from the planned architecture. Allows verification for implementations for smart grid applications implemented with simulator frameworks.
  • 10. Modeling Behavioral Constraints in ConArch UML sequence diagrams are used for modeling behavioral constraints. Interactions can be asynchronous, synchronous. Conditional, optional frames can be used model the control flow.
  • 11. Generation Formal Specification ConArch converts UML sequence diagrams to formal specifications as Finite State Machines. FSM explicitly shows each possible path of the control flow. Asynchronous interaction Bid(), Controller initiates the interactions then executes the return interaction bidSent() -> two paths in control flow
  • 12. Mapping interactions to the implementation Prolog is utilized for querying the AST. ConArch provides tools for converting C++ and Java to Prolog facts. Users implement queries (Prolog rules) over these facts. Facts representing Java AST. Prolog Query for that maps initiation of interaction Controller.Bid() to the call ControllerInterface::Bid() where ControllerInterface:: inboxCounter >0 Commit is a method required by the simulator framework, developers had to use this method to implement an interaction.
  • 13. Mapping interactions to the implementation ConArch provides a repository of Prolog rules for mapping interactions to implementations. With these rules common styles for implementing interactions with simulators can be mapped in a much easier way. E.g.: mapEventHandler(), mapTickHandler(), mapEventScheduling(), … Commit() is a tick handler method, instead of the query shown in previous slide we could use the rule mapTickHandler() from the repository.
  • 14. Runtime Observers and Verification Runtime monitors are aspects that intercept the execution when the control reaches a call/method that corresponds to an interaction. Intercept ControllerInterface:: commit() Send to runtime verifier that the method corresponding to interaction is Controller.Bid() is executed.
  • 15. Runtime Observers and Verification Runtime verifier receives the information about executing interactions from the monitors. It traces the FSM with these interactions and tests whether the FSM yields to an accept state. Current State of runtime verifier Incoming message from monitor: executes Controller.Bid() New state of runtime verifier
  • 16. Application of ConArch to Market Bid Application We used ConArch to verify the Market Bid Application implemented with GridLAB-D and ns-3 simulators. 9 classes in total. C++ to Prolog conversion completed 6mins. Mapping of 10 interactions completed 15seconds. 10 aspects are generated. 11seconds runtime overhead. Verification captured one violation of the behavioral constraint: Controllers were executing a Bid() interaction instead of a adjustThermostat () interaction. Caused due to improper handling of delays messages from the network. Problem confirmed by developers!
  • 17. Conclusions and Future work Flexible mapping is needed because the implementation can deviate from the planed architecture. For applications implemented with simulator frameworks deviation is unavoidable. ConArch can be utilized for verification of smart grid applications implemented with simulation frameworks. Future work: We plan to extend the repository for common mapping. Integrate ConArch to deployment phase, so it can be used when applications are deployed. Allows developers to capture misbehaving applications.