While working on the logical analysis for my transport system I realised I was missing some activities & functions from higher level analysis, for example:
Logical functions: secure package, move package, load package and so on
The OA was not on a detailed level, more high level: deliver package. Hence no recieve package, secure package, transport package, protect package and so on…
In the system analysis, SA: since missing from the OA, they we’re not part of the transition from OA to SF, system function. And not transitioned down to the Logical analysis where I am now.
So, what is best practice here?
Should I go up to OA and add activities, then have them transitioned into system functions and then transitioned into logical functions? Or should I just keep on adding logical functions as seem fit for my continued design of the system?
In the book by Pascal Roques, he mentions a good pratice to add the missing elements at the “highest relevant level” and then apply several transitions.
To me it makes sense that you are keeping OA at a higher abstraction level. Is it relevant at the OA level, in your context, to go to the level of detail of receive/secure/transport/protect? Maybe, maybe not, knowing that the goal of the OA is to make sure you have a good understanding of the System context.
In any case I do not believe it is a good practice that you have a 1 to 1 relationship between all your AO activities and all your SA function - there are cases where it is 1 to 1, and cases where some OA activities are refined into several System functions.
In your case, if you keep it like it, then you would manually set the traceability relationship between your OA activity “deliver package” and all the corresponding System functions you’ve created to describe it in detail.
I hope it helps.
Yes, I was eloborating about this a little bit more on the OA level.
I believe, to deliver packages for a customer, it is a requirement and/or constraint that this delivery shall be conducted in a safe and secure manner, e.g. the package is stored in a secure place, that the package is carried in a secure manner, that it is protected from the environment and risks etc etc. So, of course, during the breakdown to lower levels, e.g. system functions and/or logical functions I can add the “protect package”, “hold package during transport” etc which will later on be realized in different ways. Without, applying them on the OA level, but perhaps SA level. “highest relevant level” so to say.