Subfunctions and realization

Hi,
After a LA–>PA transition, I’m refining physical functions (resulted from the transition), by creating sub-functions. Eg:
LA function: Turn
PA function (resulted by the transition): Turn, that realizes LA Turn function
I want to breakdown PA Turn function to “Turn left” and “Turn right”.
Q1: do “Turn left” and “Turn right” need to realize “LA Turn function”? in that case, do we remove the LA realization in “PA Turn”?
LA Turn function receives, thanks to a functional exchange “get command” a EI “command”. After the transition, a FE “command”, that realizes LA “get command” and carries EI “command” is created in the PA. I need to “split” this functional exchange by creating two functional exchanges “get left command” that targets “Turn left”, and “get right command” that targets “Turn right”.
Q2: Is it correct to make “get right command” and “get left command” realize LA “get command”, plus, allocate “command” EI to them?. In addition,do we remove the functional exchange PA “get command” previously created ?
Thank you for your help.
Nesrine

Hi,
Q1: as the transition created a realization link between PA Turn and LA Turn, I do not consider it necessary to add realizations for PA subfunctions.
But it would be correct also…
Q2: Yes, you can make “get right command” and “get left command” realize LA “get command”.
You can allocate the “command” EI to both (but maybe you should create more specific EI at PA?).
Either you remove the “get command” PA FE (only leaf functions should have ports and FEs), or you add a PA Split Control Function consuming “get command” and producing “get right command” and “get left command”… In this later case, you can let the “get command” PA FE and the initial realization link.
Hope this helps.
Pascal

Thank you very much,
this is very helpfull. It’s quite tricky to get to know the good practices.
An additional question please:
You say that it’s possible to “refine” the EI created previously at the LA level in the PA level. What do you mean by specific EI at PA?
What I’m saying is that I wonder if there is any way to design this : PA EI “command”–refines–> LA EI “command” or —enherits—>. Is there a special practice or we can use LA EIs transition to PA, then create a classe that enherits the class related to the LA EI class, and connect it to the so called refined PA EI?
I wish I’m being clear in my question.
Thank you for your help.
Nesrine

As far as it concerns EI, classes and types, you do not need to transition them to a lower phase. They are automatically visible in the selection wizards!
The Capella rule is the following one: you can use EI or classes from any upper level in your current level.
So yes, you could have a PA class that inherits from a LA class, etc.
Pascal

Copyright © Eclipse Capella, the Eclipse Capella logo, Eclipse and the Eclipse logo are Trademarks of The Eclipse Foundation.