Skip to main content

Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » MDT (Model Development Tools) » [Sphinx] The 20 Modeling Things
[Sphinx] The 20 Modeling Things [message #602818] Fri, 12 February 2010 15:32
Stephan Eberle is currently offline Stephan EberleFriend
Messages: 40
Registered: July 2009

Hi all,

as you might already know, Kenn and I have submitted a talk about "The
20 Modeling Things" to upcoming EclipseCon
( d=1315) and got
accepted. In this talk we want to give a high level overview of the most
essential services required for building integrated modeling tool
applications. These services could later be implemented in the recently
announced Sphinx project - with a part of them coming from the
Backbone/Core from Papyrus and the ECL layer from Artop.

Kenn and I had the idea to base this talk not only on our own thoughts
but on feedback from all members of Papyrus and Artop development team.
We already have identified an initial version of the 20 Modeling Things
including some comments detailing them a little bit (see below). We
would like to ask you to have a look at this list and comment on it.
Just let us know what you intuitively think. Tell us which of the
proposed services you find important, what their mandatory
features/properties should be, additional services that should be added,
services which you don't find important and should be removed from the
list (if any), or anything else.

In order to have enough time for consolidating your feedback an create
the presentation slides, it would be great if you could provide us your
feedback until Feb 28, 2010. While this message has also been sent out
to Papyrus and Artop mailing lists for reaching all of you, I think that
it would make sense to route all feedback over a single communication
channel. So please use only the MDT forum/newsgroup for posting your

Thank you very much in advance,

Stephan & Kenn

And this is our initial list of 20 Modeling Things:

1. lifecycle management

- open, edit, save, delete
- synchronization with filesystem (or other persistence back end)

2. navigation

- views (navigate, explore, browse), including omnibar, also traversal
of links
- containment structure vs. lateral references

3. editor management

- editing domain management
- support for different kinds of editors

4. commands / "transactions"

- execution of commands (possibly complex) in a thread safe way
- allowing undo (rollback)
- integration with the undo/redo mechanisms in eclipse

5. validation

- all things validation (rules, execution, scope, problems view, markers)
- support for this in a scalable way!

6. compare & merge

- differences between different version of artifacts
- graphical merge (diagram support)

7. scoping (viewpoints)

- models typically spread over multiple files of multiple types
- relation of projects to models, also "working sets"?
- references between projects
- supports models from different versions of a metamodel at same time
- "model" vs. resources, subsetting of these

8. metamodel management

- multiple metamodels
- multiple versions of a metamodel
- between different versions of metamodels
- metamodel extension

9. memory management

- management of memory footprint

10. query & indexing

- getting answers to questions, finding things
- useful for validation (markers),
- index underlying service for query, but also for other things
- useful for navigation and search as well

11. documentation and report generation

- modeling documentation ("modeldoc"?), wikitext, BIRT?

12. persistence

- files vs. databases vs. web servers vs. repositories

13. code generation

- obvious

14. transformation

- (obvious)

15. search & replace

- (obvious)

16. variant handling (maybe rather advanced than essential?)

- variants of model elements
- feature modeling, aspect-oriented modeling, facets

17. task focused modeling

- Mylyn integration

18. workflow & scripting

- MWE, epsilon? other languages (Ruby, Groovy?)

19. build system

- complex build environments to generate code, documentation, etc.
- mixed processing of models (e.g. validation, code generation) and
files (e.g. compilation and linking)

20. version management / team integration

- configuration management, etc. (CDO, MTF)
Previous Topic:[Announce] Eclipse/OMG Symposium 2010
Next Topic:[Sphinx] The 20 Modeling Things
Goto Forum:

Current Time: Sun Jul 14 20:34:30 GMT 2024

Powered by FUDForum. Page generated in 0.03080 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top