Mutual Exclusive of Composition

57 views
Skip to first unread message

Eran Peleg

unread,
Apr 19, 2012, 2:46:27 PM4/19/12
to sysml...@googlegroups.com

Hi

I'm looking for a SysML / UML BDD / Class modeling of the following problem.

An Aircraft (AC) has one slot for a device.  Either EO or Radar devices may be installed.  One must be installed.

Two options as I see it (with some limitations):

Option 1:

 

The Attribute (Composition) name is Device (only one; due to merge between the two).  However, it is not clear to me that this model represents Mutual-Exclusiveness between the two devices.

 

Option 2:

No it is almost clear that one of them is possible, however, also the "0" option is possible.  Not exactly the definition of the problem.

 

From the Browser picture it is clear that only one Part exists:

 

Please comment on the two above or add your opinion.

 

Thanks

Eran

 

 

 

======================

Eran Peleg, CEO

Metaphor Vision Ltd.

Phone: +972545346060

Fax: 151545346060

eMail: epe...@metaphor.co.il

Skype: EranPelegMetaphor

======================

 

image001.jpg
image002.jpg
image003.jpg

Philippe Wolkowicz

unread,
Apr 19, 2012, 4:49:29 PM4/19/12
to sysml...@googlegroups.com

Hello Eran

 

I would propose to complete your drawing Option 1 with a dependency between the associations, a discontinued line between the association.

On the line you add a constraint labeled with the keyword XOR -> {XOR}.

 

Sincerely

 

Philippe Wolkowicz

ACTL Systems Ltd.

CEO & Senior consultant

217/5 Jaffa St. POB 8129,

Jerusalem, 91081, ISRAEL

Tel: +972-2-5376459

Fax: +972-2-5370425

Mobile: 972-52-2676647

email: phil...@actl.co.il

URL: www.actl.co.il

Information contained in this email message is intended only for use of the individual or entity named above. If the reader of this message is not the intended recipient, or the employee or agent responsible to deliver it to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please immediately notify the in...@actl.co.il and destroy the original message.

 

Jack Ring

unread,
Apr 19, 2012, 7:26:31 PM4/19/12
to sysml...@googlegroups.com
I don't know about UML, SysML, etc., but in the real world there will be something called a Configurator which will relate system components to mission effect-iveness.

On Apr 19, 2012, at 11:46 AM, Eran Peleg wrote:

Hi

I'm looking for a SysML / UML BDD / Class modeling of the following problem.

An Aircraft (AC) has one slot for a device.  Either EO or Radar devices may be installed.  One must be installed.

Two options as I see it (with some limitations):

Option 1:

<image001.jpg> 

The Attribute (Composition) name is Device (only one; due to merge between the two).  However, it is not clear to me that this model represents Mutual-Exclusiveness between the two devices.

 

Option 2:

<image002.jpg>

No it is almost clear that one of them is possible, however, also the "0" option is possible.  Not exactly the definition of the problem.

 

From the Browser picture it is clear that only one Part exists:

<image003.jpg>

 

Please comment on the two above or add your opinion.

 

Thanks

Eran

 

 

 

======================

Eran Peleg, CEO

Metaphor Vision Ltd.

Phone: +972545346060

Fax: 151545346060

eMail: epe...@metaphor.co.il

Skype: EranPelegMetaphor

======================

 


--
You received this message because you are subscribed to the Google
Groups "SysML Forum" group.
Public website: http://www.SysMLforum.com
To post to this group, send email to sysml...@googlegroups.com
To unsubscribe from this group, send email to
sysmlforum+...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/sysmlforum?hl=en_US?hl=en

Stephan Roth

unread,
Apr 20, 2012, 12:19:00 AM4/20/12
to sysml...@googlegroups.com, epe...@metaphor.co.il
Hi Eran,

create an abstract block named "Device" and use the generalization relationship to express that "EODevice" and "RadarDevice" are specializations of that abstract, new block. Between the "Aircraft" and the abstract "Device" you can use a composition with default muliplicity "1" at both ends.

Best regards,
Stephan

Eran Peleg

unread,
Apr 20, 2012, 12:00:21 AM4/20/12
to sysml...@googlegroups.com

Hi Philippe

Nice suggestion …

