Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[feature proposal] Concepts specialization through properties and "stereotypes" #36

Open
jbsarrodie opened this issue Mar 10, 2014 · 10 comments
Labels

Comments

@jbsarrodie
Copy link
Member

Hi,

Here is my 2cts suggestion to implement concepts specialization through properties. The goal is to ease specialization of concepts without the need to change the meta-model.

In the following I use the word "stereotype" (coming from UML background) as an example.

The feature proposal:

  • As of today, Archi comes with no predefined list of property name. I suggest to add one named "Stereotype". It could then be used by users to better define some concepts. The goal here is just to avoid users having to type it (and misspell it).
  • Create a new option in preference to either:
    • do nothing (same as now),
    • add "<< stereotypename >>" under all figures and use concept name if no stereotype defined (this would be very close to Gerben naming suggestion to ease readability,
    • add "<< stereotypename >>" only under figures that are linked to concepts having the "Stereotype" property set.

@Phillipus
Copy link
Member

Nice idea.

"As of today, Archi comes with no predefined list of property name"

I wonder if we should bite the bullet and redo the Properties functionality to allow the user to define re-usable Property Sets (aka profiles). Stereotypes would be part of this.

@jbsarrodie
Copy link
Member Author

_"bite the bullet"_ Quite funny expression (didn't know it before) as Google translates it in 2 very differents way in french: one is "active/positive" (I guess it's your intent), the other is "passive/pessimistic"

"redo the Properties functionality"
This would allow us also to assign types to properties, long awaiting feature.

@Phillipus
Copy link
Member

"...decide to do something difficult or unpleasant that one has been putting off or hesitating over."

:-)

yes, so maybe we should come up with a list of requirements.

1 - Assign types to properties. This could be added as an attribute in the XML:

<property key="this" value="that" type="string"/>
<property key="this" value="true" type="boolean"/>
<property key="this" value="1" type="number"/>
<property key="this" value="12535333223" type="date"/>

etc. We need to agree these types

2 - Define property sets. Where are they stored/edited? Are they global? Stored in a helper file? Or...

@jbsarrodie
Copy link
Member Author

I guess your XML example is lost in translation in the markdown source

"Where are they stored"
Metadata ?

I'm afraid this will also come with other changes like defaults being saved in the model and preferences used to defined default values to copy to a new model....

@Phillipus
Copy link
Member

Re-edited markdown

@Phillipus
Copy link
Member

I'm very suspicious of storing application-specific preferences detail in the xml file.

@jbsarrodie
Copy link
Member Author

"We need to agree these types"

I would say that either Java or Groovy types should be used (they should even be the same but don't have time to check now). Why? because Archi is written in Java and that jasperreport use expression (and types) using either Java or Groovy.

@jbsarrodie
Copy link
Member Author

"I'm very suspicious of storing application-specific preferences detail in the xml file."

Me too, but in this case, If for one model I want "MyProperty" to be an integer, then I expect it to be true whatever desktop/laptop runs Archi (mine or someone else's one). So this is either in the model or a sidecar file (and I hate sidecar files)...

@Phillipus
Copy link
Member

If it's model-related stuff no problem. Things like "what colour shirt I'm wearing" no good. :-)

@jbsarrodie
Copy link
Member Author

"what colour shirt I'm wearing"

Well, I hope you wear blue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants