Skip to content
Umple: Model-Oriented Programming - embed models in code and vice versa and generate complete systems
Java HTML JavaScript GAP PHP Ruby Other
Branch: master
Clone or download

Latest commit

TimLethbridge Merge pull request #1548 from umple/issue#1521
fixes Issue#1521 Allow aspects to be top-level entities
Latest commit 142c7a0 Jun 2, 2020

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Create FUNDING.yml May 20, 2020
ExternalTextEditorPlugins Update ReadMe.txt Nov 3, 2018
UmpleEditorAndCompiler Updating the feature project which is used as source in the update site Jan 21, 2012
UmpleParser mixset is still not working May 25, 2020
UmpleTToJunit [Test Generation] Major Test template refactoring and upgrading Junit… Mar 16, 2020
UmpleTToPhpUnit [TestGeneration] Adding the following updates: Mar 16, 2020
UmpleTToRubyUnit [TestGeneration] Adding the following updates: Mar 16, 2020
UmpleToJava fix merge Feb 13, 2020
UmpleToPhp added checck for duplicate names in 1-1 associations with unique attr… Jul 24, 2019
UmpleToRTCpp refactoring callsites of refactored associations Mar 23, 2018
UmpleToRuby modified templates and test files for ruby Jun 3, 2019
UmpleToSDL Updating some ReadMe files Dec 20, 2013
UmpleToSql Release 1.24.0 - final move from Jet to UmpleTL Mar 22, 2016
UmpleToTemplate Cleanup of unneeded files and fixing documentation Mar 22, 2016
UmpleToTest [TestGeneration] Updating tests for TestGenerator and test templates Mar 16, 2020
UmpleUIGenerator latest updates to UIGU. see my September 2012 log for a description Sep 7, 2012
UmpleUIJSFProvider latest updates to UIGU. see my September 2012 log for a description Sep 7, 2012
UmpleUIModel/src/cruise git-svn-id: http://umple.googlecode.com/svn/trunk@373 6ebf9d09-8eb1-0… May 2, 2011
UmpleUIResources git-svn-id: http://umple.googlecode.com/svn/trunk@398 6ebf9d09-8eb1-0… May 8, 2011
UmpleUpdateSite The update site ready for easy updates Jan 21, 2012
Umplificator/UmplifiedProjects Cleanup of unneeded files and fixing documentation Mar 22, 2016
build [TestGeneration] user manual for generic testing in Umple Test Language Mar 17, 2020
cruise.umple.eclipse [ci skip] Initial fix for issue 1341 Jul 19, 2018
cruise.umple.mutation [TestGeneration] adding several updates to the Umple test language wi… Mar 16, 2020
cruise.umple.nebula Composite Structure Sep 5, 2017
cruise.umple.test-parser [Test Generation] Major Test template refactoring and upgrading Junit… Mar 16, 2020
cruise.umple.validator First commit Sep 18, 2018
cruise.umple.xtext.ui Refactor build system to pull all binary dependencies remotely, inclu… Sep 2, 2015
cruise.umple.xtext Refactor build system to pull all binary dependencies remotely, inclu… Sep 2, 2015
cruise.umple Merge pull request #1548 from umple/issue#1521 Jun 2, 2020
cruise.umplificator.eclipse Refactor build system to pull all binary dependencies remotely, inclu… Sep 2, 2015
cruise.umplificator fixes #1492 crash in guards Sep 10, 2019
dev-tools [ci skip] Making dev tools work with multiple clones Nov 2, 2018
dist One .gitignore to rule them all Sep 12, 2015
examples Refactor build system to pull all binary dependencies remotely, inclu… Sep 2, 2015
experiments [mgarzon_thesis] moving experiment files to my own repository May 18, 2015
externalexamples Update readme.txt Mar 16, 2017
lib Refactor build system to pull all binary dependencies remotely, inclu… Sep 2, 2015
org.cruise.umple.eclipse.plugin.feature text highlighting was added to the plugin. Jul 9, 2016
org.cruise.umple.eclipse.plugin.update.site text highlighting was added to the plugin. Jul 9, 2016
org.cruise.umple.eclipse.plugin a modification for calling contentassistant was added. Jul 9, 2016
sandbox Refactor build system to pull all binary dependencies remotely, inclu… Sep 2, 2015
testbed improved test logic for sorted serializable associations Jun 29, 2019
testbed_php Fixes #1456 fixed the remaining php tests, no fails, 18 exceptions th… Jun 9, 2019
testbed_ruby Commented out extra code to remove a compiler warning for compileRuby… Sep 24, 2016
travis Remove "retapping" of cask in osx dependencies Jan 28, 2016
umpleonline Fixes #1545 gv download from state machine May 28, 2020
umplewww [ci skip] load correct javadoc May 14, 2020
umplificatoronline [umplificatoronline] first commit for the umplificator online. Jan 7, 2015
wiki-resources/eclipse [ci skip] Adding ci skip message, renaming to make purpose of image c… Jan 16, 2017
.gitattributes Adding a file .gitattributes telling git to account for .ump files as… Jan 3, 2016
.gitignore show methods ever run on umpleonline and log.php Jul 11, 2019
.travis.yml Further tweaking build Oct 24, 2019
CODE_OF_CONDUCT.md Create Code of Conduct [ci skip] Nov 14, 2017
CONTRIBUTING.md Update CONTRIBUTING.md Feb 1, 2017
GOVERNANCE.md Create GOVERNANCE.md Oct 5, 2016
LICENSE.md Adding Firas to license Mar 16, 2020
README.md [TestGeneration] updating user manual for testing contents Mar 17, 2020
appveyor.yml Upgrading php version in Appveyor Feb 3, 2020

