SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Downloaden Sie, um offline zu lesen
DRAKON Visual
Language
Tutorial. Part 2:
Interaction with the outside world,
parallel algorithms and real time
The extended set of DRAKON icons
Shelf
Input
Output
Parallel process
Pause, Synchronizer
Timer
What can a “Shelf” icon do?
Put a value on the shelf
Send a command to the doer
Terminate the algorithm
Put a value on the shelf
●
Assign a new value to the property
●
Put a new value in the variable
●
Set or clear a flag
Put a value on the shelf
Place the product of width and
height in the “area” variable
Set the “Power ON” flag
Shelf: send a command
to the doer
Shelf: terminate the algorithm
Example:
●
“Make a new version” algorithm invokes
“Development task” algorithm
●
“Development task” algorithm invokes
“Analyze dependencies” algorithm
●
This “Shelf” icon is executed inside “Analyze
dependencies” algorithm
What happens next?
●
“Analyze dependencies” terminates
●
“Development task” terminates
●
The control is returned to “Make a new
version”
Interaction with the outside world
“Input” icon
“Output” icon
“Parallel process” icon
Input Output Parallel process
A keyword or a key phrase
The upper floor
Input Output Parallel process
The details
The lower floor
Input Output Parallel process
What does “Input” icon do?
●
Receives information from external senders
●
Gets messages from a parallel process
●
Performs data input into the computer:
– Receives data from the user via keyboard and
mouse
– Reads data from disk
– Receives data from the network
What does “Output” icon do?
●
Sends information to external recipients
●
Sends messages to a parallel process
●
Performs data output from the computer :
– Shows data on the screen
– Writes data to disk
– Sends data over the network
An example with “Input” and “Output”
What is the difference between “Shelf” and “Output”?
Assigns a value to an
internal variable
Shelf
Gives an order to an
internal doer
Sends a message to an
external process
Output
Sends information to an
external recipient
The commands that control parallel
processes
Start Starts a parallel process
Stop Stops the parallel process forever
Suspend Suspends the parallel process
Resume Resumes the suspended process
Controlling a parallel process
Commands sent to a parallel process
do not suspend the main process
Main process
Parallel process
Start Stop
Internal parallel processes
This double horizontal line
starts a parallel skewer
Internal parallel processes
The parallel skewer executes
simultaneously with the main
skewer
Internal parallel processes
This horizontal line stops the
parallel skewer
Wrong! The main skewer must not be broken
The following actions
can be done in any order
after the field of
operations is prepared:
● Extend electric power
line
● Purchase wires
● Install windows
● Finish roof
● Purchase water pipes
The assembling of the
electric panel cannot be
started before the
installing of windows and
finishing the roof are
complete.
A complex parallel algorithm
Adds a delay between two operators
Pause
Timer “T” starts
Timer and synchronizer
This operator executes when the
specified time has passed since
the start of timer “T”.
(0.3 of period of revolution of
crankshaft)
Timer and synchronizer
What is the difference between
“Pause” and “Synchronizer”?
Runs the next operator
after some time has passed
since the previous operator
Pause
No need for a timer
Runs the operator after
some time has passed
since the timer start
Synchronizer
The timer must be started
“Wait” loop
A “Wait” loop sleeps
between iterations
Stepan Mitkin
stipan.mitkin@gmail.com
The diagrams on the slides were made with
DRAKON Editor
http://drakon-editor.sourceforge.net/
June 2013
End

Weitere ähnliche Inhalte

Was ist angesagt?

TDD in the Web with Python and Django
TDD in the Web with Python and DjangoTDD in the Web with Python and Django
TDD in the Web with Python and DjangoCarlos Ble
 
JavaScript Metaprogramming with ES 2015 Proxy
JavaScript Metaprogramming with ES 2015 ProxyJavaScript Metaprogramming with ES 2015 Proxy
JavaScript Metaprogramming with ES 2015 ProxyAlexandr Skachkov
 
Shift-left SRE: Self-healing on OpenShift with Ansible
Shift-left SRE: Self-healing on OpenShift with AnsibleShift-left SRE: Self-healing on OpenShift with Ansible
Shift-left SRE: Self-healing on OpenShift with AnsibleJürgen Etzlstorfer
 
