Umple: Model-Oriented Programming - embed models in code and vice versa and generate complete systems
Java HTML GAP JavaScript PHP Ruby Other
Latest commit d9110a6 Aug 19, 2016 @TimLethbridge TimLethbridge committed on GitHub Merge pull request #879 from umple/dev-tools
updates to dev tools such as bumple
Permalink
Failed to load latest commit information.
.github Update ISSUE_TEMPLATE.md Feb 23, 2016
ExternalTextEditorPlugins Updating Readme files in various directories Oct 2, 2013
UmpleEditorAndCompiler Updating the feature project which is used as source in the update site Jan 21, 2012
UmpleParser this commit fixes the issue #811. Apr 10, 2016
UmpleToJava This commit fixes the issue of double implements keywords for queued … Jun 7, 2016
UmpleToPhp implemented custom code injection functionality for ruby/php Apr 10, 2016
UmpleToRTCpp Fixed incorrectly generated line comments Mar 23, 2016
UmpleToRuby Merge pull request #814 from Shikib/ruby/php-codegen Jun 3, 2016
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
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 this commit fixes issue #841. Jun 27, 2016
cruise.umple.eclipse Refactor build system to pull all binary dependencies remotely, inclu… Sep 2, 2015
cruise.umple.nebula Refactor build system to pull all binary dependencies remotely, inclu… Sep 2, 2015
cruise.umple.validator Refactor build system to pull all binary dependencies remotely, inclu… Sep 2, 2015
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 fix the issue related to parsing two times those umple files defined … Jun 30, 2016
cruise.umplificator.eclipse Refactor build system to pull all binary dependencies remotely, inclu… Sep 2, 2015
cruise.umplificator issue related to namespace was fixed partially. Need to pass some unr… Apr 11, 2016
dev-tools updates to dev tools such as bumple Aug 19, 2016
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 Adding readme.txt to externalexamples May 6, 2011
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 Added missing bracket for Java JET template Jan 28, 2016
testbed_php Upgrade simpletest version, pull it directly from sourceforge Sep 2, 2015
testbed_ruby Refactor build system to pull all binary dependencies remotely, inclu… Sep 2, 2015
travis Remove "retapping" of cask in osx dependencies Jan 28, 2016
umpleonline [ci skip] correcting text in download page Jun 29, 2016
umplewww Replacing references to Google Code with references to Github Sep 19, 2015
umplificatoronline [umplificatoronline] first commit for the umplificator online. Jan 7, 2015
.gitattributes Adding a file .gitattributes telling git to account for .ump files as… Jan 3, 2016
.gitignore Updating dev tools to ensure they do codegen etc. Jun 27, 2016
.travis.yml Moved `Parser` class to separate file, outside of the `RuleBasedParse… Apr 4, 2016
CONTRIBUTING.md Cleanup of unneeded files and fixing documentation Mar 22, 2016
LICENSE.md Cleanup of unneeded files and fixing documentation Mar 22, 2016
README.md Cleanup of unneeded files and fixing documentation Mar 22, 2016
appveyor.yml adding \bin to path Jun 9, 2016

README.md

Umple Modelling Language

Build Status

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

Introduction

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

Umple is a model-oriented programming technology. It allows 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 (and can be embedded in or embed these), as well as diagrams, metrics and many other artifacts.

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

Development

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.

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, and the master was on Google Code from 2011 to mid 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.

More details can be found as follows

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

Project setup

The umple project is split into many smaller subproject, 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*
  • 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
  • UmpleToTemplate/ Location for templates that could be common to subprojects

  • 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