But, as for Rhapsody (the tool I'm using), actually the two Associations are one, so Dependency can't run between the two (one) relations.  So, I added the Dependency between the Blocks.

Is that what you mean?

 

Thanks

Eran

 

======================

Eran Peleg, CEO

Metaphor Vision Ltd.

Phone: +972545346060

Fax: 151545346060

eMail: epe...@metaphor.co.il

Skype: EranPelegMetaphor

======================

--
image001.jpg

Jessie Ryan

unread,
Apr 20, 2012, 12:04:27 AM4/20/12
to sysml...@googlegroups.com
UML/SysML baseline does become challenging when attempting to include Variations. CVL Spec updates have been proposed to answer the very question you are currently asking ... specifying variation points in terms of options, mutual exclusion, mandatory, ... etc .. 

3 useful resources on this topic:
1) Ziadi, T.; Jézéquel, J.M; Software Product Line Engineering with UML: Deriving Products; 2006; http://hal.inria.fr/docs/00/51/25/50/PDF/Ziadi06b.pdf

2) SysML for Telescope System Modeling - Variant Modelling: http://www.ics.kth.se/INCOSE/MBSE%20Challenge%20team.pdf


A quick Google on UML/SysML and SPL (Software Product Line) or PLA (Product Line Architecture) will give you several examples ... far from a 'standard', but might be helpful for ideas. 


Inline image 1




--
Jessie Ryan
image.png

Robert Karban

unread,
Apr 20, 2012, 12:27:56 AM4/20/12
to sysml...@googlegroups.com
I agree with Stephan.

You could also consider modeling an AC variant, where
you specialize AC and in the specialization you redefine the device property
to either EO or Radar.

You can use the variation profile of SYSMOD or SE2 to model that.
--

Remy Fannader

unread,
Apr 20, 2012, 12:33:55 AM4/20/12
to sysml...@googlegroups.com, epe...@metaphor.co.il
Hi Eran,
I would go with Stephan but use a separate interface to describe behaviors.
Remy

--

Jack Ring

unread,
Apr 20, 2012, 12:50:53 AM4/20/12
to sysml...@googlegroups.com
Then try to find a way to specify which should be used when.

Loïc Fejoz

unread,
Apr 20, 2012, 8:18:17 AM4/20/12
to sysml...@googlegroups.com
Le 20/04/2012 06:04, Jessie Ryan a écrit :
> UML/SysML baseline does become challenging when attempting to include
> Variations. CVL Spec updates have been proposed to answer the very
> question you are currently asking ... specifying variation points in
> terms of options, mutual exclusion, mandatory, ... etc ..
>
> 3 useful resources on this topic:
> 1) Ziadi, T.; Jézéquel, J.M; Software Product Line Engineering with UML:
> Deriving Products; 2006;
> http://hal.inria.fr/docs/00/51/25/50/PDF/Ziadi06b.pdf
>
> 2) SysML for Telescope System Modeling - Variant Modelling:
> http://www.ics.kth.se/INCOSE/MBSE%20Challenge%20team.pdf
>
> 3) For more on CVL:
> http://modelingwizards.isti.cnr.it/wp-content/uploads/2010/10/ModWizards-Haugen-CVL-101002-v2.pdf
>
> A quick Google on UML/SysML and SPL (Software Product Line) or PLA
> (Product Line Architecture) will give you several examples ... far from
> a 'standard', but might be helpful for ideas.
>
>[...]

Hi,

I prefer previous answer.
Yet another way of expressing it is by writing an OCL constraint. I
would "draw" two associations (eodevice and radardevice) (or maybe
three, the last two being subelement of the former "device"). Then add
the OCL constraint:
invariant AC:
self.device->size() = 1

--
Salutations cordiales,
Loïc Fejoz
Follow our blog on building truly safe and optimized critical systems.
http://www.realtimeatwork.com/blog/

loic_fejoz.vcf

Loïc Fejoz

unread,
Apr 20, 2012, 9:32:14 AM4/20/12
to Jessie Ryan, sysml...@googlegroups.com
From my point of view, OCL invariant are constraints on model. Tool
might interpret them or not. The way I wrote it, a tool can indeed
generate such variants but I am not aware of such tool...

The OCL is part of (embedded in) the SysML model. See ConstraintBlock in
the SysML specification. It is perfectly standard. It is shown in the
"constraints" part on the block diagram for instance.

