DRAKON Visual Language: Tutorial. Part 1

27,965 views

Published on

Getting started with DRAKON flowcharts

Published in: Education, Technology, Spiritual
1 Comment
7 Likes
Statistics
Notes
  • Thanks for the awesome slideshow! I set it to music! https://www.youtube.com/watch?v=i2_vlXi6TzM&feature=youtu.be
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
27,965
On SlideShare
0
From Embeds
0
Number of Embeds
21,245
Actions
Shares
0
Downloads
92
Comments
1
Likes
7
Embeds 0
No embeds

No notes for slide

DRAKON Visual Language: Tutorial. Part 1

  1. 1. DRAKON VisualLanguageTutorial. Part 1:How to draw DRAKON flowcharts
  2. 2. Types of DRAKON diagramsPrimitiveSilhouetteUsed for the most simplealgorithmsRecommended for allother algorithms
  3. 3. Primitive
  4. 4. What does a primitive consist of?
  5. 5. What does a primitive consist of?A vertical skewer
  6. 6. What does a primitive consist of?The header
  7. 7. What does a primitive consist of?The algorithm
  8. 8. What does a primitive consist of?The “End” icon
  9. 9. “Action” iconAn “Action” icon
  10. 10. “Action” iconan order to dosomething
  11. 11. The skewer must be vertical
  12. 12. Wrong!
  13. 13. Wrong again●Use lines instead of arrows●Arrows create visual noiseIn DRAKON,the next icon is always below
  14. 14. Even worse●It is not allowed to break the skewer
  15. 15. “Insertion” iconIt is a referenceto an algorithmthat is defined elsewhere
  16. 16. “Insertion” icon
  17. 17. “If” icon
  18. 18. “If” iconContains a questionthat can be answered“yes” or “no”
  19. 19. The happy path goes straightThe happy pathis the most successfuland desirable route
  20. 20. The unlucky scenario goes to the right
  21. 21. The further to the right,the worse it is
  22. 22. GoodBadWorst
  23. 23. WrongThe happy pathis broken
  24. 24. RightThe happy pathis straight
  25. 25. Visual noise is badToo many angles
  26. 26. Horizontal joiningThe problem is solved
  27. 27. Repetition is bad
  28. 28. Vertical joiningRemoves repetition
  29. 29. Line intersectionsare forbidden
  30. 30. Intersections kill readability
  31. 31. SilhouetteThe recommended type of diagrams
  32. 32. What can silhouette do?●It can cleanly split the diagram into logicalparts●It can represent a finite automaton (statemachine)●It helps get rid of line intersections in complexalgorithms
  33. 33. What does a silhouette consist of?
  34. 34. The header
  35. 35. The branches
  36. 36. What does a branch consist of?A header withthe branch name
  37. 37. What does a branch consist of?The algorithmof the branch
  38. 38. What does a branch consist of?The addressof the next branch
  39. 39. Silhouette answersthe three questions of the king:1. What is the name of the problem?2. How many parts does the problem have?3. What are the names of the parts?
  40. 40. 1. What is the name of the problem?
  41. 41. 2. How many problems does the problem have?
  42. 42. 3. What are the names of the parts?
  43. 43. The leftmost branch is run first
  44. 44. Then follow the other branches
  45. 45. The rightmost branch goes last
  46. 46. There can be only one“End” iconon the DRAKON diagram
  47. 47. The order of branches is defined in the “Address” icons
  48. 48. The branches should by sorted left-to-right
  49. 49. When is it allowed to go to the left?1. When some branches need to be repeated.2. When the diagram represents a finiteautomaton (state machine).
  50. 50. A branch can have several “Address” iconsThe algorithm of such branchdecides which branch to run next
  51. 51. A direct jump from one branch to another isforbidden
  52. 52. Icon “Select”Contains a question:●that cannot be answered “yes” or “no”●that can have several answers
  53. 53. Icon “Select”
  54. 54. How to arrange the answers?●Following the principle “The further to the right, theworse it is”or●Following the principle “The further to the right, thelarger it is”or●Following the principle “The further to the right, thehigher it is”or...The key thing is to sort the answers
  55. 55. The further to the right, the larger it is
  56. 56. Loops
  57. 57. Lift the weight while not tired
  58. 58. The body of this loopis run at least once
  59. 59. Hungry?If yes, theneat a hamburgerstart from thebeginningIf no, then leave
  60. 60. This loop is skipped if the condition is not met
  61. 61. The loop condition is inside the loop body
  62. 62. “For each” loop
  63. 63. There can be several exits from a loop
  64. 64. There can be only ONE ENTRANCEinto a loopWrong!A secondentrance isnot allowed
  65. 65. Silhouette loop: some branches are run several times
  66. 66. Silhouette loop: some branches are run several timesLoop branches are markedwith black triangles
  67. 67. “Select” loop
  68. 68. Stepan Mitkinstipan.mitkin@gmail.comThe diagrams on the slides were made withDRAKON Editorhttp://drakon-editor.sourceforge.net/June 2013End

×