RxSwift for Beginners - how to avoid a headache of reactive programming
RxSwift for Beginners - how to avoid a headache of reactive programmingRxSwift for Beginners - how to avoid a headache of reactive programming
RxSwift for Beginners - how to avoid a headache of reactive programmingMaciej Kołek
 
How to build your own auto-remediation workflow - Ansible Meetup Munich
How to build your own auto-remediation workflow - Ansible Meetup MunichHow to build your own auto-remediation workflow - Ansible Meetup Munich
How to build your own auto-remediation workflow - Ansible Meetup MunichJürgen Etzlstorfer
 
Async CTP 3 Presentation for MUGH 2012
Async CTP 3 Presentation for MUGH 2012Async CTP 3 Presentation for MUGH 2012
Async CTP 3 Presentation for MUGH 2012Sri Kanth
 
Self-healing Applications with Ansible
Self-healing Applications with AnsibleSelf-healing Applications with Ansible
Self-healing Applications with AnsibleJürgen Etzlstorfer
 
A framework for self-healing applications – the path to enable auto-remediation
A framework for self-healing applications – the path to enable auto-remediationA framework for self-healing applications – the path to enable auto-remediation
A framework for self-healing applications – the path to enable auto-remediationJürgen Etzlstorfer
 
TuleapCon2017 -Automating Jenkins build with Tuleap trackers
TuleapCon2017 -Automating Jenkins build with Tuleap trackersTuleapCon2017 -Automating Jenkins build with Tuleap trackers
TuleapCon2017 -Automating Jenkins build with Tuleap trackersTuleap
 
Load Testing using Continuous Integration tools
Load Testing using Continuous Integration toolsLoad Testing using Continuous Integration tools
Load Testing using Continuous Integration toolsRick Pitts
 
Test Pyramid vs Roi
Test Pyramid vs Roi Test Pyramid vs Roi
Test Pyramid vs Roi COMAQA.BY
 
Client-Server-Kommunikation mit dem Command Pattern
Client-Server-Kommunikation mit dem Command PatternClient-Server-Kommunikation mit dem Command Pattern
Client-Server-Kommunikation mit dem Command Patternpgt technology scouting GmbH
 
A Whale and an Elephant, when PHP meets docker
A Whale and an Elephant, when PHP meets dockerA Whale and an Elephant, when PHP meets docker
A Whale and an Elephant, when PHP meets docker🤓 Steve McDougall
 
Batchable vs @future vs Queueable
Batchable vs @future vs QueueableBatchable vs @future vs Queueable
Batchable vs @future vs QueueableBoris Bachovski
 
WordPress Development: Tracking Your Code With Version Control
WordPress Development: Tracking Your Code With Version ControlWordPress Development: Tracking Your Code With Version Control
WordPress Development: Tracking Your Code With Version ControlSterling Hamilton
 

Was ist angesagt? (20)

TDD in the Web with Python and Django
TDD in the Web with Python and DjangoTDD in the Web with Python and Django
TDD in the Web with Python and Django
 
TDD & VIPER
TDD & VIPERTDD & VIPER
TDD & VIPER
 
Asynchronous apex
Asynchronous apexAsynchronous apex
Asynchronous apex
 
JavaScript Metaprogramming with ES 2015 Proxy
JavaScript Metaprogramming with ES 2015 ProxyJavaScript Metaprogramming with ES 2015 Proxy
JavaScript Metaprogramming with ES 2015 Proxy
 
Shift-left SRE: Self-healing on OpenShift with Ansible
Shift-left SRE: Self-healing on OpenShift with AnsibleShift-left SRE: Self-healing on OpenShift with Ansible
Shift-left SRE: Self-healing on OpenShift with Ansible
 
Tdd
TddTdd
Tdd
 
RxSwift for Beginners - how to avoid a headache of reactive programming
RxSwift for Beginners - how to avoid a headache of reactive programmingRxSwift for Beginners - how to avoid a headache of reactive programming
RxSwift for Beginners - how to avoid a headache of reactive programming
 
How to build your own auto-remediation workflow - Ansible Meetup Munich
How to build your own auto-remediation workflow - Ansible Meetup MunichHow to build your own auto-remediation workflow - Ansible Meetup Munich
How to build your own auto-remediation workflow - Ansible Meetup Munich
 
Debugging Tips and Tricks
Debugging Tips and TricksDebugging Tips and Tricks
Debugging Tips and Tricks
 
Async CTP 3 Presentation for MUGH 2012
Async CTP 3 Presentation for MUGH 2012Async CTP 3 Presentation for MUGH 2012
Async CTP 3 Presentation for MUGH 2012
 
Self-healing Applications with Ansible
Self-healing Applications with AnsibleSelf-healing Applications with Ansible
Self-healing Applications with Ansible
 
A framework for self-healing applications – the path to enable auto-remediation
A framework for self-healing applications – the path to enable auto-remediationA framework for self-healing applications – the path to enable auto-remediation
A framework for self-healing applications – the path to enable auto-remediation
 
TuleapCon2017 -Automating Jenkins build with Tuleap trackers
TuleapCon2017 -Automating Jenkins build with Tuleap trackersTuleapCon2017 -Automating Jenkins build with Tuleap trackers
TuleapCon2017 -Automating Jenkins build with Tuleap trackers
 
Load Testing using Continuous Integration tools
Load Testing using Continuous Integration toolsLoad Testing using Continuous Integration tools
Load Testing using Continuous Integration tools
 
Test Pyramid vs Roi
Test Pyramid vs Roi Test Pyramid vs Roi
Test Pyramid vs Roi
 
React 101
React 101React 101
React 101
 
Client-Server-Kommunikation mit dem Command Pattern
Client-Server-Kommunikation mit dem Command PatternClient-Server-Kommunikation mit dem Command Pattern
Client-Server-Kommunikation mit dem Command Pattern
 
A Whale and an Elephant, when PHP meets docker
A Whale and an Elephant, when PHP meets dockerA Whale and an Elephant, when PHP meets docker
A Whale and an Elephant, when PHP meets docker
 
Batchable vs @future vs Queueable
Batchable vs @future vs QueueableBatchable vs @future vs Queueable
Batchable vs @future vs Queueable
 
WordPress Development: Tracking Your Code With Version Control
WordPress Development: Tracking Your Code With Version ControlWordPress Development: Tracking Your Code With Version Control
WordPress Development: Tracking Your Code With Version Control
 

Ähnlich wie DRAKON Visual Language: Tutorial. Part 2

Angular 16 – the rise of Signals
Angular 16 – the rise of SignalsAngular 16 – the rise of Signals
Angular 16 – the rise of SignalsCoding Academy
 
matlab basics and Simulink for beginners
matlab basics and Simulink for beginnersmatlab basics and Simulink for beginners
matlab basics and Simulink for beginnersA Rajendran Jps
 
6 weeks summer training in labview,jalandhar
6 weeks summer training in labview,jalandhar6 weeks summer training in labview,jalandhar
6 weeks summer training in labview,jalandhardeepikakaler1
 
6months industrial training in labview, ludhiana
6months industrial training in labview, ludhiana6months industrial training in labview, ludhiana
6months industrial training in labview, ludhianadeepikakaler1
 
6 weeks summer training in labview,ludhiana
6 weeks summer training in labview,ludhiana6 weeks summer training in labview,ludhiana
6 weeks summer training in labview,ludhianadeepikakaler1
 
6months industrial training in labview, jalandhar
6months industrial training in labview, jalandhar6months industrial training in labview, jalandhar
6months industrial training in labview, jalandhardeepikakaler1
 
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...Flink Forward
 
Elevator Control System using Verilog
Elevator Control System using VerilogElevator Control System using Verilog
Elevator Control System using VerilogVijayMaheshwari12
 
Stress Testing at Twitter: a tale of New Year Eves
Stress Testing at Twitter: a tale of New Year EvesStress Testing at Twitter: a tale of New Year Eves
Stress Testing at Twitter: a tale of New Year EvesHerval Freire
 
