Author Topic: Extension management  (Read 844 times)

Uffe

  • EA Practitioner
  • ***
  • Posts: 1619
  • Karma: +112/-11
  • Flutes: 1; Clarinets: 1; Saxes: 5 and counting
    • View Profile
Extension management
« on: December 03, 2007, 03:47:59 pm »
Hey people,


One of the strongest features in EA is its extensibility. However, it leaves a little something to be desired in the management of these extensions. (Code datatypes, code generation templates, transformation templates, profiles, patterns and whatever else I've missed.)

The way I understand it, these all get stored in the actual project (.EAP) file, as opposed to MDG technologies and Add-Ins which are referenced from external files.

The problem is that in a medium-to-large organisation where you do a lot of toolsmithing, you need to be able to keep better track of what's in whose project file than EA currently supports.

I suggest adding the following information to any extension stored in the project file:
- Source (File, Manually entered, EA Preset)
- Time of last import from file (where applicable)
- Time of last manual change (so next time someone tells me "hey, your stupid code generation doesn't work," I can look at that and go "no actually, your stupid code generation doesn't work").

Ideally, I'd like to see this information in one single place for all extension types, but just getting it into where the respective types are managed would be good too.

Down the track, it would be great if extensions could be CM:ed like the model itself (they're XML files in the end, after all). There should then be a separate repository setup for extensions, since they tend to be used in several projects.

As I said, this is more of a medium-to-large business requirement, but hey - it is Enterprise Architect, right?


/Uffe
My theories are always correct, just apply them to the right reality.

«Midnight»

  • EA Guru
  • *****
  • Posts: 5651
  • Karma: +0/-0
  • That nice Mister Grey
    • View Profile
Re: Extension management
« Reply #1 on: December 03, 2007, 04:04:57 pm »
Hi Uffe,

On the whole I agree. Still...

This would likely require one of two things: a new repository schema, or even greater convolutions of the 'magic' fields in the current schema.

My personal preference - though not without considerable second thoughts - would be the former. EA has not seen a significant schema change since the end of version 3. Given the number of features that have been added or extended since then, IMHO the time for a clean-up of the background structures is overdue. [I'd hoped to see this for version 7, but no luck as yet.]

Still, this would involve great work, considerable breakage of some products (add-ins etc. that rely on the current quirks), and extensive development and testing of the feature set as things were moved about in the schema.

As to bending the current schema further, that might be the only short-to-immediate term option. Still, each time that route is taken, we push any possible refactoring of the core product farther out.

Just my 0.02 CAD, whatever that's worth in these volatile times.

David
No, you can't have it!

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 7212
  • Karma: +83/-10
    • View Profile
Re: Extension management
« Reply #2 on: December 03, 2007, 05:39:43 pm »
Have a look at the deployment options in the help for MDG technologies.  http://www.sparxsystems.com/EAUserGuide/index.html?deploying_mdg_technologies.htm

We no longer recommend importing an MDG technology into a model (as was previously required).  In fact, some of the extensions that an MDG technology provides are not available when the MDG technology is imported into the model.

I believe that this will meet all of your needs.
Eve

support@sparxsystems.com