Home » Modeling » UML2 » Technical Documents for UML2
Technical Documents for UML2 [message #473064] |
Thu, 31 May 2007 13:32 |
Eclipse User |
|
|
|
Originally posted by: nickkirtley.gmail.com
Hi,
I'm going to extend the uml2 plugin. I was wondering if there is any
documentation available regarding the structure and inner workings of the
plugin.
And that of uml2tools as well.
regards,
Nick
|
|
| | |
Re: Technical Documents for UML2 [message #473073 is a reply to message #473067] |
Fri, 01 June 2007 08:26 |
Eclipse User |
|
|
|
Originally posted by: nickkirtley.gmail.com
Hi,
I'm not criticizing the project or anything but isn't documentation (as
you work) important? Especially since the project is about software
modelling. By using software modelling it suggests you develop programs in
a structured way. Lack of documentation would only suggest that it's
developed in an ad-hoc way.
|
|
|
Re: Technical Documents for UML2 [message #473077 is a reply to message #473073] |
Fri, 01 June 2007 13:47 |
Kenn Hussey Messages: 1620 Registered: July 2009 |
Senior Member |
|
|
Nick,
The majority of the code in UML2 is based directly on the UML
specification - it is generated from a source model based on the UML
metamodel using (a customized version of) the EMF code generator, and this
approach is quite structured (it's model-driven). Most of our clients are
building tools that support UML modeling, and so that are interested in the
API based on the UML specification, for which there is ample documentation -
Javadoc and the UML specification itself. Certain aspects of the API are
"EMFisms", for which ample documentation is provided by the EMF project. The
articles on the UML2 documentation page provide a fairly good starting point
for becoming familiar with how to use the API in UML2, but of course there
always a need for more articles (as suggested by James).
We didn't initially expect many clients to develop plug-ins that extend the
UML2 plug-ins (that's why the implementation classes in UML2 are designated
as internal), but as interest in doing so has been increasing of late, we've
attempted to provide documentation to help our clients, in the form of a
long talk at EclipseCon 2007 (available from our documentation page at
http://www.eclipse.org/modeling/mdt/uml2/docs/presentations/ EclipseCon2007_LongTalk.html)
and articles on the various ways to extend UML2/UML (currently in draft
format attached to https://bugs.eclipse.org/bugs/show_bug.cgi?id=77413). We
appreciate any feedback you may have, and of course (as James also
suggested), contributions in this area are greatly appreciated!
Kenn
"Nick Kirtey" <nickkirtley@gmail.com> wrote in message
news:afc49a1406909002e445e8c2fd461eb1$1@www.eclipse.org...
> Hi,
>
> I'm not criticizing the project or anything but isn't documentation (as
> you work) important? Especially since the project is about software
> modelling. By using software modelling it suggests you develop programs in
> a structured way. Lack of documentation would only suggest that it's
> developed in an ad-hoc way.
>
>
>
>
>
|
|
| |
Re: Technical Documents for UML2 [message #473089 is a reply to message #473078] |
Mon, 04 June 2007 15:16 |
Eclipse User |
|
|
|
Originally posted by: nickkirtley.gmail.com
Hi James and Kenn,
I was just interested in general documentation about the implementation of
uml2. Not anything precise at the moment. And I won't be making any heavy
extensions, only light ones so really I'm not extending
uml2. However I will be developing a plugin that will use uml2, uml2-ocl and
uml2tools and having to integrate the 3 will require me to understand how
they work.
Actually my project consists of the following:
To develop a plugin/program that can model architectural primitives (see
http://portal.acm.org/citation.cfm?id=1094811.1094822 ). Architectural
primitives are basically a group of stereotypes
and as a whole they define entities that perform common tasks within
Architectural modelling (for example callback and layers), thus saving time
by not having to reinvent the wheel. The plugin should be able to
graphically model the primitives
and users should be able to add primitives themselves (probably by extending
the set of primitives described in the paper).
This will all be taking place in the component connector view.
Validation (hence the ocl questions) is also an important issue in the
project.
I still find the validation part of my project somewhat of a grey area. I
think the following should clarify why (I find it a grey area).
In the attached diagram I show the four UML layers of metamodeling
architecure. The diagram shows (1), (2) and (3).
These are three areas in which I want to validate the relevant layer. So (1)
is the metamodel validation, these constraints are embedded in uml2. (2) is
the stereotypes that extend the metaclasses
and also require validation. As I understand it , (2) does not have
validation at runtime, meaning that if I define stereotypes that extend
metaclasses (which in my case are the primtitives) I cannot
validate them when I model them??? which is (3) in my diagram!
As for implementing ocl constraints (the other thread I believe) - I would
like to try but not sure if I will be able to, I don't have much eclipse
development experience and am working hard on this project. However I could
give it a shot. This is actually another reason why it would be handy to
have a list of constraints that have/not been implemented - so that the
developer knows which ones to implement.
As for stubs, do you mean that methods have been left open for whoever is
going to implement the ocl constraints ?
your help is appreciated,
regards, Nick
|
|
|
Re: Technical Documents for UML2 [message #473091 is a reply to message #473089] |
Mon, 04 June 2007 19:44 |
james bruck Messages: 1724 Registered: July 2009 |
Senior Member |
|
|
Hi Nick,
some comments below ..
- James.
"Nick Kirtley" <nickkirtley@gmail.com> wrote in message
news:f41abk$ba6$1@build.eclipse.org...
> Hi James and Kenn,
>
> I was just interested in general documentation about the implementation of
> uml2. Not anything precise at the moment. And I won't be making any heavy
> extensions, only light ones so really I'm not extending
> uml2. However I will be developing a plugin that will use uml2, uml2-ocl
and
> uml2tools and having to integrate the 3 will require me to understand how
> they work.
>
> Actually my project consists of the following:
>
> To develop a plugin/program that can model architectural primitives (see
> http://portal.acm.org/citation.cfm?id=1094811.1094822 ). Architectural
> primitives are basically a group of stereotypes
> and as a whole they define entities that perform common tasks within
> Architectural modelling (for example callback and layers), thus saving
time
> by not having to reinvent the wheel. The plugin should be able to
> graphically model the primitives
> and users should be able to add primitives themselves (probably by
extending
> the set of primitives described in the paper).
>
> This will all be taking place in the component connector view.
>
> Validation (hence the ocl questions) is also an important issue in the
> project.
>
> I still find the validation part of my project somewhat of a grey area. I
> think the following should clarify why (I find it a grey area).
> In the attached diagram I show the four UML layers of metamodeling
> architecure. The diagram shows (1), (2) and (3).
> These are three areas in which I want to validate the relevant layer. So
(1)
> is the metamodel validation, these constraints are embedded in uml2. (2)
is
> the stereotypes that extend the metaclasses
> and also require validation. As I understand it , (2) does not have
> validation at runtime, meaning that if I define stereotypes that extend
> metaclasses (which in my case are the primtitives) I cannot
> validate them when I model them???
It is possible to validate constraints on stereotypes after they are applied
when you validate the model. Certain tools such as RSA have this
capability built in.
> which is (3) in my diagram!
>
> As for implementing ocl constraints (the other thread I believe) - I would
> like to try but not sure if I will be able to, I don't have much eclipse
> development experience and am working hard on this project. However I
could
> give it a shot. This is actually another reason why it would be handy to
> have a list of constraints that have/not been implemented - so that the
> developer knows which ones to implement.
It would be easy for the user to create such a list by going through all the
XXXOperations() classes and checking which validateXXX stubs have not been
implemented.
> As for stubs, do you mean that methods have been left open for whoever is
> going to implement the ocl constraints ?
Yes. A user could implement the stub ( based on OCL from the spec ) then
submit a patch to the opensource project. Those contributions will be
looked over and committed if they are ok.
>
> your help is appreciated,
>
> regards, Nick
>
>
>
|
|
|
Re: Technical Documents for UML2 [message #473110 is a reply to message #473091] |
Thu, 07 June 2007 11:58 |
Eclipse User |
|
|
|
Originally posted by: nickkirtley.gmail.com
Hi,
about the constraint of steroetypes that extend metaclasses. These
constraints should be validated as entered (which should only be a syntax
kind of validation) and a validation when I model them - checking that the
rules are not actually broken.
Can I do this using uml2-ocl? The fact that RSA has it only means that
it's possible with a lot of work and a lot of development.
I'm asking because it says in the
Customizing UML:Which technique is right for you?
document, the following:
Q:Add new constraints
A:Yes
Add OCL constraints. Currently no runtime checks
I think this would mean that you cannot check the constraints within a
model.
regards,
Nick
|
|
| | | |
Re: Technical Documents for UML2 [message #619433 is a reply to message #473067] |
Fri, 01 June 2007 08:26 |
Eclipse User |
|
|
|
Originally posted by: nickkirtley.gmail.com
Hi,
I'm not criticizing the project or anything but isn't documentation (as
you work) important? Especially since the project is about software
modelling. By using software modelling it suggests you develop programs in
a structured way. Lack of documentation would only suggest that it's
developed in an ad-hoc way.
|
|
|
Re: Technical Documents for UML2 [message #619441 is a reply to message #473073] |
Fri, 01 June 2007 13:47 |
Kenn Hussey Messages: 1620 Registered: July 2009 |
Senior Member |
|
|
Nick,
The majority of the code in UML2 is based directly on the UML
specification - it is generated from a source model based on the UML
metamodel using (a customized version of) the EMF code generator, and this
approach is quite structured (it's model-driven). Most of our clients are
building tools that support UML modeling, and so that are interested in the
API based on the UML specification, for which there is ample documentation -
Javadoc and the UML specification itself. Certain aspects of the API are
"EMFisms", for which ample documentation is provided by the EMF project. The
articles on the UML2 documentation page provide a fairly good starting point
for becoming familiar with how to use the API in UML2, but of course there
always a need for more articles (as suggested by James).
We didn't initially expect many clients to develop plug-ins that extend the
UML2 plug-ins (that's why the implementation classes in UML2 are designated
as internal), but as interest in doing so has been increasing of late, we've
attempted to provide documentation to help our clients, in the form of a
long talk at EclipseCon 2007 (available from our documentation page at
http://www.eclipse.org/modeling/mdt/uml2/docs/presentations/ EclipseCon2007_LongTalk.html)
and articles on the various ways to extend UML2/UML (currently in draft
format attached to https://bugs.eclipse.org/bugs/show_bug.cgi?id=77413). We
appreciate any feedback you may have, and of course (as James also
suggested), contributions in this area are greatly appreciated!
Kenn
"Nick Kirtey" <nickkirtley@gmail.com> wrote in message
news:afc49a1406909002e445e8c2fd461eb1$1@www.eclipse.org...
> Hi,
>
> I'm not criticizing the project or anything but isn't documentation (as
> you work) important? Especially since the project is about software
> modelling. By using software modelling it suggests you develop programs in
> a structured way. Lack of documentation would only suggest that it's
> developed in an ad-hoc way.
>
>
>
>
>
|
|
| |
Re: Technical Documents for UML2 [message #619677 is a reply to message #473078] |
Mon, 04 June 2007 15:16 |
Eclipse User |
|
|
|
Originally posted by: nickkirtley.gmail.com
Hi James and Kenn,
I was just interested in general documentation about the implementation of
uml2. Not anything precise at the moment. And I won't be making any heavy
extensions, only light ones so really I'm not extending
uml2. However I will be developing a plugin that will use uml2, uml2-ocl and
uml2tools and having to integrate the 3 will require me to understand how
they work.
Actually my project consists of the following:
To develop a plugin/program that can model architectural primitives (see
http://portal.acm.org/citation.cfm?id=1094811.1094822 ). Architectural
primitives are basically a group of stereotypes
and as a whole they define entities that perform common tasks within
Architectural modelling (for example callback and layers), thus saving time
by not having to reinvent the wheel. The plugin should be able to
graphically model the primitives
and users should be able to add primitives themselves (probably by extending
the set of primitives described in the paper).
This will all be taking place in the component connector view.
Validation (hence the ocl questions) is also an important issue in the
project.
I still find the validation part of my project somewhat of a grey area. I
think the following should clarify why (I find it a grey area).
In the attached diagram I show the four UML layers of metamodeling
architecure. The diagram shows (1), (2) and (3).
These are three areas in which I want to validate the relevant layer. So (1)
is the metamodel validation, these constraints are embedded in uml2. (2) is
the stereotypes that extend the metaclasses
and also require validation. As I understand it , (2) does not have
validation at runtime, meaning that if I define stereotypes that extend
metaclasses (which in my case are the primtitives) I cannot
validate them when I model them??? which is (3) in my diagram!
As for implementing ocl constraints (the other thread I believe) - I would
like to try but not sure if I will be able to, I don't have much eclipse
development experience and am working hard on this project. However I could
give it a shot. This is actually another reason why it would be handy to
have a list of constraints that have/not been implemented - so that the
developer knows which ones to implement.
As for stubs, do you mean that methods have been left open for whoever is
going to implement the ocl constraints ?
your help is appreciated,
regards, Nick
|
|
|
Re: Technical Documents for UML2 [message #619679 is a reply to message #473089] |
Mon, 04 June 2007 19:44 |
james bruck Messages: 1724 Registered: July 2009 |
Senior Member |
|
|
Hi Nick,
some comments below ..
- James.
"Nick Kirtley" <nickkirtley@gmail.com> wrote in message
news:f41abk$ba6$1@build.eclipse.org...
> Hi James and Kenn,
>
> I was just interested in general documentation about the implementation of
> uml2. Not anything precise at the moment. And I won't be making any heavy
> extensions, only light ones so really I'm not extending
> uml2. However I will be developing a plugin that will use uml2, uml2-ocl
and
> uml2tools and having to integrate the 3 will require me to understand how
> they work.
>
> Actually my project consists of the following:
>
> To develop a plugin/program that can model architectural primitives (see
> http://portal.acm.org/citation.cfm?id=1094811.1094822 ). Architectural
> primitives are basically a group of stereotypes
> and as a whole they define entities that perform common tasks within
> Architectural modelling (for example callback and layers), thus saving
time
> by not having to reinvent the wheel. The plugin should be able to
> graphically model the primitives
> and users should be able to add primitives themselves (probably by
extending
> the set of primitives described in the paper).
>
> This will all be taking place in the component connector view.
>
> Validation (hence the ocl questions) is also an important issue in the
> project.
>
> I still find the validation part of my project somewhat of a grey area. I
> think the following should clarify why (I find it a grey area).
> In the attached diagram I show the four UML layers of metamodeling
> architecure. The diagram shows (1), (2) and (3).
> These are three areas in which I want to validate the relevant layer. So
(1)
> is the metamodel validation, these constraints are embedded in uml2. (2)
is
> the stereotypes that extend the metaclasses
> and also require validation. As I understand it , (2) does not have
> validation at runtime, meaning that if I define stereotypes that extend
> metaclasses (which in my case are the primtitives) I cannot
> validate them when I model them???
It is possible to validate constraints on stereotypes after they are applied
when you validate the model. Certain tools such as RSA have this
capability built in.
> which is (3) in my diagram!
>
> As for implementing ocl constraints (the other thread I believe) - I would
> like to try but not sure if I will be able to, I don't have much eclipse
> development experience and am working hard on this project. However I
could
> give it a shot. This is actually another reason why it would be handy to
> have a list of constraints that have/not been implemented - so that the
> developer knows which ones to implement.
It would be easy for the user to create such a list by going through all the
XXXOperations() classes and checking which validateXXX stubs have not been
implemented.
> As for stubs, do you mean that methods have been left open for whoever is
> going to implement the ocl constraints ?
Yes. A user could implement the stub ( based on OCL from the spec ) then
submit a patch to the opensource project. Those contributions will be
looked over and committed if they are ok.
>
> your help is appreciated,
>
> regards, Nick
>
>
>
|
|
|
Re: Technical Documents for UML2 [message #619775 is a reply to message #473091] |
Thu, 07 June 2007 11:58 |
Eclipse User |
|
|
|
Originally posted by: nickkirtley.gmail.com
Hi,
about the constraint of steroetypes that extend metaclasses. These
constraints should be validated as entered (which should only be a syntax
kind of validation) and a validation when I model them - checking that the
rules are not actually broken.
Can I do this using uml2-ocl? The fact that RSA has it only means that
it's possible with a lot of work and a lot of development.
I'm asking because it says in the
Customizing UML:Which technique is right for you?
document, the following:
Q:Add new constraints
A:Yes
Add OCL constraints. Currently no runtime checks
I think this would mean that you cannot check the constraints within a
model.
regards,
Nick
|
|
| |
Goto Forum:
Current Time: Thu Sep 26 19:52:51 GMT 2024
Powered by FUDForum. Page generated in 0.05938 seconds
|