The first ten slides of this presentation might help understant what OCL
can provide:
http://www.realtimeatwork.com/2011/03/topcased-day-presentation-what-fuml-can-bring-to-mbse/

--
regards,


Loïc Fejoz
Follow our blog on building truly safe and optimized critical systems.
http://www.realtimeatwork.com/blog/


Le 20/04/2012 14:43, Jessie Ryan a écrit :
> Loic,
>
> interesting response. I have seen much discussion on OCL constraints,
> but they are typically associated with automatic generation of new
> variants - is that correct? I am a bit confused about WHERE the OCL
> constraints are captured - are they part of the UML/SysML model
> itself, or are they part of a specific model transformation tool/
> rules base?
>
> Thanks,
>
> Jessie

loic_fejoz.vcf

Dan George

unread,
Apr 21, 2012, 11:47:07 AM4/21/12
to sysml...@googlegroups.com
Robert's suggestion covers that issue. Customers order one of the AV specializations and that defines which device will be installed. Add the AV specializations to Jesse's diagram and associate 1:1 to appropriate sensor for each AV specialization. Jesse's diagram shows that the AV shall be designed to accept generic sensors and specifies what sensors must be in order to be considered generic. Robert's extension constrains the subset of configurations of AV to sensor. Nice!

Jessie Ryan

unread,
Apr 21, 2012, 5:22:16 PM4/21/12
to sysml...@googlegroups.com
Just want to make sure I understand this properly ... I think we are suggesting using the 1:1 association, and generalizations for the variability base model bdd. An intermediate block serves the 1:1 association, and the generalization provides flexibility for selecting the sensor type. We also discussed modelling various instances of AC, making the explicit selection of the sensor type. (See Pic 1). I am trying to take this a bit further and say that the general sensor type has a value property: Pd (probability of detect), which is all the system cares about. I tried to generate constraint blocks for either RadarDevice or EO Device, having the Pd be part of the sensor ... but I can't figure out how to do this. When I generate a ConstraintBlock under the specialized device I can't access Pd value property in Sensor (generalized version), but if I generate a ConstraintBlock under Sensor, I can't access EO/Radar value properties.  I am using Artisan for this model - is this just a tool issue??  I attempted the same package structure in Rhapsody, which seemed to let me do this - but then Rhapsody (to my knowledge), does not support instance models. Any suggestions?

Inline image 1

Inline image 2


Inline image 3




For more options, visit this group at
http://groups.google.com/group/sysmlforum?hl=en_US?hl=en



--
Jessie Ryan
image.png
image.png
image.png

Jessie Ryan

unread,
May 2, 2012, 9:49:08 PM5/2/12
to sysml...@googlegroups.com
I am trying to follow Robert's suggestion of using teh constraints 'redefines', but I don't know how to implement this in Artisan ... does anyone know how to do that? As suggested above, I am trying to make a block: variant1 (Specialization of AC) that selects either the RadarSensor or EOSensor ... but I don't know how to set the aggregation to 'redefines'. I've searched help files and tutorials to no avail ... 

On Sat, Apr 21, 2012 at 11:47 AM, Dan George <dgeorg...@gmail.com> wrote:

For more options, visit this group at
http://groups.google.com/group/sysmlforum?hl=en_US?hl=en



--
Jessie Ryan

Tim Weilkiens

unread,
May 2, 2012, 11:58:49 PM5/2/12
to sysml...@googlegroups.com
I don't know Artisan in detail. Redefines is a setting of a property. Try to select the appropriate property and you should find redefine in the settings dialogs.

Tim
The Attribute (Composition) name is Device (only one; due to merge between the two). However, it is not clear to me that
this model represents Mutual-Exclusiveness between the two devices.




Option 2:



No it is almost clear that one of them is possible, however, also the "0" option is possible. Not exactly the definition
of the problem.




From the Browser picture it is clear that only one Part exists:






Please comment on the two above or add your opinion.




Thanks

Eran









======================

Eran Peleg, CEO

Metaphor Vision Ltd.

Phone:
+972545346060

Fax: 151545346060

eMail:
epe...@metaphor.co.il

Skype: EranPelegMetaphor

======================








--
You received this message because you are subscribed to the Google
Groups "SysML Forum" group.
Public website: http://www.SysMLforum.com
To post to this group, send email to
sysml...@googlegroups.com
To unsubscribe from this group, send email to
Reply all
Reply to author
Forward
0 new messages