Shipping Code like a keptn: Continuous Delivery & Automated Operations on k8s
Shipping Code like a keptn: Continuous Delivery & Automated Operations on k8sShipping Code like a keptn: Continuous Delivery & Automated Operations on k8s
Shipping Code like a keptn: Continuous Delivery & Automated Operations on k8sAndreas Grabner
 
Automating EVA Workflows with AWS Step Functions
Automating EVA Workflows with AWS Step FunctionsAutomating EVA Workflows with AWS Step Functions
Automating EVA Workflows with AWS Step FunctionsChris Shenton
 
Web Performance & Latest in React
Web Performance & Latest in ReactWeb Performance & Latest in React
Web Performance & Latest in ReactTalentica Software
 
Continuous Performance Testing
Continuous Performance TestingContinuous Performance Testing
Continuous Performance TestingC4Media
 
Journey into Reactive Streams and Akka Streams
Journey into Reactive Streams and Akka StreamsJourney into Reactive Streams and Akka Streams
Journey into Reactive Streams and Akka StreamsKevin Webber
 
Bryan guner professional portfolio
Bryan guner professional portfolioBryan guner professional portfolio
Bryan guner professional portfolioBryan Guner
 
Taming event-driven software via formal verification
Taming event-driven software via formal verificationTaming event-driven software via formal verification
Taming event-driven software via formal verificationAdaCore
 

Ähnlich wie DRAKON Visual Language: Tutorial. Part 2 (20)

Angular 16 – the rise of Signals
Angular 16 – the rise of SignalsAngular 16 – the rise of Signals
Angular 16 – the rise of Signals
 
matlab basics and Simulink for beginners
matlab basics and Simulink for beginnersmatlab basics and Simulink for beginners
matlab basics and Simulink for beginners
 
6 weeks summer training in labview,jalandhar
6 weeks summer training in labview,jalandhar6 weeks summer training in labview,jalandhar
6 weeks summer training in labview,jalandhar
 
6months industrial training in labview, ludhiana
6months industrial training in labview, ludhiana6months industrial training in labview, ludhiana
6months industrial training in labview, ludhiana
 
6 weeks summer training in labview,ludhiana
6 weeks summer training in labview,ludhiana6 weeks summer training in labview,ludhiana
6 weeks summer training in labview,ludhiana
 
6months industrial training in labview, jalandhar
6months industrial training in labview, jalandhar6months industrial training in labview, jalandhar
6months industrial training in labview, jalandhar
 
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
 
Ecad final
Ecad finalEcad final
Ecad final
 
Elevator Control System using Verilog
Elevator Control System using VerilogElevator Control System using Verilog
Elevator Control System using Verilog
 
Stress Testing at Twitter: a tale of New Year Eves
Stress Testing at Twitter: a tale of New Year EvesStress Testing at Twitter: a tale of New Year Eves
Stress Testing at Twitter: a tale of New Year Eves
 
Shipping Code like a keptn: Continuous Delivery & Automated Operations on k8s
Shipping Code like a keptn: Continuous Delivery & Automated Operations on k8sShipping Code like a keptn: Continuous Delivery & Automated Operations on k8s
Shipping Code like a keptn: Continuous Delivery & Automated Operations on k8s
 
Automating EVA Workflows with AWS Step Functions
Automating EVA Workflows with AWS Step FunctionsAutomating EVA Workflows with AWS Step Functions
Automating EVA Workflows with AWS Step Functions
 
PID - Copy
PID - CopyPID - Copy
PID - Copy
 
Web Performance & Latest in React
Web Performance & Latest in ReactWeb Performance & Latest in React
Web Performance & Latest in React
 
Continuous Performance Testing
Continuous Performance TestingContinuous Performance Testing
Continuous Performance Testing
 
Journey into Reactive Streams and Akka Streams
Journey into Reactive Streams and Akka StreamsJourney into Reactive Streams and Akka Streams
Journey into Reactive Streams and Akka Streams
 
Wmc lab (1)
Wmc lab (1)Wmc lab (1)
Wmc lab (1)
 
Bryan guner professional portfolio
Bryan guner professional portfolioBryan guner professional portfolio
Bryan guner professional portfolio
 
Taming event-driven software via formal verification
Taming event-driven software via formal verificationTaming event-driven software via formal verification
Taming event-driven software via formal verification
 
