Author Topic: Modeling Support  (Read 10408 times)

jeshaw2

  • EA User
  • **
  • Posts: 701
  • Karma: +0/-0
  • I'm a Singleton, what pattern are you?
    • View Profile
Modeling Support
« on: April 27, 2007, 05:14:16 pm »
I think its time for EA to start providing good modeling support for:
  • Cross cutting concerns as AspectJ and Aspect.NET enter the main stream of modeling development
  • Database views,
  • Use Case Writing; and,
  • Implementation of the remaining features of the UML 2 Specification (many of which have been mentioned on this forum).

Thoughts? Votes?
Verbal Use Cases aren't worth the paper they are written upon.

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8607
  • Karma: +257/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: Modeling Support
« Reply #1 on: April 27, 2007, 08:10:58 pm »
Vote for all the above...

(and a proxt vote for bruce (sagasso))

Paolo
Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
-Semantica-
Helsinki Principle Rules!

«Midnight»

  • EA Guru
  • *****
  • Posts: 5651
  • Karma: +0/-0
  • That nice Mister Grey
    • View Profile
Re: Modeling Support
« Reply #2 on: April 28, 2007, 04:55:05 am »
I agree also, but with the following reservation:

IMHO the support for Aspect<x> is similar to adding support for another language, and should be placed in that queue, with priorities set in relation to any other languages awaiting treatment. [However, I'd place these high on the list if it were up to me.]

David
No, you can't have it!

jeshaw2

  • EA User
  • **
  • Posts: 701
  • Karma: +0/-0
  • I'm a Singleton, what pattern are you?
    • View Profile
Re: Modeling Support
« Reply #3 on: April 28, 2007, 05:38:12 pm »
David;
I share your reservation about the languages.  I was hesitant to mention any specific languages in my first post, there are, of course, more than two AOP languages.  I also recognize that generating code to weave aspects together at the byte code levels is very complex; but must I wait for that kind of code generation before I can begin to model separated concerns?  

I strongly believe that Aspect Oriented Modeling solves some significant modeling issues and that the AO community is getting close to bringing their ontology into the modeling mainstream.  Other tool developers are hard at work to implement the ontology (yes, even including Microsoft  ::)).  We don't want to be left behind; or, as  business analysts, we want to keep ahead of the early adopting programmers so that they get proper guidance. 8)

Personally, we are not interested in code generation support.  We won't be until we can get the PIM models correct, and that means being able to model cross cutting concerns, etc.  And the most important aspect modeling place to start is with Use Case Stereotypes and related elements that support aspect notations--similar to those suggested by Jacobson & Ng.  Shortly thereafter, I'll be looking for the ability to associate attributes and behaviors to named aspects so that I can easily generate diagrams (of specific concerns) without having to set element visibilities at tediously low levels of granularity.

I think the issue of concerns feeds directly into database views too.

I've been watching EA develop for 6+ years now and I always thought of EA/Sparxians to be a leading force in the modeling world, I hope they continue to sustain that leadership.  I hope that control of Sparks is not moving from the ontologists to the financial and/or marketing managers!  If that happens, I'll have to reconsider my options for, in my 30+ years of experience, that has always been the end of a good product.
Verbal Use Cases aren't worth the paper they are written upon.

sargasso

  • EA Practitioner
  • ***
  • Posts: 1406
  • Karma: +1/-2
  • 10 COMFROM 30; 20 HALT; 30 ONSUB(50,90,10)
    • View Profile
Re: Modeling Support
« Reply #4 on: April 29, 2007, 11:49:49 pm »
Hi all,

A weekly drop in.  I MUST support Jim's idea.  After all it's the topic that got me looking for better ways...

An idea,  maybe a new thread, I'll leave it up to y'all.

Maybe the EA product has got to the point where a complete re-think of product orientation would be beneficial.  Specifically, splitting EA into a suite of three complimentary utilities - modelling, data modelling and code engineering (or if you must-"MDA").

Of course, such a suite would have to adress "cross-cutting " concerns in a major way! ;-)

Back next week, hopefully, p'raps.

bruce

p.s.  I wont be using the yabb PM system, its too slow.  You can contact me in the first instance at [email protected]    
"It is not so expressed, but what of that?
'Twere good you do so much for charity."

Oh I forgot, we aren't doing him are we.

«Midnight»

  • EA Guru
  • *****
  • Posts: 5651
  • Karma: +0/-0
  • That nice Mister Grey
    • View Profile
Re: Modeling Support
« Reply #5 on: April 30, 2007, 02:47:24 am »
Thanks Jim and Bruce,

I (strongly!) agree that this is an idea who's time is nigh. The idea of a new thread - and a matching new Request-Feature to Sparx - is something I'd support without reservation, including those earlier expressed.

