Skip to main content
Jump to: navigation, search

ModelingAmalgam

Revision as of 08:39, 8 February 2009 by Richard.gronback.borland.com (Talk | contribs) (Removed reference to branded packages to align with current thinking of Amalgam's purpose.)

The Modeling Amalgamation Project (just amalgam for short) will provide improved packaging, integration, and usability of Modeling project components.

Packages

Amalgam will deliver packages designed to target the different user communities of Modeling technology. Initially, a package will be created to form the basis of a Modeling package for Ganymede, and will likely evolve into the package for "Toolsmiths" to use in developing model-centric applications using EMF, GMF, etc. Another package will provide what "Practitioners" will expect to have available for end user tooling, such as UML2 Diagramming.

Eclipse Modeling Tools

The first package offered by Amalgam defines the Modeling Package available from the Eclipse Packaging Project.

Currently, this package includes the following features (including their dependencies). The EPP configuration file can be viewed here

Modeling Features

  • org.eclipse.emf.sdk
  • org.eclipse.emf.ecore.sdo.sdk
  • org.eclipse.emf.teneo.sdk
  • org.eclipse.emf.emfqtv.all.sdk
  • org.eclipse.emf.ecoretools.sdk
  • org.eclipse.emf.ecoretools.diagram.search
  • org.eclipse.emf.mint.sdk
  • org.eclipse.emf.compare.sdk
  • org.eclipse.emf.search.sdk
  • org.eclipse.emf.cdo.sdk
  • org.eclipse.gmf.sdk
  • org.eclipse.m2m.qvt.oml.sdk
  • org.eclipse.m2m.atl.sdk
  • org.eclipse.ocl.all.sdk
  • org.eclipse.uml2.sdk
  • org.eclipse.uml2tools.sdk
  • org.eclipse.uml2.search
  • org.eclipse.uml2.diagram.clazz.search
  • org.eclipse.xsd.sdk
  • org.eclipse.jet.sdk
  • org.eclipse.net4j.sdk

Dependencies

  • org.eclipse.sdk (platform + jdt + pde + cvs)
  • org.eclipse.gef.sdk

Other

  • org.eclipse.mylyn...
  • org.eclipse.epp.usagedata.feature (an obligatory aspect of the packaging project)

DSL Toolkit

While the Eclipse Modeling Tools package from EPP aims to deliver an all-in-one package for Modeling technology, the DSL Toolkit is a product definition based offering that includes just elements for a Toolsmith. Initially, it will include the following:

Modeling Features

  • org.eclipse.emf.sdk
  • org.eclipse.emf.emfqtv.all.sdk
  • org.eclipse.emf.mwe.sdk
  • org.eclipse.gmf.sdk
  • org.eclipse.gmf.sdk.experimental
  • org.eclipse.m2m.qvt.oml.sdk
  • org.eclipse.ocl.all.sdk
  • org.eclipse.uml2.sdk
  • org.eclipse.uml2tools.sdk
  • org.eclipse.xpand.sdk
  • org.eclipse.emf.teneo.sdk
  • org.eclipse.amalgam.dsltk
  • org.eclipse.amalgam.examples.dsltk

Dependencies

  • org.eclipse.sdk (platform + jdt + pde)
  • org.eclipse.gef.sdk

Other

  • org.eclipse.cvs

Modeler

The Modeler product definition includes just the bare essentials to do traditional "modeling" (read: drawing pictures). UML2 Tools and the STP BPMN modeler are the initial components, though more are expected to be added. For example, the STP SCA diagram feature will be added when its JDT dependency is removed. The lack of dependency on JDT and other large toolkits/frameworks is necessary to ensure a minimal download size.

Modeling Features

  • org.eclipse.ocl.all
  • org.eclipse.emf.emfqtv.all
  • org.eclipse.gmf
  • org.eclipse.uml2tools.examples
  • org.eclipse.amalgam.modeler
  • org.eclipse.amalgam.examples.modeler
  • org.eclipse.stp.bpmn.feature

Dependencies

  • org.eclipse.platform
  • org.eclipse.gef

Other

  • org.eclipse.cvs

Opting In

Similar to the Eclipse Ganymede release train itself, Modeling projects and components will need to "opt-in" and satisfy a set of Must Do and Recommended elements.

Before becoming part of an Amalgam package offering, projects/components must satisfy these items:

Item Rationale
Branding cleanliness As packages may form the basis of commercial products, they will need to be as "clean" as possible (feature/plug-in names, providers, legal documents, icons, etc.). This is also just good Eclipse citizenship.
Build regularity Frequent and reliable builds are absolutely essential to ensuring Amalgam builds go smoothly. If a project is on the Eclipse simultaneous release train, it should be fine to include in Amalgam packages.
Clean dependencies When building packages, minimal and accurate dependency declaration is essential. Projects that include feature or bundle dependencies that pull in unwanted or unnecessary elements will be excluded until cleaned up or repackaged.

Additionally, it is recommended that projects/components satisfy the following items as well:

Item Rationale
Capability definition While Amalgam has defined some capabilities to hide some UI contributions, it would be better for each project to define its own. Additionally, Amalgam has redefined some wizards and other UI contributions to give a more unified appearance and improve workflow, and therefore defined its own capabilities.

Reviews

In order to assess what is required from Amalgam in its mission to improve packaging, integration, and usability, a series of package reviews will be performed. Reviews will lead to the creation of bugs to be assigned to either a Modeling project/component, or to the Amalgam project to improve integration and functionality offered by the package. Below are the list of package milestone reviews completed to date:

Back to the top