I found this question about sub systems & UseCases, just I lack understanding / mapping to my specific situation.
I want to model which sub component fulfills which UseCase realized by my system component10.
(I use sub component and sub system simultanously - mistake?)
my pov
I show first my component diagram:
there is component10 as "the system". It contains 4 sub components that do "all the work" - using the input incoming by 3 ports, calculating back and forth and providing output via port4.
So putting this to UseCase diagram, I already lack any idea to show which actor triggers/ uses the "internal UseCases":
The external components (missing in component diagram as I think this shows only internal components of "the system") are now the only one that participate to provide their data / receive data.
To avoid the sub components as actors inside the system boundaries (which looks wrong as my understanding is: "no actor inside a system boundary"), I put themselves in:
It again feels not that much right, because a UseCase needs an actor - and there is none for the internal UseCases.
An initial flaw might be that I try to show the data flow with along UseCases and that I think that any component providing or receiving data is an actor of this UseCase. (Beside potential misunderstanding what a component diagram is able to show/ should contain)
evaluation of found sources
The answer by Thomas Owens cites the 2.5.1 spec (Figure 18.2 in section 18.1.5) where somehow a sub system is modeled
- does that imply I should put each sub component / sub system into a separate package
- and make the system itself consisting of ports & packages?
The spec uses some kind of packaging as example (figure 18.11 in section 18.1.5):
This confuses me a little as I don't understand system border's there and the package "ATM Services" imports "TransactionUseCases" and then again shows only two of them greyscaled.
The answer by GlenH (diffenrent question) notes "actors can be ... system (self reference)"
- Is there any use of self-reference for my aim? How?