Jump to content

PlantUML

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Spitfire19 (talk | contribs) at 14:00, 5 April 2017 (Applications that use PlantUML). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

PlantUML
Developer(s)Arnaud Roques[1]
Initial release17 April 2009 (2009-04-17)[2]
Stable release
8054 / 21 January 2017; 7 years ago (2017-01-21)
Repository
Written inJava
Operating systemLinux, OS X, Windows
TypeUML Modeling
LicenseGNU General Public License
Websiteplantuml.com

PlantUML is an open-source tool allowing users to create UML diagrams from a plain text language. The language of PlantUML is an example of a Application Specific Language.[3] It uses Graphviz software to lay out its diagrams. It has been used to allow blind students to work with UML.[4][5] PlantUML also helps blind software engineers to design and read UML diagrams.

Applications that use PlantUML

PlantUML.com is a web server that generates diagrams in the cloud. There are also various extensions or add-ons that incorporate PlantUML.

Text format to communicate UML at source code level

PlantUML uses well-formed and human-readable code to render the diagrams.

There are other text formats for UML modelling but PlantUML supports many diagram types and does not need an explicit layouting, though it is possible to tweak the diagrams if necessary.

Example

The source code for the class diagram shown on the right is as follows:

UML Class diagram showing an example of the Facade design pattern.
skinparam style strictuml
class Façade {
 doSomething()
}
Façade .> package1.Class1
Façade .> package2.Class2
Façade .> package3.Class3
Client1 .> Façade : doSomething()
Client2 .> Façade : doSomething()
note as N2
doSomething() {
  Class1 c1 = newClass1();
  Class2 c2 = newClass2();
  Class3 c3 = newClass3();
  c1.doStuff(c2)
  c3.setX(c1.getX());
  return c3.getY();
}
end note
Façade .. N2

See also

References

  1. ^ "PlantUML overview".
  2. ^ http://sourceforge.net/projects/plantuml/
  3. ^ Campagne, Fabien (June 16, 2014). The MPS Language Workbench, Vol. 1. CreateSpace Independent Publishing Platform. ISBN 9781497378650.
  4. ^ Luque, L.; Veriscimo, E.S.; Pereira, G.C.; Filgueiras, L.V.L. (2014). "Can We Work Together? On the Inclusion of Blind People in UML Model-Based Tasks". In P.M. Langdon; J. Lazar; A. Heylighen; et al. (eds.). Inclusive Designing Joining Usability, Accessibility, and Inclusion (Aufl. 2014 ed.). Cham: Springer International Publishing. ISBN 978-3-319-05095-9.
  5. ^ Müller, Karin (2012). "How to Make Unified Modeling Language Diagrams Accessible for Blind Students". In Klaus Miesenberger (ed.). Computers Helping People With Special Needs 13th International Conference, ICCHP 2012, Linz, Austria, July 11-13, 2012, Proceedings, Part I. Berlin [u.a.]: Springer-Verlag New York Inc. pp. 186–190. ISBN 978-3-642-31521-3.