Home » Modeling » EMF » Advice in migrating app
Advice in migrating app [message #425257] |
Fri, 21 November 2008 02:14 |
Bill Kinahan Messages: 6 Registered: July 2009 |
Junior Member |
|
|
I am considering migrating an existing modeling application to Eclipse.
The current application (written in C#) is used to model aspects of
avionics systems and, in some cases to capture detailed software
requirements using both form based, and graphical means. All data is
stored as individual model entities serialized in a SQL database. The user
is presented a navigator view which can be used to add/delete/rename
elements. To edit the contents of an element, the user double clicks on it
and is presented with a dialog like form where they press "OK" to complete
the edits. The entry is locked in the database while edit is in progress
to prevent simultaneous update by multiple users.
I've been looking at EMF and the "out of the box" RCP application that can
easily be produced. I see some similarity (e.g., the navigator like
editor), but also see some significant differences like using property
sheets for editing rather than forms. As part of a migration to Eclipse, I
would prefer to avoid major changes to the user interface.
Using the EMF editor feels like the whole model is loaded into the editor
and saved upon request. This feels different than my current approach
where each element/node is opened for edit individually much like a
resource in Eclipse. I am also concerned that this approach will not scale
well as some of our models can be very large (>150K elements). I
Questions:
Can anyone suggest an approach which would allow me to preserve the user
interface style?
I'd need to incorporate editing forms that have both traditional form
elements (text, combos, tables, trees, etc.), but also need to have
embedded diagram editors. Any suggestions/examples of how to do this?
Are my concerns about scaling up valid, or do I misunderstand the
technology?
I expect I'll be using CDO or something similar. Any thoughts on the
choice of technology and things I should be considering?
Any other thoughts?
Thanks in advance!
Bill
|
|
|
Re: Advice in migrating app [message #425259 is a reply to message #425257] |
Fri, 21 November 2008 05:30 |
Ed Merks Messages: 33216 Registered: July 2009 |
Senior Member |
|
|
Bill,
Comments below.
Bill Kinahan wrote:
> I am considering migrating an existing modeling application to Eclipse.
Cool.
> The current application (written in C#) is used to model aspects of
> avionics systems and, in some cases to capture detailed software
> requirements using both form based, and graphical means. All data is
> stored as individual model entities serialized in a SQL database. The
> user is presented a navigator view which can be used to
> add/delete/rename elements. To edit the contents of an element, the
> user double clicks on it and is presented with a dialog like form
> where they press "OK" to complete the edits. The entry is locked in
> the database while edit is in progress to prevent simultaneous update
> by multiple users.
> I've been looking at EMF and the "out of the box" RCP application that
> can easily be produced. I see some similarity (e.g., the navigator
> like editor), but also see some significant differences like using
> property sheets for editing rather than forms.
The GMF generator produces quite reasonable forms.
> As part of a migration to Eclipse, I would prefer to avoid major
> changes to the user interface.
> Using the EMF editor feels like the whole model is loaded into the
> editor and saved upon request.
That's a general Eclipse behavior. Changes in an editor don't have an
impact beyond the editing session unless you save (commit it).
> This feels different than my current approach where each element/node
> is opened for edit individually much like a resource in Eclipse. I am
> also concerned that this approach will not scale well as some of our
> models can be very large (>150K elements). I
> Questions:
> Can anyone suggest an approach which would allow me to preserve the
> user interface style?
EMF along with data binding is a great way to build a form. You have
complete control over what the view in the properties editor looks like
so you can make them be nice forms.
> I'd need to incorporate editing forms that have both traditional form
> elements (text, combos, tables, trees, etc.), but also need to have
> embedded diagram editors. Any suggestions/examples of how to do this?
That's more of a GMF question.
> Are my concerns about scaling up valid, or do I misunderstand the
> technology?
Certainly technologies like CDO will help with scaling.
> I expect I'll be using CDO or something similar.
I think that's a good idea.
> Any thoughts on the choice of technology and things I should be
> considering?
Do some quick proof of concept things to see how it will pan out.
> Any other thoughts?
> Thanks in advance!
>
> Bill
Ed Merks
Professional Support: https://www.macromodeling.com/
|
|
|
Re: Advice in migrating app [message #425277 is a reply to message #425257] |
Fri, 21 November 2008 12:43 |
|
Bill,
As the original author of CDO I might be biased but I agree with Ed that
CDO is a good choice to transparently address scalability issues with
EMF models. CDO internally represents your model instances without
having strong Java references. Combined with some smart caching
techniques on multiple levels there is nothing (including containment
and cross references) anymore that prevents single objects from being
reclaimed by the garbage collector when they are no longer referenced.
Lazy loading and unloading of objects happens completely automatic and
transparent. In addition CDO offers some features like partial list
loading and adaptive pre-fetching to further enhance the user
experience. We have evidence of models with > 4 GB sizes which can be
easily traversed on client machines with 512 MB main memory.
Please let me know if you find this interesting and want more information...
Cheers
/Eike
----
http://thegordian.blogspot.com
Bill Kinahan schrieb:
> I am considering migrating an existing modeling application to
> Eclipse. The current application (written in C#) is used to model
> aspects of avionics systems and, in some cases to capture detailed
> software requirements using both form based, and graphical means. All
> data is stored as individual model entities serialized in a SQL
> database. The user is presented a navigator view which can be used to
> add/delete/rename elements. To edit the contents of an element, the
> user double clicks on it and is presented with a dialog like form
> where they press "OK" to complete the edits. The entry is locked in
> the database while edit is in progress to prevent simultaneous update
> by multiple users.
> I've been looking at EMF and the "out of the box" RCP application that
> can easily be produced. I see some similarity (e.g., the navigator
> like editor), but also see some significant differences like using
> property sheets for editing rather than forms. As part of a migration
> to Eclipse, I would prefer to avoid major changes to the user interface.
> Using the EMF editor feels like the whole model is loaded into the
> editor and saved upon request. This feels different than my current
> approach where each element/node is opened for edit individually much
> like a resource in Eclipse. I am also concerned that this approach
> will not scale well as some of our models can be very large (>150K
> elements). I
> Questions:
> Can anyone suggest an approach which would allow me to preserve the
> user interface style?
> I'd need to incorporate editing forms that have both traditional form
> elements (text, combos, tables, trees, etc.), but also need to have
> embedded diagram editors. Any suggestions/examples of how to do this?
> Are my concerns about scaling up valid, or do I misunderstand the
> technology?
> I expect I'll be using CDO or something similar. Any thoughts on the
> choice of technology and things I should be considering?
> Any other thoughts?
> Thanks in advance!
>
> Bill
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
|
|
|
Re: Advice in migrating app [message #425296 is a reply to message #425259] |
Sat, 22 November 2008 02:28 |
Bill Kinahan Messages: 6 Registered: July 2009 |
Junior Member |
|
|
Ed Merks wrote:
> Bill,
> Comments below.
> Bill Kinahan wrote:
>> I am considering migrating an existing modeling application to Eclipse.
> Cool.
>> The current application (written in C#) is used to model aspects of
>> avionics systems and, in some cases to capture detailed software
>> requirements using both form based, and graphical means. All data is
>> stored as individual model entities serialized in a SQL database. The
>> user is presented a navigator view which can be used to
>> add/delete/rename elements. To edit the contents of an element, the
>> user double clicks on it and is presented with a dialog like form
>> where they press "OK" to complete the edits. The entry is locked in
>> the database while edit is in progress to prevent simultaneous update
>> by multiple users.
>> I've been looking at EMF and the "out of the box" RCP application that
>> can easily be produced. I see some similarity (e.g., the navigator
>> like editor), but also see some significant differences like using
>> property sheets for editing rather than forms.
> The GMF generator produces quite reasonable forms.
>> As part of a migration to Eclipse, I would prefer to avoid major
>> changes to the user interface.
>> Using the EMF editor feels like the whole model is loaded into the
>> editor and saved upon request.
> That's a general Eclipse behavior. Changes in an editor don't have an
> impact beyond the editing session unless you save (commit it).
>> This feels different than my current approach where each element/node
>> is opened for edit individually much like a resource in Eclipse. I am
>> also concerned that this approach will not scale well as some of our
>> models can be very large (>150K elements). I
>> Questions:
>> Can anyone suggest an approach which would allow me to preserve the
>> user interface style?
> EMF along with data binding is a great way to build a form. You have
> complete control over what the view in the properties editor looks like
> so you can make them be nice forms.
>> I'd need to incorporate editing forms that have both traditional form
>> elements (text, combos, tables, trees, etc.), but also need to have
>> embedded diagram editors. Any suggestions/examples of how to do this?
> That's more of a GMF question.
>> Are my concerns about scaling up valid, or do I misunderstand the
>> technology?
> Certainly technologies like CDO will help with scaling.
>> I expect I'll be using CDO or something similar.
> I think that's a good idea.
>> Any thoughts on the choice of technology and things I should be
>> considering?
> Do some quick proof of concept things to see how it will pan out.
>> Any other thoughts?
>> Thanks in advance!
>>
>> Bill
|
|
| |
Re: Advice in migrating app [message #425303 is a reply to message #425297] |
Sat, 22 November 2008 07:55 |
Ed Merks Messages: 33216 Registered: July 2009 |
Senior Member |
|
|
Bill,
Comments below.
Bill Kinahan wrote:
> Thanks Ed. I've got a couple of follow-ups for you.
>
> How would I use GMF to produce my forms?
I've not used GMF a lot...
> I thought it was predominantly a tool used to create graphical editors.
Definitely. I think maybe their forms stuff can be used in any editor
though. I've not tried that.
> Can you point me at the right documentation/example?
Their home page has as wiki with getting started information.
>
> I've been attempting to create a form based editor by hand, but I'm
> having some newbie difficulties.
If you look in the history, you can see that Cameron Bateman is working
on a similar thing right now.
> I've started with the editor produced by EMF and have added a double
> click listener. I'd like to then open up a form to edit the properties
> of that particular element of the model. I could use some advice as to
> what to use as a base class and how to open it up. I've been trying to
> start with a multipage editor, add a page with a simple "hello world"
> type label on it, and have it open for edit. Is this the right way to go?
The attachments in https://bugs.eclipse.org/bugs/show_bug.cgi?id=108470
will likely be helpful.
>
> You mention that I have complete control over the view in the
> properties editor. I think I understand that I could create a form in
> there and fill it in. I've followed a master detail example I found
> on-line and basically understand how that works. The behavior I
> ultimately want to end up with is similar to that, only I would be
> able to have property sheets open for multiple items in the model. The
> app I want to migrate uses a MDI window and enables users to have
> multiple elements of the model open simultaneously in individual
> floating windows. How would I go about doing this in Eclipse?
It's not really an EMF question. I'm not sure. It's always good to
find an application that does something like that to study the design...
>
> Thanks for the help.
>
> Bill
>
Ed Merks
Professional Support: https://www.macromodeling.com/
|
|
|
Goto Forum:
Current Time: Fri Sep 20 18:04:37 GMT 2024
Powered by FUDForum. Page generated in 0.05594 seconds
|