Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rocher/AdaML
Ada-tailored UML Modeling Language
https://github.com/rocher/AdaML
Last synced: about 2 months ago
JSON representation
Ada-tailored UML Modeling Language
- Host: GitHub
- URL: https://github.com/rocher/AdaML
- Owner: rocher
- License: gpl-3.0
- Created: 2019-07-07T08:03:09.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-05-14T20:49:18.000Z (over 1 year ago)
- Last Synced: 2024-07-31T20:36:48.721Z (5 months ago)
- Homepage:
- Size: 1.46 MB
- Stars: 9
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
- awesome-ada - ada-ml - Ada-tailored UML Modeling Language. (Tools / UML)
README
# Quick Introduction
### AdaML Diagram
This AdaML diagram describes AdaML itself, including relationships between
PlatUML, UML and Ada *packages*. This diagram has been generated, in turn, with
AdaML. See below the AdaML source code.
AdaML Source Code — click to expand —
!include https://raw.github.com/rocher/AdaML/release/0.1.2/AdaML.puml
scale 600 widthpackage("AdaML")
package("PlantUML")
package("Ada")
package("UML")owns("AdaML", "PlantUML")
depends("AdaML", "Ada", "tailored")
depends("AdaML", "UML", "draws")note("AdaML draws Ada-tailored\nUML diagrams based on\nPlantUML")
left_right("PlantUML", "UML")
left_right("UML", "Ada")### Doc
For more information and examples, download
[AdaML.pdf](https://raw.github.com/rocher/AdaML/release/0.1.2/doc/AdaML.pdf) or
[read online](https://github.com/rocher/AdaML/blob/release/0.1.2/doc/AdaML.pdf)
in GitHub.# Introduction
### What is AdaML?
- UML tailored for Ada 2012 programming language
- A modeling language to draw UML diagrams, implemented in PlantUML
- An easy way to learn Ada through the use of UML and OOP concepts### Features
- UML tailored to use and show particular Ada language characteristics
- Coherent set of functions to design software components for Ada
- Generates high quality drawings (ps, eps) easy to embedded in other docs
- Easy to learn by example, both AdaML and Ada language### What is /not/ AdaML?
- A model-based tool to generate Ada code
- A reverse engineering tool to draw UML diagrams from Ada code
- An interactive UML modeling or drawing tool# Local Usage
AdaML must be used locally to get quality graphics. You can generate diagrams in
`eps` format that can be embedded in LaTeX docs.### Requirements
- [PlantUML](https://plantuml.com) installed and working in your system
- The AdaML files, check [AdaML](https://github.com/rocher/AdaML) installation
instructions
- Your favorite text editor, preferably with PlantUML support (e.g. Emacs)
- Check the list of [supported editors](http://plantuml.com/running)
- For better visualization and integration with LaTeX, [computer
modern](https://www.fontsquirrel.com/fonts/computer-modern) fonts# Online Usage
### Online Version - Quick Start
- Open [PlantUML Previewer](http://sujoyu.github.io/plantuml-previewer) or
[PlantText](https://www.planttext.com/) editor
- Remove default lines and paste the following code:```
!include https://raw.github.com/rocher/AdaML/release/0.1.2/AdaML.puml
scale 300 widthbegin_type("Pan_Dimensional")
procedure("Ask_The_Question", "in out Natural")
end()begin_package("Deep_Thought")
function("Answer_The_Question", "", "Natural")
private()
variable("The_Answer", "Natural", 42)
end()depends("Pan_Dimensional", "Deep_Thought", "ask >")
```### Embed Diagrams in GitHub
This is an example of the AdaML documentation:
- Check the [raw version](https://raw.github.com/rocher/AdaML/develop/README.md)
of this `README.md` file to see the image link used (plus how to easily center
images in GitHub)
- The AdaML source code can be found in GitHub:
[deep-thought-02.aml](https://raw.github.com/rocher/AdaML/develop/diagram/deep-thought-02.aml)# ChangeLog
### Release 0.1.2+ Adapt to new PlantUML interface
### Release 0.1.1
+ Scaled images of `REAME.md` file
+ AdaML file extension changed to `*.aml`Older Releases — click to expand —
### Release 0.1.0
+ First public release