multicore programming “ng” voor sioux / hti
TRANSCRIPT
![Page 1: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/1.jpg)
PlantUML040coders.nl 2020-02-20
Klaas van Gend
![Page 2: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/2.jpg)
Klaas van Gend
C++
![Page 3: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/3.jpg)
UML and software tools
![Page 4: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/4.jpg)
The Three Amigos
Grady BoochRational 1981-2008IBM “Generic” 2008-now
James RumbaughDEC early 60s-1968GE Research 1968-94(OMT)Rational 1994-2006Retired
Ivar JacobsonEricsson 1962-1995(Objectory 1987-1991/5)Rational 1995-2003Ivar Jacobson Intl 2003-now
![Page 5: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/5.jpg)
UML Predecessors
![Page 6: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/6.jpg)
UMLDiagram
Class Diagram
Component Diagram
Object Diagram
Activity Diagram
Use Case Diagram
Profile Diagram
Composite Structure Diagram
Deployment Diagram
Package Diagram
Interaction Diagram
State Machine Diagram
Sequence Diagram
Communication Diagram
Interaction Overview Diagram
Timing Diagram Notation: UML
Behaviour Diagram
Structure Diagram
![Page 7: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/7.jpg)
What UML is● A language to describe what elements in an
image mean● intended to provide a standard way
to visualize the design of a system
![Page 8: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/8.jpg)
What UML is not● A software analysis methodology● A software design methodology● A programming language● Free from dialects and heated debates
![Page 9: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/9.jpg)
UML False Promises● Design and code are interchangeable
– a.k.a. “reverse engineering”– a.k.a. “round-trip engineering”
● Easily generate your code from the design– Every MDD tool needs additional work/code– ‘Glue code’ tends to be painful
● Fool-proof– No, fools still make beautiful but bad designs
● Time saving
![Page 10: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/10.jpg)
A few visual UML tools
Rational RoseRational Rose RTRational Rose Modeling XDERational Software ArchitectRational Software Architect RTERational Rhapsody
ArgoUML
Visio
StarUML UmbrelloTogether
![Page 11: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/11.jpg)
PlantUML
![Page 12: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/12.jpg)
PlantUML Demo
● Turn simple text into UML diagrams
● Microsoft Visual Studio Code on Linux– with PlantUML plug-in– This Plug-in uses a web service for rendering
● Available stand-alone as jar file
![Page 13: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/13.jpg)
The Use Case
![Page 14: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/14.jpg)
![Page 15: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/15.jpg)
![Page 16: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/16.jpg)
![Page 17: Multicore Programming “NG” Voor Sioux / HTI](https://reader030.vdocument.in/reader030/viewer/2022032817/623f660cccde7847256f4fa9/html5/thumbnails/17.jpg)
Key take aways:
PlantUML is:● Quick Text-to-UML-Diagram tool
● Made for programmers; not for “powerpoint architects”
● Simple, versatile and “good enough”
● Text-based: store files in your repo!
● Available as plug-in for almost everything
● Just as annoying when it ‘won’t align properly’
https://040coders.nl/slides/ 2020-02-plantuml.pdf