Vt training plc_1
Vt training plc_1Vt training plc_1
Vt training plc_1
 

Kürzlich hochgeladen

TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...Nguyen Thanh Tu Collection
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...Poonam Aher Patil
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxDenish Jangid
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxVishalSingh1417
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxVishalSingh1417
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxheathfieldcps1
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxnegromaestrong
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.MaryamAhmad92
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17Celine George
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptxMaritesTamaniVerdade
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxAreebaZafar22
 
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural ResourcesEnergy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural ResourcesShubhangi Sonawane
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin ClassesCeline George
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDThiyagu K
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 

Kürzlich hochgeladen (20)

TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural ResourcesEnergy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 

DRAKON Visual Language: Tutorial. Part 2

  • 1. DRAKON Visual Language Tutorial. Part 2: Interaction with the outside world, parallel algorithms and real time
  • 2. The extended set of DRAKON icons Shelf Input Output Parallel process Pause, Synchronizer Timer
  • 3. What can a “Shelf” icon do? Put a value on the shelf Send a command to the doer Terminate the algorithm
  • 4. Put a value on the shelf ● Assign a new value to the property ● Put a new value in the variable ● Set or clear a flag
  • 5. Put a value on the shelf Place the product of width and height in the “area” variable Set the “Power ON” flag
  • 6. Shelf: send a command to the doer
  • 7. Shelf: terminate the algorithm Example: ● “Make a new version” algorithm invokes “Development task” algorithm ● “Development task” algorithm invokes “Analyze dependencies” algorithm ● This “Shelf” icon is executed inside “Analyze dependencies” algorithm What happens next? ● “Analyze dependencies” terminates ● “Development task” terminates ● The control is returned to “Make a new version”
  • 8. Interaction with the outside world “Input” icon “Output” icon “Parallel process” icon
  • 10. A keyword or a key phrase The upper floor Input Output Parallel process
  • 11. The details The lower floor Input Output Parallel process
  • 12. What does “Input” icon do? ● Receives information from external senders ● Gets messages from a parallel process ● Performs data input into the computer: – Receives data from the user via keyboard and mouse – Reads data from disk – Receives data from the network
  • 13. What does “Output” icon do? ● Sends information to external recipients ● Sends messages to a parallel process ● Performs data output from the computer : – Shows data on the screen – Writes data to disk – Sends data over the network
  • 14. An example with “Input” and “Output”
  • 15. What is the difference between “Shelf” and “Output”? Assigns a value to an internal variable Shelf Gives an order to an internal doer Sends a message to an external process Output Sends information to an external recipient
  • 16. The commands that control parallel processes Start Starts a parallel process Stop Stops the parallel process forever Suspend Suspends the parallel process Resume Resumes the suspended process
  • 18. Commands sent to a parallel process do not suspend the main process Main process Parallel process Start Stop
  • 19. Internal parallel processes This double horizontal line starts a parallel skewer
  • 20. Internal parallel processes The parallel skewer executes simultaneously with the main skewer
  • 21. Internal parallel processes This horizontal line stops the parallel skewer
  • 22. Wrong! The main skewer must not be broken
  • 23. The following actions can be done in any order after the field of operations is prepared: ● Extend electric power line ● Purchase wires ● Install windows ● Finish roof ● Purchase water pipes The assembling of the electric panel cannot be started before the installing of windows and finishing the roof are complete. A complex parallel algorithm
  • 24. Adds a delay between two operators Pause
  • 25. Timer “T” starts Timer and synchronizer
  • 26. This operator executes when the specified time has passed since the start of timer “T”. (0.3 of period of revolution of crankshaft) Timer and synchronizer
  • 27. What is the difference between “Pause” and “Synchronizer”? Runs the next operator after some time has passed since the previous operator Pause No need for a timer Runs the operator after some time has passed since the timer start Synchronizer The timer must be started
  • 28. “Wait” loop A “Wait” loop sleeps between iterations
  • 29. Stepan Mitkin stipan.mitkin@gmail.com The diagrams on the slides were made with DRAKON Editor http://drakon-editor.sourceforge.net/ June 2013 End