My sole concern was linking these two topics - aspect support and improved UML (and profile) support - ran the risk of losing both if one did not make the cut.

David
No, you can't have it!

jeshaw2

  • EA User
  • **
  • Posts: 701
  • Karma: +0/-0
  • I'm a Singleton, what pattern are you?
    • View Profile
Re: Modeling Support
« Reply #6 on: April 30, 2007, 04:27:33 am »
Hi Bruce  :)

While I've had similar organizational thoughts, thinking deeply I see more complexity from a management perspective than I care to deal with at this time.  I'll take the high road, treating Sparks as a fully encapsulated object, and simply concern myself with their Unique Interface 8)  The implementation details are theirs to wrestle with.

I do wonder at times...Does Sparks develop Use Cases that get reviewed with Stakeholders?  If so, do they fully depend upon EA to write them? :-/
Verbal Use Cases aren't worth the paper they are written upon.

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8607
  • Karma: +257/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: Modeling Support
« Reply #7 on: April 30, 2007, 04:37:55 am »
I think the thread should be in the UML forum.  There probably should be two threads:

One on Aspect Oriented Systems Development (AOSD) which EA should be able to support directly.  This should primarily deal with Computationally Independent Models (CIM) and Platform Independent Models (PIM).

The other on Aspect Oriented Programming (AOP) - how to map Platform Specific Models (PIM) to the various AOP languages (such as AspectJ).

Paolo
Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
-Semantica-
Helsinki Principle Rules!

«Midnight»

  • EA Guru
  • *****
  • Posts: 5651
  • Karma: +0/-0
  • That nice Mister Grey
    • View Profile
Re: Modeling Support
« Reply #8 on: April 30, 2007, 04:56:29 am »
Well said Paolo.

Still, I'd love to see the suggestions go forward.

David
No, you can't have it!

SF_lt

  • EA User
  • **
  • Posts: 216
  • Karma: +1/-0
  • The Truth Is Out There
    • View Profile
Re: Modeling Support
« Reply #9 on: May 01, 2007, 02:59:35 am »

personally, I don't want to see EA as a MDA transformation tool. It's too much - you want too much functionality, which will be rarely used by most users (remember Paretto principle?), interface would be more unique and at least tricky.
Everything in one means nothing at good level - this is not my vision of the EA. Agree, that EA would be nice to see as modelling tool for the MDA - metamodels, models, but not more. Of course, working OCL in EA would be really nice

For the MDA I suggest ATL in Eclipse - it's working, good support, high proliferation, just try it for model transformations
registertm everything to SparX

sc

  • EA Novice
  • *
  • Posts: 1
  • Karma: +0/-0
  • I love YaBB 1G - SP1!
    • View Profile
Re: Modeling Support
« Reply #10 on: October 10, 2007, 01:03:36 am »
Hi
I can see this is an old thread but we recently contacted Sparx systems about a trial we are currently doing and some others about AOP modelling in UML and they suggested we go to the forum so here we are.

a brief synopsis...

We use a language called e - http://en.wikipedia.org/wiki/E_programming_language which is aspect oriented and as such is outside the normal UML fit.  

EA does not currently support this language and although there is themeUML which has been trying to address the issues with modeling aspect oriented languages it appears to be slightly aspectJ oriented. This unfortunately does not incorporate all the richness that is included in the ‘e’ language (which is a more mature language)

We have contacted Siobhan Clarke who is working on this methodology and is interested in incorporating the needs of e into it – she has various publications https://www.cs.tcd.ie/Siobhan.Clarke/research/pubs.php.  

We are also in contact with michael haupt who works with professor Robert Hirschfield and who are looking at COP context oriented programming which has also some similarities with ‘e’.  Finally we are also in discussion with David Robinson who has recently released a book http://www.amazon.co.uk/exec/obidos/ASIN/0123742102/202-6577498-0603016 who is also interested in helping with this issue as he concluded that modeling AO languages (specifically with e) has not really been addressed as of yet.

As mentioned earlier in your discussion, we are not so much interested in the production of code from the models at this point - just the ability to use UML to model the language correctly would be good.

There are various issues with 'e' such as import order, sub-typing etc which is also an issue.  Round-tripping would also be of interest as an 'e' testbench never reaches a point of completeness but contantly evolves requiring constant uopdates to keep models/documents and code in lockstep.

Any knowledge you have or ideas on modelling AOP's in UML would be greatly appreciated.  Currently I am looking at class diagrams, use cases and sequence /activity diagrams.

Many Thanks
Serrie  
Verification Engineer,
Infineon Technologies,
Bristol, UK