Friday, March 15, 2013

Properties View Customization in Papyrus CDO

Last week's instalment of the CDO integration tech preview series for the Kepler release explored model validation in repository models. This week, we take a look at customizing the Properties View.

Papyrus offers end users a powerful model-driven solution for customization of the Properties View. This enables a convenient UI for editing model elements tailored to what's important in a specific domain, such as SysML, MARTE, or whatever you can invent yourself. In the Juno release, the models that describe the Properties View are stored in the local workspace's metadata area. Now, we bring them into the repository to share and access from any workspace.

Have a look at the video after the break for a quick (less than 10 minutes) tour.

Tuesday, March 5, 2013

Validation in Papyrus Model Repositories

One of the most important things we can do with our models is to validate them, testing them against general-purpose and domain-specific well-formedness rules. Last week, we saw how to reuse packages from models stored in a repository in the Papyrus Kepler release.

This week, we take a look at validating models. After all, you wouldn't want to share and re-use packages that aren't up to muster, would you? See a short demonstration video after the break.

Friday, March 1, 2013

Reusing Packages in Papyrus Model Repositories

In last week's instalment of the Papyrus Model Repository tech preview series, I showed how to create new models in a CDO repository. This week we look at reusing model content by importing packages and applying profiles from models stored in a repository.

The latest development on the cdo_kepler branch in Papyrus SVN refactors the "Import Package From Workspace" and "Apply Profile(s)" dialogs to support pluggable model import sources, including CDO repositories in addition to the Eclipse Workspace. Also, the workflow in these dialogs is stream-lined a bit and some of the code that handles profile migration is generalized to work with non-XMI resources. See the video after the break to take a tour.

Friday, February 22, 2013

Papyrus Model Repositories: Creating New Models

Last week, I introduced the in-progress integration of CDO model repositories into Papyrus for the Kepler release. The starting point was migration of existing models from the Eclipse workspace into a repository. But, what if you don't have models, yet? Do you have to create them in the workspace first, then suck them into a repository?

Not any more!

The latest development on the cdo_kepler branch in Papyrus SVN has refactored the New Papyrus Model wizard to allow creation of models in either a repository or the workspace. See the video after the break to take a tour.

Sunday, February 17, 2013

Papyrus Model Repositories

The M5 milestone of the Kepler release brought support for UML models in CDO repositories to Eclipse. I wrote then that this provides a foundation for collaborative model editing in Papyrus using CDO. Well, that work has progressed far enough that I can offer a preview of Papyrus on CDO in action.

Friday, February 8, 2013

Connect and Share Your UMLs

The Eclipse CDO and UML2 projects have both published their M5 milestones on the road to the Kepler release. In this milestone, UML models can now be shared in CDO repositories!

A lot of fixes and enhancements have gone into this milestone of both the CDO and UML2 projects to make UML models fully functional in CDO repositories. In several ways, some small and some big, UML is a peculiar EMF model. It implements some specialized structural semantics (e.g. subsetting) and awkward overrides (e.g. redefining a mutable reference as derived). It is an unique EMF model. So, quite natural that it should have required work in both CDO (to make allowances for UML) and UML2 (to conform to EMF/CDO norms) to get the two playing together nicely.

More details after the break.

My blog has moved!

You will be automatically redirected to the new address.

If that does not occur, please visit http://www.damus.ca/blog/.