README.md

Umple Modelling Language

Build Status

OS Linux OSX Windows
Status Travis-CI Build Status Travis-CI Build Status Windows Build status

Description

This is the main project for various Umple subprojects and components.

Umple is a model-oriented programming technology, allowing developers to embed modelling concepts (e.g. UML associations, state machines), patterns, generation templates, and other abstractions in traditional code, and vice versa. It generates high quality code for Java, C++ and PhP, as well as diagrams, metrics and many other artifacts. It can be embeded in the above languages as well as embed them.

The project homepage is located at http://umple.org/

There are a large number of scientific papers about Umple listed at: http://publications.umple.org

Development Process

Umple is developed in itself, guaranteeing robustness; the most recent version of the compiler must be used to compile itself. See the wiki for development setup: http://devsetup.umple.org

Development follows a model-driven, test-driven, agile, continuous-integration process. Umple is hosted currently on Github at http://code.umple.org. It was first released in 2007. The master was on Google Code from 2011 to mid 2015 and moved to Github in 2015.

Umple has been largely developed as a research project at the University of Ottawa, Canada, by numerous PhD and masters students. Many undergraduates from across Canada and the USA have also contributed through the UCOSP program. See the license file for the list of contributors. http://license.umple.org

Installation and Downloading

Umple does not need necessarily to be downloaded, the following allow you to run it directly in any web browser:

You can download the java jar for command-line use, or the Eclipse plugin:

  • Download page: http://dl.umple.org - Links to the latest official release and continuous builds (command-line, Eclipse, Docker)

To run locally on your machine, Umple needs Java (versions 8-13) installed. It runs on Mac, Linux and Windows.

Usage

Umple is a programming and modeling language with a rich syntax. Full documentation with many examples can be found at

Other Key links

Umple is continuously tested and built at the University of Ottawa using CruiseControl; see http://cc.umple.org . It is also built on Travis CI (http://travis.umple.org/) and Appveyor (https://appveyor.com/).

Contributing

License

Umple is licensed under the MIT license. See http://license.umple.org

Credits

All developers of Umple are listed in the license file at http://license.umple.org

Financial support has been received from NSERC and the Ontario Research Fund. IBM supported early development of Umple. Google and Facebook supported student travel during Umple's development.

Contents of the directories

The umple project is split into many smaller subprojects; the folder hierarchy is explained below to better describe the structure.

  • build/

    • Ant build scripts and related information including user manual raw data
  • cruise.umple/ Umple compiler

    • See its own ReadMe.txt for further details
    • See also UmpleTo* below for additional compiler components
  • cruise.umple.eclipse/, cruise.umple.xtext.ui/ Eclipse plugins

  • cruise.umplificator Converting outside code to Umple

    • cruise.umple.validator Validates umple when umplifying
  • cruise.umple.nebula Infrastructure used for real-time C++

  • dev-tools Tooling for Umple developers

  • dist Build produced items, only available after building

    • libs/ Managed build dependencies that umple.jar require to run*
    • cruise.umple/reference User manual
    • qa/ Test reports
    • umple.jar and umple.VERSION.jar Current command-line Compiler
    • umpledocs.VERSION.jar User manual generator
    • umplestats.VERSION.jar Statistics generation
    • umplesync.VERSION.jar UmpleOnline tool to to synchronize graphical form
    • umplerun.VERSION.jar tool to drive input to an umple program
    • vml.VERSION.jar * Extension for variability modeling*
    • umple.unit-test.jar Test Language Compiler
    • umple.mutation.jar Umple Mutant Generator
  • examples/ Developer curated examples

  • externalexamples/ External projects that are used for testing

  • ExternalTextEditorPlugins Plugins for external editors, Notepad++, etc

  • sandbox Small test done before a build to make sure testing and compiling works

  • testbed/, testbed_php/, testbed_ruby/ Test suites for Java, Php and Ruby respectively

  • UmpleToJava/ Code generation for Java

  • UmpleToPhp/ Code generation for Php

  • UmpleToRuby/ Code generation for Ruby

  • UmpleToRTCpp/ *Code generation for C++ *

  • UmpleToSDL/ Code generation to convert Umple to SDL (in early development)

  • UmpleToSql/ Code generation SQL from Umple models

  • UmpleToTest/ Code generation for abstract tests

  • UmpleToTemplate/ Location for templates that could be common to subprojects

  • UmpleTToJunit/ Code Generation for JUnit5 - used by MTL compiler

  • UmpleTToPhpunit/ Code Generation for PhpUnit - used by MTL compiler

  • UmpleTToRubyunit/ Code Generation for RubyUnit - used by MTL compiler

  • umpleonline/ The UmpleOnline web application

    • UmpleOnline allows generation of code from Umple directly in a web browser, and also editing of Umple both graphically and textually. Available at http://try.umple.org
  • Umplificator/ Reverse engineer code to Umple

  • umplificatoronline/ Online tool for converting code to Umple

  • umpleUI/ Projects for the UIGU tooling

    • Projects for generating a UI through UIGU from Umple. These need work to incorporate them into UmpleOnline
  • umplewww/ Core files from the Umple.org web pages

    • Includes items such as the user manual that are moved at build time into the appropriate place
You can’t perform that action at this time.